Hi,
I've tried running r47 fiasco kernel on beagleboard xm platform, it was fine, but after upgrading sources to r52, it broke.
Output message hang after this line. Hello from Startup::stage2
After debugged using JTAG, I found that after page table modified, MMU still can't translate that address. So I add this line to source:
--- src/kern/arm/paging-arm.cpp (revision 52) +++ src/kern/arm/paging-arm.cpp (working copy) @@ -348,6 +348,7 @@ void Pte_ptr::write_back_if(bool, Mword asid = Mem_unit::Asid_invalid) { + Mem_unit::clean_dcache(pte); if (asid != Mem_unit::Asid_invalid) Mem_unit::tlb_flush(asid); }
Then output message hang after this line: Calibrating timer loop... done.
It seems that MMU doesn't notice page table was switched to sigma0's pagetable.
I also tried pandaboard, it just works fine.
Does anybody have idea how to fix this?
Best regard, SIn-ta Hsiea