Subject: Trouble moving custom MPC8548 board to U-boot 1.3

From: Pieter <[email-masked]>
Date: Tue, 06 Jan 2009 15:28:02 +0200

Hi all,

I have spent quite some time trying to move from U-Boot 1.2 to a newer
version.. I am stuck at the initialization of the ram. The ram checksum
fails and gives me a "total memory of 0". (the board has 512MB and work
when booting uboot 1.2)

can anyone pls. point me in the right direction?

My console output is as follows:

    U-Boot 2008.10-00334-g90665e3-dirty-svn1154 (Jan  6 2009 -
    13:40:47)           

    CPU:   8548E, Version: 1.1,
    (0x80390011)                                       
    Core:  E500, Version: 1.0,
    (0x80210010)                                        
    Clock
    Configuration:                                                           

           CPU:990  MHz, CCB:396 
    MHz,                                             
           DDR:198  MHz (396 MT/s data rate), LBC:49.500
    MHz                       
    L1:    D-cache 32 kB
    enabled                                                   
           I-cache 32 kB
    enabled                                                   
    Board: Equus
    MPC8548                                                           
        PCI1: 64 bit, 66 MHz,
    sync                                                 
    I2C:  
    ready                                                                   

    DRAM: 
    Initializing                                                            

    fsl_ddr_sdram                                                                  

    starting at step 1
    (STEP_GET_SPD)                                              
    SPD checksum unexpected. Checksum in SPD = 27, computed SPD =
    74               
    DIMM 0: failed
    checksum                                                        
    Error: compute_dimm_parameters non-zero returned FATAL value for
    memctl=0 dimm=0
    Programming controller
    0                                                       
    No dimms present on controller 0; skipping
    programming                         
    total_memory =
    0                                                               
    DDR: only 16M, 32M, 64M, 128M, 256M, 512M, 1G and 2G are
    supported.            
        DDR: 64
    MB                                                                 
    Top of RAM usable for U-Boot at:
    04000000                                      
    Reserving 266k for U-Boot at:
    03fb0000                                         
    Reserving 136k for malloc() at:
    03f8e000                                       
    Reserving 72 Bytes for Board Info at:
    03f8dfb8                                 
    Reserving 64 Bytes for Global Data at:
    03f8df78                                
    Stack Pointer at:
    03f8df58                                                     
    New Stack Pointer is: 03f8df58

My DDR configuration is as follows:

    /* DDR Setup */
    #define CONFIG_VERY_BIG_RAM           

    #define CONFIG_FSL_DDR2
    #undef CONFIG_FSL_DDR_INTERACTIVE
    #define CONFIG_SPD_EEPROM           
    #define CONFIG_DDR_SPD
    #define CONFIG_DDR_DLL                   
    #define CONFIG_DDR_2T_TIMING       
    #define CONFIG_DDR_ECC
    #undef     CONFIG_ECC_INIT_VIA_DDRCONTROLLER   

    #define CONFIG_MEM_INIT_VALUE                    0xDeadBeef
    #define CONFIG_SYS_DDR_SDRAM_BASE            0x00000000
    #define CONFIG_SYS_SDRAM_BASE                   
    CONFIG_SYS_DDR_SDRAM_BASE
    #define CONFIG_NUM_DDR_CONTROLLERS        1
    #define CONFIG_DIMM_SLOTS_PER_CTLR        1
    #define CONFIG_CHIP_SELECTS_PER_CTRL    2

thanks pieter