diff options
Diffstat (limited to 'arch/sh/mm/Kconfig')
-rw-r--r-- | arch/sh/mm/Kconfig | 67 |
1 files changed, 39 insertions, 28 deletions
diff --git a/arch/sh/mm/Kconfig b/arch/sh/mm/Kconfig index 43f3972a5fb..cf446bbab5b 100644 --- a/arch/sh/mm/Kconfig +++ b/arch/sh/mm/Kconfig | |||
@@ -2,7 +2,6 @@ | |||
2 | # Processor families | 2 | # Processor families |
3 | # | 3 | # |
4 | config CPU_SH2 | 4 | config CPU_SH2 |
5 | select SH_WRITETHROUGH if !CPU_SH2A | ||
6 | bool | 5 | bool |
7 | 6 | ||
8 | config CPU_SH2A | 7 | config CPU_SH2A |
@@ -19,6 +18,7 @@ config CPU_SH4 | |||
19 | select CPU_HAS_INTEVT | 18 | select CPU_HAS_INTEVT |
20 | select CPU_HAS_SR_RB | 19 | select CPU_HAS_SR_RB |
21 | select CPU_HAS_PTEA if (!CPU_SUBTYPE_ST40 && !CPU_SH4A) || CPU_SHX2 | 20 | select CPU_HAS_PTEA if (!CPU_SUBTYPE_ST40 && !CPU_SH4A) || CPU_SHX2 |
21 | select CPU_HAS_FPU if !CPU_SH4AL_DSP | ||
22 | 22 | ||
23 | config CPU_SH4A | 23 | config CPU_SH4A |
24 | bool | 24 | bool |
@@ -32,7 +32,6 @@ config CPU_SH4AL_DSP | |||
32 | config CPU_SUBTYPE_ST40 | 32 | config CPU_SUBTYPE_ST40 |
33 | bool | 33 | bool |
34 | select CPU_SH4 | 34 | select CPU_SH4 |
35 | select CPU_HAS_INTC2_IRQ | ||
36 | 35 | ||
37 | config CPU_SHX2 | 36 | config CPU_SHX2 |
38 | bool | 37 | bool |
@@ -52,26 +51,22 @@ choice | |||
52 | config CPU_SUBTYPE_SH7619 | 51 | config CPU_SUBTYPE_SH7619 |
53 | bool "Support SH7619 processor" | 52 | bool "Support SH7619 processor" |
54 | select CPU_SH2 | 53 | select CPU_SH2 |
55 | select CPU_HAS_IPR_IRQ | ||
56 | 54 | ||
57 | # SH-2A Processor Support | 55 | # SH-2A Processor Support |
58 | 56 | ||
59 | config CPU_SUBTYPE_SH7206 | 57 | config CPU_SUBTYPE_SH7206 |
60 | bool "Support SH7206 processor" | 58 | bool "Support SH7206 processor" |
61 | select CPU_SH2A | 59 | select CPU_SH2A |
62 | select CPU_HAS_IPR_IRQ | ||
63 | 60 | ||
64 | # SH-3 Processor Support | 61 | # SH-3 Processor Support |
65 | 62 | ||
66 | config CPU_SUBTYPE_SH7705 | 63 | config CPU_SUBTYPE_SH7705 |
67 | bool "Support SH7705 processor" | 64 | bool "Support SH7705 processor" |
68 | select CPU_SH3 | 65 | select CPU_SH3 |
69 | select CPU_HAS_IPR_IRQ | ||
70 | 66 | ||
71 | config CPU_SUBTYPE_SH7706 | 67 | config CPU_SUBTYPE_SH7706 |
72 | bool "Support SH7706 processor" | 68 | bool "Support SH7706 processor" |
73 | select CPU_SH3 | 69 | select CPU_SH3 |
74 | select CPU_HAS_IPR_IRQ | ||
75 | help | 70 | help |
76 | Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU. | 71 | Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU. |
77 | 72 | ||
@@ -91,14 +86,12 @@ config CPU_SUBTYPE_SH7708 | |||
91 | config CPU_SUBTYPE_SH7709 | 86 | config CPU_SUBTYPE_SH7709 |
92 | bool "Support SH7709 processor" | 87 | bool "Support SH7709 processor" |
93 | select CPU_SH3 | 88 | select CPU_SH3 |
94 | select CPU_HAS_IPR_IRQ | ||
95 | help | 89 | help |
96 | Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. | 90 | Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. |
97 | 91 | ||
98 | config CPU_SUBTYPE_SH7710 | 92 | config CPU_SUBTYPE_SH7710 |
99 | bool "Support SH7710 processor" | 93 | bool "Support SH7710 processor" |
100 | select CPU_SH3 | 94 | select CPU_SH3 |
101 | select CPU_HAS_IPR_IRQ | ||
102 | select CPU_HAS_DSP | 95 | select CPU_HAS_DSP |
103 | help | 96 | help |
104 | Select SH7710 if you have a SH3-DSP SH7710 CPU. | 97 | Select SH7710 if you have a SH3-DSP SH7710 CPU. |
@@ -106,24 +99,28 @@ config CPU_SUBTYPE_SH7710 | |||
106 | config CPU_SUBTYPE_SH7712 | 99 | config CPU_SUBTYPE_SH7712 |
107 | bool "Support SH7712 processor" | 100 | bool "Support SH7712 processor" |
108 | select CPU_SH3 | 101 | select CPU_SH3 |
109 | select CPU_HAS_IPR_IRQ | ||
110 | select CPU_HAS_DSP | 102 | select CPU_HAS_DSP |
111 | help | 103 | help |
112 | Select SH7712 if you have a SH3-DSP SH7712 CPU. | 104 | Select SH7712 if you have a SH3-DSP SH7712 CPU. |
113 | 105 | ||
106 | config CPU_SUBTYPE_SH7720 | ||
107 | bool "Support SH7720 processor" | ||
108 | select CPU_SH3 | ||
109 | select CPU_HAS_DSP | ||
110 | help | ||
111 | Select SH7720 if you have a SH3-DSP SH7720 CPU. | ||
112 | |||
114 | # SH-4 Processor Support | 113 | # SH-4 Processor Support |
115 | 114 | ||
116 | config CPU_SUBTYPE_SH7750 | 115 | config CPU_SUBTYPE_SH7750 |
117 | bool "Support SH7750 processor" | 116 | bool "Support SH7750 processor" |
118 | select CPU_SH4 | 117 | select CPU_SH4 |
119 | select CPU_HAS_INTC_IRQ | ||
120 | help | 118 | help |
121 | Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. | 119 | Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. |
122 | 120 | ||
123 | config CPU_SUBTYPE_SH7091 | 121 | config CPU_SUBTYPE_SH7091 |
124 | bool "Support SH7091 processor" | 122 | bool "Support SH7091 processor" |
125 | select CPU_SH4 | 123 | select CPU_SH4 |
126 | select CPU_HAS_INTC_IRQ | ||
127 | help | 124 | help |
128 | Select SH7091 if you have an SH-4 based Sega device (such as | 125 | Select SH7091 if you have an SH-4 based Sega device (such as |
129 | the Dreamcast, Naomi, and Naomi 2). | 126 | the Dreamcast, Naomi, and Naomi 2). |
@@ -131,17 +128,14 @@ config CPU_SUBTYPE_SH7091 | |||
131 | config CPU_SUBTYPE_SH7750R | 128 | config CPU_SUBTYPE_SH7750R |
132 | bool "Support SH7750R processor" | 129 | bool "Support SH7750R processor" |
133 | select CPU_SH4 | 130 | select CPU_SH4 |
134 | select CPU_HAS_INTC_IRQ | ||
135 | 131 | ||
136 | config CPU_SUBTYPE_SH7750S | 132 | config CPU_SUBTYPE_SH7750S |
137 | bool "Support SH7750S processor" | 133 | bool "Support SH7750S processor" |
138 | select CPU_SH4 | 134 | select CPU_SH4 |
139 | select CPU_HAS_INTC_IRQ | ||
140 | 135 | ||
141 | config CPU_SUBTYPE_SH7751 | 136 | config CPU_SUBTYPE_SH7751 |
142 | bool "Support SH7751 processor" | 137 | bool "Support SH7751 processor" |
143 | select CPU_SH4 | 138 | select CPU_SH4 |
144 | select CPU_HAS_INTC_IRQ | ||
145 | help | 139 | help |
146 | Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU, | 140 | Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU, |
147 | or if you have a HD6417751R CPU. | 141 | or if you have a HD6417751R CPU. |
@@ -149,13 +143,10 @@ config CPU_SUBTYPE_SH7751 | |||
149 | config CPU_SUBTYPE_SH7751R | 143 | config CPU_SUBTYPE_SH7751R |
150 | bool "Support SH7751R processor" | 144 | bool "Support SH7751R processor" |
151 | select CPU_SH4 | 145 | select CPU_SH4 |
152 | select CPU_HAS_INTC_IRQ | ||
153 | 146 | ||
154 | config CPU_SUBTYPE_SH7760 | 147 | config CPU_SUBTYPE_SH7760 |
155 | bool "Support SH7760 processor" | 148 | bool "Support SH7760 processor" |
156 | select CPU_SH4 | 149 | select CPU_SH4 |
157 | select CPU_HAS_INTC2_IRQ | ||
158 | select CPU_HAS_IPR_IRQ | ||
159 | 150 | ||
160 | config CPU_SUBTYPE_SH4_202 | 151 | config CPU_SUBTYPE_SH4_202 |
161 | bool "Support SH4-202 processor" | 152 | bool "Support SH4-202 processor" |
@@ -185,19 +176,21 @@ config CPU_SUBTYPE_SH7770 | |||
185 | config CPU_SUBTYPE_SH7780 | 176 | config CPU_SUBTYPE_SH7780 |
186 | bool "Support SH7780 processor" | 177 | bool "Support SH7780 processor" |
187 | select CPU_SH4A | 178 | select CPU_SH4A |
188 | select CPU_HAS_INTC_IRQ | ||
189 | 179 | ||
190 | config CPU_SUBTYPE_SH7785 | 180 | config CPU_SUBTYPE_SH7785 |
191 | bool "Support SH7785 processor" | 181 | bool "Support SH7785 processor" |
192 | select CPU_SH4A | 182 | select CPU_SH4A |
193 | select CPU_SHX2 | 183 | select CPU_SHX2 |
194 | select CPU_HAS_INTC2_IRQ | 184 | select ARCH_SPARSEMEM_ENABLE |
185 | select SYS_SUPPORTS_NUMA | ||
195 | 186 | ||
196 | config CPU_SUBTYPE_SHX3 | 187 | config CPU_SUBTYPE_SHX3 |
197 | bool "Support SH-X3 processor" | 188 | bool "Support SH-X3 processor" |
198 | select CPU_SH4A | 189 | select CPU_SH4A |
199 | select CPU_SHX3 | 190 | select CPU_SHX3 |
200 | select CPU_HAS_INTC2_IRQ | 191 | select ARCH_SPARSEMEM_ENABLE |
192 | select SYS_SUPPORTS_NUMA | ||
193 | select SYS_SUPPORTS_SMP | ||
201 | 194 | ||
202 | # SH4AL-DSP Processor Support | 195 | # SH4AL-DSP Processor Support |
203 | 196 | ||
@@ -209,7 +202,6 @@ config CPU_SUBTYPE_SH7722 | |||
209 | bool "Support SH7722 processor" | 202 | bool "Support SH7722 processor" |
210 | select CPU_SH4AL_DSP | 203 | select CPU_SH4AL_DSP |
211 | select CPU_SHX2 | 204 | select CPU_SHX2 |
212 | select CPU_HAS_INTC_IRQ | ||
213 | select ARCH_SPARSEMEM_ENABLE | 205 | select ARCH_SPARSEMEM_ENABLE |
214 | select SYS_SUPPORTS_NUMA | 206 | select SYS_SUPPORTS_NUMA |
215 | 207 | ||
@@ -274,7 +266,7 @@ config 32BIT | |||
274 | 266 | ||
275 | config X2TLB | 267 | config X2TLB |
276 | bool "Enable extended TLB mode" | 268 | bool "Enable extended TLB mode" |
277 | depends on CPU_SHX2 && MMU && EXPERIMENTAL | 269 | depends on (CPU_SHX2 || CPU_SHX3) && MMU && EXPERIMENTAL |
278 | help | 270 | help |
279 | Selecting this option will enable the extended mode of the SH-X2 | 271 | Selecting this option will enable the extended mode of the SH-X2 |
280 | TLB. For legacy SH-X behaviour and interoperability, say N. For | 272 | TLB. For legacy SH-X behaviour and interoperability, say N. For |
@@ -307,6 +299,7 @@ config NUMA | |||
307 | 299 | ||
308 | config NODES_SHIFT | 300 | config NODES_SHIFT |
309 | int | 301 | int |
302 | default "3" if CPU_SUBTYPE_SHX3 | ||
310 | default "1" | 303 | default "1" |
311 | depends on NEED_MULTIPLE_NODES | 304 | depends on NEED_MULTIPLE_NODES |
312 | 305 | ||
@@ -323,7 +316,9 @@ config ARCH_SPARSEMEM_DEFAULT | |||
323 | 316 | ||
324 | config MAX_ACTIVE_REGIONS | 317 | config MAX_ACTIVE_REGIONS |
325 | int | 318 | int |
326 | default "2" if (CPU_SUBTYPE_SH7722 && SPARSEMEM) | 319 | default "6" if (CPU_SUBTYPE_SHX3 && SPARSEMEM) |
320 | default "2" if SPARSEMEM && (CPU_SUBTYPE_SH7722 || \ | ||
321 | CPU_SUBTYPE_SH7785) | ||
327 | default "1" | 322 | default "1" |
328 | 323 | ||
329 | config ARCH_POPULATES_NODE_MAP | 324 | config ARCH_POPULATES_NODE_MAP |
@@ -342,25 +337,27 @@ config ARCH_MEMORY_PROBE | |||
342 | 337 | ||
343 | choice | 338 | choice |
344 | prompt "Kernel page size" | 339 | prompt "Kernel page size" |
340 | default PAGE_SIZE_8KB if X2TLB | ||
345 | default PAGE_SIZE_4KB | 341 | default PAGE_SIZE_4KB |
346 | 342 | ||
347 | config PAGE_SIZE_4KB | 343 | config PAGE_SIZE_4KB |
348 | bool "4kB" | 344 | bool "4kB" |
345 | depends on !X2TLB | ||
349 | help | 346 | help |
350 | This is the default page size used by all SuperH CPUs. | 347 | This is the default page size used by all SuperH CPUs. |
351 | 348 | ||
352 | config PAGE_SIZE_8KB | 349 | config PAGE_SIZE_8KB |
353 | bool "8kB" | 350 | bool "8kB" |
354 | depends on EXPERIMENTAL && X2TLB | 351 | depends on X2TLB |
355 | help | 352 | help |
356 | This enables 8kB pages as supported by SH-X2 and later MMUs. | 353 | This enables 8kB pages as supported by SH-X2 and later MMUs. |
357 | 354 | ||
358 | config PAGE_SIZE_64KB | 355 | config PAGE_SIZE_64KB |
359 | bool "64kB" | 356 | bool "64kB" |
360 | depends on EXPERIMENTAL && CPU_SH4 | 357 | depends on CPU_SH4 |
361 | help | 358 | help |
362 | This enables support for 64kB pages, possible on all SH-4 | 359 | This enables support for 64kB pages, possible on all SH-4 |
363 | CPUs and later. Highly experimental, not recommended. | 360 | CPUs and later. |
364 | 361 | ||
365 | endchoice | 362 | endchoice |
366 | 363 | ||
@@ -412,8 +409,17 @@ config SH_DIRECT_MAPPED | |||
412 | Turn this option off for platforms that do not have a direct-mapped | 409 | Turn this option off for platforms that do not have a direct-mapped |
413 | cache, and you have no need to run the caches in such a configuration. | 410 | cache, and you have no need to run the caches in such a configuration. |
414 | 411 | ||
415 | config SH_WRITETHROUGH | 412 | choice |
416 | bool "Use write-through caching" | 413 | prompt "Cache mode" |
414 | default CACHE_WRITEBACK if CPU_SH2A || CPU_SH3 || CPU_SH4 | ||
415 | default CACHE_WRITETHROUGH if (CPU_SH2 && !CPU_SH2A) | ||
416 | |||
417 | config CACHE_WRITEBACK | ||
418 | bool "Write-back" | ||
419 | depends on CPU_SH2A || CPU_SH3 || CPU_SH4 | ||
420 | |||
421 | config CACHE_WRITETHROUGH | ||
422 | bool "Write-through" | ||
417 | help | 423 | help |
418 | Selecting this option will configure the caches in write-through | 424 | Selecting this option will configure the caches in write-through |
419 | mode, as opposed to the default write-back configuration. | 425 | mode, as opposed to the default write-back configuration. |
@@ -424,4 +430,9 @@ config SH_WRITETHROUGH | |||
424 | 430 | ||
425 | If unsure, say N. | 431 | If unsure, say N. |
426 | 432 | ||
433 | config CACHE_OFF | ||
434 | bool "Off" | ||
435 | |||
436 | endchoice | ||
437 | |||
427 | endmenu | 438 | endmenu |