Dear NXP,
We use DA9052+i.MX536 and designed the board, we found the error when boot, here is log:
<6>[ | 0.653028] da9052_ssc_i2c 2-0048: 2 - da9052_i2c_read:master_xfer Failed!! |
<6>[ | 0.653045] da9052_i2c_is_connected - i2c read failed..... |
<6>[ | 1.163249] da9052_ssc_i2c 2-0048: 2 - da9052_i2c_read:master_xfer Failed!! |
<6>[ | 1.163260] da9052_i2c_is_connected - i2c read failed..... |
i2c2 have three devices, da9052, tw8834, gt9xx ,
What can i do, please help!
kernel version:2.6.35.3
BR,
Inuyasha
1. It has a configurable SLAVE write address (default: 0x90) and a configurable SLAVE read address (default: 0x91).
DA9053 slave address is ok
2. This problem occurs only when a warm restart, cold reset is ok.
This can occur when a system reset does not cause all I2C devices to be reset. Thus, SDAn can be negated low by another
I2C device while this I2C module is coming out of reset and will stay low indefinitely. The following
procedure can be used to force this I2C module to generate SCLn so that the device driving SDAn can
finish its transaction:
1. Disable the I2C module and set the master bit by setting I2CnCR to 0x20.
2. Enable the I2C module by setting I2CnCR to 0xA0.
3. Read I2CnDR.
4. Return the I2C module to slave mode by setting I2CnCR to 0x80."
~igor
Dear igorpadykov
Attached is log, the slave devices of i2c3 are all probe failed.
If i disabled the da9053 init func in "mxc_board_init", like this:
#if defined(CONFIG_PMIC_DA9052)
#if !defined(CONFIG_MX53_MFG)
//mx53_b1023l_init_da9052();
#endif
#endif
other slave devices of i2c3 will be probe ok, i seach I2CnCR, how to do it?
I also try to do recovery i2c when booting up in uboot, like this:
#ifdef CONFIG_I2C_MXC
setup_i2c(CONFIG_SYS_I2C_PORT);
i2c_bus_recovery();
setup_pmic_voltages();
#endif
But if i enable i2c_bus_recovery, the system will can't be booting up.
Hi Inuyasha
for i2c iomux settings it is necessary to set SION bit, check
i2c2 CCM_CCGR1(CG10) and follow sect.19.5 Using the I2C Interface i.MX53
System Development User’s Guide (rev.1, 3/2011)
http://www.freescale.com/files/32bit/doc/user_guide/MX53UG.pdf
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
I also check SDA of i2c2, the sda always been pull down when warm restart. But cold start is ok.
1. It has a configurable SLAVE write address (default: 0x90) and a configurable SLAVE read address (default: 0x91).
DA9053 slave address is ok
2. This problem occurs only when a warm restart, cold reset is ok.