Commit | Line | Data |
---|---|---|
5633004c JH |
1 | menu "Memory management options" |
2 | ||
3 | config 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. | |
9 | endmenu | |
10 | ||
11 | config 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 | ||
18 | choice | |
19 | prompt "User page size" | |
20 | default PAGE_SIZE_4K | |
21 | ||
22 | config PAGE_SIZE_4K | |
23 | bool "4kB" | |
24 | help | |
25 | This is the default page size used by all Meta cores. | |
26 | ||
27 | config 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 | ||
33 | config 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 | ||
39 | endchoice | |
40 | ||
41 | config NUMA | |
42 | bool "Non Uniform Memory Access (NUMA) Support" | |
40f09f3c | 43 | select ARCH_WANT_NUMA_VARIABLE_LOCALITY |
5633004c JH |
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 | ||
51 | config 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 | ||
69 | config 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 | ||
80 | config NODES_SHIFT | |
81 | int | |
82 | default "1" | |
83 | depends on NEED_MULTIPLE_NODES | |
84 | ||
85 | config ARCH_FLATMEM_ENABLE | |
86 | def_bool y | |
87 | depends on !NUMA | |
88 | ||
89 | config ARCH_SPARSEMEM_ENABLE | |
90 | def_bool y | |
91 | select SPARSEMEM_STATIC | |
92 | ||
93 | config ARCH_SPARSEMEM_DEFAULT | |
94 | def_bool y | |
95 | ||
5633004c JH |
96 | config ARCH_SELECT_MEMORY_MODEL |
97 | def_bool y | |
98 | ||
99 | config SYS_SUPPORTS_HUGETLBFS | |
100 | def_bool y | |
101 | depends on METAG_META21_MMU | |
102 | ||
103 | choice | |
104 | prompt "HugeTLB page size" | |
105 | depends on METAG_META21_MMU && HUGETLB_PAGE | |
106 | default HUGETLB_PAGE_SIZE_1M | |
107 | ||
108 | config HUGETLB_PAGE_SIZE_8K | |
109 | bool "8kB" | |
110 | depends on PAGE_SIZE_4K | |
111 | ||
112 | config HUGETLB_PAGE_SIZE_16K | |
113 | bool "16kB" | |
114 | depends on PAGE_SIZE_4K || PAGE_SIZE_8K | |
115 | ||
116 | config HUGETLB_PAGE_SIZE_32K | |
117 | bool "32kB" | |
118 | ||
119 | config HUGETLB_PAGE_SIZE_64K | |
120 | bool "64kB" | |
121 | ||
122 | config HUGETLB_PAGE_SIZE_128K | |
123 | bool "128kB" | |
124 | ||
125 | config HUGETLB_PAGE_SIZE_256K | |
126 | bool "256kB" | |
127 | ||
128 | config HUGETLB_PAGE_SIZE_512K | |
129 | bool "512kB" | |
130 | ||
131 | config HUGETLB_PAGE_SIZE_1M | |
132 | bool "1MB" | |
133 | ||
134 | config HUGETLB_PAGE_SIZE_2M | |
135 | bool "2MB" | |
136 | ||
137 | config HUGETLB_PAGE_SIZE_4M | |
138 | bool "4MB" | |
139 | ||
140 | endchoice | |
141 | ||
142 | config METAG_COREMEM | |
143 | bool | |
144 | default y if SUSPEND | |
145 | ||
146 | source "mm/Kconfig" |