aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/mm/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sh/mm/Kconfig')
-rw-r--r--arch/sh/mm/Kconfig87
1 files changed, 83 insertions, 4 deletions
diff --git a/arch/sh/mm/Kconfig b/arch/sh/mm/Kconfig
index 9dd606464d23..29f4ee35c6dc 100644
--- a/arch/sh/mm/Kconfig
+++ b/arch/sh/mm/Kconfig
@@ -4,8 +4,12 @@ menu "Processor selection"
4# Processor families 4# Processor families
5# 5#
6config CPU_SH2 6config CPU_SH2
7 select SH_WRITETHROUGH if !CPU_SH2A
7 bool 8 bool
8 select SH_WRITETHROUGH 9
10config CPU_SH2A
11 bool
12 select CPU_SH2
9 13
10config CPU_SH3 14config CPU_SH3
11 bool 15 bool
@@ -16,6 +20,7 @@ config CPU_SH4
16 bool 20 bool
17 select CPU_HAS_INTEVT 21 select CPU_HAS_INTEVT
18 select CPU_HAS_SR_RB 22 select CPU_HAS_SR_RB
23 select CPU_HAS_PTEA if !CPU_SUBTYPE_ST40
19 24
20config CPU_SH4A 25config CPU_SH4A
21 bool 26 bool
@@ -30,6 +35,9 @@ config CPU_SUBTYPE_ST40
30 select CPU_SH4 35 select CPU_SH4
31 select CPU_HAS_INTC2_IRQ 36 select CPU_HAS_INTC2_IRQ
32 37
38config CPU_SHX2
39 bool
40
33# 41#
34# Processor subtypes 42# Processor subtypes
35# 43#
@@ -40,6 +48,16 @@ config CPU_SUBTYPE_SH7604
40 bool "Support SH7604 processor" 48 bool "Support SH7604 processor"
41 select CPU_SH2 49 select CPU_SH2
42 50
51config CPU_SUBTYPE_SH7619
52 bool "Support SH7619 processor"
53 select CPU_SH2
54
55comment "SH-2A Processor Support"
56
57config CPU_SUBTYPE_SH7206
58 bool "Support SH7206 processor"
59 select CPU_SH2A
60
43comment "SH-3 Processor Support" 61comment "SH-3 Processor Support"
44 62
45config CPU_SUBTYPE_SH7300 63config CPU_SUBTYPE_SH7300
@@ -89,6 +107,7 @@ comment "SH-4 Processor Support"
89config CPU_SUBTYPE_SH7750 107config CPU_SUBTYPE_SH7750
90 bool "Support SH7750 processor" 108 bool "Support SH7750 processor"
91 select CPU_SH4 109 select CPU_SH4
110 select CPU_HAS_IPR_IRQ
92 help 111 help
93 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. 112 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
94 113
@@ -104,15 +123,18 @@ config CPU_SUBTYPE_SH7750R
104 bool "Support SH7750R processor" 123 bool "Support SH7750R processor"
105 select CPU_SH4 124 select CPU_SH4
106 select CPU_SUBTYPE_SH7750 125 select CPU_SUBTYPE_SH7750
126 select CPU_HAS_IPR_IRQ
107 127
108config CPU_SUBTYPE_SH7750S 128config CPU_SUBTYPE_SH7750S
109 bool "Support SH7750S processor" 129 bool "Support SH7750S processor"
110 select CPU_SH4 130 select CPU_SH4
111 select CPU_SUBTYPE_SH7750 131 select CPU_SUBTYPE_SH7750
132 select CPU_HAS_IPR_IRQ
112 133
113config CPU_SUBTYPE_SH7751 134config CPU_SUBTYPE_SH7751
114 bool "Support SH7751 processor" 135 bool "Support SH7751 processor"
115 select CPU_SH4 136 select CPU_SH4
137 select CPU_HAS_IPR_IRQ
116 help 138 help
117 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU, 139 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
118 or if you have a HD6417751R CPU. 140 or if you have a HD6417751R CPU.
@@ -121,6 +143,7 @@ config CPU_SUBTYPE_SH7751R
121 bool "Support SH7751R processor" 143 bool "Support SH7751R processor"
122 select CPU_SH4 144 select CPU_SH4
123 select CPU_SUBTYPE_SH7751 145 select CPU_SUBTYPE_SH7751
146 select CPU_HAS_IPR_IRQ
124 147
125config CPU_SUBTYPE_SH7760 148config CPU_SUBTYPE_SH7760
126 bool "Support SH7760 processor" 149 bool "Support SH7760 processor"
@@ -157,6 +180,12 @@ config CPU_SUBTYPE_SH7780
157 select CPU_SH4A 180 select CPU_SH4A
158 select CPU_HAS_INTC2_IRQ 181 select CPU_HAS_INTC2_IRQ
159 182
183config CPU_SUBTYPE_SH7785
184 bool "Support SH7785 processor"
185 select CPU_SH4A
186 select CPU_SHX2
187 select CPU_HAS_INTC2_IRQ
188
160comment "SH4AL-DSP Processor Support" 189comment "SH4AL-DSP Processor Support"
161 190
162config CPU_SUBTYPE_SH73180 191config CPU_SUBTYPE_SH73180
@@ -167,6 +196,12 @@ config CPU_SUBTYPE_SH7343
167 bool "Support SH7343 processor" 196 bool "Support SH7343 processor"
168 select CPU_SH4AL_DSP 197 select CPU_SH4AL_DSP
169 198
199config CPU_SUBTYPE_SH7722
200 bool "Support SH7722 processor"
201 select CPU_SH4AL_DSP
202 select CPU_SHX2
203 select CPU_HAS_IPR_IRQ
204
170endmenu 205endmenu
171 206
172menu "Memory management options" 207menu "Memory management options"
@@ -216,13 +251,22 @@ config MEMORY_SIZE
216 251
217config 32BIT 252config 32BIT
218 bool "Support 32-bit physical addressing through PMB" 253 bool "Support 32-bit physical addressing through PMB"
219 depends on CPU_SH4A && MMU 254 depends on CPU_SH4A && MMU && (!X2TLB || BROKEN)
220 default y 255 default y
221 help 256 help
222 If you say Y here, physical addressing will be extended to 257 If you say Y here, physical addressing will be extended to
223 32-bits through the SH-4A PMB. If this is not set, legacy 258 32-bits through the SH-4A PMB. If this is not set, legacy
224 29-bit physical addressing will be used. 259 29-bit physical addressing will be used.
225 260
261config X2TLB
262 bool "Enable extended TLB mode"
263 depends on CPU_SHX2 && MMU && EXPERIMENTAL
264 help
265 Selecting this option will enable the extended mode of the SH-X2
266 TLB. For legacy SH-X behaviour and interoperability, say N. For
267 all of the fun new features and a willingless to submit bug reports,
268 say Y.
269
226config VSYSCALL 270config VSYSCALL
227 bool "Support vsyscall page" 271 bool "Support vsyscall page"
228 depends on MMU 272 depends on MMU
@@ -237,16 +281,52 @@ config VSYSCALL
237 (the default value) say Y. 281 (the default value) say Y.
238 282
239choice 283choice
284 prompt "Kernel page size"
285 default PAGE_SIZE_4KB
286
287config PAGE_SIZE_4KB
288 bool "4kB"
289 help
290 This is the default page size used by all SuperH CPUs.
291
292config PAGE_SIZE_8KB
293 bool "8kB"
294 depends on EXPERIMENTAL && X2TLB
295 help
296 This enables 8kB pages as supported by SH-X2 and later MMUs.
297
298config PAGE_SIZE_64KB
299 bool "64kB"
300 depends on EXPERIMENTAL && CPU_SH4
301 help
302 This enables support for 64kB pages, possible on all SH-4
303 CPUs and later. Highly experimental, not recommended.
304
305endchoice
306
307choice
240 prompt "HugeTLB page size" 308 prompt "HugeTLB page size"
241 depends on HUGETLB_PAGE && CPU_SH4 && MMU 309 depends on HUGETLB_PAGE && CPU_SH4 && MMU
242 default HUGETLB_PAGE_SIZE_64K 310 default HUGETLB_PAGE_SIZE_64K
243 311
244config HUGETLB_PAGE_SIZE_64K 312config HUGETLB_PAGE_SIZE_64K
245 bool "64K" 313 bool "64kB"
314
315config HUGETLB_PAGE_SIZE_256K
316 bool "256kB"
317 depends on X2TLB
246 318
247config HUGETLB_PAGE_SIZE_1MB 319config HUGETLB_PAGE_SIZE_1MB
248 bool "1MB" 320 bool "1MB"
249 321
322config HUGETLB_PAGE_SIZE_4MB
323 bool "4MB"
324 depends on X2TLB
325
326config HUGETLB_PAGE_SIZE_64MB
327 bool "64MB"
328 depends on X2TLB
329
250endchoice 330endchoice
251 331
252source "mm/Kconfig" 332source "mm/Kconfig"
@@ -274,7 +354,6 @@ config SH_DIRECT_MAPPED
274 354
275config SH_WRITETHROUGH 355config SH_WRITETHROUGH
276 bool "Use write-through caching" 356 bool "Use write-through caching"
277 default y if CPU_SH2
278 help 357 help
279 Selecting this option will configure the caches in write-through 358 Selecting this option will configure the caches in write-through
280 mode, as opposed to the default write-back configuration. 359 mode, as opposed to the default write-back configuration.