Sometime openwrt on mikrotik board wrong detecting ram. It found 64mb instead of 16, so the board hang and doesn't boot. This is a big problem when the board is mounted.
I solved the issue in this way:
File build_mipsel/linux-2.6-adm5120/linux-2.6.22-rc6/arch/mips/adm5120/adm5120_info.c, line 998
*p = t;
mem_dbg("%ldMB chip found\n", size >> 20);
(*) if (size == (64 << 20))
(*) { mem_dbg("Enrico patch, no board mikrotik with 64Mb flash, is a 16Mb on 133C");
(*) size= 16<<20;
(*) }
if (size == (32 << 20))
/* if bank size is 32MB, 2nd bank is not supported */
goto out;
(*) mean i added the line
Not much correct, but mikrotik doesn't produce a adm5120 board with 64mb ram, and i have no notice of someone else that produce it, so the patch work.
May be someone of you can do something better.
Sorry. I have no time to upload a patch.
Enrico.