DEVICE_REG32_W(MAGIC_ADDR, 0);
void (*exit)();
UINT32 i, entry_addr;
DEVICE_REG32_W(MAGIC_ADDR, 0);
while(1)
{
entry_addr = DEVICE_REG32_R(MAGIC_ADDR);
if (entry_addr != 0)
{
exit = (void (*)())entry_addr;
(*exit)();
}
for (i=0; i < 100; i++)
asm("nop");
}
the code at RC side :
PushData(ddr_init,0,&boot_entry_addr0);
WDC_WriteAddr32(hDev,1,0xffffc,boot_entry_addr0);
WDC_WriteAddr32(hDev,0,0x54,0x0);
while (1) {
-
WDC_ReadAddr32(hDev, 3, 0, &tempReg); if (tempReg == 0) break;
for (i = 0; i < 1000; i++) i++;
}PushData(core0_code,0,&boot_entry_addr0);
WDC_WriteAddr32(hDev,1,0xffffc,boot_entry_addr0);
Thanks in adance for your help!