Hello Folks!
I am trying to understand the device tree file of imx8mmevk board because I intend to make a change in the imx8mm-evk.dts file. At the file "fsl,imx8mm-pinctrl.txt" I saw that "fsl,pins" field has the format <PIN_FUNC_ID CONFIG>. The PIN_FUNC_ID field, I found at imx8mm-pinfunc.h file and the CONFIG field I found at "i.MX8M Mini Applications Processor Reference Manual, Rev. 2, 08/2019" document.
From "i.MX8M Mini Applications Processor Reference Manual, Rev. 2, 08/2019" document the CONFIG value has 9 bits. Like the example below
pinctrl_csi_rst: csi_rst_grp {
fsl,pins = <
MX8MM_IOMUXC_GPIO1_IO06_GPIO1_IO6 0x19
MX8MM_IOMUXC_GPIO1_IO14_CCMSRCGPCMIX_CLKO1 0x59
>;
};
pinctrl_ir_recv: ir-recv {
fsl,pins = <
MX8MM_IOMUXC_GPIO1_IO13_GPIO1_IO13 0x4f
>;
};
I would like to understand why the I2C pins doesn't use the same syntax of the other pins. Look the example below
pinctrl_i2c1: i2c1grp {
fsl,pins = <
MX8MM_IOMUXC_I2C1_SCL_I2C1_SCL 0x400001c3
MX8MM_IOMUXC_I2C1_SDA_I2C1_SDA 0x400001c3
>;
};
pinctrl_i2c2: i2c2grp {
fsl,pins = <
MX8MM_IOMUXC_I2C2_SCL_I2C2_SCL 0x400001c3
MX8MM_IOMUXC_I2C2_SDA_I2C2_SDA 0x400001c3
>;
};
pinctrl_i2c3: i2c3grp {
fsl,pins = <
MX8MM_IOMUXC_I2C3_SCL_I2C3_SCL 0x400001c3
MX8MM_IOMUXC_I2C3_SDA_I2C3_SDA 0x400001c3
>;
};
Does anybody can explain why I2C pin doesn't use the same form of the other pins at the device tree file?
Thanks in advance.
Solved! Go to Solution.
Hi oprata
for i2c it is necessary to set SION bit, described in sect.8.2.3.3 SW Loopback through SION bit
i.MX 8M Mini Applications Processor Reference Manual
In device tree : "SION(1 << 30): Software Input On Field."
Best regards
igor
Hi oprata
for i2c it is necessary to set SION bit, described in sect.8.2.3.3 SW Loopback through SION bit
i.MX 8M Mini Applications Processor Reference Manual
In device tree : "SION(1 << 30): Software Input On Field."
Best regards
igor