建议的方法为Linux设备驱动程序创建许多sysfs目录和属性

时间:2015-08-26 13:27:52

标签: linux-device-driver sysfs

我需要为驱动程序创建一大堆属性,这使得静态分配它们是不切实际的(每个有5个属性的64个目录)。

看起来有多种方法可以在sysfs中创建目录。一个似乎是foos = Foo.objects() for foo in foos: print foo.to_json() #override is used!!!! print foos.to_json() # override is ignored :( ,另一个似乎是创建sysfs_create_dir_ns(),将它们添加到sysfs然后向它们添加属性。

是否有推荐(或“最佳”)方式来执行此操作?

1 个答案:

答案 0 :(得分:1)

一种可能的方法,如果您只需要创建一个级别的子目录,至少可以使用struct attribute_group。此结构具有成员name,如果不为NULL,则将用作将插入属性组中列出的属性的目录。

但是,这不允许多层目录,因为kobject创建的第一个级别不匹配sysfs_create_group()