我正在努力理解平台设备驱动程序与字符设备接口之间的链接以及将数据存储在特定于设备的数据结构中.
我创建了一个结构来跟踪与我的设备相关的数据,然后将它添加到probe函数的devices结构中:
dev_set_drvdata(dev, data_struct);
Run Code Online (Sandbox Code Playgroud)
我还保留了全球副本data_struct
.
我注册了一个misc设备,以便我可以mmap()
通过ioctl()
命令访问设备.如果我想访问此设备data_struct
,目前我通过全局副本访问它.是否有另一种方法通过inode
或file
指针访问我存储在设备结构中的数据?
我目前只允许一个设备实例,但我想确保我正确实现这一点,以便将来可能有多个设备使用相同的驱动程序.
driver kernel-module linux-device-driver linux-kernel embedded-linux
我正在实现自己的MIB,并使用smilint检查以验证MIB.我收到了很多node xxx must be contained in at least one conformance group
警告.
我无法破译OBJECT-GROUP的目的以及它在MIB文件中的位置.它是否提供了一种机制,用于对位于同一OID子树中的各种OID的相关托管OBJECT-TYP进行分组?是否真的需要,因为我可以设计一个有用的MIB吗?
我也在努力理解与对象相关的MODULE-COMPLIANCE宏的目的.这是否适用于扩展我正在创建的MIB?
类似的问题已经被问过SO 这里,我发现窗台不清楚,因为对象的集团是一个完全不同的树下下一个OID定义和引用的对象类型.谢谢