我正在使用自定义的i.MX6主板,我正在设备树中配置引脚多路复用。
任何人都可以告诉我这个值是如何计算的
MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x130b0
在不同的dtsi中以不同的方式配置相同的GPIO
MX6QDL_PAD_SD1_DAT2__GPIO1_IO19 0x80000000
MX6QDL_PAD_SD1_DAT2__GPIO1_IO19 0x030b0
我所知道的是我们将PAD SDA1_DAT2配置为GPIO1_IO19模式..但为什么值不同..
感谢您的时间
答案 0 :(得分:1)
要了解该值的实际含义,您必须参考IMX6Q参考手册第36.4.457节焊盘控制寄存器(IOMUXC_SW_PAD_CTL_PAD_SD1_DATA2)。
您还可以查看内核源文档https://www.kernel.org/doc/Documentation/devicetree/bindings/pinctrl/fsl%2Cimx-pinctrl.txt,了解有关设备树源的更多常规信息。
该值用于控制PAD(滞后,上拉,......)。
例如,如果要启用滞后,则必须设置寄存器的第16位,如果要打开漏极,则设置第11位。
在您的情况下,您希望将SD1_DAT2 Pad转换为信号GPIO1_IO19并将Pad控制寄存器值设置为0x8000000(或0x30b0,但您必须设置更方便的内容)。