diff options
Diffstat (limited to 'arch/sh/mm/Kconfig')
-rw-r--r-- | arch/sh/mm/Kconfig | 87 |
1 files changed, 57 insertions, 30 deletions
diff --git a/arch/sh/mm/Kconfig b/arch/sh/mm/Kconfig index 253346d7b316..28d79a474cde 100644 --- a/arch/sh/mm/Kconfig +++ b/arch/sh/mm/Kconfig | |||
@@ -1,5 +1,3 @@ | |||
1 | menu "Processor selection" | ||
2 | |||
3 | # | 1 | # |
4 | # Processor families | 2 | # Processor families |
5 | # | 3 | # |
@@ -38,27 +36,31 @@ config CPU_SUBTYPE_ST40 | |||
38 | config CPU_SHX2 | 36 | config CPU_SHX2 |
39 | bool | 37 | bool |
40 | 38 | ||
39 | config CPU_SHX3 | ||
40 | bool | ||
41 | |||
42 | choice | ||
43 | prompt "Processor sub-type selection" | ||
44 | |||
41 | # | 45 | # |
42 | # Processor subtypes | 46 | # Processor subtypes |
43 | # | 47 | # |
44 | 48 | ||
45 | comment "SH-2 Processor Support" | 49 | # SH-2 Processor Support |
46 | |||
47 | config CPU_SUBTYPE_SH7604 | ||
48 | bool "Support SH7604 processor" | ||
49 | select CPU_SH2 | ||
50 | 50 | ||
51 | config CPU_SUBTYPE_SH7619 | 51 | config CPU_SUBTYPE_SH7619 |
52 | bool "Support SH7619 processor" | 52 | bool "Support SH7619 processor" |
53 | select CPU_SH2 | 53 | select CPU_SH2 |
54 | select CPU_HAS_IPR_IRQ | ||
54 | 55 | ||
55 | comment "SH-2A Processor Support" | 56 | # SH-2A Processor Support |
56 | 57 | ||
57 | config CPU_SUBTYPE_SH7206 | 58 | config CPU_SUBTYPE_SH7206 |
58 | bool "Support SH7206 processor" | 59 | bool "Support SH7206 processor" |
59 | select CPU_SH2A | 60 | select CPU_SH2A |
61 | select CPU_HAS_IPR_IRQ | ||
60 | 62 | ||
61 | comment "SH-3 Processor Support" | 63 | # SH-3 Processor Support |
62 | 64 | ||
63 | config CPU_SUBTYPE_SH7300 | 65 | config CPU_SUBTYPE_SH7300 |
64 | bool "Support SH7300 processor" | 66 | bool "Support SH7300 processor" |
@@ -113,7 +115,7 @@ config CPU_SUBTYPE_SH7712 | |||
113 | help | 115 | help |
114 | Select SH7712 if you have a SH3-DSP SH7712 CPU. | 116 | Select SH7712 if you have a SH3-DSP SH7712 CPU. |
115 | 117 | ||
116 | comment "SH-4 Processor Support" | 118 | # SH-4 Processor Support |
117 | 119 | ||
118 | config CPU_SUBTYPE_SH7750 | 120 | config CPU_SUBTYPE_SH7750 |
119 | bool "Support SH7750 processor" | 121 | bool "Support SH7750 processor" |
@@ -125,7 +127,7 @@ config CPU_SUBTYPE_SH7750 | |||
125 | config CPU_SUBTYPE_SH7091 | 127 | config CPU_SUBTYPE_SH7091 |
126 | bool "Support SH7091 processor" | 128 | bool "Support SH7091 processor" |
127 | select CPU_SH4 | 129 | select CPU_SH4 |
128 | select CPU_SUBTYPE_SH7750 | 130 | select CPU_HAS_IPR_IRQ |
129 | help | 131 | help |
130 | Select SH7091 if you have an SH-4 based Sega device (such as | 132 | Select SH7091 if you have an SH-4 based Sega device (such as |
131 | the Dreamcast, Naomi, and Naomi 2). | 133 | the Dreamcast, Naomi, and Naomi 2). |
@@ -133,13 +135,11 @@ config CPU_SUBTYPE_SH7091 | |||
133 | config CPU_SUBTYPE_SH7750R | 135 | config CPU_SUBTYPE_SH7750R |
134 | bool "Support SH7750R processor" | 136 | bool "Support SH7750R processor" |
135 | select CPU_SH4 | 137 | select CPU_SH4 |
136 | select CPU_SUBTYPE_SH7750 | ||
137 | select CPU_HAS_IPR_IRQ | 138 | select CPU_HAS_IPR_IRQ |
138 | 139 | ||
139 | config CPU_SUBTYPE_SH7750S | 140 | config CPU_SUBTYPE_SH7750S |
140 | bool "Support SH7750S processor" | 141 | bool "Support SH7750S processor" |
141 | select CPU_SH4 | 142 | select CPU_SH4 |
142 | select CPU_SUBTYPE_SH7750 | ||
143 | select CPU_HAS_IPR_IRQ | 143 | select CPU_HAS_IPR_IRQ |
144 | 144 | ||
145 | config CPU_SUBTYPE_SH7751 | 145 | config CPU_SUBTYPE_SH7751 |
@@ -153,7 +153,6 @@ config CPU_SUBTYPE_SH7751 | |||
153 | config CPU_SUBTYPE_SH7751R | 153 | config CPU_SUBTYPE_SH7751R |
154 | bool "Support SH7751R processor" | 154 | bool "Support SH7751R processor" |
155 | select CPU_SH4 | 155 | select CPU_SH4 |
156 | select CPU_SUBTYPE_SH7751 | ||
157 | select CPU_HAS_IPR_IRQ | 156 | select CPU_HAS_IPR_IRQ |
158 | 157 | ||
159 | config CPU_SUBTYPE_SH7760 | 158 | config CPU_SUBTYPE_SH7760 |
@@ -166,7 +165,7 @@ config CPU_SUBTYPE_SH4_202 | |||
166 | bool "Support SH4-202 processor" | 165 | bool "Support SH4-202 processor" |
167 | select CPU_SH4 | 166 | select CPU_SH4 |
168 | 167 | ||
169 | comment "ST40 Processor Support" | 168 | # ST40 Processor Support |
170 | 169 | ||
171 | config CPU_SUBTYPE_ST40STB1 | 170 | config CPU_SUBTYPE_ST40STB1 |
172 | bool "Support ST40STB1/ST40RA processors" | 171 | bool "Support ST40STB1/ST40RA processors" |
@@ -181,7 +180,7 @@ config CPU_SUBTYPE_ST40GX1 | |||
181 | help | 180 | help |
182 | Select ST40GX1 if you have a ST40GX1 CPU. | 181 | Select ST40GX1 if you have a ST40GX1 CPU. |
183 | 182 | ||
184 | comment "SH-4A Processor Support" | 183 | # SH-4A Processor Support |
185 | 184 | ||
186 | config CPU_SUBTYPE_SH7770 | 185 | config CPU_SUBTYPE_SH7770 |
187 | bool "Support SH7770 processor" | 186 | bool "Support SH7770 processor" |
@@ -198,7 +197,13 @@ config CPU_SUBTYPE_SH7785 | |||
198 | select CPU_SHX2 | 197 | select CPU_SHX2 |
199 | select CPU_HAS_INTC2_IRQ | 198 | select CPU_HAS_INTC2_IRQ |
200 | 199 | ||
201 | comment "SH4AL-DSP Processor Support" | 200 | config CPU_SUBTYPE_SHX3 |
201 | bool "Support SH-X3 processor" | ||
202 | select CPU_SH4A | ||
203 | select CPU_SHX3 | ||
204 | select CPU_HAS_INTC2_IRQ | ||
205 | |||
206 | # SH4AL-DSP Processor Support | ||
202 | 207 | ||
203 | config CPU_SUBTYPE_SH73180 | 208 | config CPU_SUBTYPE_SH73180 |
204 | bool "Support SH73180 processor" | 209 | bool "Support SH73180 processor" |
@@ -213,8 +218,10 @@ config CPU_SUBTYPE_SH7722 | |||
213 | select CPU_SH4AL_DSP | 218 | select CPU_SH4AL_DSP |
214 | select CPU_SHX2 | 219 | select CPU_SHX2 |
215 | select CPU_HAS_IPR_IRQ | 220 | select CPU_HAS_IPR_IRQ |
221 | select ARCH_SPARSEMEM_ENABLE | ||
222 | select SYS_SUPPORTS_NUMA | ||
216 | 223 | ||
217 | endmenu | 224 | endchoice |
218 | 225 | ||
219 | menu "Memory management options" | 226 | menu "Memory management options" |
220 | 227 | ||
@@ -266,7 +273,7 @@ config MEMORY_SIZE | |||
266 | 273 | ||
267 | config 32BIT | 274 | config 32BIT |
268 | bool "Support 32-bit physical addressing through PMB" | 275 | bool "Support 32-bit physical addressing through PMB" |
269 | depends on CPU_SH4A && MMU && (!X2TLB || BROKEN) | 276 | depends on MMU && (CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785) |
270 | default y | 277 | default y |
271 | help | 278 | help |
272 | If you say Y here, physical addressing will be extended to | 279 | If you say Y here, physical addressing will be extended to |
@@ -295,6 +302,17 @@ config VSYSCALL | |||
295 | For systems with an MMU that can afford to give up a page, | 302 | For systems with an MMU that can afford to give up a page, |
296 | (the default value) say Y. | 303 | (the default value) say Y. |
297 | 304 | ||
305 | config NUMA | ||
306 | bool "Non Uniform Memory Access (NUMA) Support" | ||
307 | depends on MMU && SYS_SUPPORTS_NUMA && EXPERIMENTAL | ||
308 | default n | ||
309 | help | ||
310 | Some SH systems have many various memories scattered around | ||
311 | the address space, each with varying latencies. This enables | ||
312 | support for these blocks by binding them to nodes and allowing | ||
313 | memory policies to be used for prioritizing and controlling | ||
314 | allocation behaviour. | ||
315 | |||
298 | config NODES_SHIFT | 316 | config NODES_SHIFT |
299 | int | 317 | int |
300 | default "1" | 318 | default "1" |
@@ -302,14 +320,34 @@ config NODES_SHIFT | |||
302 | 320 | ||
303 | config ARCH_FLATMEM_ENABLE | 321 | config ARCH_FLATMEM_ENABLE |
304 | def_bool y | 322 | def_bool y |
323 | depends on !NUMA | ||
324 | |||
325 | config ARCH_SPARSEMEM_ENABLE | ||
326 | def_bool y | ||
327 | select SPARSEMEM_STATIC | ||
328 | |||
329 | config ARCH_SPARSEMEM_DEFAULT | ||
330 | def_bool y | ||
305 | 331 | ||
306 | config MAX_ACTIVE_REGIONS | 332 | config MAX_ACTIVE_REGIONS |
307 | int | 333 | int |
334 | default "2" if (CPU_SUBTYPE_SH7722 && SPARSEMEM) | ||
308 | default "1" | 335 | default "1" |
309 | 336 | ||
310 | config ARCH_POPULATES_NODE_MAP | 337 | config ARCH_POPULATES_NODE_MAP |
311 | def_bool y | 338 | def_bool y |
312 | 339 | ||
340 | config ARCH_SELECT_MEMORY_MODEL | ||
341 | def_bool y | ||
342 | |||
343 | config ARCH_ENABLE_MEMORY_HOTPLUG | ||
344 | def_bool y | ||
345 | depends on SPARSEMEM | ||
346 | |||
347 | config ARCH_MEMORY_PROBE | ||
348 | def_bool y | ||
349 | depends on MEMORY_HOTPLUG | ||
350 | |||
313 | choice | 351 | choice |
314 | prompt "Kernel page size" | 352 | prompt "Kernel page size" |
315 | default PAGE_SIZE_4KB | 353 | default PAGE_SIZE_4KB |
@@ -394,15 +432,4 @@ config SH_WRITETHROUGH | |||
394 | 432 | ||
395 | If unsure, say N. | 433 | If unsure, say N. |
396 | 434 | ||
397 | config SH_OCRAM | ||
398 | bool "Operand Cache RAM (OCRAM) support" | ||
399 | help | ||
400 | Selecting this option will automatically tear down the number of | ||
401 | sets in the dcache by half, which in turn exposes a memory range. | ||
402 | |||
403 | The addresses for the OC RAM base will vary according to the | ||
404 | processor version. Consult vendor documentation for specifics. | ||
405 | |||
406 | If unsure, say N. | ||
407 | |||
408 | endmenu | 435 | endmenu |