1、注册设备
主要作用:得到设备号。
register_chrdev_region()
: 静态注册设备;alloc_chrdev_region()
: 动态注册设备;
2、开辟字符设备空间
主要作用:获的必要的内存空间存储信息。
cdev_alloc()
3、初始化字符设备
主要作用:设置文件操作函数指针
cdev_init()
4、注册cdev到内核
主要作用:真正意义上的放到内核的管理数组中
cdev_add
5、创造类
主要作用:在/sys/class下创建类对象,方便管理。
class_create()
6、创造设备
主要作用:在/sys/dev下创建设备对象。
device_create()->device_add
device_create()是对device_register()的封装
device_initialize后再device_add