Committer: Michael Beasley <mike@snafu.setup>
[mikesnafu-overlay.git] / include / linux / cdev.h
blob1e29b13d00621ee32fcb50f1e08b4dd93b62afcd
1 #ifndef _LINUX_CDEV_H
2 #define _LINUX_CDEV_H
3 #ifdef __KERNEL__
5 #include <linux/kobject.h>
6 #include <linux/kdev_t.h>
7 #include <linux/list.h>
9 struct file_operations;
10 struct inode;
11 struct module;
13 struct cdev {
14 struct kobject kobj;
15 struct module *owner;
16 const struct file_operations *ops;
17 struct list_head list;
18 dev_t dev;
19 unsigned int count;
22 void cdev_init(struct cdev *, const struct file_operations *);
24 struct cdev *cdev_alloc(void);
26 void cdev_put(struct cdev *p);
28 int cdev_add(struct cdev *, dev_t, unsigned);
30 void cdev_del(struct cdev *);
32 void cd_forget(struct inode *);
34 extern struct backing_dev_info directly_mappable_cdev_bdi;
36 #endif
37 #endif