Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在开发的驱动程序有许多我希望用户能够更改的设置并不真正适合 IIO 框架。例如,在我的读取函数中使用 IIO_CHAN_INFO_SAMP_FREQ 枚举会在 /sys/bus/iio/devices/iio:device0/ 中公开一个名为“in_voltage_sampling_frequency”的变量,该变量允许用户随时更改频率。我还希望能够通过类似的机制以不同的模式(字符串)传递。我该怎么做?看起来 IIO 接口不支持 ioctl 调用。
找到了解决方案。
我使用了 sysfs 设备属性,如下所示:
https://www.kernel.org/doc/Documentation/driver-model/device.txt
这个问题的另一个解决方案可能是使用module_param哪些寄存器参数可以在加载期间通过 modprobe/insmod 和在运行时通过 sysfs 设置:
module_param
int myint = 3; module_param(myint, int, 0);
更多信息,请参见:https ://www.tldp.org/LDP/lkmpg/2.6/html/x323.html