TI中文支持网
TI专业的中文技术问题搜集分享网站

Ti PinMux Tool生成的DTSI的寄存器地址问题

芯片:AM4372

工具:Ti PinMux Tool

用Ti PinMux Tool生成的I2C0的dtsi配置:

myi2c1_pins_default: myi2c1_pins_default {
pinctrl-single,pins = <
AM4372_IOPAD(0x18c, PIN_INPUT | MUX_MODE0) /* (Y22) I2C0_SCL.I2C0_SCL */
AM4372_IOPAD(0x188, PIN_INPUT | MUX_MODE0) /* (AB24) I2C0_SDA.I2C0_SDA */
>;
};

kernel代码中的I2C0的dtsi配置:(arch/arm/boot/dts/am437x-idk-evm.dts文件)

i2c0_pins_default: i2c0_pins_default {
pinctrl-single,pins = <
AM4372_IOPAD(0x988, PIN_INPUT | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_sda.i2c0_sda */
AM4372_IOPAD(0x98c, PIN_INPUT | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_scl.i2c0_scl */
>;
};

可以看出tool生成的寄存器分别是18c和188,kernel中的配置却是98c和988 。

根据am437x的reference manual的page650,可以查到:
988h CTRL_CONF_I2C0_SDA Section 7.3.1.144
98Ch CTRL_CONF_I2C0_SCL Section 7.3.1.145
那tool生成的18c和188是根据什么来的?还是说tool生成的地址是错的?

user3800263:

根据am437x的reference manual的page650,可以查到:
988h CTRL_CONF_I2C0_SDA Section 7.3.1.144
98Ch CTRL_CONF_I2C0_SCL Section 7.3.1.145
那tool生成的18c和188是根据什么来的?还是说tool生成的地址是错的?

user3800263:

回复 Shine:

也就是说,PinMux tool生成的dts文件无法直接使用,还需要加上Control Module base address?

赞(0)
未经允许不得转载:TI中文支持网 » Ti PinMux Tool生成的DTSI的寄存器地址问题
分享到: 更多 (0)