1

我正在为 PCIe 卡创建 Linux 设备驱动程序。我在创建相应的 sysfs 条目时遇到了问题。起初,我创建了一个包含所需的属性组

DEVICE_ATTR(...)
struct attribute *...
struct attribute_group ...

等等,然后我添加了 store() 和 show() 函数。一切都运行良好,并创建了所请求的类

/sys/bus/pci/drivers//模块/驱动程序/pci:/0000:01:00.0

/ 问题是 /dev/ 中没有自动创建条目!

我花了几个小时在网上寻找,我发现的唯一解决方案是使用:

class_create() and then
device_create()

但这会在 /sysfs/devices/virtual/... 中创建另一个条目,恕我直言,这很丑陋且完全没有必要。

我想要的是拥有我的一组属性和 /dev/ 中的相应条目

我怎样才能做到这一点?即使是指向这样做的示例的指针也会非常有帮助(我已经找了几个小时,没有任何运气:()

非常感谢提前!!!

答:我在选择司机级别时犯了一个愚蠢的错误。正确设置 pci 驱动程序解决了这个问题。

4

1 回答 1

1

你应该看看这个:

http://kroah.com/log/blog/2013/06/26/how-to-create-a-sysfs-file-correctly/

在您的情况下,请遵循总线驱动程序示例。

于 2016-08-24T06:16:49.367 回答