005_linux驱动之_class_device_create函数

(一)解析class_device_create函数

(二)当我们使用class_create创建一个类之后我们就可以使用class_device_create函数在这个类下面创建一个设备了,class_create创建查看004_linux驱动之_class_create创建一个设备类

(三)class_device_create函数原型
struct class_device *class_device_create(struct class *cls,struct class_device *parent,dev_t devt,struct device *device,const char *fmt, …)

  1. 注解:
    / * *
  • class_device_create——创建一个类设备并将其注册到sysfs

  • @cls:指向这个设备应该注册到的struct类的指针。

  • @parent:指向这个新设备的父结构class_device的指针。

  • @devt:添加char设备的dev_t。

  • @device:指向与这个类设备相关联的struct设备的指针。

  • @fmt:类设备名称的字符串

这个函数可以被char设备类使用。一个结构体

  • class_device将在sysfs中创建,注册到指定的

*类。

*将创建一个“dev”文件,显示设备的dev_t,如果

  • dev_t不是0,0。

*如果一个指向父struct class_device的指针被传入,则为new

*创建的struct class_device将是sysfs中该设备的子设备。

返回指向struct class_device的指针

*电话。可以创建任何可能需要的进一步sysfs文件

*使用这个指针。

*注意:传递给这个函数的struct类之前必须有

通过调用class_create()创建。

  • /

使用示例:
005_linux驱动之_class_device_create函数

(三)当我们需要删除设备时候就需要class_device_unregister这个函数
005_linux驱动之_class_device_create函数
005_linux驱动之_class_device_create函数