Hi Stefan,
I am working along with Chirag to port Genode on imx6.
We inserted the existing RAM regions in Platform::_ram_regions.( We rechecked it with linux kernel source code for imx6) But still we are getting page fault on every access to new Rom_module.
I tried to track the memory allocation what I understood is,
In map_local() call,
when inserting into page tables in "_insert_second_level()" function in short_translation_table.h file of base-hw, slab->phys_addr() and slab->virt_addr() return 0 after kernel initialization. So it creates a new page table and inserting into it. Inserting the same values(phys:10000000, virt:1000) as arguments of map_local() function in platform.cc.
When I print the address of new page table created, I found that it is in the range of Program Image.(address of pt is 10159000, and program image range is (10001000-10189fa4).
I wonder if the memory allotted is clashing with program memory.
Or,
Can it be the issue with MMDC controller of imx6? Because no other board in base-hw uses MMDC controller, do we need to implement the interface for MMDC in imx6?
Thanks and Regards
Praveen,
IIT Madras