我试图了解来自Linux内核的im.X引脚控制器驱动程序。 http://lxr.free-electrons.com/source/drivers/pinctrl/pinctrl-imx.c?v=3.10#L513
我转储了info-> ngroups = 38和info-> nfunctions = 2的值,但未能理解info-> ngroups的值是如何计算到38的,这是受尊重的DTS文件?
http://lxr.free-electrons.com/source/arch/arm/boot/dts/imx6q.dtsi?v=4.1#L104
答案 0 :(得分:1)
那是因为您引用的DTS文件是.dtsi
。它不是真正的主板DTS,它(必须)包含在另一个DTS文件中,例如imx6q-sbc6x.dts。在此DTS文件中,定义了具有更多引脚的其他功能,这就是您可以拥有nfunctions = 2
和ngroups = 38
的原因。
如果您为电路板找到了正确的DTS文件,这些数字应该"对齐"你在转储中看到的东西。