Hi,
I wake-up agin this thread :)
Our design change, and now include a mmu support (instead mpu).
I update barebox config, add MMU support, but keep all previous settings.
Unfortnatly, barebox don't start anymore ( no console print, even with log level and early printf).
Other baremetal applications (MemTest...) from altera keep working, and linux manage to boot.
I try to trace it with gdb (via jtag cable). It keeps looping on arch/nios2/cpu/start.S, between "EXCEPTION TRAMPOLINE" and "initd 0(R6)"
/* EXCEPTION TRAMPOLINE -- the following gets copied
* to the exception address (below), but is otherwise at the
* default exception vector offset (0x0020).
*/
_except_start:
movhi et, %hi(_exception)
ori et, et, %lo(_exception)
jmp et
_except_end:
/* INTERRUPTS -- for now, all interrupts masked and globally
* disabled.
*/
wrctl ienable, r0 /* All disabled */
/* DCACHE INIT -- if dcache not implemented, initd behaves as
* nop.
*/
movhi r4, %hi(DCACHE_LINE_SIZE)
ori r4, r4, %lo(DCACHE_LINE_SIZE)
movhi r5, %hi(DCACHE_SIZE)
ori r5, r5, %lo(DCACHE_SIZE)
mov r6, r0
1: initd 0(r6) <-- When reach here, jump to _except_start
add r6, r6, r4
bltu r6, r5, 1b
Any idea or suggestions ?
Regards,
Christophe