... const uint sdram_table[] = { /* single read. (offset 0 in upm RAM) */ 0x1F07D004, 0xEEAEE004, 0x11ADD004, 0xEFBBA000, // generates 3 LCS1 //0x1F07D004, 0xEEAEE004, 0xE1ADD004, 0xEFBBA000, // generates 5 LCS1 0x1FF75447, 0x1FF77C34, 0xEFEABC34, 0x1FB57C35, // generates 3 LCS1 //0xEFF75447, 0xEFF77C34, 0xEFEABC34, 0x1FB57C35, // generates 5 LCS1 /* burst read. (Offset 8 in upm RAM) */ 0x1F07D004, 0xEEAEE004, 0x00ADC004, 0x00AFC000, 0x00AFC000, 0x01AFC000, 0x0FBB8000, 0x1FF75447, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, /* single write. (Offset 0x18 in upm RAM) */ 0x1F27D004, 0xEEAEA000, 0x01B90004, 0x1FF75447, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, /* burst write. (Offset 0x20 in upm RAM) */ 0x1F07D004, 0xEEAEA000, 0x00AD4000, 0x00AFC000, 0x00AFC000, 0x01BB8004, 0x1FF75447, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, /* Refresh cycle, offset 0x30 */ 0x1FF5DC84, 0xFFFFFC04, 0xFFFFFC04, 0xFFFFFC04, 0xFFFFFC84, 0xFFFFFC07, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, /* Exception, 0ffset 0x3C */ 0x7FFFFC07, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, }; static void _init_upm(void) { volatile ccsr_lbc_t *lbc = (void *)(CONFIG_SYS_MPC85xx_LBC_ADDR); uint lcrr = 0x80000002; /* set to 133 MHz (max. for this board) */ out_be32 (&lbc->lcrr, lcrr); asm ("sync;isync;msync"); out_be32 (&lbc->br1, 0xe00018a1); /* address 0xe000_0000, 32bit, UPMB, enabled */ out_be32 (&lbc->or1, 0xffff0000); asm ("sync;isync;msync"); out_be32 (&lbc->ltesr, 0xffffffff); /* Clear LBC error interrupts */ out_be32 (&lbc->lteir, 0xffffffff); /* Enable LBC error interrupts */ out_be32 (&lbc->mbmr, 0x0); upmconfig(UPMB, (uint *)sdram_table, sizeof(sdram_table)/sizeof(uint)); } ...
Is the chip select marked as cacheable? For this sort of processor, burst requests are only made to the memory controller by cacheable core accesses. And the burst size would then typically be a cache line.
... Paul
Thanks Paul for your feedback.
I'm on holdays but will take a look at it next week.
regards
Wolfgang R.