| 1 | This document describes the Mutek virtual memory support. |
| 2 | |
| 3 | == CONFIG TOKEN: == |
| 4 | |
| 5 | Here is the list of new token add by virtual memory support: |
| 6 | |
| 7 | CONFIG_HEXO_ARCH_MMU / CONFIG_HEXO_CPU_MMU |
| 8 | Type of MMU is used (processor or architecture) |
| 9 | CONFIG_HEXO_MMU |
| 10 | Enable MMU support ( one of two previous token are require ) |
| 11 | CONFIG_HEXO_MMU_PADDR |
| 12 | Physical address size in bits ( Must be define if CONFIG_HEXO_MMU is enable ) |
| 13 | CONFIG_HEXO_MMU_VADDR |
| 14 | Virtual address size in bits ( Must be define if CONFIG_HEXO_MMU is enable ) |
| 15 | CONFIG_HEXO_MMU_PAGESIZE |
| 16 | Virtual page size in bytes ( Must be define if CONFIG_HEXO_MMU is enable ) |
| 17 | |
| 18 | |
| 19 | CONFIG_VMEM_KERNEL_ALLOC |
| 20 | Enable Mutek virtual memory allocator. |
| 21 | CONFIG_VMEM_PHYS_ALLOC |
| 22 | Enable Mutek physical page allocator. |
| 23 | CONFIG_VMEM |
| 24 | Globaly enable: enable both MMU support and Mutek allocators. |
| 25 | CONFIG_SOCLIB_VMEM_MALLOC_REGION_SIZE |
| 26 | Preallocate memory size for malloc (see below). |
| 27 | |
| 28 | == Some Explanation == |
| 29 | |
| 30 | A memory region is initialy allocated for the memory allocator (malloc). The virtual memory is disabled when Mutek boot, but virtual memory allocators need to use malloc for their structures. So malloc must be available, with enought already mapped space. |
| 31 | |
| 32 | == Plateform modification == |
| 33 | |
| 34 | You must substitute the ''vci_xcache_wrapper'' by ''vci_vcache_wrapper2'' and the ''vci_ram'' by ''vci_simple_ram'' in the mutek tutorial plateform for virtual memory testing. |
| 35 | |