scull.h

来自「linux device drive II 的示例移植到2.6.x内核」· C头文件 代码 · 共 41 行

H
41
字号
#ifndef __SCULL_H__#define __SCULL_H__#include <linux/ioctl.h>#define SCULL_QUANTUM 2000#define SCULL_QSET    1000extern int scull_quantum;extern int scull_qset;/* Prototypes for shared functions */static loff_t scull_llseek(struct file *filp, loff_t off, int whence);static ssize_t scull_read(struct file *filp, char __user *buf,                          size_t count, loff_t *ppos);static ssize_t scull_write(struct file *filp, const __user char *buf,                          size_t count, loff_t *ppos);static int scull_ioctl(struct inode *inode, struct file *filp,                        unsigned int cmd, unsigned long arg);static int scull_open(struct inode *inode, struct file *filp);static int scull_release(struct inode *inode, struct file *filp);/* Ioctl definiction */#define SCULL_IOC_MAGIC 'j'#define SCULL_IOC_MAXNR 15#define SCULL_IOCRESET    _IO(SCULL_IOC_MAGIC, 0)#define SCULL_IOCSQUANTUM _IOW(SCULL_IOC_MAGIC,  1, 2000)#define SCULL_IOCSQSET    _IOW(SCULL_IOC_MAGIC,  2, 1000)#define SCULL_IOCTQUANTUM _IO(SCULL_IOC_MAGIC,   3)#define SCULL_IOCTQSET    _IO(SCULL_IOC_MAGIC,   4)#define SCULL_IOCGQUANTUM _IOR(SCULL_IOC_MAGIC,  5, scull_quantum)#define SCULL_IOCGQSET    _IOR(SCULL_IOC_MAGIC,  6, scull_qset)#define SCULL_IOCQQUANTUM _IO(SCULL_IOC_MAGIC,   7)#define SCULL_IOCQQSET    _IO(SCULL_IOC_MAGIC,   8)#define SCULL_IOCXQUANTUM _IOWR(SCULL_IOC_MAGIC, 9, scull_quantum)#define SCULL_IOCXQSET    _IOWR(SCULL_IOC_MAGIC,10, scull_qset)#define SCULL_IOCHQUANTUM _IO(SCULL_IOC_MAGIC,  11)#define SCULL_IOCHQSET    _IO(SCULL_IOC_MAGIC,  12)#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?