- D-cache invalidate before SDRAM read

git-svn-id: http://moon:8086/svn/mips@39 a8ebac50-d88d-4704-bea3-6648445a41b3
This commit is contained in:
2015-05-29 20:05:46 +00:00
parent 8c235914f4
commit f3e17bb602
+16 -1
View File
@@ -14,10 +14,13 @@ void handler3(void)
void main()
{
uint32_t i;
uint32_t data;
uint8_t led = 0;
volatile uint32_t *pUART0_stat = (uint32_t*)SYS_UART_STAT;
volatile uint32_t *pGPIO = (uint32_t*)SYS_GPIO_0_DATA;
volatile uint32_t *pGPIODIR = (uint32_t*)SYS_GPIO_0_DIR;
volatile uint32_t *pSDRAM = (uint32_t*)FLASH_BASE_MEM;
CP0_SR_write(0x0060000D);
*pGPIODIR = GPIO_0_DFLT_DIR;
@@ -35,9 +38,21 @@ void main()
sputs("Iteration # ");print_word(led);sputs("\n");
*pGPIO = led;
data = 0x10011111;
for (i=0; i < 16; i++)
{
pSDRAM[i] = data;
data += 0x10011111;
}
DCACHE_invalidate_at((uint32_t*)pSDRAM);
for (i=0; i < 16; i++)
{
sputs("SDRAM");print_word(pSDRAM[i]);sputs("\n");
}
if(led == 0)
{
memdump((uint8_t*)(0x7FFFEFF0-4096-256), 0, 16, 256);
memdump((uint8_t*)pSDRAM, 0, 16, 256);
}
led = (led+1) % 64;