AnsweredAssumed Answered

MPC83xx 512MB DDR

Question asked by will o'neill on Apr 5, 2016
Latest reply on Apr 6, 2016 by will o'neill

Hello,

I have a custom MPC8308-based board with 512MB of DDR RAM.  I'm using two IBATs to configure the memory like this:

 

#define CONFIG_SYS_SDRAM_LOWER CONFIG_SYS_SDRAM_BASE
#define CONFIG_SYS_SDRAM_UPPER (CONFIG_SYS_SDRAM_BASE + 0x10000000)

#define CONFIG_SYS_IBAT0L   (CONFIG_SYS_SDRAM_LOWER | BATL_PP_10 | BATL_MEMCOHERENCE)
#define CONFIG_SYS_IBAT0U   (CONFIG_SYS_SDRAM_LOWER | BATU_BL_256M | BATU_VS | BATU_VP)
#define CONFIG_SYS_DBAT0L   CONFIG_SYS_IBAT0L
#define CONFIG_SYS_DBAT0U   CONFIG_SYS_IBAT0U

#define CONFIG_SYS_IBAT1L   (CONFIG_SYS_SDRAM_UPPER | BATL_PP_10 | BATL_MEMCOHERENCE)
#define CONFIG_SYS_IBAT1U   (CONFIG_SYS_SDRAM_UPPER | BATU_BL_256M | BATU_VS | BATU_VP)
#define CONFIG_SYS_DBAT1L   CONFIG_SYS_IBAT1L
#define CONFIG_SYS_DBAT1U   CONFIG_SYS_IBAT1U

 

U-boot is able to access the full 512MB, but when I go to boot Linux (3.18.17) it crashes with a "kernel paging request" error when I go to access >256MB of memory.  It works fine when I only have 256MB configured.  Has anyone had issues getting 512MB to work in Linux with a mpc83xx CPU before?

 

Will.

Outcomes