summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRafal Czubak <rcz@semihalf.com>2008-10-08 13:41:30 +0200
committerAndrew Fleming-AFLEMING <afleming@freescale.com>2008-10-08 13:19:12 -0500
commite46c7bfb8bc3c304cedd20f7a365d6e78d7eaf17 (patch)
tree18e5cab330bbac9cfa22f74eca42c32aac1f3762
parent5297246bbaa9943c0da1ec2e717b72e4ab6b830e (diff)
downloadu-boot-imx-e46c7bfb8bc3c304cedd20f7a365d6e78d7eaf17.zip
u-boot-imx-e46c7bfb8bc3c304cedd20f7a365d6e78d7eaf17.tar.gz
u-boot-imx-e46c7bfb8bc3c304cedd20f7a365d6e78d7eaf17.tar.bz2
FSL: Fix get_cpu_board_revision() return value.
get_cpu_board_revision() returned board revision based on information stored in global static struct eeprom. It should instead use one from local struct board_eeprom, to which the data is actually read from EEPROM. The bug led to system hang after printing L1 cache information on U-Boot startup. The problem was observed on MPC8555CDS system and possibly affects other Freescale MPC85xx boards using CFG_I2C_EEPROM_CCID. The change has been successfully tested on MPC8555CDS system. Signed-off-by: Rafal Czubak <rcz@semihalf.com>
-rw-r--r--board/freescale/common/sys_eeprom.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/board/freescale/common/sys_eeprom.c b/board/freescale/common/sys_eeprom.c
index e53ead0..9bef92e 100644
--- a/board/freescale/common/sys_eeprom.c
+++ b/board/freescale/common/sys_eeprom.c
@@ -463,6 +463,6 @@ unsigned int get_cpu_board_revision(void)
if ((be.major == 0xff) && (be.minor == 0xff))
return MPC85XX_CPU_BOARD_REV(0, 0);
- return MPC85XX_CPU_BOARD_REV(e.major, e.minor);
+ return MPC85XX_CPU_BOARD_REV(be.major, be.minor);
}
#endif