今天遇到一个问题,要修改某个PMIC的寄存器。只有求爷爷告奶奶到处问。最后才说是挂载debugfs,然后修改里面的regman即可。这次还真是翻车,不光没用过,连听都没听说过这个debugfs。所以今天晚上总结一下。
之前看驱动的时候,不少驱动提供了在sysfs的接口,而且也看了怎么创建。但是debugfs还真的是第一次遇到。所以先看看这个和sysfs,还有procfs的区别。
比如说gpio,我记得是直接在sysfs下面就有。今天在debugfs里面也看到了。
查了一下结论如下:
1. sysfs 下的 gpio:
位于 /sys/class/gpio/。
提供基本的 GPIO 控制接口,允许用户导出 GPIO 引脚、设置输入/输出方向、读取/写入引脚电平。常用于生产环境中的 GPIO 控制,比较稳定。
2. debugfs 下的 gpio:
位于 /sys/kernel/debug/gpio。
主要用于调试,显示所有 GPIO 引脚的状态信息,包括引脚方向、值、驱动程序分配情况等。
提供详细的调试信息,不用于直接控制 GPIO。
看来基本概念就是debugfs下面的节点调试信息更多。