1234567891011121314151617181920212223242526272829303132333435363738 |
- #ifndef _LINUX_CDEV_H
- #define _LINUX_CDEV_H
- #include <linux/kobject.h>
- #include <linux/kdev_t.h>
- #include <linux/list.h>
- #include <linux/device.h>
- struct file_operations;
- struct inode;
- struct module;
- struct cdev {
- struct kobject kobj;
- struct module *owner;
- const struct file_operations *ops;
- struct list_head list;
- dev_t dev;
- unsigned int count;
- };
- void cdev_init(struct cdev *, const struct file_operations *);
- struct cdev *cdev_alloc(void);
- void cdev_put(struct cdev *p);
- int cdev_add(struct cdev *, dev_t, unsigned);
- void cdev_set_parent(struct cdev *p, struct kobject *kobj);
- int cdev_device_add(struct cdev *cdev, struct device *dev);
- void cdev_device_del(struct cdev *cdev, struct device *dev);
- void cdev_del(struct cdev *);
- void cd_forget(struct inode *);
- #endif
|