1menu "Memory management options" 2 3config PAGE_OFFSET 4 hex "Kernel page offset address" 5 default "0x40000000" 6 help 7 This option allows you to set the virtual address at which the 8 kernel will be mapped to. 9endmenu 10 11config KERNEL_4M_PAGES 12 bool "Map kernel with 4MB pages" 13 depends on METAG_META21_MMU 14 default y 15 help 16 Map the kernel with large pages to reduce TLB pressure. 17 18choice 19 prompt "User page size" 20 default PAGE_SIZE_4K 21 22config PAGE_SIZE_4K 23 bool "4kB" 24 help 25 This is the default page size used by all Meta cores. 26 27config PAGE_SIZE_8K 28 bool "8kB" 29 depends on METAG_META21_MMU 30 help 31 This enables 8kB pages as supported by Meta 2.x and later MMUs. 32 33config PAGE_SIZE_16K 34 bool "16kB" 35 depends on METAG_META21_MMU 36 help 37 This enables 16kB pages as supported by Meta 2.x and later MMUs. 38 39endchoice 40 41config NUMA 42 bool "Non Uniform Memory Access (NUMA) Support" 43 select ARCH_WANT_NUMA_VARIABLE_LOCALITY 44 help 45 Some Meta systems have MMU-mappable on-chip memories with 46 lower latencies than main memory. This enables support for 47 these blocks by binding them to nodes and allowing 48 memory policies to be used for prioritizing and controlling 49 allocation behaviour. 50 51config FORCE_MAX_ZONEORDER 52 int "Maximum zone order" 53 range 10 32 54 default "10" 55 help 56 The kernel memory allocator divides physically contiguous memory 57 blocks into "zones", where each zone is a power of two number of 58 pages. This option selects the largest power of two that the kernel 59 keeps in the memory allocator. If you need to allocate very large 60 blocks of physically contiguous memory, then you may need to 61 increase this value. 62 63 This config option is actually maximum order plus one. For example, 64 a value of 11 means that the largest free memory block is 2^10 pages. 65 66 The page size is not necessarily 4KB. Keep this in mind 67 when choosing a value for this option. 68 69config METAG_L2C 70 bool "Level 2 Cache Support" 71 depends on METAG_META21 72 help 73 Press y here to enable support for the Meta Level 2 (L2) cache. This 74 will enable the cache at start up if it hasn't already been enabled 75 by the bootloader. 76 77 If the bootloader enables the L2 you must press y here to ensure the 78 kernel takes the appropriate actions to keep the cache coherent. 79 80config NODES_SHIFT 81 int 82 default "1" 83 depends on NEED_MULTIPLE_NODES 84 85config ARCH_FLATMEM_ENABLE 86 def_bool y 87 depends on !NUMA 88 89config ARCH_SPARSEMEM_ENABLE 90 def_bool y 91 select SPARSEMEM_STATIC 92 93config ARCH_SPARSEMEM_DEFAULT 94 def_bool y 95 96config ARCH_SELECT_MEMORY_MODEL 97 def_bool y 98 99config SYS_SUPPORTS_HUGETLBFS 100 def_bool y 101 depends on METAG_META21_MMU 102 103choice 104 prompt "HugeTLB page size" 105 depends on METAG_META21_MMU && HUGETLB_PAGE 106 default HUGETLB_PAGE_SIZE_1M 107 108config HUGETLB_PAGE_SIZE_8K 109 bool "8kB" 110 depends on PAGE_SIZE_4K 111 112config HUGETLB_PAGE_SIZE_16K 113 bool "16kB" 114 depends on PAGE_SIZE_4K || PAGE_SIZE_8K 115 116config HUGETLB_PAGE_SIZE_32K 117 bool "32kB" 118 119config HUGETLB_PAGE_SIZE_64K 120 bool "64kB" 121 122config HUGETLB_PAGE_SIZE_128K 123 bool "128kB" 124 125config HUGETLB_PAGE_SIZE_256K 126 bool "256kB" 127 128config HUGETLB_PAGE_SIZE_512K 129 bool "512kB" 130 131config HUGETLB_PAGE_SIZE_1M 132 bool "1MB" 133 134config HUGETLB_PAGE_SIZE_2M 135 bool "2MB" 136 137config HUGETLB_PAGE_SIZE_4M 138 bool "4MB" 139 140endchoice 141 142config METAG_COREMEM 143 bool 144 default y if SUSPEND 145 146source "mm/Kconfig" 147