[U-Boot] MPC8572E I2C bus speed after emulator reset

Scott Coulter scott.coulter at cyclone.com
Fri Mar 27 17:52:54 CET 2009


Hi everyone,

I am seeing a strange issue that someone may have bumped into before.  I
am running a modified version of Freescale's v2008.10 U-boot release
from the December 2008 LTIB package on our 8572E based board.  Under
normal reset conditions (power up or reset switch), the board boots and
runs fine including loading and running linux.

If however I connect a JTAG emulator (WindRiver probe) and reset the
target using the "inn" command, which should reset the core without
loading any registers, and follow up with a "go" command which starts
the core fetching from the reset vector, the read of the DIMM SPD data
fails.  Further analysis shows that the serial EEPROM doesn't answer the
bell because the I2C bus clock is running at something close to 4MHz
instead of the 400KHz specified.

While the target is in this state, I can use the emulator to jack up the
I2C divider to its max (0x3F) and run a dummy I2C read.  Changing the
divider does have an effect on the I2C clock frequency.  It is almost as
though the input clock to the I2C block is running way too fast.  From
the Freescale documentation, the I2C clock is half the CCB clock.  The
UART prints without problem so the baud rate dividers and CCB clock
frequency would seem to be all right.  The U-boot banner portion which
reads all of the clock ratios is not different between and hard reset
and an emulator reset.  A read of the PORPLLSR returns the correct
ratios even when the I2C clock speed is way off.

I have an older version of U-boot for the board which is based of the
initial port that Kumar did (no MP support, etc.).  With this version of
U-boot in flash, the "inn" "go" sequence works fine.  The only thing
that I can think of is that the older U-boot has a different init
sequence.

Does anyone know of way to ensure that the I2C input clock is stable
before attempting I2C operations?

Thanks in advance,

Scott





___________________________________________________________________

  Scott N. Coulter
  Senior Software Engineer
  
  Cyclone Microsystems          
  370 James Street              Phone:  203.786.5536 ext. 118
  New Haven, CT 06513-3051      Email:  scott.coulter at cyclone.com
  U.S.A.                        Web:    http://www.cyclone.com
___________________________________________________________________



More information about the U-Boot mailing list