Hi all,
I have a question regarding MMU.
I've built SPARC based small embedded system.
at this system addresses 0x00000000-0x00008000 (32KB) belong to ROM and 0x80000000 - 0x80001000 to HW devices.
the problem is that when a code from first ROM page accesses a HW device register there is an infinite loop.
- cpu_sparc_handle_mmu_fault is called to bring page 0
- cpu_sparc_handle_mmu_fault is called to bring 0x80000000 and flushes 0x00000000
- cpu_sparc_handle_mmu_fault is called to bring 0x00000000 and flushes 0x80000000
...
this can be fixed if I set CPU_TLB_BITS to be 20 bits.
is there a better solution?
Michael