这里面的
pinctrl-single,pins:0x25C, 0x188 。。。。这些地址如何得出;哪位帮忙解答一下
&am43xx_pinmux { pinctrl-names ="default","sleep"; pinctrl-0 = <&ddr3_vtt_toggle_default &wlan_pins_default &debugss_pins &unused_pins>; pinctrl-1 = <&wlan_pins_sleep>; ddr3_vtt_toggle_default: ddr_vtt_toggle_default { pinctrl-single,pins = < 0x25C (DS0_PULL_UP_DOWN_EN | PIN_OUTPUT_PULLUP | DS0_FORCE_OFF_MODE | MUX_MODE7)/* spi0_cs0.gpio5_7 */ >; }; i2c0_pins: i2c0_pins { pinctrl-single,pins = < 0x188 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_sda.i2c0_sda */ 0x18c (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_scl.i2c0_scl */ >; }; i2c1_pins_default: i2c1_pins_default { pinctrl-single,pins = < 0x15c (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2) /* spi0_cs0.i2c1_scl */ 0x158 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2) /* spi0_d1.i2c1_sda */ >; };}
Shine:
这些是pinmux寄存器的offset地址,这些offset地址+Control Module base address可以得到实际的寄存器地址。
www.ti.com/.../spruhl7h.pdf
user3800263:
pin0对应0x800,pin1对应0x804,pin2对应0x808以此类推。但是pin0不一定等于/sys/class/gpio中的GPIO0,pin0只对应着/sys/kernel/debug/pinctrl/44e10800.pinmux/pinmux-pins
你的0x188和0x18c就对应着0x988和0x98c,对照着Reference Manual看一看地址就知道了,SPRUHL7H.pdf。
TI中文支持网

