diff options
author | Paul Mundt <lethal@linux-sh.org> | 2007-05-14 04:29:12 -0400 |
---|---|---|
committer | Paul Mundt <lethal@hera.kernel.org> | 2007-06-07 22:43:38 -0400 |
commit | f3d2229852697062d530f19742f0ab792b92873d (patch) | |
tree | fe7f1a56d87b5bea39a60f46b04308a7eab4e98c | |
parent | 882c12c4e1a95e55227f06dbb99eca90f237c018 (diff) |
sh: Rework CPU/board dependencies.
This was a big mess, rework the logic a bit so that we constrain
to a particular subtype and figure out the board support based
on that. This makes building subtype specific kernels supporting
multiple boards possible again.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r-- | arch/sh/Kconfig | 296 | ||||
-rw-r--r-- | arch/sh/boards/renesas/r7780rp/Kconfig | 6 | ||||
-rw-r--r-- | arch/sh/mm/Kconfig | 21 |
3 files changed, 165 insertions, 158 deletions
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 038179ecf6a9..4c9d8fc59fe2 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig | |||
@@ -81,24 +81,146 @@ source "init/Kconfig" | |||
81 | 81 | ||
82 | menu "System type" | 82 | menu "System type" |
83 | 83 | ||
84 | config SOLUTION_ENGINE | 84 | source "arch/sh/mm/Kconfig" |
85 | bool | 85 | |
86 | menu "Processor features" | ||
86 | 87 | ||
87 | choice | 88 | choice |
88 | prompt "SuperH system type" | 89 | prompt "Endianess selection" |
89 | default SH_UNKNOWN | 90 | default CPU_LITTLE_ENDIAN |
91 | help | ||
92 | Some SuperH machines can be configured for either little or big | ||
93 | endian byte order. These modes require different kernels. | ||
94 | |||
95 | config CPU_LITTLE_ENDIAN | ||
96 | bool "Little Endian" | ||
97 | |||
98 | config CPU_BIG_ENDIAN | ||
99 | bool "Big Endian" | ||
100 | |||
101 | endchoice | ||
102 | |||
103 | config SH_FPU | ||
104 | bool "FPU support" | ||
105 | depends on !CPU_SH3 | ||
106 | default y | ||
107 | help | ||
108 | Selecting this option will enable support for SH processors that | ||
109 | have FPU units (ie, SH77xx). | ||
110 | |||
111 | This option must be set in order to enable the FPU. | ||
112 | |||
113 | config SH_FPU_EMU | ||
114 | bool "FPU emulation support" | ||
115 | depends on !SH_FPU && EXPERIMENTAL | ||
116 | default n | ||
117 | help | ||
118 | Selecting this option will enable support for software FPU emulation. | ||
119 | Most SH-3 users will want to say Y here, whereas most SH-4 users will | ||
120 | want to say N. | ||
121 | |||
122 | config SH_DSP | ||
123 | bool "DSP support" | ||
124 | default y if SH4AL_DSP || !CPU_SH4 | ||
125 | default n | ||
126 | help | ||
127 | Selecting this option will enable support for SH processors that | ||
128 | have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP). | ||
129 | |||
130 | This option must be set in order to enable the DSP. | ||
131 | |||
132 | config SH_ADC | ||
133 | bool "ADC support" | ||
134 | depends on CPU_SH3 | ||
135 | default y | ||
136 | help | ||
137 | Selecting this option will allow the Linux kernel to use SH3 on-chip | ||
138 | ADC module. | ||
139 | |||
140 | If unsure, say N. | ||
141 | |||
142 | config SH_STORE_QUEUES | ||
143 | bool "Support for Store Queues" | ||
144 | depends on CPU_SH4 | ||
145 | help | ||
146 | Selecting this option will enable an in-kernel API for manipulating | ||
147 | the store queues integrated in the SH-4 processors. | ||
148 | |||
149 | config SPECULATIVE_EXECUTION | ||
150 | bool "Speculative subroutine return" | ||
151 | depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL | ||
152 | help | ||
153 | This enables support for a speculative instruction fetch for | ||
154 | subroutine return. There are various pitfalls associated with | ||
155 | this, as outlined in the SH7780 hardware manual. | ||
156 | |||
157 | If unsure, say N. | ||
158 | |||
159 | config CPU_HAS_INTEVT | ||
160 | bool | ||
161 | |||
162 | config CPU_HAS_PINT_IRQ | ||
163 | bool | ||
164 | |||
165 | config CPU_HAS_MASKREG_IRQ | ||
166 | bool | ||
167 | |||
168 | config CPU_HAS_INTC2_IRQ | ||
169 | bool | ||
170 | |||
171 | config CPU_HAS_IPR_IRQ | ||
172 | bool | ||
173 | |||
174 | config CPU_HAS_SR_RB | ||
175 | bool "CPU has SR.RB" | ||
176 | depends on CPU_SH3 || CPU_SH4 | ||
177 | default y | ||
178 | help | ||
179 | This will enable the use of SR.RB register bank usage. Processors | ||
180 | that are lacking this bit must have another method in place for | ||
181 | accomplishing what is taken care of by the banked registers. | ||
182 | |||
183 | See <file:Documentation/sh/register-banks.txt> for further | ||
184 | information on SR.RB and register banking in the kernel in general. | ||
185 | |||
186 | config CPU_HAS_PTEA | ||
187 | bool | ||
188 | |||
189 | endmenu | ||
190 | |||
191 | menu "Board support" | ||
192 | |||
193 | config SOLUTION_ENGINE | ||
194 | bool | ||
90 | 195 | ||
91 | config SH_SOLUTION_ENGINE | 196 | config SH_SOLUTION_ENGINE |
92 | bool "SolutionEngine" | 197 | bool "SolutionEngine" |
93 | select SOLUTION_ENGINE | 198 | select SOLUTION_ENGINE |
199 | depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750 | ||
94 | help | 200 | help |
95 | Select SolutionEngine if configuring for a Hitachi SH7709 | 201 | Select SolutionEngine if configuring for a Hitachi SH7709 |
96 | or SH7750 evaluation board. | 202 | or SH7750 evaluation board. |
97 | 203 | ||
204 | config SH_7206_SOLUTION_ENGINE | ||
205 | bool "SolutionEngine7206" | ||
206 | select SOLUTION_ENGINE | ||
207 | depends on CPU_SUBTYPE_SH7206 | ||
208 | help | ||
209 | Select 7206 SolutionEngine if configuring for a Hitachi SH7206 | ||
210 | evaluation board. | ||
211 | |||
212 | config SH_7619_SOLUTION_ENGINE | ||
213 | bool "SolutionEngine7619" | ||
214 | select SOLUTION_ENGINE | ||
215 | depends on CPU_SUBTYPE_SH7619 | ||
216 | help | ||
217 | Select 7619 SolutionEngine if configuring for a Hitachi SH7619 | ||
218 | evaluation board. | ||
219 | |||
98 | config SH_7722_SOLUTION_ENGINE | 220 | config SH_7722_SOLUTION_ENGINE |
99 | bool "SolutionEngine7722" | 221 | bool "SolutionEngine7722" |
100 | select SOLUTION_ENGINE | 222 | select SOLUTION_ENGINE |
101 | select CPU_SUBTYPE_SH7722 | 223 | depends on CPU_SUBTYPE_SH7722 |
102 | help | 224 | help |
103 | Select 7722 SolutionEngine if configuring for a Hitachi SH772 | 225 | Select 7722 SolutionEngine if configuring for a Hitachi SH772 |
104 | evaluation board. | 226 | evaluation board. |
@@ -106,7 +228,7 @@ config SH_7722_SOLUTION_ENGINE | |||
106 | config SH_7751_SOLUTION_ENGINE | 228 | config SH_7751_SOLUTION_ENGINE |
107 | bool "SolutionEngine7751" | 229 | bool "SolutionEngine7751" |
108 | select SOLUTION_ENGINE | 230 | select SOLUTION_ENGINE |
109 | select CPU_SUBTYPE_SH7751 | 231 | depends on CPU_SUBTYPE_SH7751 |
110 | help | 232 | help |
111 | Select 7751 SolutionEngine if configuring for a Hitachi SH7751 | 233 | Select 7751 SolutionEngine if configuring for a Hitachi SH7751 |
112 | evaluation board. | 234 | evaluation board. |
@@ -114,7 +236,7 @@ config SH_7751_SOLUTION_ENGINE | |||
114 | config SH_7780_SOLUTION_ENGINE | 236 | config SH_7780_SOLUTION_ENGINE |
115 | bool "SolutionEngine7780" | 237 | bool "SolutionEngine7780" |
116 | select SOLUTION_ENGINE | 238 | select SOLUTION_ENGINE |
117 | select CPU_SUBTYPE_SH7780 | 239 | depends on CPU_SUBTYPE_SH7780 |
118 | help | 240 | help |
119 | Select 7780 SolutionEngine if configuring for a Renesas SH7780 | 241 | Select 7780 SolutionEngine if configuring for a Renesas SH7780 |
120 | evaluation board. | 242 | evaluation board. |
@@ -122,7 +244,7 @@ config SH_7780_SOLUTION_ENGINE | |||
122 | config SH_7300_SOLUTION_ENGINE | 244 | config SH_7300_SOLUTION_ENGINE |
123 | bool "SolutionEngine7300" | 245 | bool "SolutionEngine7300" |
124 | select SOLUTION_ENGINE | 246 | select SOLUTION_ENGINE |
125 | select CPU_SUBTYPE_SH7300 | 247 | depends on CPU_SUBTYPE_SH7300 |
126 | help | 248 | help |
127 | Select 7300 SolutionEngine if configuring for a Hitachi | 249 | Select 7300 SolutionEngine if configuring for a Hitachi |
128 | SH7300(SH-Mobile V) evaluation board. | 250 | SH7300(SH-Mobile V) evaluation board. |
@@ -130,22 +252,22 @@ config SH_7300_SOLUTION_ENGINE | |||
130 | config SH_7343_SOLUTION_ENGINE | 252 | config SH_7343_SOLUTION_ENGINE |
131 | bool "SolutionEngine7343" | 253 | bool "SolutionEngine7343" |
132 | select SOLUTION_ENGINE | 254 | select SOLUTION_ENGINE |
133 | select CPU_SUBTYPE_SH7343 | 255 | depends on CPU_SUBTYPE_SH7343 |
134 | help | 256 | help |
135 | Select 7343 SolutionEngine if configuring for a Hitachi | 257 | Select 7343 SolutionEngine if configuring for a Hitachi |
136 | SH7343 (SH-Mobile 3AS) evaluation board. | 258 | SH7343 (SH-Mobile 3AS) evaluation board. |
137 | 259 | ||
138 | config SH_73180_SOLUTION_ENGINE | 260 | config SH_73180_SOLUTION_ENGINE |
139 | bool "SolutionEngine73180" | 261 | bool "SolutionEngine73180" |
140 | select SOLUTION_ENGINE | 262 | select SOLUTION_ENGINE |
141 | select CPU_SUBTYPE_SH73180 | 263 | depends on CPU_SUBTYPE_SH73180 |
142 | help | 264 | help |
143 | Select 73180 SolutionEngine if configuring for a Hitachi | 265 | Select 73180 SolutionEngine if configuring for a Hitachi |
144 | SH73180(SH-Mobile 3) evaluation board. | 266 | SH73180(SH-Mobile 3) evaluation board. |
145 | 267 | ||
146 | config SH_7751_SYSTEMH | 268 | config SH_7751_SYSTEMH |
147 | bool "SystemH7751R" | 269 | bool "SystemH7751R" |
148 | select CPU_SUBTYPE_SH7751R | 270 | depends on CPU_SUBTYPE_SH7751R |
149 | help | 271 | help |
150 | Select SystemH if you are configuring for a Renesas SystemH | 272 | Select SystemH if you are configuring for a Renesas SystemH |
151 | 7751R evaluation board. | 273 | 7751R evaluation board. |
@@ -153,6 +275,7 @@ config SH_7751_SYSTEMH | |||
153 | config SH_HP6XX | 275 | config SH_HP6XX |
154 | bool "HP6XX" | 276 | bool "HP6XX" |
155 | select SYS_SUPPORTS_APM_EMULATION | 277 | select SYS_SUPPORTS_APM_EMULATION |
278 | depends on CPU_SUBTYPE_SH7709 | ||
156 | help | 279 | help |
157 | Select HP6XX if configuring for a HP jornada HP6xx. | 280 | Select HP6XX if configuring for a HP jornada HP6xx. |
158 | More information (hardware only) at | 281 | More information (hardware only) at |
@@ -160,13 +283,13 @@ config SH_HP6XX | |||
160 | 283 | ||
161 | config SH_SATURN | 284 | config SH_SATURN |
162 | bool "Saturn" | 285 | bool "Saturn" |
163 | select CPU_SUBTYPE_SH7604 | 286 | depends on CPU_SUBTYPE_SH7604 |
164 | help | 287 | help |
165 | Select Saturn if configuring for a SEGA Saturn. | 288 | Select Saturn if configuring for a SEGA Saturn. |
166 | 289 | ||
167 | config SH_DREAMCAST | 290 | config SH_DREAMCAST |
168 | bool "Dreamcast" | 291 | bool "Dreamcast" |
169 | select CPU_SUBTYPE_SH7091 | 292 | depends on CPU_SUBTYPE_SH7091 |
170 | help | 293 | help |
171 | Select Dreamcast if configuring for a SEGA Dreamcast. | 294 | Select Dreamcast if configuring for a SEGA Dreamcast. |
172 | More information at | 295 | More information at |
@@ -175,6 +298,7 @@ config SH_DREAMCAST | |||
175 | 298 | ||
176 | config SH_MPC1211 | 299 | config SH_MPC1211 |
177 | bool "Interface MPC1211" | 300 | bool "Interface MPC1211" |
301 | depends on CPU_SUBTYPE_SH7751 && BROKEN | ||
178 | help | 302 | help |
179 | CTP/PCI-SH02 is a CPU module computer that is produced | 303 | CTP/PCI-SH02 is a CPU module computer that is produced |
180 | by Interface Corporation. | 304 | by Interface Corporation. |
@@ -182,6 +306,7 @@ config SH_MPC1211 | |||
182 | 306 | ||
183 | config SH_SH03 | 307 | config SH_SH03 |
184 | bool "Interface CTP/PCI-SH03" | 308 | bool "Interface CTP/PCI-SH03" |
309 | depends on CPU_SUBTYPE_SH7751 && BROKEN | ||
185 | help | 310 | help |
186 | CTP/PCI-SH03 is a CPU module computer that is produced | 311 | CTP/PCI-SH03 is a CPU module computer that is produced |
187 | by Interface Corporation. | 312 | by Interface Corporation. |
@@ -189,7 +314,7 @@ config SH_SH03 | |||
189 | 314 | ||
190 | config SH_SECUREEDGE5410 | 315 | config SH_SECUREEDGE5410 |
191 | bool "SecureEdge5410" | 316 | bool "SecureEdge5410" |
192 | select CPU_SUBTYPE_SH7751R | 317 | depends on CPU_SUBTYPE_SH7751R |
193 | help | 318 | help |
194 | Select SecureEdge5410 if configuring for a SnapGear SH board. | 319 | Select SecureEdge5410 if configuring for a SnapGear SH board. |
195 | This includes both the OEM SecureEdge products as well as the | 320 | This includes both the OEM SecureEdge products as well as the |
@@ -197,75 +322,62 @@ config SH_SECUREEDGE5410 | |||
197 | 322 | ||
198 | config SH_HS7751RVOIP | 323 | config SH_HS7751RVOIP |
199 | bool "HS7751RVOIP" | 324 | bool "HS7751RVOIP" |
200 | select CPU_SUBTYPE_SH7751R | 325 | depends on CPU_SUBTYPE_SH7751R |
201 | help | 326 | help |
202 | Select HS7751RVOIP if configuring for a Renesas Technology | 327 | Select HS7751RVOIP if configuring for a Renesas Technology |
203 | Sales VoIP board. | 328 | Sales VoIP board. |
204 | 329 | ||
205 | config SH_7710VOIPGW | 330 | config SH_7710VOIPGW |
206 | bool "SH7710-VOIP-GW" | 331 | bool "SH7710-VOIP-GW" |
207 | select CPU_SUBTYPE_SH7710 | 332 | depends on CPU_SUBTYPE_SH7710 |
208 | help | 333 | help |
209 | Select this option to build a kernel for the SH7710 based | 334 | Select this option to build a kernel for the SH7710 based |
210 | VOIP GW. | 335 | VOIP GW. |
211 | 336 | ||
212 | config SH_RTS7751R2D | 337 | config SH_RTS7751R2D |
213 | bool "RTS7751R2D" | 338 | bool "RTS7751R2D" |
214 | select CPU_SUBTYPE_SH7751R | 339 | depends on CPU_SUBTYPE_SH7751R |
215 | help | 340 | help |
216 | Select RTS7751R2D if configuring for a Renesas Technology | 341 | Select RTS7751R2D if configuring for a Renesas Technology |
217 | Sales SH-Graphics board. | 342 | Sales SH-Graphics board. |
218 | 343 | ||
219 | config SH_HIGHLANDER | 344 | config SH_HIGHLANDER |
220 | bool "Highlander" | 345 | bool "Highlander" |
346 | depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 | ||
221 | 347 | ||
222 | config SH_EDOSK7705 | 348 | config SH_EDOSK7705 |
223 | bool "EDOSK7705" | 349 | bool "EDOSK7705" |
224 | select CPU_SUBTYPE_SH7705 | 350 | depends on CPU_SUBTYPE_SH7705 |
225 | 351 | ||
226 | config SH_SH4202_MICRODEV | 352 | config SH_SH4202_MICRODEV |
227 | bool "SH4-202 MicroDev" | 353 | bool "SH4-202 MicroDev" |
228 | select CPU_SUBTYPE_SH4_202 | 354 | depends on CPU_SUBTYPE_SH4_202 |
229 | help | 355 | help |
230 | Select SH4-202 MicroDev if configuring for a SuperH MicroDev board | 356 | Select SH4-202 MicroDev if configuring for a SuperH MicroDev board |
231 | with an SH4-202 CPU. | 357 | with an SH4-202 CPU. |
232 | 358 | ||
233 | config SH_LANDISK | 359 | config SH_LANDISK |
234 | bool "LANDISK" | 360 | bool "LANDISK" |
235 | select CPU_SUBTYPE_SH7751R | 361 | depends on CPU_SUBTYPE_SH7751R |
236 | help | 362 | help |
237 | I-O DATA DEVICE, INC. "LANDISK Series" support. | 363 | I-O DATA DEVICE, INC. "LANDISK Series" support. |
238 | 364 | ||
239 | config SH_TITAN | 365 | config SH_TITAN |
240 | bool "TITAN" | 366 | bool "TITAN" |
241 | select CPU_SUBTYPE_SH7751R | 367 | depends on CPU_SUBTYPE_SH7751R |
242 | help | 368 | help |
243 | Select Titan if you are configuring for a Nimble Microsystems | 369 | Select Titan if you are configuring for a Nimble Microsystems |
244 | NetEngine NP51R. | 370 | NetEngine NP51R. |
245 | 371 | ||
246 | config SH_SHMIN | 372 | config SH_SHMIN |
247 | bool "SHMIN" | 373 | bool "SHMIN" |
248 | select CPU_SUBTYPE_SH7706 | 374 | depends on CPU_SUBTYPE_SH7706 |
249 | help | 375 | help |
250 | Select SHMIN if configuring for the SHMIN board. | 376 | Select SHMIN if configuring for the SHMIN board. |
251 | 377 | ||
252 | config SH_7206_SOLUTION_ENGINE | ||
253 | bool "SolutionEngine7206" | ||
254 | select CPU_SUBTYPE_SH7206 | ||
255 | help | ||
256 | Select 7206 SolutionEngine if configuring for a Hitachi SH7206 | ||
257 | evaluation board. | ||
258 | |||
259 | config SH_7619_SOLUTION_ENGINE | ||
260 | bool "SolutionEngine7619" | ||
261 | select CPU_SUBTYPE_SH7619 | ||
262 | help | ||
263 | Select 7619 SolutionEngine if configuring for a Hitachi SH7619 | ||
264 | evaluation board. | ||
265 | |||
266 | config SH_LBOX_RE2 | 378 | config SH_LBOX_RE2 |
267 | bool "L-BOX RE2" | 379 | bool "L-BOX RE2" |
268 | select CPU_SUBTYPE_SH7751R | 380 | depends on CPU_SUBTYPE_SH7751R |
269 | help | 381 | help |
270 | Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2. | 382 | Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2. |
271 | 383 | ||
@@ -281,14 +393,12 @@ config SH_UNKNOWN | |||
281 | 393 | ||
282 | This option is for the early stages of porting to a new machine. | 394 | This option is for the early stages of porting to a new machine. |
283 | 395 | ||
284 | endchoice | 396 | endmenu |
285 | 397 | ||
286 | source "arch/sh/boards/renesas/hs7751rvoip/Kconfig" | 398 | source "arch/sh/boards/renesas/hs7751rvoip/Kconfig" |
287 | source "arch/sh/boards/renesas/rts7751r2d/Kconfig" | 399 | source "arch/sh/boards/renesas/rts7751r2d/Kconfig" |
288 | source "arch/sh/boards/renesas/r7780rp/Kconfig" | 400 | source "arch/sh/boards/renesas/r7780rp/Kconfig" |
289 | 401 | ||
290 | source "arch/sh/mm/Kconfig" | ||
291 | |||
292 | config CF_ENABLER | 402 | config CF_ENABLER |
293 | bool "Compact Flash Enabler support" | 403 | bool "Compact Flash Enabler support" |
294 | depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03 | 404 | depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03 |
@@ -332,110 +442,6 @@ config CF_BASE_ADDR | |||
332 | default "0xb8000000" if CF_AREA6 | 442 | default "0xb8000000" if CF_AREA6 |
333 | default "0xb4000000" if CF_AREA5 | 443 | default "0xb4000000" if CF_AREA5 |
334 | 444 | ||
335 | menu "Processor features" | ||
336 | |||
337 | choice | ||
338 | prompt "Endianess selection" | ||
339 | default CPU_LITTLE_ENDIAN | ||
340 | help | ||
341 | Some SuperH machines can be configured for either little or big | ||
342 | endian byte order. These modes require different kernels. | ||
343 | |||
344 | config CPU_LITTLE_ENDIAN | ||
345 | bool "Little Endian" | ||
346 | |||
347 | config CPU_BIG_ENDIAN | ||
348 | bool "Big Endian" | ||
349 | |||
350 | endchoice | ||
351 | |||
352 | config SH_FPU | ||
353 | bool "FPU support" | ||
354 | depends on !CPU_SH3 | ||
355 | default y | ||
356 | help | ||
357 | Selecting this option will enable support for SH processors that | ||
358 | have FPU units (ie, SH77xx). | ||
359 | |||
360 | This option must be set in order to enable the FPU. | ||
361 | |||
362 | config SH_FPU_EMU | ||
363 | bool "FPU emulation support" | ||
364 | depends on !SH_FPU && EXPERIMENTAL | ||
365 | default n | ||
366 | help | ||
367 | Selecting this option will enable support for software FPU emulation. | ||
368 | Most SH-3 users will want to say Y here, whereas most SH-4 users will | ||
369 | want to say N. | ||
370 | |||
371 | config SH_DSP | ||
372 | bool "DSP support" | ||
373 | default y if SH4AL_DSP || !CPU_SH4 | ||
374 | default n | ||
375 | help | ||
376 | Selecting this option will enable support for SH processors that | ||
377 | have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP). | ||
378 | |||
379 | This option must be set in order to enable the DSP. | ||
380 | |||
381 | config SH_ADC | ||
382 | bool "ADC support" | ||
383 | depends on CPU_SH3 | ||
384 | default y | ||
385 | help | ||
386 | Selecting this option will allow the Linux kernel to use SH3 on-chip | ||
387 | ADC module. | ||
388 | |||
389 | If unsure, say N. | ||
390 | |||
391 | config SH_STORE_QUEUES | ||
392 | bool "Support for Store Queues" | ||
393 | depends on CPU_SH4 | ||
394 | help | ||
395 | Selecting this option will enable an in-kernel API for manipulating | ||
396 | the store queues integrated in the SH-4 processors. | ||
397 | |||
398 | config SPECULATIVE_EXECUTION | ||
399 | bool "Speculative subroutine return" | ||
400 | depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL | ||
401 | help | ||
402 | This enables support for a speculative instruction fetch for | ||
403 | subroutine return. There are various pitfalls associated with | ||
404 | this, as outlined in the SH7780 hardware manual. | ||
405 | |||
406 | If unsure, say N. | ||
407 | |||
408 | config CPU_HAS_INTEVT | ||
409 | bool | ||
410 | |||
411 | config CPU_HAS_PINT_IRQ | ||
412 | bool | ||
413 | |||
414 | config CPU_HAS_MASKREG_IRQ | ||
415 | bool | ||
416 | |||
417 | config CPU_HAS_INTC2_IRQ | ||
418 | bool | ||
419 | |||
420 | config CPU_HAS_IPR_IRQ | ||
421 | bool | ||
422 | |||
423 | config CPU_HAS_SR_RB | ||
424 | bool "CPU has SR.RB" | ||
425 | depends on CPU_SH3 || CPU_SH4 | ||
426 | default y | ||
427 | help | ||
428 | This will enable the use of SR.RB register bank usage. Processors | ||
429 | that are lacking this bit must have another method in place for | ||
430 | accomplishing what is taken care of by the banked registers. | ||
431 | |||
432 | See <file:Documentation/sh/register-banks.txt> for further | ||
433 | information on SR.RB and register banking in the kernel in general. | ||
434 | |||
435 | config CPU_HAS_PTEA | ||
436 | bool | ||
437 | |||
438 | endmenu | ||
439 | 445 | ||
440 | menu "Timer and clock configuration" | 446 | menu "Timer and clock configuration" |
441 | 447 | ||
diff --git a/arch/sh/boards/renesas/r7780rp/Kconfig b/arch/sh/boards/renesas/r7780rp/Kconfig index 9fb11641fe13..fc8f28e04ba3 100644 --- a/arch/sh/boards/renesas/r7780rp/Kconfig +++ b/arch/sh/boards/renesas/r7780rp/Kconfig | |||
@@ -6,18 +6,18 @@ choice | |||
6 | 6 | ||
7 | config SH_R7780RP | 7 | config SH_R7780RP |
8 | bool "R7780RP-1 board support" | 8 | bool "R7780RP-1 board support" |
9 | select CPU_SUBTYPE_SH7780 | 9 | depends on CPU_SUBTYPE_SH7780 |
10 | 10 | ||
11 | config SH_R7780MP | 11 | config SH_R7780MP |
12 | bool "R7780MP board support" | 12 | bool "R7780MP board support" |
13 | select CPU_SUBTYPE_SH7780 | 13 | depends on CPU_SUBTYPE_SH7780 |
14 | help | 14 | help |
15 | Selecting this option will enable support for the mass-production | 15 | Selecting this option will enable support for the mass-production |
16 | version of the R7780RP. If in doubt, say Y. | 16 | version of the R7780RP. If in doubt, say Y. |
17 | 17 | ||
18 | config SH_R7785RP | 18 | config SH_R7785RP |
19 | bool "R7785RP board support" | 19 | bool "R7785RP board support" |
20 | select CPU_SUBTYPE_SH7785 | 20 | depends on CPU_SUBTYPE_SH7785 |
21 | 21 | ||
22 | endchoice | 22 | endchoice |
23 | 23 | ||
diff --git a/arch/sh/mm/Kconfig b/arch/sh/mm/Kconfig index 253346d7b316..8f826b03f9fe 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,11 +36,14 @@ config CPU_SUBTYPE_ST40 | |||
38 | config CPU_SHX2 | 36 | config CPU_SHX2 |
39 | bool | 37 | bool |
40 | 38 | ||
39 | choice | ||
40 | prompt "Processor sub-type selection" | ||
41 | |||
41 | # | 42 | # |
42 | # Processor subtypes | 43 | # Processor subtypes |
43 | # | 44 | # |
44 | 45 | ||
45 | comment "SH-2 Processor Support" | 46 | # SH-2 Processor Support |
46 | 47 | ||
47 | config CPU_SUBTYPE_SH7604 | 48 | config CPU_SUBTYPE_SH7604 |
48 | bool "Support SH7604 processor" | 49 | bool "Support SH7604 processor" |
@@ -52,13 +53,13 @@ config CPU_SUBTYPE_SH7619 | |||
52 | bool "Support SH7619 processor" | 53 | bool "Support SH7619 processor" |
53 | select CPU_SH2 | 54 | select CPU_SH2 |
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 |
60 | 61 | ||
61 | comment "SH-3 Processor Support" | 62 | # SH-3 Processor Support |
62 | 63 | ||
63 | config CPU_SUBTYPE_SH7300 | 64 | config CPU_SUBTYPE_SH7300 |
64 | bool "Support SH7300 processor" | 65 | bool "Support SH7300 processor" |
@@ -113,7 +114,7 @@ config CPU_SUBTYPE_SH7712 | |||
113 | help | 114 | help |
114 | Select SH7712 if you have a SH3-DSP SH7712 CPU. | 115 | Select SH7712 if you have a SH3-DSP SH7712 CPU. |
115 | 116 | ||
116 | comment "SH-4 Processor Support" | 117 | # SH-4 Processor Support |
117 | 118 | ||
118 | config CPU_SUBTYPE_SH7750 | 119 | config CPU_SUBTYPE_SH7750 |
119 | bool "Support SH7750 processor" | 120 | bool "Support SH7750 processor" |
@@ -166,7 +167,7 @@ config CPU_SUBTYPE_SH4_202 | |||
166 | bool "Support SH4-202 processor" | 167 | bool "Support SH4-202 processor" |
167 | select CPU_SH4 | 168 | select CPU_SH4 |
168 | 169 | ||
169 | comment "ST40 Processor Support" | 170 | # ST40 Processor Support |
170 | 171 | ||
171 | config CPU_SUBTYPE_ST40STB1 | 172 | config CPU_SUBTYPE_ST40STB1 |
172 | bool "Support ST40STB1/ST40RA processors" | 173 | bool "Support ST40STB1/ST40RA processors" |
@@ -181,7 +182,7 @@ config CPU_SUBTYPE_ST40GX1 | |||
181 | help | 182 | help |
182 | Select ST40GX1 if you have a ST40GX1 CPU. | 183 | Select ST40GX1 if you have a ST40GX1 CPU. |
183 | 184 | ||
184 | comment "SH-4A Processor Support" | 185 | # SH-4A Processor Support |
185 | 186 | ||
186 | config CPU_SUBTYPE_SH7770 | 187 | config CPU_SUBTYPE_SH7770 |
187 | bool "Support SH7770 processor" | 188 | bool "Support SH7770 processor" |
@@ -198,7 +199,7 @@ config CPU_SUBTYPE_SH7785 | |||
198 | select CPU_SHX2 | 199 | select CPU_SHX2 |
199 | select CPU_HAS_INTC2_IRQ | 200 | select CPU_HAS_INTC2_IRQ |
200 | 201 | ||
201 | comment "SH4AL-DSP Processor Support" | 202 | # SH4AL-DSP Processor Support |
202 | 203 | ||
203 | config CPU_SUBTYPE_SH73180 | 204 | config CPU_SUBTYPE_SH73180 |
204 | bool "Support SH73180 processor" | 205 | bool "Support SH73180 processor" |
@@ -214,7 +215,7 @@ config CPU_SUBTYPE_SH7722 | |||
214 | select CPU_SHX2 | 215 | select CPU_SHX2 |
215 | select CPU_HAS_IPR_IRQ | 216 | select CPU_HAS_IPR_IRQ |
216 | 217 | ||
217 | endmenu | 218 | endchoice |
218 | 219 | ||
219 | menu "Memory management options" | 220 | menu "Memory management options" |
220 | 221 | ||