No data is received on I2C4_SCL and I2C4_SDA lines on iMx7DSABRESD board

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

No data is received on I2C4_SCL and I2C4_SDA lines on iMx7DSABRESD board

跳至解决方案
883 次查看
amnatehreem
Contributor II

I am working on iMx7DSABRESD board. I am configuring I2C4 device exposed as J20 connector (also named MFI). The pad settings that I have done are:

#define I2C4_CLK_ROOT 0x3038AF00
#define I2C4_CLK_ROOT_VALUE 0x11000001
#define IOMUXC_SW_MUX_CTL_PAD_SAI1_RX_SYNC 0x30330210 
#define IOMUXC_SW_MUX_CTL_PAD_SAI1_RX_BCLK 0x30330214 
#define IOMUXC_SW_PAD_CTL_PAD_SAI1_RX_SYNC 0x30330480 
#define IOMUXC_SW_PAD_CTL_PAD_SAI1_RX_BCLK 0x30330484 
#define IOMUXC_I2C4_SCL_SELECT_INPUT 0x303305EC
#define IOMUXC_I2C4_SDA_SELECT_INPUT 0x303305F0
/* Steps for the configuration
1. Write I2C4_CLK_ROOT_VALUE in I2C4_CLK_ROOT to enable the clock.
2. Select daisy chain values from the IOMUXC_I2C4_SCL_SELECT_INPUT and IOMUXC_I2C4_SDA_SELECT_INPUT registers by writing 0x03 to both.
3. Write 0x03 to both IOMUXC_SW_MUX_CTL_PAD_SAI1_RX_SYNC and IOMUXC_SW_MUX_CTL_PAD_SAI1_RX_BCLK to ensure that I2C4 is selected. 
4. Write 0x7F to both IOMUXC_SW_PAD_CTL_PAD_SAI1_RX_SYNC and IOMUXC_SW_PAD_CTL_PAD_SAI1_RX_BCLK to ensure the pad settings.
*/

The problem is I get nothing except start and stop signals on the SCL and SDA lines. I don't get even these start and stop signals when I use any other pad except SAI1 registers.
I've also configured SAI1_RX_SYNC and SAI1_RX_BCLK as GPIO and toggled them and they are working perfectly.

The driver I am using for this device is working perfectly fine when I enable the I2C device of I2C3 module (exposed as J33 connector).

标签 (1)
1 解答
778 次查看
igorpadykov
NXP Employee
NXP Employee

Hi Amna

regarding IOMUXC_SW_MUX_CTL_PAD_SAI1_RX_SYNC, seems for selecting

I2C4, ALT3 should be set (0x..13)

 

pastedImage_1.jpg

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

在原帖中查看解决方案

2 回复数
779 次查看
igorpadykov
NXP Employee
NXP Employee

Hi Amna

regarding IOMUXC_SW_MUX_CTL_PAD_SAI1_RX_SYNC, seems for selecting

I2C4, ALT3 should be set (0x..13)

 

pastedImage_1.jpg

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

778 次查看
amnatehreem
Contributor II

Thank you. It solved my problem, but I still don't understand what enabling 'Force input path of pad SAI1_RX_SYNC' has to do with I2C4?

0 项奖励
回复