blob: db1364571f748b4edd47e5939f83e19eecc969ee [file] [log] [blame] [edit]
/* Copyright (c) 2010 The Regents of the University of California
* Barret Rhoden <brho@cs.berkeley.edu>
* See LICENSE for details.
*
* Devfs: filesystem interfaces to devices. For now, we just create the
* needed/discovered devices in KFS in its /dev/ folder. In the future, we
* might want to do something like nodes like other Unixes. */
#pragma once
#include <vfs.h>
#include <kfs.h>
void devfs_init(void);
struct file *make_device(char *path, int mode, int type,
struct file_operations *fop);
/* Generic device (block or char) file ops. Both of these are dummies that say
* the device can't support the operation. */
int dev_mmap(struct file *file, struct vm_region *vmr);
int dev_c_llseek(struct file *file, off64_t offset, off64_t *ret, int whence);
/* Exporting these for convenience (process creation) */
extern struct file *dev_stdin, *dev_stdout, *dev_stderr;