]> git.sur5r.net Git - u-boot/commitdiff
FSL: Fix get_cpu_board_revision() return value.
authorRafal Czubak <rcz@semihalf.com>
Wed, 8 Oct 2008 11:41:30 +0000 (13:41 +0200)
committerAndrew Fleming-AFLEMING <afleming@freescale.com>
Wed, 8 Oct 2008 18:19:12 +0000 (13:19 -0500)
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>
board/freescale/common/sys_eeprom.c

index e53ead04fdf49fe38479d0c3694763346aaf1e32..9bef92e8155603e6252317cd1d41015b397f0367 100644 (file)
@@ -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