Make all block allocations use the same func [2/2]
[akaros.git] / kern / include / devfs.h
1 /* Copyright (c) 2010 The Regents of the University of California
2  * Barret Rhoden <brho@cs.berkeley.edu>
3  * See LICENSE for details.
4  *
5  * Devfs: filesystem interfaces to devices.  For now, we just create the
6  * needed/discovered devices in KFS in its /dev/ folder.  In the future, we
7  * might want to do something like nodes like other Unixes. */
8
9 #pragma once
10
11 #include <vfs.h>
12 #include <kfs.h>
13
14 void devfs_init(void);
15 struct file *make_device(char *path, int mode, int type,
16                          struct file_operations *fop);
17
18 /* Generic device (block or char) file ops.  Both of these are dummies that say
19  * the device can't support the operation. */
20 int dev_mmap(struct file *file, struct vm_region *vmr);
21 int dev_c_llseek(struct file *file, off64_t offset, off64_t *ret, int whence);
22
23 /* Exporting these for convenience (process creation) */
24 extern struct file *dev_stdin, *dev_stdout, *dev_stderr;