
Dear Håvard Skinnemoen,
I have tested the simple TLB implementation on our own hardware and it does work with CFI driver. Thanks a lot for introducing this, we had to wait so long ...
Am 02.08.2010 14:06, schrieb Haavard Skinnemoen:
Use the MMU hardware to set up 1:1 mappings between physical and virtual addresses. This allows us to bypass the cache when accessing the flash without having to do any physical-to-virtual address mapping in the CFI driver.
The virtual memory mappings are defined at compile time through a sorted array of virtual memory range objects. When a TLB miss exception happens, the exception handler does a binary search through the array until it finds a matching entry and loads it into the TLB. The u-boot image itself is covered by a fixed TLB entry which is never replaced.
This makes the 'saveenv' command work again on ATNGW100 and other boards using the CFI driver, hopefully without breaking any rules.
Signed-off-by: Haavard Skinnemoen haavard.skinnemoen@atmel.com
Tested-by: Andreas Bießmann biessmann@corscience.de