diff options
author | Eric Millbrandt <emillbrandt@coldhaus.com> | 2009-09-03 13:09:44 (GMT) |
---|---|---|
committer | Heiko Schocher <hs@denx.de> | 2009-09-06 09:26:04 (GMT) |
commit | 5da71efa18e8b4eac9afd8bfa13e3c7e7ddde1d0 (patch) | |
tree | cc1f409424f382c05c18cf8e6bd452fdc6768a44 /README | |
parent | 9f23ca42b3ba19b24e66fade572f2b86d929b6e8 (diff) | |
download | u-boot-5da71efa18e8b4eac9afd8bfa13e3c7e7ddde1d0.tar.xz |
Reset i2c slave devices during init on mpc5xxx cpus
Reset any i2c devices that may have been interrupted during a system reset.
Normally this would be accomplished by clocking the line until SCL and SDA
are released and then sending a start condtiion (From an Atmel datasheet).
There is no direct access to the i2c pins so instead create start commands
through the i2c interface. Send a start command then delay for the SDA Hold
time, repeat this by disabling/enabling the bus a total of 9 times.
Signed-off-by: Eric Millbrandt <emillbrandt@dekaresearch.com>
Diffstat (limited to 'README')
-rw-r--r-- | README | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -1366,6 +1366,13 @@ The following options need to be configured: therefore be cleared to 0 (See, eg, MPC823e User's Manual p.16-473). So, set CONFIG_SYS_I2C_SLAVE to 0. + CONFIG_SYS_I2C_INIT_MPC5XXX + + When a board is reset during an i2c bus transfer + chips might think that the current transfer is still + in progress. Reset the slave devices by sending start + commands until the slave device responds. + That's all that's required for CONFIG_HARD_I2C. If you use the software i2c interface (CONFIG_SOFT_I2C) |