5.生成设备节点 (iTOP4412)

#include 头文件

misc_register(&hello_dev);设备节点注册函数

misc_deregister(&hello_dev);设备节点移除函数

这两个函数就引出了一个结构体:

static struct miscdevice hello_dev = {

.minor = MISC_DYNAMIC_MINOR,

.name = DEVICE_NAME,

.fops = &hello_ops,

};

由这个结构体又会延伸出下一个结构体:

static struct file_operations hello_ops = {

.owner = THIS_MODULE,

.open = hello_open,

.release = hello_release,

.unlocked_ioctl = hello_ioctl,

};

当然这个结构体我初始化的不全,还有很多函数没写,想具体需要看的话可以百度。然后就是结构体hello_ops里边对应函数的编写了。

static int hello_probe(struct platform_device *pdv)

static int hello_remove(struct platform_device *pdv)

你可能感兴趣的:(5.生成设备节点 (iTOP4412))