diff options
| author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-16 13:32:02 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-16 13:32:02 -0400 |
| commit | b91cba52e9b7b3f1c0037908a192d93a869ca9e5 (patch) | |
| tree | bbce7f323c8f52b308af5a152673a75b3e445360 | |
| parent | 98283bb49c6c8c070ebde9f47489d3e9a83c1323 (diff) | |
| parent | e509ac4bbc661052dc73a2e8138800ba77d4ecb9 (diff) | |
Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (68 commits)
sh: sh-rtc support for SH7709.
sh: Revert __xdiv64_32 size change.
sh: Update r7785rp defconfig.
sh: Export div symbols for GCC 4.2 and ST GCC.
sh: fix race in parallel out-of-tree build
sh: Kill off dead mach.c for hp6xx.
sh: hd64461.h cleanup and added comments.
sh: Update the alignment when 4K stacks are used.
sh: Add a .bss.page_aligned section for 4K stacks.
sh: Don't let SH-4A clobber SH-4 CFLAGS.
sh: Add parport stub for SuperIO ports.
sh: Drop -Wa,-dsp for DSP tuning.
sh: Update dreamcast defconfig.
fb: pvr2fb: A few more __devinit annotations for PCI.
fb: pvr2fb: Fix up section mismatch warnings.
sh: Select IPR-IRQ for SH7091.
sh: Correct __xdiv64_32/div64_32 return value size.
sh: Fix timer-tmu build for SH-3.
sh: Add cpu and mach links to CLEAN_FILES.
sh: Preliminary support for the SH-X3 CPU.
...
132 files changed, 4887 insertions, 2834 deletions
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 038179ecf6a9..d8ed6676ae86 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig | |||
| @@ -55,8 +55,21 @@ config GENERIC_TIME | |||
| 55 | config GENERIC_CLOCKEVENTS | 55 | config GENERIC_CLOCKEVENTS |
| 56 | def_bool n | 56 | def_bool n |
| 57 | 57 | ||
| 58 | config SYS_SUPPORTS_PM | ||
| 59 | bool | ||
| 60 | |||
| 58 | config SYS_SUPPORTS_APM_EMULATION | 61 | config SYS_SUPPORTS_APM_EMULATION |
| 59 | bool | 62 | bool |
| 63 | select SYS_SUPPORTS_PM | ||
| 64 | |||
| 65 | config SYS_SUPPORTS_SMP | ||
| 66 | bool | ||
| 67 | |||
| 68 | config SYS_SUPPORTS_NUMA | ||
| 69 | bool | ||
| 70 | |||
| 71 | config SYS_SUPPORTS_PCI | ||
| 72 | bool | ||
| 60 | 73 | ||
| 61 | config ARCH_MAY_HAVE_PC_FDC | 74 | config ARCH_MAY_HAVE_PC_FDC |
| 62 | bool | 75 | bool |
| @@ -81,24 +94,146 @@ source "init/Kconfig" | |||
| 81 | 94 | ||
| 82 | menu "System type" | 95 | menu "System type" |
| 83 | 96 | ||
| 84 | config SOLUTION_ENGINE | 97 | source "arch/sh/mm/Kconfig" |
| 85 | bool | 98 | |
| 99 | menu "Processor features" | ||
| 86 | 100 | ||
| 87 | choice | 101 | choice |
| 88 | prompt "SuperH system type" | 102 | prompt "Endianess selection" |
| 89 | default SH_UNKNOWN | 103 | default CPU_LITTLE_ENDIAN |
| 104 | help | ||
| 105 | Some SuperH machines can be configured for either little or big | ||
| 106 | endian byte order. These modes require different kernels. | ||
| 107 | |||
| 108 | config CPU_LITTLE_ENDIAN | ||
| 109 | bool "Little Endian" | ||
| 110 | |||
| 111 | config CPU_BIG_ENDIAN | ||
| 112 | bool "Big Endian" | ||
| 113 | |||
| 114 | endchoice | ||
| 115 | |||
| 116 | config SH_FPU | ||
| 117 | bool "FPU support" | ||
| 118 | depends on CPU_SH4 | ||
| 119 | default y | ||
| 120 | help | ||
| 121 | Selecting this option will enable support for SH processors that | ||
| 122 | have FPU units (ie, SH77xx). | ||
| 123 | |||
| 124 | This option must be set in order to enable the FPU. | ||
| 125 | |||
| 126 | config SH_FPU_EMU | ||
| 127 | bool "FPU emulation support" | ||
| 128 | depends on !SH_FPU && EXPERIMENTAL | ||
| 129 | default n | ||
| 130 | help | ||
| 131 | Selecting this option will enable support for software FPU emulation. | ||
| 132 | Most SH-3 users will want to say Y here, whereas most SH-4 users will | ||
| 133 | want to say N. | ||
| 134 | |||
| 135 | config SH_DSP | ||
| 136 | bool "DSP support" | ||
| 137 | default y if SH4AL_DSP || !CPU_SH4 | ||
| 138 | default n | ||
| 139 | help | ||
| 140 | Selecting this option will enable support for SH processors that | ||
| 141 | have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP). | ||
| 142 | |||
| 143 | This option must be set in order to enable the DSP. | ||
| 144 | |||
| 145 | config SH_ADC | ||
| 146 | bool "ADC support" | ||
| 147 | depends on CPU_SH3 | ||
| 148 | default y | ||
| 149 | help | ||
| 150 | Selecting this option will allow the Linux kernel to use SH3 on-chip | ||
| 151 | ADC module. | ||
| 152 | |||
| 153 | If unsure, say N. | ||
| 154 | |||
| 155 | config SH_STORE_QUEUES | ||
| 156 | bool "Support for Store Queues" | ||
| 157 | depends on CPU_SH4 | ||
| 158 | help | ||
| 159 | Selecting this option will enable an in-kernel API for manipulating | ||
| 160 | the store queues integrated in the SH-4 processors. | ||
| 161 | |||
| 162 | config SPECULATIVE_EXECUTION | ||
| 163 | bool "Speculative subroutine return" | ||
| 164 | depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL | ||
| 165 | help | ||
| 166 | This enables support for a speculative instruction fetch for | ||
| 167 | subroutine return. There are various pitfalls associated with | ||
| 168 | this, as outlined in the SH7780 hardware manual. | ||
| 169 | |||
| 170 | If unsure, say N. | ||
| 171 | |||
| 172 | config CPU_HAS_INTEVT | ||
| 173 | bool | ||
| 174 | |||
| 175 | config CPU_HAS_PINT_IRQ | ||
| 176 | bool | ||
| 177 | |||
| 178 | config CPU_HAS_MASKREG_IRQ | ||
| 179 | bool | ||
| 180 | |||
| 181 | config CPU_HAS_INTC2_IRQ | ||
| 182 | bool | ||
| 183 | |||
| 184 | config CPU_HAS_IPR_IRQ | ||
| 185 | bool | ||
| 186 | |||
| 187 | config CPU_HAS_SR_RB | ||
| 188 | bool "CPU has SR.RB" | ||
| 189 | depends on CPU_SH3 || CPU_SH4 | ||
| 190 | default y | ||
| 191 | help | ||
| 192 | This will enable the use of SR.RB register bank usage. Processors | ||
| 193 | that are lacking this bit must have another method in place for | ||
| 194 | accomplishing what is taken care of by the banked registers. | ||
| 195 | |||
| 196 | See <file:Documentation/sh/register-banks.txt> for further | ||
| 197 | information on SR.RB and register banking in the kernel in general. | ||
| 198 | |||
| 199 | config CPU_HAS_PTEA | ||
| 200 | bool | ||
| 201 | |||
| 202 | endmenu | ||
| 203 | |||
| 204 | menu "Board support" | ||
| 205 | |||
| 206 | config SOLUTION_ENGINE | ||
| 207 | bool | ||
| 90 | 208 | ||
| 91 | config SH_SOLUTION_ENGINE | 209 | config SH_SOLUTION_ENGINE |
| 92 | bool "SolutionEngine" | 210 | bool "SolutionEngine" |
| 93 | select SOLUTION_ENGINE | 211 | select SOLUTION_ENGINE |
| 212 | depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750 | ||
| 94 | help | 213 | help |
| 95 | Select SolutionEngine if configuring for a Hitachi SH7709 | 214 | Select SolutionEngine if configuring for a Hitachi SH7709 |
| 96 | or SH7750 evaluation board. | 215 | or SH7750 evaluation board. |
| 97 | 216 | ||
| 217 | config SH_7206_SOLUTION_ENGINE | ||
| 218 | bool "SolutionEngine7206" | ||
| 219 | select SOLUTION_ENGINE | ||
| 220 | depends on CPU_SUBTYPE_SH7206 | ||
| 221 | help | ||
| 222 | Select 7206 SolutionEngine if configuring for a Hitachi SH7206 | ||
| 223 | evaluation board. | ||
| 224 | |||
| 225 | config SH_7619_SOLUTION_ENGINE | ||
| 226 | bool "SolutionEngine7619" | ||
| 227 | select SOLUTION_ENGINE | ||
| 228 | depends on CPU_SUBTYPE_SH7619 | ||
| 229 | help | ||
| 230 | Select 7619 SolutionEngine if configuring for a Hitachi SH7619 | ||
| 231 | evaluation board. | ||
| 232 | |||
| 98 | config SH_7722_SOLUTION_ENGINE | 233 | config SH_7722_SOLUTION_ENGINE |
| 99 | bool "SolutionEngine7722" | 234 | bool "SolutionEngine7722" |
| 100 | select SOLUTION_ENGINE | 235 | select SOLUTION_ENGINE |
| 101 | select CPU_SUBTYPE_SH7722 | 236 | depends on CPU_SUBTYPE_SH7722 |
| 102 | help | 237 | help |
| 103 | Select 7722 SolutionEngine if configuring for a Hitachi SH772 | 238 | Select 7722 SolutionEngine if configuring for a Hitachi SH772 |
| 104 | evaluation board. | 239 | evaluation board. |
| @@ -106,7 +241,7 @@ config SH_7722_SOLUTION_ENGINE | |||
| 106 | config SH_7751_SOLUTION_ENGINE | 241 | config SH_7751_SOLUTION_ENGINE |
| 107 | bool "SolutionEngine7751" | 242 | bool "SolutionEngine7751" |
| 108 | select SOLUTION_ENGINE | 243 | select SOLUTION_ENGINE |
| 109 | select CPU_SUBTYPE_SH7751 | 244 | depends on CPU_SUBTYPE_SH7751 |
| 110 | help | 245 | help |
| 111 | Select 7751 SolutionEngine if configuring for a Hitachi SH7751 | 246 | Select 7751 SolutionEngine if configuring for a Hitachi SH7751 |
| 112 | evaluation board. | 247 | evaluation board. |
| @@ -114,7 +249,8 @@ config SH_7751_SOLUTION_ENGINE | |||
| 114 | config SH_7780_SOLUTION_ENGINE | 249 | config SH_7780_SOLUTION_ENGINE |
| 115 | bool "SolutionEngine7780" | 250 | bool "SolutionEngine7780" |
| 116 | select SOLUTION_ENGINE | 251 | select SOLUTION_ENGINE |
| 117 | select CPU_SUBTYPE_SH7780 | 252 | select SYS_SUPPORTS_PCI |
| 253 | depends on CPU_SUBTYPE_SH7780 | ||
| 118 | help | 254 | help |
| 119 | Select 7780 SolutionEngine if configuring for a Renesas SH7780 | 255 | Select 7780 SolutionEngine if configuring for a Renesas SH7780 |
| 120 | evaluation board. | 256 | evaluation board. |
| @@ -122,7 +258,7 @@ config SH_7780_SOLUTION_ENGINE | |||
| 122 | config SH_7300_SOLUTION_ENGINE | 258 | config SH_7300_SOLUTION_ENGINE |
| 123 | bool "SolutionEngine7300" | 259 | bool "SolutionEngine7300" |
| 124 | select SOLUTION_ENGINE | 260 | select SOLUTION_ENGINE |
| 125 | select CPU_SUBTYPE_SH7300 | 261 | depends on CPU_SUBTYPE_SH7300 |
| 126 | help | 262 | help |
| 127 | Select 7300 SolutionEngine if configuring for a Hitachi | 263 | Select 7300 SolutionEngine if configuring for a Hitachi |
| 128 | SH7300(SH-Mobile V) evaluation board. | 264 | SH7300(SH-Mobile V) evaluation board. |
| @@ -130,22 +266,22 @@ config SH_7300_SOLUTION_ENGINE | |||
| 130 | config SH_7343_SOLUTION_ENGINE | 266 | config SH_7343_SOLUTION_ENGINE |
| 131 | bool "SolutionEngine7343" | 267 | bool "SolutionEngine7343" |
| 132 | select SOLUTION_ENGINE | 268 | select SOLUTION_ENGINE |
| 133 | select CPU_SUBTYPE_SH7343 | 269 | depends on CPU_SUBTYPE_SH7343 |
| 134 | help | 270 | help |
| 135 | Select 7343 SolutionEngine if configuring for a Hitachi | 271 | Select 7343 SolutionEngine if configuring for a Hitachi |
| 136 | SH7343 (SH-Mobile 3AS) evaluation board. | 272 | SH7343 (SH-Mobile 3AS) evaluation board. |
| 137 | 273 | ||
| 138 | config SH_73180_SOLUTION_ENGINE | 274 | config SH_73180_SOLUTION_ENGINE |
| 139 | bool "SolutionEngine73180" | 275 | bool "SolutionEngine73180" |
| 140 | select SOLUTION_ENGINE | 276 | select SOLUTION_ENGINE |
| 141 | select CPU_SUBTYPE_SH73180 | 277 | depends on CPU_SUBTYPE_SH73180 |
| 142 | help | 278 | help |
| 143 | Select 73180 SolutionEngine if configuring for a Hitachi | 279 | Select 73180 SolutionEngine if configuring for a Hitachi |
| 144 | SH73180(SH-Mobile 3) evaluation board. | 280 | SH73180(SH-Mobile 3) evaluation board. |
| 145 | 281 | ||
| 146 | config SH_7751_SYSTEMH | 282 | config SH_7751_SYSTEMH |
| 147 | bool "SystemH7751R" | 283 | bool "SystemH7751R" |
| 148 | select CPU_SUBTYPE_SH7751R | 284 | depends on CPU_SUBTYPE_SH7751R |
| 149 | help | 285 | help |
| 150 | Select SystemH if you are configuring for a Renesas SystemH | 286 | Select SystemH if you are configuring for a Renesas SystemH |
| 151 | 7751R evaluation board. | 287 | 7751R evaluation board. |
| @@ -153,20 +289,17 @@ config SH_7751_SYSTEMH | |||
| 153 | config SH_HP6XX | 289 | config SH_HP6XX |
| 154 | bool "HP6XX" | 290 | bool "HP6XX" |
| 155 | select SYS_SUPPORTS_APM_EMULATION | 291 | select SYS_SUPPORTS_APM_EMULATION |
| 292 | select HD6446X_SERIES | ||
| 293 | depends on CPU_SUBTYPE_SH7709 | ||
| 156 | help | 294 | help |
| 157 | Select HP6XX if configuring for a HP jornada HP6xx. | 295 | Select HP6XX if configuring for a HP jornada HP6xx. |
| 158 | More information (hardware only) at | 296 | More information (hardware only) at |
| 159 | <http://www.hp.com/jornada/>. | 297 | <http://www.hp.com/jornada/>. |
| 160 | 298 | ||
| 161 | config SH_SATURN | ||
| 162 | bool "Saturn" | ||
| 163 | select CPU_SUBTYPE_SH7604 | ||
| 164 | help | ||
| 165 | Select Saturn if configuring for a SEGA Saturn. | ||
| 166 | |||
| 167 | config SH_DREAMCAST | 299 | config SH_DREAMCAST |
| 168 | bool "Dreamcast" | 300 | bool "Dreamcast" |
| 169 | select CPU_SUBTYPE_SH7091 | 301 | select SYS_SUPPORTS_PCI |
| 302 | depends on CPU_SUBTYPE_SH7091 | ||
| 170 | help | 303 | help |
| 171 | Select Dreamcast if configuring for a SEGA Dreamcast. | 304 | Select Dreamcast if configuring for a SEGA Dreamcast. |
| 172 | More information at | 305 | More information at |
| @@ -175,6 +308,7 @@ config SH_DREAMCAST | |||
| 175 | 308 | ||
| 176 | config SH_MPC1211 | 309 | config SH_MPC1211 |
| 177 | bool "Interface MPC1211" | 310 | bool "Interface MPC1211" |
| 311 | depends on CPU_SUBTYPE_SH7751 && BROKEN | ||
| 178 | help | 312 | help |
| 179 | CTP/PCI-SH02 is a CPU module computer that is produced | 313 | CTP/PCI-SH02 is a CPU module computer that is produced |
| 180 | by Interface Corporation. | 314 | by Interface Corporation. |
| @@ -182,6 +316,8 @@ config SH_MPC1211 | |||
| 182 | 316 | ||
| 183 | config SH_SH03 | 317 | config SH_SH03 |
| 184 | bool "Interface CTP/PCI-SH03" | 318 | bool "Interface CTP/PCI-SH03" |
| 319 | depends on CPU_SUBTYPE_SH7751 && BROKEN | ||
| 320 | select SYS_SUPPORTS_PCI | ||
| 185 | help | 321 | help |
| 186 | CTP/PCI-SH03 is a CPU module computer that is produced | 322 | CTP/PCI-SH03 is a CPU module computer that is produced |
| 187 | by Interface Corporation. | 323 | by Interface Corporation. |
| @@ -189,7 +325,8 @@ config SH_SH03 | |||
| 189 | 325 | ||
| 190 | config SH_SECUREEDGE5410 | 326 | config SH_SECUREEDGE5410 |
| 191 | bool "SecureEdge5410" | 327 | bool "SecureEdge5410" |
| 192 | select CPU_SUBTYPE_SH7751R | 328 | depends on CPU_SUBTYPE_SH7751R |
| 329 | select SYS_SUPPORTS_PCI | ||
| 193 | help | 330 | help |
| 194 | Select SecureEdge5410 if configuring for a SnapGear SH board. | 331 | Select SecureEdge5410 if configuring for a SnapGear SH board. |
| 195 | This includes both the OEM SecureEdge products as well as the | 332 | This includes both the OEM SecureEdge products as well as the |
| @@ -197,246 +334,76 @@ config SH_SECUREEDGE5410 | |||
| 197 | 334 | ||
| 198 | config SH_HS7751RVOIP | 335 | config SH_HS7751RVOIP |
| 199 | bool "HS7751RVOIP" | 336 | bool "HS7751RVOIP" |
| 200 | select CPU_SUBTYPE_SH7751R | 337 | depends on CPU_SUBTYPE_SH7751R |
| 201 | help | 338 | help |
| 202 | Select HS7751RVOIP if configuring for a Renesas Technology | 339 | Select HS7751RVOIP if configuring for a Renesas Technology |
| 203 | Sales VoIP board. | 340 | Sales VoIP board. |
| 204 | 341 | ||
| 205 | config SH_7710VOIPGW | 342 | config SH_7710VOIPGW |
| 206 | bool "SH7710-VOIP-GW" | 343 | bool "SH7710-VOIP-GW" |
| 207 | select CPU_SUBTYPE_SH7710 | 344 | depends on CPU_SUBTYPE_SH7710 |
| 208 | help | 345 | help |
| 209 | Select this option to build a kernel for the SH7710 based | 346 | Select this option to build a kernel for the SH7710 based |
| 210 | VOIP GW. | 347 | VOIP GW. |
| 211 | 348 | ||
| 212 | config SH_RTS7751R2D | 349 | config SH_RTS7751R2D |
| 213 | bool "RTS7751R2D" | 350 | bool "RTS7751R2D" |
| 214 | select CPU_SUBTYPE_SH7751R | 351 | depends on CPU_SUBTYPE_SH7751R |
| 352 | select SYS_SUPPORTS_PCI | ||
| 215 | help | 353 | help |
| 216 | Select RTS7751R2D if configuring for a Renesas Technology | 354 | Select RTS7751R2D if configuring for a Renesas Technology |
| 217 | Sales SH-Graphics board. | 355 | Sales SH-Graphics board. |
| 218 | 356 | ||
| 219 | config SH_HIGHLANDER | 357 | config SH_HIGHLANDER |
| 220 | bool "Highlander" | 358 | bool "Highlander" |
| 359 | depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 | ||
| 360 | select SYS_SUPPORTS_PCI | ||
| 221 | 361 | ||
| 222 | config SH_EDOSK7705 | 362 | config SH_EDOSK7705 |
| 223 | bool "EDOSK7705" | 363 | bool "EDOSK7705" |
| 224 | select CPU_SUBTYPE_SH7705 | 364 | depends on CPU_SUBTYPE_SH7705 |
| 225 | 365 | ||
| 226 | config SH_SH4202_MICRODEV | 366 | config SH_SH4202_MICRODEV |
| 227 | bool "SH4-202 MicroDev" | 367 | bool "SH4-202 MicroDev" |
| 228 | select CPU_SUBTYPE_SH4_202 | 368 | depends on CPU_SUBTYPE_SH4_202 |
| 229 | help | 369 | help |
| 230 | Select SH4-202 MicroDev if configuring for a SuperH MicroDev board | 370 | Select SH4-202 MicroDev if configuring for a SuperH MicroDev board |
| 231 | with an SH4-202 CPU. | 371 | with an SH4-202 CPU. |
| 232 | 372 | ||
| 233 | config SH_LANDISK | 373 | config SH_LANDISK |
| 234 | bool "LANDISK" | 374 | bool "LANDISK" |
| 235 | select CPU_SUBTYPE_SH7751R | 375 | depends on CPU_SUBTYPE_SH7751R |
| 376 | select SYS_SUPPORTS_PCI | ||
| 236 | help | 377 | help |
| 237 | I-O DATA DEVICE, INC. "LANDISK Series" support. | 378 | I-O DATA DEVICE, INC. "LANDISK Series" support. |
| 238 | 379 | ||
| 239 | config SH_TITAN | 380 | config SH_TITAN |
| 240 | bool "TITAN" | 381 | bool "TITAN" |
| 241 | select CPU_SUBTYPE_SH7751R | 382 | depends on CPU_SUBTYPE_SH7751R |
| 383 | select SYS_SUPPORTS_PCI | ||
| 242 | help | 384 | help |
| 243 | Select Titan if you are configuring for a Nimble Microsystems | 385 | Select Titan if you are configuring for a Nimble Microsystems |
| 244 | NetEngine NP51R. | 386 | NetEngine NP51R. |
| 245 | 387 | ||
| 246 | config SH_SHMIN | 388 | config SH_SHMIN |
| 247 | bool "SHMIN" | 389 | bool "SHMIN" |
| 248 | select CPU_SUBTYPE_SH7706 | 390 | depends on CPU_SUBTYPE_SH7706 |
| 249 | help | 391 | help |
| 250 | Select SHMIN if configuring for the SHMIN board. | 392 | Select SHMIN if configuring for the SHMIN board. |
| 251 | 393 | ||
| 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 | 394 | config SH_LBOX_RE2 |
| 267 | bool "L-BOX RE2" | 395 | bool "L-BOX RE2" |
| 268 | select CPU_SUBTYPE_SH7751R | 396 | depends on CPU_SUBTYPE_SH7751R |
| 397 | select SYS_SUPPORTS_PCI | ||
| 269 | help | 398 | help |
| 270 | Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2. | 399 | Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2. |
| 271 | 400 | ||
| 272 | config SH_UNKNOWN | 401 | endmenu |
| 273 | bool "BareCPU" | ||
| 274 | help | ||
| 275 | "Bare CPU" aka "unknown" means an SH-based system which is not one | ||
| 276 | of the specific ones mentioned above, which means you need to enter | ||
| 277 | all sorts of stuff like CONFIG_MEMORY_START because the config | ||
| 278 | system doesn't already know what it is. You get a machine vector | ||
| 279 | without any platform-specific code in it, so things like the RTC may | ||
| 280 | not work. | ||
| 281 | |||
| 282 | This option is for the early stages of porting to a new machine. | ||
| 283 | |||
| 284 | endchoice | ||
| 285 | 402 | ||
| 286 | source "arch/sh/boards/renesas/hs7751rvoip/Kconfig" | 403 | source "arch/sh/boards/renesas/hs7751rvoip/Kconfig" |
| 287 | source "arch/sh/boards/renesas/rts7751r2d/Kconfig" | 404 | source "arch/sh/boards/renesas/rts7751r2d/Kconfig" |
| 288 | source "arch/sh/boards/renesas/r7780rp/Kconfig" | 405 | source "arch/sh/boards/renesas/r7780rp/Kconfig" |
| 289 | 406 | ||
| 290 | source "arch/sh/mm/Kconfig" | ||
| 291 | |||
| 292 | config CF_ENABLER | ||
| 293 | bool "Compact Flash Enabler support" | ||
| 294 | depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03 | ||
| 295 | ---help--- | ||
| 296 | Compact Flash is a small, removable mass storage device introduced | ||
| 297 | in 1994 originally as a PCMCIA device. If you say `Y' here, you | ||
| 298 | compile in support for Compact Flash devices directly connected to | ||
| 299 | a SuperH processor. A Compact Flash FAQ is available at | ||
| 300 | <http://www.compactflash.org/faqs/faq.htm>. | ||
| 301 | |||
| 302 | If your board has "Directly Connected" CompactFlash at area 5 or 6, | ||
| 303 | you may want to enable this option. Then, you can use CF as | ||
| 304 | primary IDE drive (only tested for SanDisk). | ||
| 305 | |||
| 306 | If in doubt, select 'N'. | ||
| 307 | |||
| 308 | choice | ||
| 309 | prompt "Compact Flash Connection Area" | ||
| 310 | depends on CF_ENABLER | ||
| 311 | default CF_AREA6 | ||
| 312 | |||
| 313 | config CF_AREA5 | ||
| 314 | bool "Area5" | ||
| 315 | help | ||
| 316 | If your board has "Directly Connected" CompactFlash, You should | ||
| 317 | select the area where your CF is connected to. | ||
| 318 | |||
| 319 | - "Area5" if CompactFlash is connected to Area 5 (0x14000000) | ||
| 320 | - "Area6" if it is connected to Area 6 (0x18000000) | ||
| 321 | |||
| 322 | "Area6" will work for most boards. | ||
| 323 | |||
| 324 | config CF_AREA6 | ||
| 325 | bool "Area6" | ||
| 326 | |||
| 327 | endchoice | ||
| 328 | |||
| 329 | config CF_BASE_ADDR | ||
| 330 | hex | ||
| 331 | depends on CF_ENABLER | ||
| 332 | default "0xb8000000" if CF_AREA6 | ||
| 333 | default "0xb4000000" if CF_AREA5 | ||
| 334 | |||
| 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 | |||
| 440 | menu "Timer and clock configuration" | 407 | menu "Timer and clock configuration" |
| 441 | 408 | ||
| 442 | config SH_TMU | 409 | config SH_TMU |
| @@ -473,13 +440,13 @@ config SH_PCLK_FREQ | |||
| 473 | int "Peripheral clock frequency (in Hz)" | 440 | int "Peripheral clock frequency (in Hz)" |
| 474 | default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343 | 441 | default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343 |
| 475 | default "31250000" if CPU_SUBTYPE_SH7619 | 442 | default "31250000" if CPU_SUBTYPE_SH7619 |
| 443 | default "32000000" if CPU_SUBTYPE_SH7722 | ||
| 476 | default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \ | 444 | default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \ |
| 477 | CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \ | 445 | CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \ |
| 478 | CPU_SUBTYPE_SH7206 | 446 | CPU_SUBTYPE_SH7206 |
| 479 | default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780 || \ | 447 | default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R |
| 480 | CPU_SUBTYPE_SH7785 | ||
| 481 | default "60000000" if CPU_SUBTYPE_SH7751 | ||
| 482 | default "66000000" if CPU_SUBTYPE_SH4_202 | 448 | default "66000000" if CPU_SUBTYPE_SH4_202 |
| 449 | default "50000000" | ||
| 483 | help | 450 | help |
| 484 | This option is used to specify the peripheral clock frequency. | 451 | This option is used to specify the peripheral clock frequency. |
| 485 | This is necessary for determining the reference clock value on | 452 | This is necessary for determining the reference clock value on |
| @@ -487,8 +454,10 @@ config SH_PCLK_FREQ | |||
| 487 | 454 | ||
| 488 | config SH_CLK_MD | 455 | config SH_CLK_MD |
| 489 | int "CPU Mode Pin Setting" | 456 | int "CPU Mode Pin Setting" |
| 490 | default 0 | ||
| 491 | depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206 | 457 | depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206 |
| 458 | default 6 if CPU_SUBTYPE_SH7206 | ||
| 459 | default 5 if CPU_SUBTYPE_SH7619 | ||
| 460 | default 0 | ||
| 492 | help | 461 | help |
| 493 | MD2 - MD0 pin setting. | 462 | MD2 - MD0 pin setting. |
| 494 | 463 | ||
| @@ -560,6 +529,7 @@ config CRASH_DUMP | |||
| 560 | 529 | ||
| 561 | config SMP | 530 | config SMP |
| 562 | bool "Symmetric multi-processing support" | 531 | bool "Symmetric multi-processing support" |
| 532 | depends on SYS_SUPPORTS_SMP | ||
| 563 | ---help--- | 533 | ---help--- |
| 564 | This enables support for systems with more than one CPU. If you have | 534 | This enables support for systems with more than one CPU. If you have |
| 565 | a system with only one CPU, like most personal computers, say N. If | 535 | a system with only one CPU, like most personal computers, say N. If |
| @@ -584,6 +554,7 @@ config NR_CPUS | |||
| 584 | int "Maximum number of CPUs (2-32)" | 554 | int "Maximum number of CPUs (2-32)" |
| 585 | range 2 32 | 555 | range 2 32 |
| 586 | depends on SMP | 556 | depends on SMP |
| 557 | default "4" if CPU_SHX3 | ||
| 587 | default "2" | 558 | default "2" |
| 588 | help | 559 | help |
| 589 | This allows you to specify the maximum number of CPUs which this | 560 | This allows you to specify the maximum number of CPUs which this |
| @@ -623,6 +594,7 @@ config BOOT_LINK_OFFSET | |||
| 623 | 594 | ||
| 624 | config UBC_WAKEUP | 595 | config UBC_WAKEUP |
| 625 | bool "Wakeup UBC on startup" | 596 | bool "Wakeup UBC on startup" |
| 597 | depends on CPU_SH4 | ||
| 626 | help | 598 | help |
| 627 | Selecting this option will wakeup the User Break Controller (UBC) on | 599 | Selecting this option will wakeup the User Break Controller (UBC) on |
| 628 | startup. Although the UBC is left in an awake state when the processor | 600 | startup. Although the UBC is left in an awake state when the processor |
| @@ -651,8 +623,8 @@ menu "Bus options" | |||
| 651 | # we're not using PCMCIA, so we make it dependent on | 623 | # we're not using PCMCIA, so we make it dependent on |
| 652 | # PCMCIA outright. -- PFM. | 624 | # PCMCIA outright. -- PFM. |
| 653 | config ISA | 625 | config ISA |
| 654 | bool | 626 | def_bool y |
| 655 | default y if PCMCIA | 627 | depends on PCMCIA && HD6446X_SERIES |
| 656 | help | 628 | help |
| 657 | Find out whether you have ISA slots on your motherboard. ISA is the | 629 | Find out whether you have ISA slots on your motherboard. ISA is the |
| 658 | name of a bus system, i.e. the way the CPU talks to the other stuff | 630 | name of a bus system, i.e. the way the CPU talks to the other stuff |
| @@ -690,6 +662,49 @@ config SUPERHYWAY | |||
| 690 | tristate "SuperHyway Bus support" | 662 | tristate "SuperHyway Bus support" |
| 691 | depends on CPU_SUBTYPE_SH4_202 | 663 | depends on CPU_SUBTYPE_SH4_202 |
| 692 | 664 | ||
| 665 | config CF_ENABLER | ||
| 666 | bool "Compact Flash Enabler support" | ||
| 667 | depends on SOLUTION_ENGINE || SH_SH03 | ||
| 668 | ---help--- | ||
| 669 | Compact Flash is a small, removable mass storage device introduced | ||
| 670 | in 1994 originally as a PCMCIA device. If you say `Y' here, you | ||
| 671 | compile in support for Compact Flash devices directly connected to | ||
| 672 | a SuperH processor. A Compact Flash FAQ is available at | ||
| 673 | <http://www.compactflash.org/faqs/faq.htm>. | ||
| 674 | |||
| 675 | If your board has "Directly Connected" CompactFlash at area 5 or 6, | ||
| 676 | you may want to enable this option. Then, you can use CF as | ||
| 677 | primary IDE drive (only tested for SanDisk). | ||
| 678 | |||
| 679 | If in doubt, select 'N'. | ||
| 680 | |||
| 681 | choice | ||
| 682 | prompt "Compact Flash Connection Area" | ||
| 683 | depends on CF_ENABLER | ||
| 684 | default CF_AREA6 | ||
| 685 | |||
| 686 | config CF_AREA5 | ||
| 687 | bool "Area5" | ||
| 688 | help | ||
| 689 | If your board has "Directly Connected" CompactFlash, You should | ||
| 690 | select the area where your CF is connected to. | ||
| 691 | |||
| 692 | - "Area5" if CompactFlash is connected to Area 5 (0x14000000) | ||
| 693 | - "Area6" if it is connected to Area 6 (0x18000000) | ||
| 694 | |||
| 695 | "Area6" will work for most boards. | ||
| 696 | |||
| 697 | config CF_AREA6 | ||
| 698 | bool "Area6" | ||
| 699 | |||
| 700 | endchoice | ||
| 701 | |||
| 702 | config CF_BASE_ADDR | ||
| 703 | hex | ||
| 704 | depends on CF_ENABLER | ||
| 705 | default "0xb8000000" if CF_AREA6 | ||
| 706 | default "0xb4000000" if CF_AREA5 | ||
| 707 | |||
| 693 | source "arch/sh/drivers/pci/Kconfig" | 708 | source "arch/sh/drivers/pci/Kconfig" |
| 694 | 709 | ||
| 695 | source "drivers/pci/Kconfig" | 710 | source "drivers/pci/Kconfig" |
| @@ -707,7 +722,7 @@ source "fs/Kconfig.binfmt" | |||
| 707 | endmenu | 722 | endmenu |
| 708 | 723 | ||
| 709 | menu "Power management options (EXPERIMENTAL)" | 724 | menu "Power management options (EXPERIMENTAL)" |
| 710 | depends on EXPERIMENTAL | 725 | depends on EXPERIMENTAL && SYS_SUPPORTS_PM |
| 711 | 726 | ||
| 712 | source kernel/power/Kconfig | 727 | source kernel/power/Kconfig |
| 713 | 728 | ||
diff --git a/arch/sh/Kconfig.debug b/arch/sh/Kconfig.debug index b56307294b67..52f6a99c8ecc 100644 --- a/arch/sh/Kconfig.debug +++ b/arch/sh/Kconfig.debug | |||
| @@ -52,6 +52,10 @@ config EARLY_PRINTK | |||
| 52 | select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using | 52 | select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using |
| 53 | the kernel command line option to toggle back and forth. | 53 | the kernel command line option to toggle back and forth. |
| 54 | 54 | ||
| 55 | config DEBUG_BOOTMEM | ||
| 56 | depends on DEBUG_KERNEL | ||
| 57 | bool "Debug BOOTMEM initialization" | ||
| 58 | |||
| 55 | config DEBUG_STACKOVERFLOW | 59 | config DEBUG_STACKOVERFLOW |
| 56 | bool "Check for stack overflows" | 60 | bool "Check for stack overflows" |
| 57 | depends on DEBUG_KERNEL | 61 | depends on DEBUG_KERNEL |
| @@ -82,6 +86,7 @@ config SH_KGDB | |||
| 82 | bool "Include KGDB kernel debugger" | 86 | bool "Include KGDB kernel debugger" |
| 83 | select FRAME_POINTER | 87 | select FRAME_POINTER |
| 84 | select DEBUG_INFO | 88 | select DEBUG_INFO |
| 89 | depends on CPU_SH3 || CPU_SH4 | ||
| 85 | help | 90 | help |
| 86 | Include in-kernel hooks for kgdb, the Linux kernel source level | 91 | Include in-kernel hooks for kgdb, the Linux kernel source level |
| 87 | debugger. See <http://kgdb.sourceforge.net/> for more information. | 92 | debugger. See <http://kgdb.sourceforge.net/> for more information. |
diff --git a/arch/sh/Makefile b/arch/sh/Makefile index 883b03b040c4..77fecc62a056 100644 --- a/arch/sh/Makefile +++ b/arch/sh/Makefile | |||
| @@ -34,20 +34,20 @@ isa-y := $(isa-y)-nofpu | |||
| 34 | endif | 34 | endif |
| 35 | endif | 35 | endif |
| 36 | 36 | ||
| 37 | cflags-$(CONFIG_CPU_SH2) := -m2 | 37 | cflags-$(CONFIG_CPU_SH2) := $(call cc-option,-m2,) |
| 38 | cflags-$(CONFIG_CPU_SH2A) := -m2a $(call cc-option,-m2a-nofpu,) | 38 | cflags-$(CONFIG_CPU_SH2A) += $(call cc-option,-m2a,) \ |
| 39 | cflags-$(CONFIG_CPU_SH3) := -m3 | 39 | $(call cc-option,-m2a-nofpu,) |
| 40 | cflags-$(CONFIG_CPU_SH4) := -m4 \ | 40 | cflags-$(CONFIG_CPU_SH3) := $(call cc-option,-m3,) |
| 41 | cflags-$(CONFIG_CPU_SH4) := $(call cc-option,-m4,) \ | ||
| 41 | $(call cc-option,-mno-implicit-fp,-m4-nofpu) | 42 | $(call cc-option,-mno-implicit-fp,-m4-nofpu) |
| 42 | cflags-$(CONFIG_CPU_SH4A) := $(call cc-option,-m4a,) $(call cc-option,-m4a-nofpu,) | 43 | cflags-$(CONFIG_CPU_SH4A) += $(call cc-option,-m4a,) \ |
| 44 | $(call cc-option,-m4a-nofpu,) | ||
| 43 | 45 | ||
| 44 | cflags-$(CONFIG_CPU_BIG_ENDIAN) += -mb | 46 | cflags-$(CONFIG_CPU_BIG_ENDIAN) += -mb |
| 45 | cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -ml | 47 | cflags-$(CONFIG_CPU_LITTLE_ENDIAN) += -ml |
| 46 | 48 | ||
| 47 | cflags-y += $(call as-option,-Wa$(comma)-isa=$(isa-y),) -ffreestanding | 49 | cflags-y += $(call as-option,-Wa$(comma)-isa=$(isa-y),) -ffreestanding |
| 48 | 50 | ||
| 49 | cflags-$(CONFIG_SH_DSP) += -Wa,-dsp | ||
| 50 | |||
| 51 | cflags-$(CONFIG_MORE_COMPILE_OPTIONS) += \ | 51 | cflags-$(CONFIG_MORE_COMPILE_OPTIONS) += \ |
| 52 | $(shell echo $(CONFIG_COMPILE_OPTIONS) | sed -e 's/"//g') | 52 | $(shell echo $(CONFIG_COMPILE_OPTIONS) | sed -e 's/"//g') |
| 53 | 53 | ||
| @@ -87,39 +87,37 @@ core-y += arch/sh/kernel/ arch/sh/mm/ | |||
| 87 | core-$(CONFIG_SH_FPU_EMU) += arch/sh/math-emu/ | 87 | core-$(CONFIG_SH_FPU_EMU) += arch/sh/math-emu/ |
| 88 | 88 | ||
| 89 | # Boards | 89 | # Boards |
| 90 | machdir-$(CONFIG_SH_SOLUTION_ENGINE) := se/770x | 90 | machdir-$(CONFIG_SH_SOLUTION_ENGINE) += se/770x |
| 91 | machdir-$(CONFIG_SH_7722_SOLUTION_ENGINE) := se/7722 | 91 | machdir-$(CONFIG_SH_7722_SOLUTION_ENGINE) += se/7722 |
| 92 | machdir-$(CONFIG_SH_7751_SOLUTION_ENGINE) := se/7751 | 92 | machdir-$(CONFIG_SH_7751_SOLUTION_ENGINE) += se/7751 |
| 93 | machdir-$(CONFIG_SH_7780_SOLUTION_ENGINE) := se/7780 | 93 | machdir-$(CONFIG_SH_7780_SOLUTION_ENGINE) += se/7780 |
| 94 | machdir-$(CONFIG_SH_7300_SOLUTION_ENGINE) := se/7300 | 94 | machdir-$(CONFIG_SH_7300_SOLUTION_ENGINE) += se/7300 |
| 95 | machdir-$(CONFIG_SH_7343_SOLUTION_ENGINE) := se/7343 | 95 | machdir-$(CONFIG_SH_7343_SOLUTION_ENGINE) += se/7343 |
| 96 | machdir-$(CONFIG_SH_73180_SOLUTION_ENGINE) := se/73180 | 96 | machdir-$(CONFIG_SH_73180_SOLUTION_ENGINE) += se/73180 |
| 97 | machdir-$(CONFIG_SH_HP6XX) := hp6xx | 97 | machdir-$(CONFIG_SH_HP6XX) += hp6xx |
| 98 | machdir-$(CONFIG_SH_SATURN) := saturn | 98 | machdir-$(CONFIG_SH_DREAMCAST) += dreamcast |
| 99 | machdir-$(CONFIG_SH_DREAMCAST) := dreamcast | 99 | machdir-$(CONFIG_SH_MPC1211) += mpc1211 |
| 100 | machdir-$(CONFIG_SH_MPC1211) := mpc1211 | 100 | machdir-$(CONFIG_SH_SH03) += sh03 |
| 101 | machdir-$(CONFIG_SH_SH03) := sh03 | 101 | machdir-$(CONFIG_SH_SECUREEDGE5410) += snapgear |
| 102 | machdir-$(CONFIG_SH_SECUREEDGE5410) := snapgear | 102 | machdir-$(CONFIG_SH_HS7751RVOIP) += renesas/hs7751rvoip |
| 103 | machdir-$(CONFIG_SH_HS7751RVOIP) := renesas/hs7751rvoip | 103 | machdir-$(CONFIG_SH_RTS7751R2D) += renesas/rts7751r2d |
| 104 | machdir-$(CONFIG_SH_RTS7751R2D) := renesas/rts7751r2d | 104 | machdir-$(CONFIG_SH_7751_SYSTEMH) += renesas/systemh |
| 105 | machdir-$(CONFIG_SH_7751_SYSTEMH) := renesas/systemh | 105 | machdir-$(CONFIG_SH_EDOSK7705) += renesas/edosk7705 |
| 106 | machdir-$(CONFIG_SH_EDOSK7705) := renesas/edosk7705 | 106 | machdir-$(CONFIG_SH_HIGHLANDER) += renesas/r7780rp |
| 107 | machdir-$(CONFIG_SH_HIGHLANDER) := renesas/r7780rp | 107 | machdir-$(CONFIG_SH_7710VOIPGW) += renesas/sh7710voipgw |
| 108 | machdir-$(CONFIG_SH_7710VOIPGW) := renesas/sh7710voipgw | 108 | machdir-$(CONFIG_SH_SH4202_MICRODEV) += superh/microdev |
| 109 | machdir-$(CONFIG_SH_SH4202_MICRODEV) := superh/microdev | 109 | machdir-$(CONFIG_SH_LANDISK) += landisk |
| 110 | machdir-$(CONFIG_SH_LANDISK) := landisk | 110 | machdir-$(CONFIG_SH_TITAN) += titan |
| 111 | machdir-$(CONFIG_SH_TITAN) := titan | 111 | machdir-$(CONFIG_SH_SHMIN) += shmin |
| 112 | machdir-$(CONFIG_SH_SHMIN) := shmin | 112 | machdir-$(CONFIG_SH_7206_SOLUTION_ENGINE) += se/7206 |
| 113 | machdir-$(CONFIG_SH_7206_SOLUTION_ENGINE) := se/7206 | 113 | machdir-$(CONFIG_SH_7619_SOLUTION_ENGINE) += se/7619 |
| 114 | machdir-$(CONFIG_SH_7619_SOLUTION_ENGINE) := se/7619 | 114 | machdir-$(CONFIG_SH_LBOX_RE2) += lboxre2 |
| 115 | machdir-$(CONFIG_SH_LBOX_RE2) := lboxre2 | 115 | |
| 116 | machdir-$(CONFIG_SH_UNKNOWN) := unknown | 116 | incdir-y := $(notdir $(machdir-y)) |
| 117 | |||
| 118 | incdir-y := $(notdir $(machdir-y)) | ||
| 119 | incdir-$(CONFIG_SH_HP6XX) := hp6xx | ||
| 120 | 117 | ||
| 121 | ifneq ($(machdir-y),) | 118 | ifneq ($(machdir-y),) |
| 122 | core-y += arch/sh/boards/$(machdir-y)/ | 119 | core-y += $(addprefix arch/sh/boards/, \ |
| 120 | $(filter-out ., $(patsubst %,%/,$(machdir-y)))) | ||
| 123 | endif | 121 | endif |
| 124 | 122 | ||
| 125 | # Companion chips | 123 | # Companion chips |
| @@ -157,19 +155,31 @@ include/asm-sh/.cpu: $(wildcard include/config/cpu/*.h) \ | |||
| 157 | # Most boards have their own mach directories. For the ones that | 155 | # Most boards have their own mach directories. For the ones that |
| 158 | # don't, just reference the parent directory so the semantics are | 156 | # don't, just reference the parent directory so the semantics are |
| 159 | # kept roughly the same. | 157 | # kept roughly the same. |
| 158 | # | ||
| 159 | # When multiple boards are compiled in at the same time, preference | ||
| 160 | # for the mach link is given to whichever has a directory for its | ||
| 161 | # headers. However, this is only a workaround until platforms that | ||
| 162 | # can live in the same kernel image back away from relying on the | ||
| 163 | # mach link. | ||
| 160 | 164 | ||
| 161 | include/asm-sh/.mach: $(wildcard include/config/sh/*.h) \ | 165 | include/asm-sh/.mach: $(wildcard include/config/sh/*.h) \ |
| 162 | include/config/auto.conf FORCE | 166 | include/config/auto.conf FORCE |
| 163 | @echo -n ' SYMLINK include/asm-sh/mach -> ' | ||
| 164 | $(Q)if [ ! -d include/asm-sh ]; then mkdir -p include/asm-sh; fi | 167 | $(Q)if [ ! -d include/asm-sh ]; then mkdir -p include/asm-sh; fi |
| 165 | $(Q)if [ -d $(incdir-prefix)$(incdir-y) ]; then \ | 168 | $(Q)rm -f include/asm-sh/mach |
| 166 | echo -e 'include/asm-sh/$(incdir-y)'; \ | 169 | $(Q)for i in $(incdir-y); do \ |
| 167 | ln -fsn $(incdir-prefix)$(incdir-y) \ | 170 | if [ -d $(incdir-prefix)$$i ]; then \ |
| 171 | echo -n ' SYMLINK include/asm-sh/mach -> '; \ | ||
| 172 | echo -e "include/asm-sh/$$i"; \ | ||
| 173 | ln -fsn $(incdir-prefix)$$i \ | ||
| 168 | include/asm-sh/mach; \ | 174 | include/asm-sh/mach; \ |
| 169 | else \ | 175 | else \ |
| 170 | echo -e 'include/asm-sh'; \ | 176 | if [ ! -d include/asm-sh/mach ]; then \ |
| 171 | ln -fsn $(incdir-prefix) include/asm-sh/mach; \ | 177 | echo -n ' SYMLINK include/asm-sh/mach -> '; \ |
| 172 | fi | 178 | echo -e 'include/asm-sh'; \ |
| 179 | ln -fsn $(incdir-prefix) include/asm-sh/mach; \ | ||
| 180 | fi; \ | ||
| 181 | fi; \ | ||
| 182 | done | ||
| 173 | @touch $@ | 183 | @touch $@ |
| 174 | 184 | ||
| 175 | archprepare: include/asm-sh/.cpu include/asm-sh/.mach maketools | 185 | archprepare: include/asm-sh/.cpu include/asm-sh/.mach maketools |
| @@ -188,7 +198,9 @@ compressed: zImage | |||
| 188 | archclean: | 198 | archclean: |
| 189 | $(Q)$(MAKE) $(clean)=$(boot) | 199 | $(Q)$(MAKE) $(clean)=$(boot) |
| 190 | 200 | ||
| 191 | CLEAN_FILES += include/asm-sh/machtypes.h | 201 | CLEAN_FILES += include/asm-sh/machtypes.h \ |
| 202 | include/asm-sh/cpu include/asm-sh/.cpu \ | ||
| 203 | include/asm-sh/mach include/asm-sh/.mach | ||
| 192 | 204 | ||
| 193 | define archhelp | 205 | define archhelp |
| 194 | @echo '* zImage - Compressed kernel image' | 206 | @echo '* zImage - Compressed kernel image' |
diff --git a/arch/sh/boards/dreamcast/setup.c b/arch/sh/boards/dreamcast/setup.c index f13017eeeb27..8799df6e866a 100644 --- a/arch/sh/boards/dreamcast/setup.c +++ b/arch/sh/boards/dreamcast/setup.c | |||
| @@ -60,7 +60,7 @@ static void __init dreamcast_setup(char **cmdline_p) | |||
| 60 | #endif | 60 | #endif |
| 61 | } | 61 | } |
| 62 | 62 | ||
| 63 | struct sh_machine_vector mv_dreamcast __initmv = { | 63 | static struct sh_machine_vector mv_dreamcast __initmv = { |
| 64 | .mv_name = "Sega Dreamcast", | 64 | .mv_name = "Sega Dreamcast", |
| 65 | .mv_setup = dreamcast_setup, | 65 | .mv_setup = dreamcast_setup, |
| 66 | .mv_irq_demux = systemasic_irq_demux, | 66 | .mv_irq_demux = systemasic_irq_demux, |
| @@ -70,4 +70,3 @@ struct sh_machine_vector mv_dreamcast __initmv = { | |||
| 70 | .mv_consistent_free = dreamcast_consistent_free, | 70 | .mv_consistent_free = dreamcast_consistent_free, |
| 71 | #endif | 71 | #endif |
| 72 | }; | 72 | }; |
| 73 | ALIAS_MV(dreamcast) | ||
diff --git a/arch/sh/boards/hp6xx/mach.c b/arch/sh/boards/hp6xx/mach.c deleted file mode 100644 index 08dbba910f74..000000000000 --- a/arch/sh/boards/hp6xx/mach.c +++ /dev/null | |||
| @@ -1,46 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * linux/arch/sh/boards/hp6xx/mach.c | ||
| 3 | * | ||
| 4 | * Copyright (C) 2000 Stuart Menefy (stuart.menefy@st.com) | ||
| 5 | * | ||
| 6 | * May be copied or modified under the terms of the GNU General Public | ||
| 7 | * License. See linux/COPYING for more information. | ||
| 8 | * | ||
| 9 | * Machine vector for the HP680 | ||
| 10 | */ | ||
| 11 | #include <asm/machvec.h> | ||
| 12 | #include <asm/hd64461.h> | ||
| 13 | #include <asm/io.h> | ||
| 14 | #include <asm/irq.h> | ||
| 15 | |||
| 16 | struct sh_machine_vector mv_hp6xx __initmv = { | ||
| 17 | .mv_nr_irqs = HD64461_IRQBASE + HD64461_IRQ_NUM, | ||
| 18 | |||
| 19 | .mv_inb = hd64461_inb, | ||
| 20 | .mv_inw = hd64461_inw, | ||
| 21 | .mv_inl = hd64461_inl, | ||
| 22 | .mv_outb = hd64461_outb, | ||
| 23 | .mv_outw = hd64461_outw, | ||
| 24 | .mv_outl = hd64461_outl, | ||
| 25 | |||
| 26 | .mv_inb_p = hd64461_inb_p, | ||
| 27 | .mv_inw_p = hd64461_inw, | ||
| 28 | .mv_inl_p = hd64461_inl, | ||
| 29 | .mv_outb_p = hd64461_outb_p, | ||
| 30 | .mv_outw_p = hd64461_outw, | ||
| 31 | .mv_outl_p = hd64461_outl, | ||
| 32 | |||
| 33 | .mv_insb = hd64461_insb, | ||
| 34 | .mv_insw = hd64461_insw, | ||
| 35 | .mv_insl = hd64461_insl, | ||
| 36 | .mv_outsb = hd64461_outsb, | ||
| 37 | .mv_outsw = hd64461_outsw, | ||
| 38 | .mv_outsl = hd64461_outsl, | ||
| 39 | |||
| 40 | .mv_readw = hd64461_readw, | ||
| 41 | .mv_writew = hd64461_writew, | ||
| 42 | |||
| 43 | .mv_irq_demux = hd64461_irq_demux, | ||
| 44 | }; | ||
| 45 | |||
| 46 | ALIAS_MV(hp6xx) | ||
diff --git a/arch/sh/boards/hp6xx/setup.c b/arch/sh/boards/hp6xx/setup.c index 6aeee85c9785..7ae708930bac 100644 --- a/arch/sh/boards/hp6xx/setup.c +++ b/arch/sh/boards/hp6xx/setup.c | |||
| @@ -98,10 +98,9 @@ static void __init hp6xx_setup(char **cmdline_p) | |||
| 98 | } | 98 | } |
| 99 | device_initcall(hp6xx_devices_setup); | 99 | device_initcall(hp6xx_devices_setup); |
| 100 | 100 | ||
| 101 | struct sh_machine_vector mv_hp6xx __initmv = { | 101 | static struct sh_machine_vector mv_hp6xx __initmv = { |
| 102 | .mv_name = "hp6xx", | 102 | .mv_name = "hp6xx", |
| 103 | .mv_setup = hp6xx_setup, | 103 | .mv_setup = hp6xx_setup, |
| 104 | .mv_nr_irqs = HD64461_IRQBASE + HD64461_IRQ_NUM, | 104 | .mv_nr_irqs = HD64461_IRQBASE + HD64461_IRQ_NUM, |
| 105 | .mv_irq_demux = hd64461_irq_demux, | 105 | .mv_irq_demux = hd64461_irq_demux, |
| 106 | }; | 106 | }; |
| 107 | ALIAS_MV(hp6xx) | ||
diff --git a/arch/sh/boards/landisk/setup.c b/arch/sh/boards/landisk/setup.c index f953c7427769..eda71763ecc5 100644 --- a/arch/sh/boards/landisk/setup.c +++ b/arch/sh/boards/landisk/setup.c | |||
| @@ -97,10 +97,9 @@ static void __init landisk_setup(char **cmdline_p) | |||
| 97 | /* | 97 | /* |
| 98 | * The Machine Vector | 98 | * The Machine Vector |
| 99 | */ | 99 | */ |
| 100 | struct sh_machine_vector mv_landisk __initmv = { | 100 | static struct sh_machine_vector mv_landisk __initmv = { |
| 101 | .mv_name = "LANDISK", | 101 | .mv_name = "LANDISK", |
| 102 | .mv_nr_irqs = 72, | 102 | .mv_nr_irqs = 72, |
| 103 | .mv_setup = landisk_setup, | 103 | .mv_setup = landisk_setup, |
| 104 | .mv_init_irq = init_landisk_IRQ, | 104 | .mv_init_irq = init_landisk_IRQ, |
| 105 | }; | 105 | }; |
| 106 | ALIAS_MV(landisk) | ||
diff --git a/arch/sh/boards/lboxre2/setup.c b/arch/sh/boards/lboxre2/setup.c index 4e20f7c63bf3..9c830fdc411b 100644 --- a/arch/sh/boards/lboxre2/setup.c +++ b/arch/sh/boards/lboxre2/setup.c | |||
| @@ -77,9 +77,8 @@ device_initcall(lboxre2_devices_setup); | |||
| 77 | /* | 77 | /* |
| 78 | * The Machine Vector | 78 | * The Machine Vector |
| 79 | */ | 79 | */ |
| 80 | struct sh_machine_vector mv_lboxre2 __initmv = { | 80 | static struct sh_machine_vector mv_lboxre2 __initmv = { |
| 81 | .mv_name = "L-BOX RE2", | 81 | .mv_name = "L-BOX RE2", |
| 82 | .mv_nr_irqs = 72, | 82 | .mv_nr_irqs = 72, |
| 83 | .mv_init_irq = init_lboxre2_IRQ, | 83 | .mv_init_irq = init_lboxre2_IRQ, |
| 84 | }; | 84 | }; |
| 85 | ALIAS_MV(lboxre2) | ||
diff --git a/arch/sh/boards/mpc1211/setup.c b/arch/sh/boards/mpc1211/setup.c index 1a0604b23ce0..8ce03e00b0ae 100644 --- a/arch/sh/boards/mpc1211/setup.c +++ b/arch/sh/boards/mpc1211/setup.c | |||
| @@ -338,11 +338,10 @@ static void __init mpc1211_setup(char **cmdline_p) | |||
| 338 | /* | 338 | /* |
| 339 | * The Machine Vector | 339 | * The Machine Vector |
| 340 | */ | 340 | */ |
| 341 | struct sh_machine_vector mv_mpc1211 __initmv = { | 341 | static struct sh_machine_vector mv_mpc1211 __initmv = { |
| 342 | .mv_name = "Interface MPC-1211(CTP/PCI/MPC-SH02)", | 342 | .mv_name = "Interface MPC-1211(CTP/PCI/MPC-SH02)", |
| 343 | .mv_setup = mpc1211_setup, | 343 | .mv_setup = mpc1211_setup, |
| 344 | .mv_nr_irqs = 48, | 344 | .mv_nr_irqs = 48, |
| 345 | .mv_irq_demux = mpc1211_irq_demux, | 345 | .mv_irq_demux = mpc1211_irq_demux, |
| 346 | .mv_init_irq = init_mpc1211_IRQ, | 346 | .mv_init_irq = init_mpc1211_IRQ, |
| 347 | }; | 347 | }; |
| 348 | ALIAS_MV(mpc1211) | ||
diff --git a/arch/sh/boards/renesas/edosk7705/setup.c b/arch/sh/boards/renesas/edosk7705/setup.c index ec5be0107719..f076c45308dd 100644 --- a/arch/sh/boards/renesas/edosk7705/setup.c +++ b/arch/sh/boards/renesas/edosk7705/setup.c | |||
| @@ -21,7 +21,7 @@ static void __init sh_edosk7705_init_irq(void) | |||
| 21 | /* | 21 | /* |
| 22 | * The Machine Vector | 22 | * The Machine Vector |
| 23 | */ | 23 | */ |
| 24 | struct sh_machine_vector mv_edosk7705 __initmv = { | 24 | static struct sh_machine_vector mv_edosk7705 __initmv = { |
| 25 | .mv_name = "EDOSK7705", | 25 | .mv_name = "EDOSK7705", |
| 26 | .mv_nr_irqs = 80, | 26 | .mv_nr_irqs = 80, |
| 27 | 27 | ||
| @@ -41,4 +41,3 @@ struct sh_machine_vector mv_edosk7705 __initmv = { | |||
| 41 | .mv_isa_port2addr = sh_edosk7705_isa_port2addr, | 41 | .mv_isa_port2addr = sh_edosk7705_isa_port2addr, |
| 42 | .mv_init_irq = sh_edosk7705_init_irq, | 42 | .mv_init_irq = sh_edosk7705_init_irq, |
| 43 | }; | 43 | }; |
| 44 | ALIAS_MV(edosk7705) | ||
diff --git a/arch/sh/boards/renesas/hs7751rvoip/setup.c b/arch/sh/boards/renesas/hs7751rvoip/setup.c index f7d0e304d899..fa5fa3920222 100644 --- a/arch/sh/boards/renesas/hs7751rvoip/setup.c +++ b/arch/sh/boards/renesas/hs7751rvoip/setup.c | |||
| @@ -89,7 +89,7 @@ static void __init hs7751rvoip_setup(char **cmdline_p) | |||
| 89 | printk(KERN_INFO "Renesas Technology Sales HS7751RVoIP-2 support.\n"); | 89 | printk(KERN_INFO "Renesas Technology Sales HS7751RVoIP-2 support.\n"); |
| 90 | } | 90 | } |
| 91 | 91 | ||
| 92 | struct sh_machine_vector mv_hs7751rvoip __initmv = { | 92 | static struct sh_machine_vector mv_hs7751rvoip __initmv = { |
| 93 | .mv_name = "HS7751RVoIP", | 93 | .mv_name = "HS7751RVoIP", |
| 94 | .mv_setup = hs7751rvoip_setup, | 94 | .mv_setup = hs7751rvoip_setup, |
| 95 | .mv_nr_irqs = 72, | 95 | .mv_nr_irqs = 72, |
| @@ -118,4 +118,3 @@ struct sh_machine_vector mv_hs7751rvoip __initmv = { | |||
| 118 | .mv_init_irq = hs7751rvoip_init_irq, | 118 | .mv_init_irq = hs7751rvoip_init_irq, |
| 119 | .mv_ioport_map = hs7751rvoip_ioport_map, | 119 | .mv_ioport_map = hs7751rvoip_ioport_map, |
| 120 | }; | 120 | }; |
| 121 | ALIAS_MV(hs7751rvoip) | ||
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/boards/renesas/r7780rp/setup.c b/arch/sh/boards/renesas/r7780rp/setup.c index 0727ef92f2b3..5afb864a1ec5 100644 --- a/arch/sh/boards/renesas/r7780rp/setup.c +++ b/arch/sh/boards/renesas/r7780rp/setup.c | |||
| @@ -166,10 +166,9 @@ static void __init highlander_setup(char **cmdline_p) | |||
| 166 | /* | 166 | /* |
| 167 | * The Machine Vector | 167 | * The Machine Vector |
| 168 | */ | 168 | */ |
| 169 | struct sh_machine_vector mv_highlander __initmv = { | 169 | static struct sh_machine_vector mv_highlander __initmv = { |
| 170 | .mv_name = "Highlander", | 170 | .mv_name = "Highlander", |
| 171 | .mv_nr_irqs = 109, | 171 | .mv_nr_irqs = 109, |
| 172 | .mv_setup = highlander_setup, | 172 | .mv_setup = highlander_setup, |
| 173 | .mv_init_irq = highlander_init_irq, | 173 | .mv_init_irq = highlander_init_irq, |
| 174 | }; | 174 | }; |
| 175 | ALIAS_MV(highlander) | ||
diff --git a/arch/sh/boards/renesas/rts7751r2d/setup.c b/arch/sh/boards/renesas/rts7751r2d/setup.c index 593f26a85e9c..656fda30ef70 100644 --- a/arch/sh/boards/renesas/rts7751r2d/setup.c +++ b/arch/sh/boards/renesas/rts7751r2d/setup.c | |||
| @@ -176,7 +176,7 @@ static void __init rts7751r2d_setup(char **cmdline_p) | |||
| 176 | /* | 176 | /* |
| 177 | * The Machine Vector | 177 | * The Machine Vector |
| 178 | */ | 178 | */ |
| 179 | struct sh_machine_vector mv_rts7751r2d __initmv = { | 179 | static struct sh_machine_vector mv_rts7751r2d __initmv = { |
| 180 | .mv_name = "RTS7751R2D", | 180 | .mv_name = "RTS7751R2D", |
| 181 | .mv_setup = rts7751r2d_setup, | 181 | .mv_setup = rts7751r2d_setup, |
| 182 | .mv_nr_irqs = 72, | 182 | .mv_nr_irqs = 72, |
| @@ -189,4 +189,3 @@ struct sh_machine_vector mv_rts7751r2d __initmv = { | |||
| 189 | .mv_consistent_free = voyagergx_consistent_free, | 189 | .mv_consistent_free = voyagergx_consistent_free, |
| 190 | #endif | 190 | #endif |
| 191 | }; | 191 | }; |
| 192 | ALIAS_MV(rts7751r2d) | ||
diff --git a/arch/sh/boards/renesas/sh7710voipgw/setup.c b/arch/sh/boards/renesas/sh7710voipgw/setup.c index 180810b12107..2dce8bd97f90 100644 --- a/arch/sh/boards/renesas/sh7710voipgw/setup.c +++ b/arch/sh/boards/renesas/sh7710voipgw/setup.c | |||
| @@ -88,9 +88,8 @@ static void __init sh7710voipgw_init_irq(void) | |||
| 88 | /* | 88 | /* |
| 89 | * The Machine Vector | 89 | * The Machine Vector |
| 90 | */ | 90 | */ |
| 91 | struct sh_machine_vector mv_sh7710voipgw __initmv = { | 91 | static struct sh_machine_vector mv_sh7710voipgw __initmv = { |
| 92 | .mv_name = "SH7710 VoIP Gateway", | 92 | .mv_name = "SH7710 VoIP Gateway", |
| 93 | .mv_nr_irqs = 104, | 93 | .mv_nr_irqs = 104, |
| 94 | .mv_init_irq = sh7710voipgw_init_irq, | 94 | .mv_init_irq = sh7710voipgw_init_irq, |
| 95 | }; | 95 | }; |
| 96 | ALIAS_MV(sh7710voipgw) | ||
diff --git a/arch/sh/boards/renesas/systemh/setup.c b/arch/sh/boards/renesas/systemh/setup.c index 936117659b74..ee78af842778 100644 --- a/arch/sh/boards/renesas/systemh/setup.c +++ b/arch/sh/boards/renesas/systemh/setup.c | |||
| @@ -28,7 +28,7 @@ static void __init sh7751systemh_init_irq(void) | |||
| 28 | make_systemh_irq(0xb); /* Ethernet interrupt */ | 28 | make_systemh_irq(0xb); /* Ethernet interrupt */ |
| 29 | } | 29 | } |
| 30 | 30 | ||
| 31 | struct sh_machine_vector mv_7751systemh __initmv = { | 31 | static struct sh_machine_vector mv_7751systemh __initmv = { |
| 32 | .mv_name = "7751 SystemH", | 32 | .mv_name = "7751 SystemH", |
| 33 | .mv_nr_irqs = 72, | 33 | .mv_nr_irqs = 72, |
| 34 | 34 | ||
| @@ -55,4 +55,3 @@ struct sh_machine_vector mv_7751systemh __initmv = { | |||
| 55 | 55 | ||
| 56 | .mv_init_irq = sh7751systemh_init_irq, | 56 | .mv_init_irq = sh7751systemh_init_irq, |
| 57 | }; | 57 | }; |
| 58 | ALIAS_MV(7751systemh) | ||
diff --git a/arch/sh/boards/saturn/Makefile b/arch/sh/boards/saturn/Makefile deleted file mode 100644 index 75a3042e252e..000000000000 --- a/arch/sh/boards/saturn/Makefile +++ /dev/null | |||
| @@ -1,8 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Makefile for the Sega Saturn specific parts of the kernel | ||
| 3 | # | ||
| 4 | |||
| 5 | obj-y := setup.o io.o irq.o | ||
| 6 | |||
| 7 | obj-$(CONFIG_SMP) += smp.o | ||
| 8 | |||
diff --git a/arch/sh/boards/saturn/io.c b/arch/sh/boards/saturn/io.c deleted file mode 100644 index c6e4f7f2e686..000000000000 --- a/arch/sh/boards/saturn/io.c +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/boards/saturn/io.c | ||
| 3 | * | ||
| 4 | * I/O routines for the Sega Saturn. | ||
| 5 | * | ||
| 6 | * Copyright (C) 2002 Paul Mundt | ||
| 7 | * | ||
| 8 | * Released under the terms of the GNU GPL v2.0. | ||
| 9 | */ | ||
| 10 | #include <asm/saturn/io.h> | ||
| 11 | #include <asm/machvec.h> | ||
| 12 | |||
| 13 | unsigned long saturn_isa_port2addr(unsigned long offset) | ||
| 14 | { | ||
| 15 | return offset; | ||
| 16 | } | ||
| 17 | |||
| 18 | void *saturn_ioremap(unsigned long offset, unsigned long size) | ||
| 19 | { | ||
| 20 | return (void *)offset; | ||
| 21 | } | ||
| 22 | |||
| 23 | void saturn_iounmap(void *addr) | ||
| 24 | { | ||
| 25 | } | ||
| 26 | |||
diff --git a/arch/sh/boards/saturn/irq.c b/arch/sh/boards/saturn/irq.c deleted file mode 100644 index 15d1d3f0f787..000000000000 --- a/arch/sh/boards/saturn/irq.c +++ /dev/null | |||
| @@ -1,118 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/boards/saturn/irq.c | ||
| 3 | * | ||
| 4 | * Copyright (C) 2002 Paul Mundt | ||
| 5 | * | ||
| 6 | * Released under the terms of the GNU GPL v2.0. | ||
| 7 | */ | ||
| 8 | #include <linux/kernel.h> | ||
| 9 | #include <linux/init.h> | ||
| 10 | #include <linux/interrupt.h> | ||
| 11 | #include <asm/irq.h> | ||
| 12 | #include <asm/io.h> | ||
| 13 | |||
| 14 | /* | ||
| 15 | * Interrupts map out as follows: | ||
| 16 | * | ||
| 17 | * Vector Name Mask | ||
| 18 | * | ||
| 19 | * 64 VBLANKIN 0x0001 | ||
| 20 | * 65 VBLANKOUT 0x0002 | ||
| 21 | * 66 HBLANKIN 0x0004 | ||
| 22 | * 67 TIMER0 0x0008 | ||
| 23 | * 68 TIMER1 0x0010 | ||
| 24 | * 69 DSPEND 0x0020 | ||
| 25 | * 70 SOUNDREQUEST 0x0040 | ||
| 26 | * 71 SYSTEMMANAGER 0x0080 | ||
| 27 | * 72 PAD 0x0100 | ||
| 28 | * 73 LEVEL2DMAEND 0x0200 | ||
| 29 | * 74 LEVEL1DMAEND 0x0400 | ||
| 30 | * 75 LEVEL0DMAEND 0x0800 | ||
| 31 | * 76 DMAILLEGAL 0x1000 | ||
| 32 | * 77 SRITEDRAWEND 0x2000 | ||
| 33 | * 78 ABUS 0x8000 | ||
| 34 | * | ||
| 35 | */ | ||
| 36 | #define SATURN_IRQ_MIN 64 /* VBLANKIN */ | ||
| 37 | #define SATURN_IRQ_MAX 78 /* ABUS */ | ||
| 38 | |||
| 39 | #define SATURN_IRQ_MASK 0xbfff | ||
| 40 | |||
| 41 | static inline u32 saturn_irq_mask(unsigned int irq_nr) | ||
| 42 | { | ||
| 43 | u32 mask; | ||
| 44 | |||
| 45 | mask = (1 << (irq_nr - SATURN_IRQ_MIN)); | ||
| 46 | mask <<= (irq_nr == SATURN_IRQ_MAX); | ||
| 47 | mask &= SATURN_IRQ_MASK; | ||
| 48 | |||
| 49 | return mask; | ||
| 50 | } | ||
| 51 | |||
| 52 | static inline void mask_saturn_irq(unsigned int irq_nr) | ||
| 53 | { | ||
| 54 | u32 mask; | ||
| 55 | |||
| 56 | mask = ctrl_inl(SATURN_IMR); | ||
| 57 | mask |= saturn_irq_mask(irq_nr); | ||
| 58 | ctrl_outl(mask, SATURN_IMR); | ||
| 59 | } | ||
| 60 | |||
| 61 | static inline void unmask_saturn_irq(unsigned int irq_nr) | ||
| 62 | { | ||
| 63 | u32 mask; | ||
| 64 | |||
| 65 | mask = ctrl_inl(SATURN_IMR); | ||
| 66 | mask &= ~saturn_irq_mask(irq_nr); | ||
| 67 | ctrl_outl(mask, SATURN_IMR); | ||
| 68 | } | ||
| 69 | |||
| 70 | static void disable_saturn_irq(unsigned int irq_nr) | ||
| 71 | { | ||
| 72 | mask_saturn_irq(irq_nr); | ||
| 73 | } | ||
| 74 | |||
| 75 | static void enable_saturn_irq(unsigned int irq_nr) | ||
| 76 | { | ||
| 77 | unmask_saturn_irq(irq_nr); | ||
| 78 | } | ||
| 79 | |||
| 80 | static void mask_and_ack_saturn_irq(unsigned int irq_nr) | ||
| 81 | { | ||
| 82 | mask_saturn_irq(irq_nr); | ||
| 83 | } | ||
| 84 | |||
| 85 | static void end_saturn_irq(unsigned int irq_nr) | ||
| 86 | { | ||
| 87 | if (!(irq_desc[irq_nr].status & (IRQ_DISABLED | IRQ_INPROGRESS))) | ||
| 88 | unmask_saturn_irq(irq_nr); | ||
| 89 | } | ||
| 90 | |||
| 91 | static unsigned int startup_saturn_irq(unsigned int irq_nr) | ||
| 92 | { | ||
| 93 | unmask_saturn_irq(irq_nr); | ||
| 94 | |||
| 95 | return 0; | ||
| 96 | } | ||
| 97 | |||
| 98 | static void shutdown_saturn_irq(unsigned int irq_nr) | ||
| 99 | { | ||
| 100 | mask_saturn_irq(irq_nr); | ||
| 101 | } | ||
| 102 | |||
| 103 | static struct hw_interrupt_type saturn_int = { | ||
| 104 | .typename = "Saturn", | ||
| 105 | .enable = enable_saturn_irq, | ||
| 106 | .disable = disable_saturn_irq, | ||
| 107 | .ack = mask_and_ack_saturn_irq, | ||
| 108 | .end = end_saturn_irq, | ||
| 109 | .startup = startup_saturn_irq, | ||
| 110 | .shutdown = shutdown_saturn_irq, | ||
| 111 | }; | ||
| 112 | |||
| 113 | int saturn_irq_demux(int irq_nr) | ||
| 114 | { | ||
| 115 | /* FIXME */ | ||
| 116 | return irq_nr; | ||
| 117 | } | ||
| 118 | |||
diff --git a/arch/sh/boards/saturn/setup.c b/arch/sh/boards/saturn/setup.c deleted file mode 100644 index a3a37c9aad2e..000000000000 --- a/arch/sh/boards/saturn/setup.c +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/boards/saturn/setup.c | ||
| 3 | * | ||
| 4 | * Hardware support for the Sega Saturn. | ||
| 5 | * | ||
| 6 | * Copyright (c) 2002 Paul Mundt | ||
| 7 | * | ||
| 8 | * Released under the terms of the GNU GPL v2.0. | ||
| 9 | */ | ||
| 10 | #include <linux/kernel.h> | ||
| 11 | #include <linux/init.h> | ||
| 12 | #include <asm/io.h> | ||
| 13 | #include <asm/machvec.h> | ||
| 14 | #include <asm/mach/io.h> | ||
| 15 | |||
| 16 | extern int saturn_irq_demux(int irq_nr); | ||
| 17 | |||
| 18 | /* | ||
| 19 | * The Machine Vector | ||
| 20 | */ | ||
| 21 | struct sh_machine_vector mv_saturn __initmv = { | ||
| 22 | .mv_name = "Sega Saturn", | ||
| 23 | .mv_nr_irqs = 80, /* Fix this later */ | ||
| 24 | |||
| 25 | .mv_isa_port2addr = saturn_isa_port2addr, | ||
| 26 | .mv_irq_demux = saturn_irq_demux, | ||
| 27 | |||
| 28 | .mv_ioremap = saturn_ioremap, | ||
| 29 | .mv_iounmap = saturn_iounmap, | ||
| 30 | }; | ||
| 31 | ALIAS_MV(saturn) | ||
diff --git a/arch/sh/boards/saturn/smp.c b/arch/sh/boards/saturn/smp.c deleted file mode 100644 index 76460918c9cd..000000000000 --- a/arch/sh/boards/saturn/smp.c +++ /dev/null | |||
| @@ -1,68 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/boards/saturn/smp.c | ||
| 3 | * | ||
| 4 | * SMP support for the Sega Saturn. | ||
| 5 | * | ||
| 6 | * Copyright (c) 2002 Paul Mundt | ||
| 7 | * | ||
| 8 | * Released under the terms of the GNU GPL v2.0. | ||
| 9 | */ | ||
| 10 | #include <linux/kernel.h> | ||
| 11 | #include <linux/init.h> | ||
| 12 | #include <linux/smp.h> | ||
| 13 | |||
| 14 | #include <asm/saturn/smpc.h> | ||
| 15 | |||
| 16 | extern void start_secondary(void); | ||
| 17 | |||
| 18 | void __smp_send_ipi(unsigned int cpu, unsigned int action) | ||
| 19 | { | ||
| 20 | /* Nothing here yet .. */ | ||
| 21 | } | ||
| 22 | |||
| 23 | unsigned int __smp_probe_cpus(void) | ||
| 24 | { | ||
| 25 | /* | ||
| 26 | * This is just a straightforward master/slave configuration, | ||
| 27 | * and probing isn't really supported.. | ||
| 28 | */ | ||
| 29 | return 2; | ||
| 30 | } | ||
| 31 | |||
| 32 | /* | ||
| 33 | * We're only allowed to do byte-access to SMPC registers. In | ||
| 34 | * addition to which, we treat them as write-only, since | ||
| 35 | * reading from them will return undefined data. | ||
| 36 | */ | ||
| 37 | static inline void smpc_slave_stop(unsigned int cpu) | ||
| 38 | { | ||
| 39 | smpc_barrier(); | ||
| 40 | ctrl_outb(1, SMPC_STATUS); | ||
| 41 | |||
| 42 | ctrl_outb(SMPC_CMD_SSHOFF, SMPC_COMMAND); | ||
| 43 | smpc_barrier(); | ||
| 44 | } | ||
| 45 | |||
| 46 | static inline void smpc_slave_start(unsigned int cpu) | ||
| 47 | { | ||
| 48 | ctrl_outb(1, SMPC_STATUS); | ||
| 49 | ctrl_outb(SMPC_CMD_SSHON, SMPC_COMMAND); | ||
| 50 | |||
| 51 | smpc_barrier(); | ||
| 52 | } | ||
| 53 | |||
| 54 | void __smp_slave_init(unsigned int cpu) | ||
| 55 | { | ||
| 56 | register unsigned long vbr; | ||
| 57 | void **entry; | ||
| 58 | |||
| 59 | __asm__ __volatile__ ("stc vbr, %0\n\t" : "=r" (vbr)); | ||
| 60 | entry = (void **)(vbr + 0x310 + 0x94); | ||
| 61 | |||
| 62 | smpc_slave_stop(cpu); | ||
| 63 | |||
| 64 | *(void **)entry = (void *)start_secondary; | ||
| 65 | |||
| 66 | smpc_slave_start(cpu); | ||
| 67 | } | ||
| 68 | |||
diff --git a/arch/sh/boards/se/7206/setup.c b/arch/sh/boards/se/7206/setup.c index ca714879f559..a074b62505ef 100644 --- a/arch/sh/boards/se/7206/setup.c +++ b/arch/sh/boards/se/7206/setup.c | |||
| @@ -70,7 +70,7 @@ __initcall(se7206_devices_setup); | |||
| 70 | * The Machine Vector | 70 | * The Machine Vector |
| 71 | */ | 71 | */ |
| 72 | 72 | ||
| 73 | struct sh_machine_vector mv_se __initmv = { | 73 | static struct sh_machine_vector mv_se __initmv = { |
| 74 | .mv_name = "SolutionEngine", | 74 | .mv_name = "SolutionEngine", |
| 75 | .mv_nr_irqs = 256, | 75 | .mv_nr_irqs = 256, |
| 76 | .mv_inb = se7206_inb, | 76 | .mv_inb = se7206_inb, |
| @@ -96,4 +96,3 @@ struct sh_machine_vector mv_se __initmv = { | |||
| 96 | 96 | ||
| 97 | .mv_init_irq = init_se7206_IRQ, | 97 | .mv_init_irq = init_se7206_IRQ, |
| 98 | }; | 98 | }; |
| 99 | ALIAS_MV(se) | ||
diff --git a/arch/sh/boards/se/7300/setup.c b/arch/sh/boards/se/7300/setup.c index f1960956bad0..eb469f5b6e97 100644 --- a/arch/sh/boards/se/7300/setup.c +++ b/arch/sh/boards/se/7300/setup.c | |||
| @@ -46,7 +46,7 @@ __initcall(se7300_devices_setup); | |||
| 46 | /* | 46 | /* |
| 47 | * The Machine Vector | 47 | * The Machine Vector |
| 48 | */ | 48 | */ |
| 49 | struct sh_machine_vector mv_7300se __initmv = { | 49 | static struct sh_machine_vector mv_7300se __initmv = { |
| 50 | .mv_name = "SolutionEngine 7300", | 50 | .mv_name = "SolutionEngine 7300", |
| 51 | .mv_nr_irqs = 109, | 51 | .mv_nr_irqs = 109, |
| 52 | .mv_inb = sh7300se_inb, | 52 | .mv_inb = sh7300se_inb, |
| @@ -72,4 +72,3 @@ struct sh_machine_vector mv_7300se __initmv = { | |||
| 72 | 72 | ||
| 73 | .mv_init_irq = init_7300se_IRQ, | 73 | .mv_init_irq = init_7300se_IRQ, |
| 74 | }; | 74 | }; |
| 75 | ALIAS_MV(7300se) | ||
diff --git a/arch/sh/boards/se/73180/setup.c b/arch/sh/boards/se/73180/setup.c index e143017c8975..1deee8556642 100644 --- a/arch/sh/boards/se/73180/setup.c +++ b/arch/sh/boards/se/73180/setup.c | |||
| @@ -46,7 +46,7 @@ __initcall(se73180_devices_setup); | |||
| 46 | /* | 46 | /* |
| 47 | * The Machine Vector | 47 | * The Machine Vector |
| 48 | */ | 48 | */ |
| 49 | struct sh_machine_vector mv_73180se __initmv = { | 49 | static struct sh_machine_vector mv_73180se __initmv = { |
| 50 | .mv_name = "SolutionEngine 73180", | 50 | .mv_name = "SolutionEngine 73180", |
| 51 | .mv_nr_irqs = 108, | 51 | .mv_nr_irqs = 108, |
| 52 | .mv_inb = sh73180se_inb, | 52 | .mv_inb = sh73180se_inb, |
| @@ -73,4 +73,3 @@ struct sh_machine_vector mv_73180se __initmv = { | |||
| 73 | .mv_init_irq = init_73180se_IRQ, | 73 | .mv_init_irq = init_73180se_IRQ, |
| 74 | .mv_irq_demux = shmse_irq_demux, | 74 | .mv_irq_demux = shmse_irq_demux, |
| 75 | }; | 75 | }; |
| 76 | ALIAS_MV(73180se) | ||
diff --git a/arch/sh/boards/se/7343/setup.c b/arch/sh/boards/se/7343/setup.c index 3fdb16f2cef1..8fec155e2ff7 100644 --- a/arch/sh/boards/se/7343/setup.c +++ b/arch/sh/boards/se/7343/setup.c | |||
| @@ -64,7 +64,7 @@ static void __init sh7343se_setup(char **cmdline_p) | |||
| 64 | /* | 64 | /* |
| 65 | * The Machine Vector | 65 | * The Machine Vector |
| 66 | */ | 66 | */ |
| 67 | struct sh_machine_vector mv_7343se __initmv = { | 67 | static struct sh_machine_vector mv_7343se __initmv = { |
| 68 | .mv_name = "SolutionEngine 7343", | 68 | .mv_name = "SolutionEngine 7343", |
| 69 | .mv_setup = sh7343se_setup, | 69 | .mv_setup = sh7343se_setup, |
| 70 | .mv_nr_irqs = 108, | 70 | .mv_nr_irqs = 108, |
| @@ -92,4 +92,3 @@ struct sh_machine_vector mv_7343se __initmv = { | |||
| 92 | .mv_init_irq = init_7343se_IRQ, | 92 | .mv_init_irq = init_7343se_IRQ, |
| 93 | .mv_irq_demux = shmse_irq_demux, | 93 | .mv_irq_demux = shmse_irq_demux, |
| 94 | }; | 94 | }; |
| 95 | ALIAS_MV(7343se) | ||
diff --git a/arch/sh/boards/se/7619/setup.c b/arch/sh/boards/se/7619/setup.c index 52d2c4d5d2fa..1d0ef7faa10d 100644 --- a/arch/sh/boards/se/7619/setup.c +++ b/arch/sh/boards/se/7619/setup.c | |||
| @@ -15,8 +15,7 @@ | |||
| 15 | * The Machine Vector | 15 | * The Machine Vector |
| 16 | */ | 16 | */ |
| 17 | 17 | ||
| 18 | struct sh_machine_vector mv_se __initmv = { | 18 | static struct sh_machine_vector mv_se __initmv = { |
| 19 | .mv_name = "SolutionEngine", | 19 | .mv_name = "SolutionEngine", |
| 20 | .mv_nr_irqs = 108, | 20 | .mv_nr_irqs = 108, |
| 21 | }; | 21 | }; |
| 22 | ALIAS_MV(se) | ||
diff --git a/arch/sh/boards/se/770x/irq.c b/arch/sh/boards/se/770x/irq.c index c8eccff77a04..cdb0807928a5 100644 --- a/arch/sh/boards/se/770x/irq.c +++ b/arch/sh/boards/se/770x/irq.c | |||
| @@ -15,46 +15,7 @@ | |||
| 15 | #include <asm/io.h> | 15 | #include <asm/io.h> |
| 16 | #include <asm/se.h> | 16 | #include <asm/se.h> |
| 17 | 17 | ||
| 18 | /* | 18 | static struct ipr_data ipr_irq_table[] = { |
| 19 | * If the problem of make_ipr_irq is solved, | ||
| 20 | * this code will become unnecessary. :-) | ||
| 21 | */ | ||
| 22 | static void se770x_disable_ipr_irq(unsigned int irq) | ||
| 23 | { | ||
| 24 | struct ipr_data *p = get_irq_chip_data(irq); | ||
| 25 | |||
| 26 | ctrl_outw(ctrl_inw(p->addr) & (0xffff ^ (0xf << p->shift)), p->addr); | ||
| 27 | } | ||
| 28 | |||
| 29 | static void se770x_enable_ipr_irq(unsigned int irq) | ||
| 30 | { | ||
| 31 | struct ipr_data *p = get_irq_chip_data(irq); | ||
| 32 | |||
| 33 | ctrl_outw(ctrl_inw(p->addr) | (p->priority << p->shift), p->addr); | ||
| 34 | } | ||
| 35 | |||
| 36 | static struct irq_chip se770x_irq_chip = { | ||
| 37 | .name = "MS770xSE-FPGA", | ||
| 38 | .mask = se770x_disable_ipr_irq, | ||
| 39 | .unmask = se770x_enable_ipr_irq, | ||
| 40 | .mask_ack = se770x_disable_ipr_irq, | ||
| 41 | }; | ||
| 42 | |||
| 43 | void make_se770x_irq(struct ipr_data *table, unsigned int nr_irqs) | ||
| 44 | { | ||
| 45 | int i; | ||
| 46 | |||
| 47 | for (i = 0; i < nr_irqs; i++) { | ||
| 48 | unsigned int irq = table[i].irq; | ||
| 49 | disable_irq_nosync(irq); | ||
| 50 | set_irq_chip_and_handler_name(irq, &se770x_irq_chip, | ||
| 51 | handle_level_irq, "level"); | ||
| 52 | set_irq_chip_data(irq, &table[i]); | ||
| 53 | se770x_enable_ipr_irq(irq); | ||
| 54 | } | ||
| 55 | } | ||
| 56 | |||
| 57 | static struct ipr_data se770x_ipr_map[] = { | ||
| 58 | /* | 19 | /* |
| 59 | * Super I/O (Just mimic PC): | 20 | * Super I/O (Just mimic PC): |
| 60 | * 1: keyboard | 21 | * 1: keyboard |
| @@ -68,46 +29,67 @@ static struct ipr_data se770x_ipr_map[] = { | |||
| 68 | */ | 29 | */ |
| 69 | #if defined(CONFIG_CPU_SUBTYPE_SH7705) | 30 | #if defined(CONFIG_CPU_SUBTYPE_SH7705) |
| 70 | /* This is default value */ | 31 | /* This is default value */ |
| 71 | { 13, 0, 8, 0x0f-13 ,BCR_ILCRA}, | 32 | { 13, 0, 8, 0x0f-13, }, |
| 72 | { 5 , 0, 4, 0x0f- 5 ,BCR_ILCRA}, | 33 | { 5 , 0, 4, 0x0f- 5, }, |
| 73 | { 10, 0, 0, 0x0f-10, BCR_ILCRB}, | 34 | { 10, 1, 0, 0x0f-10, }, |
| 74 | { 7 , 0, 4, 0x0f- 7, BCR_ILCRC}, | 35 | { 7 , 2, 4, 0x0f- 7, }, |
| 75 | { 3 , 0, 0, 0x0f- 3, BCR_ILCRC}, | 36 | { 3 , 2, 0, 0x0f- 3, }, |
| 76 | { 1 , 0, 12, 0x0f- 1, BCR_ILCRD}, | 37 | { 1 , 3, 12, 0x0f- 1, }, |
| 77 | { 12, 0, 4, 0x0f-12, BCR_ILCRD}, /* LAN */ | 38 | { 12, 3, 4, 0x0f-12, }, /* LAN */ |
| 78 | { 2 , 0, 8, 0x0f- 2, BCR_ILCRE}, /* PCIRQ2 */ | 39 | { 2 , 4, 8, 0x0f- 2, }, /* PCIRQ2 */ |
| 79 | { 6 , 0, 4, 0x0f- 6, BCR_ILCRE}, /* PCIRQ1 */ | 40 | { 6 , 4, 4, 0x0f- 6, }, /* PCIRQ1 */ |
| 80 | { 14, 0, 0, 0x0f-14, BCR_ILCRE}, /* PCIRQ0 */ | 41 | { 14, 4, 0, 0x0f-14, }, /* PCIRQ0 */ |
| 81 | { 0 , 0, 12, 0x0f , BCR_ILCRF}, | 42 | { 0 , 5, 12, 0x0f , }, |
| 82 | { 4 , 0, 4, 0x0f- 4, BCR_ILCRF}, | 43 | { 4 , 5, 4, 0x0f- 4, }, |
| 83 | { 8 , 0, 12, 0x0f- 8, BCR_ILCRG}, | 44 | { 8 , 6, 12, 0x0f- 8, }, |
| 84 | { 9 , 0, 8, 0x0f- 9, BCR_ILCRG}, | 45 | { 9 , 6, 8, 0x0f- 9, }, |
| 85 | { 11, 0, 4, 0x0f-11, BCR_ILCRG}, | 46 | { 11, 6, 4, 0x0f-11, }, |
| 86 | #else | 47 | #else |
| 87 | { 14, 0, 8, 0x0f-14 ,BCR_ILCRA}, | 48 | { 14, 0, 8, 0x0f-14, }, |
| 88 | { 12, 0, 4, 0x0f-12 ,BCR_ILCRA}, | 49 | { 12, 0, 4, 0x0f-12, }, |
| 89 | { 8, 0, 4, 0x0f- 8 ,BCR_ILCRB}, | 50 | { 8, 1, 4, 0x0f- 8, }, |
| 90 | { 6, 0, 12, 0x0f- 6 ,BCR_ILCRC}, | 51 | { 6, 2, 12, 0x0f- 6, }, |
| 91 | { 5, 0, 8, 0x0f- 5 ,BCR_ILCRC}, | 52 | { 5, 2, 8, 0x0f- 5, }, |
| 92 | { 4, 0, 4, 0x0f- 4 ,BCR_ILCRC}, | 53 | { 4, 2, 4, 0x0f- 4, }, |
| 93 | { 3, 0, 0, 0x0f- 3 ,BCR_ILCRC}, | 54 | { 3, 2, 0, 0x0f- 3, }, |
| 94 | { 1, 0, 12, 0x0f- 1 ,BCR_ILCRD}, | 55 | { 1, 3, 12, 0x0f- 1, }, |
| 95 | #if defined(CONFIG_STNIC) | 56 | #if defined(CONFIG_STNIC) |
| 96 | /* ST NIC */ | 57 | /* ST NIC */ |
| 97 | { 10, 0, 4, 0x0f-10 ,BCR_ILCRD}, /* LAN */ | 58 | { 10, 3, 4, 0x0f-10, }, /* LAN */ |
| 98 | #endif | 59 | #endif |
| 99 | /* MRSHPC IRQs setting */ | 60 | /* MRSHPC IRQs setting */ |
| 100 | { 0, 0, 12, 0x0f- 0 ,BCR_ILCRE}, /* PCIRQ3 */ | 61 | { 0, 4, 12, 0x0f- 0, }, /* PCIRQ3 */ |
| 101 | { 11, 0, 8, 0x0f-11 ,BCR_ILCRE}, /* PCIRQ2 */ | 62 | { 11, 4, 8, 0x0f-11, }, /* PCIRQ2 */ |
| 102 | { 9, 0, 4, 0x0f- 9 ,BCR_ILCRE}, /* PCIRQ1 */ | 63 | { 9, 4, 4, 0x0f- 9, }, /* PCIRQ1 */ |
| 103 | { 7, 0, 0, 0x0f- 7 ,BCR_ILCRE}, /* PCIRQ0 */ | 64 | { 7, 4, 0, 0x0f- 7, }, /* PCIRQ0 */ |
| 104 | /* #2, #13 are allocated for SLOT IRQ #1 and #2 (for now) */ | 65 | /* #2, #13 are allocated for SLOT IRQ #1 and #2 (for now) */ |
| 105 | /* NOTE: #2 and #13 are not used on PC */ | 66 | /* NOTE: #2 and #13 are not used on PC */ |
| 106 | { 13, 0, 4, 0x0f-13 ,BCR_ILCRG}, /* SLOTIRQ2 */ | 67 | { 13, 6, 4, 0x0f-13, }, /* SLOTIRQ2 */ |
| 107 | { 2, 0, 0, 0x0f- 2 ,BCR_ILCRG}, /* SLOTIRQ1 */ | 68 | { 2, 6, 0, 0x0f- 2, }, /* SLOTIRQ1 */ |
| 108 | #endif | 69 | #endif |
| 109 | }; | 70 | }; |
| 110 | 71 | ||
| 72 | static unsigned long ipr_offsets[] = { | ||
| 73 | BCR_ILCRA, | ||
| 74 | BCR_ILCRB, | ||
| 75 | BCR_ILCRC, | ||
| 76 | BCR_ILCRD, | ||
| 77 | BCR_ILCRE, | ||
| 78 | BCR_ILCRF, | ||
| 79 | BCR_ILCRG, | ||
| 80 | }; | ||
| 81 | |||
| 82 | static struct ipr_desc ipr_irq_desc = { | ||
| 83 | .ipr_offsets = ipr_offsets, | ||
| 84 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
| 85 | |||
| 86 | .ipr_data = ipr_irq_table, | ||
| 87 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
| 88 | .chip = { | ||
| 89 | .name = "IPR-se770x", | ||
| 90 | }, | ||
| 91 | }; | ||
| 92 | |||
| 111 | /* | 93 | /* |
| 112 | * Initialize IRQ setting | 94 | * Initialize IRQ setting |
| 113 | */ | 95 | */ |
| @@ -122,5 +104,5 @@ void __init init_se_IRQ(void) | |||
| 122 | ctrl_outw(0, BCR_ILCRF); | 104 | ctrl_outw(0, BCR_ILCRF); |
| 123 | ctrl_outw(0, BCR_ILCRG); | 105 | ctrl_outw(0, BCR_ILCRG); |
| 124 | 106 | ||
| 125 | make_se770x_irq(se770x_ipr_map, ARRAY_SIZE(se770x_ipr_map)); | 107 | register_ipr_controller(&ipr_irq_desc); |
| 126 | } | 108 | } |
diff --git a/arch/sh/boards/se/770x/setup.c b/arch/sh/boards/se/770x/setup.c index 17a2631de3ba..2962da148f3f 100644 --- a/arch/sh/boards/se/770x/setup.c +++ b/arch/sh/boards/se/770x/setup.c | |||
| @@ -122,7 +122,7 @@ device_initcall(se_devices_setup); | |||
| 122 | /* | 122 | /* |
| 123 | * The Machine Vector | 123 | * The Machine Vector |
| 124 | */ | 124 | */ |
| 125 | struct sh_machine_vector mv_se __initmv = { | 125 | static struct sh_machine_vector mv_se __initmv = { |
| 126 | .mv_name = "SolutionEngine", | 126 | .mv_name = "SolutionEngine", |
| 127 | .mv_setup = smsc_setup, | 127 | .mv_setup = smsc_setup, |
| 128 | #if defined(CONFIG_CPU_SH4) | 128 | #if defined(CONFIG_CPU_SH4) |
| @@ -160,4 +160,3 @@ struct sh_machine_vector mv_se __initmv = { | |||
| 160 | 160 | ||
| 161 | .mv_init_irq = init_se_IRQ, | 161 | .mv_init_irq = init_se_IRQ, |
| 162 | }; | 162 | }; |
| 163 | ALIAS_MV(se) | ||
diff --git a/arch/sh/boards/se/7722/irq.c b/arch/sh/boards/se/7722/irq.c index 099e5deb77f8..26cff0efda40 100644 --- a/arch/sh/boards/se/7722/irq.c +++ b/arch/sh/boards/se/7722/irq.c | |||
| @@ -19,15 +19,24 @@ | |||
| 19 | #define INTC_INTMSK0 0xFFD00044 | 19 | #define INTC_INTMSK0 0xFFD00044 |
| 20 | #define INTC_INTMSKCLR0 0xFFD00064 | 20 | #define INTC_INTMSKCLR0 0xFFD00064 |
| 21 | 21 | ||
| 22 | struct se7722_data { | ||
| 23 | unsigned char irq; | ||
| 24 | unsigned char ipr_idx; | ||
| 25 | unsigned char shift; | ||
| 26 | unsigned short priority; | ||
| 27 | unsigned long addr; | ||
| 28 | }; | ||
| 29 | |||
| 30 | |||
| 22 | static void disable_se7722_irq(unsigned int irq) | 31 | static void disable_se7722_irq(unsigned int irq) |
| 23 | { | 32 | { |
| 24 | struct ipr_data *p = get_irq_chip_data(irq); | 33 | struct se7722_data *p = get_irq_chip_data(irq); |
| 25 | ctrl_outw( ctrl_inw( p->addr ) | p->priority , p->addr ); | 34 | ctrl_outw( ctrl_inw( p->addr ) | p->priority , p->addr ); |
| 26 | } | 35 | } |
| 27 | 36 | ||
| 28 | static void enable_se7722_irq(unsigned int irq) | 37 | static void enable_se7722_irq(unsigned int irq) |
| 29 | { | 38 | { |
| 30 | struct ipr_data *p = get_irq_chip_data(irq); | 39 | struct se7722_data *p = get_irq_chip_data(irq); |
| 31 | ctrl_outw( ctrl_inw( p->addr ) & ~p->priority , p->addr ); | 40 | ctrl_outw( ctrl_inw( p->addr ) & ~p->priority , p->addr ); |
| 32 | } | 41 | } |
| 33 | 42 | ||
| @@ -38,7 +47,7 @@ static struct irq_chip se7722_irq_chip __read_mostly = { | |||
| 38 | .mask_ack = disable_se7722_irq, | 47 | .mask_ack = disable_se7722_irq, |
| 39 | }; | 48 | }; |
| 40 | 49 | ||
| 41 | static struct ipr_data ipr_irq_table[] = { | 50 | static struct se7722_data ipr_irq_table[] = { |
| 42 | /* irq ,idx,sft, priority , addr */ | 51 | /* irq ,idx,sft, priority , addr */ |
| 43 | { MRSHPC_IRQ0 , 0 , 0 , MRSHPC_BIT0 , IRQ01_MASK } , | 52 | { MRSHPC_IRQ0 , 0 , 0 , MRSHPC_BIT0 , IRQ01_MASK } , |
| 44 | { MRSHPC_IRQ1 , 0 , 0 , MRSHPC_BIT1 , IRQ01_MASK } , | 53 | { MRSHPC_IRQ1 , 0 , 0 , MRSHPC_BIT1 , IRQ01_MASK } , |
diff --git a/arch/sh/boards/se/7722/setup.c b/arch/sh/boards/se/7722/setup.c index 636ca6c987e0..6cca6cbc8069 100644 --- a/arch/sh/boards/se/7722/setup.c +++ b/arch/sh/boards/se/7722/setup.c | |||
| @@ -137,7 +137,7 @@ static void __init se7722_setup(char **cmdline_p) | |||
| 137 | /* | 137 | /* |
| 138 | * The Machine Vector | 138 | * The Machine Vector |
| 139 | */ | 139 | */ |
| 140 | struct sh_machine_vector mv_se7722 __initmv = { | 140 | static struct sh_machine_vector mv_se7722 __initmv = { |
| 141 | .mv_name = "Solution Engine 7722" , | 141 | .mv_name = "Solution Engine 7722" , |
| 142 | .mv_setup = se7722_setup , | 142 | .mv_setup = se7722_setup , |
| 143 | .mv_nr_irqs = 109 , | 143 | .mv_nr_irqs = 109 , |
| @@ -145,4 +145,3 @@ struct sh_machine_vector mv_se7722 __initmv = { | |||
| 145 | .mv_irq_demux = se7722_irq_demux, | 145 | .mv_irq_demux = se7722_irq_demux, |
| 146 | 146 | ||
| 147 | }; | 147 | }; |
| 148 | ALIAS_MV(se7722) | ||
diff --git a/arch/sh/boards/se/7751/irq.c b/arch/sh/boards/se/7751/irq.c index e4c63a48296c..c3d12590e5db 100644 --- a/arch/sh/boards/se/7751/irq.c +++ b/arch/sh/boards/se/7751/irq.c | |||
| @@ -14,44 +14,31 @@ | |||
| 14 | #include <asm/irq.h> | 14 | #include <asm/irq.h> |
| 15 | #include <asm/se7751.h> | 15 | #include <asm/se7751.h> |
| 16 | 16 | ||
| 17 | static struct ipr_data se7751_ipr_map[] = { | 17 | static struct ipr_data ipr_irq_table[] = { |
| 18 | /* Leave old Solution Engine code in for reference. */ | 18 | { 13, 3, 3, 2 }, |
| 19 | #if defined(CONFIG_SH_SOLUTION_ENGINE) | 19 | /* Add additional entries here as drivers are added and tested. */ |
| 20 | /* | 20 | }; |
| 21 | * Super I/O (Just mimic PC): | ||
| 22 | * 1: keyboard | ||
| 23 | * 3: serial 0 | ||
| 24 | * 4: serial 1 | ||
| 25 | * 5: printer | ||
| 26 | * 6: floppy | ||
| 27 | * 8: rtc | ||
| 28 | * 12: mouse | ||
| 29 | * 14: ide0 | ||
| 30 | */ | ||
| 31 | { 14, BCR_ILCRA, 2, 0x0f-14 }, | ||
| 32 | { 12, BCR_ILCRA, 1, 0x0f-12 }, | ||
| 33 | { 8, BCR_ILCRB, 1, 0x0f- 8 }, | ||
| 34 | { 6, BCR_ILCRC, 3, 0x0f- 6 }, | ||
| 35 | { 5, BCR_ILCRC, 2, 0x0f- 5 }, | ||
| 36 | { 4, BCR_ILCRC, 1, 0x0f- 4 }, | ||
| 37 | { 3, BCR_ILCRC, 0, 0x0f- 3 }, | ||
| 38 | { 1, BCR_ILCRD, 3, 0x0f- 1 }, | ||
| 39 | 21 | ||
| 40 | { 10, BCR_ILCRD, 1, 0x0f-10 }, /* LAN */ | 22 | static unsigned long ipr_offsets[] = { |
| 23 | BCR_ILCRA, | ||
| 24 | BCR_ILCRB, | ||
| 25 | BCR_ILCRC, | ||
| 26 | BCR_ILCRD, | ||
| 27 | BCR_ILCRE, | ||
| 28 | BCR_ILCRF, | ||
| 29 | BCR_ILCRG, | ||
| 30 | }; | ||
| 41 | 31 | ||
| 42 | { 0, BCR_ILCRE, 3, 0x0f- 0 }, /* PCIRQ3 */ | 32 | static struct ipr_desc ipr_irq_desc = { |
| 43 | { 11, BCR_ILCRE, 2, 0x0f-11 }, /* PCIRQ2 */ | 33 | .ipr_offsets = ipr_offsets, |
| 44 | { 9, BCR_ILCRE, 1, 0x0f- 9 }, /* PCIRQ1 */ | 34 | .nr_offsets = ARRAY_SIZE(ipr_offsets), |
| 45 | { 7, BCR_ILCRE, 0, 0x0f- 7 }, /* PCIRQ0 */ | ||
| 46 | 35 | ||
| 47 | /* #2, #13 are allocated for SLOT IRQ #1 and #2 (for now) */ | 36 | .ipr_data = ipr_irq_table, |
| 48 | /* NOTE: #2 and #13 are not used on PC */ | 37 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), |
| 49 | { 13, BCR_ILCRG, 1, 0x0f-13 }, /* SLOTIRQ2 */ | 38 | |
| 50 | { 2, BCR_ILCRG, 0, 0x0f- 2 }, /* SLOTIRQ1 */ | 39 | .chip = { |
| 51 | #elif defined(CONFIG_SH_7751_SOLUTION_ENGINE) | 40 | .name = "IPR-se7751", |
| 52 | { 13, BCR_ILCRD, 3, 2 }, | 41 | }, |
| 53 | /* Add additional entries here as drivers are added and tested. */ | ||
| 54 | #endif | ||
| 55 | }; | 42 | }; |
| 56 | 43 | ||
| 57 | /* | 44 | /* |
| @@ -59,5 +46,5 @@ static struct ipr_data se7751_ipr_map[] = { | |||
| 59 | */ | 46 | */ |
| 60 | void __init init_7751se_IRQ(void) | 47 | void __init init_7751se_IRQ(void) |
| 61 | { | 48 | { |
| 62 | make_ipr_irq(se7751_ipr_map, ARRAY_SIZE(se7751_ipr_map)); | 49 | register_ipr_controller(&ipr_irq_desc); |
| 63 | } | 50 | } |
diff --git a/arch/sh/boards/se/7751/setup.c b/arch/sh/boards/se/7751/setup.c index 52c7bfa57c2c..7873d07e40c1 100644 --- a/arch/sh/boards/se/7751/setup.c +++ b/arch/sh/boards/se/7751/setup.c | |||
| @@ -48,7 +48,7 @@ __initcall(se7751_devices_setup); | |||
| 48 | /* | 48 | /* |
| 49 | * The Machine Vector | 49 | * The Machine Vector |
| 50 | */ | 50 | */ |
| 51 | struct sh_machine_vector mv_7751se __initmv = { | 51 | static struct sh_machine_vector mv_7751se __initmv = { |
| 52 | .mv_name = "7751 SolutionEngine", | 52 | .mv_name = "7751 SolutionEngine", |
| 53 | .mv_nr_irqs = 72, | 53 | .mv_nr_irqs = 72, |
| 54 | 54 | ||
| @@ -71,4 +71,3 @@ struct sh_machine_vector mv_7751se __initmv = { | |||
| 71 | 71 | ||
| 72 | .mv_init_irq = init_7751se_IRQ, | 72 | .mv_init_irq = init_7751se_IRQ, |
| 73 | }; | 73 | }; |
| 74 | ALIAS_MV(7751se) | ||
diff --git a/arch/sh/boards/se/7780/irq.c b/arch/sh/boards/se/7780/irq.c index 3d0625c2d07b..874914746009 100644 --- a/arch/sh/boards/se/7780/irq.c +++ b/arch/sh/boards/se/7780/irq.c | |||
| @@ -16,28 +16,6 @@ | |||
| 16 | #include <asm/io.h> | 16 | #include <asm/io.h> |
| 17 | #include <asm/se7780.h> | 17 | #include <asm/se7780.h> |
| 18 | 18 | ||
| 19 | #define INTC_INTMSK0 0xFFD00044 | ||
| 20 | #define INTC_INTMSKCLR0 0xFFD00064 | ||
| 21 | |||
| 22 | static void disable_se7780_irq(unsigned int irq) | ||
| 23 | { | ||
| 24 | struct intc2_data *p = get_irq_chip_data(irq); | ||
| 25 | ctrl_outl(1 << p->msk_shift, INTC_INTMSK0 + p->msk_offset); | ||
| 26 | } | ||
| 27 | |||
| 28 | static void enable_se7780_irq(unsigned int irq) | ||
| 29 | { | ||
| 30 | struct intc2_data *p = get_irq_chip_data(irq); | ||
| 31 | ctrl_outl(1 << p->msk_shift, INTC_INTMSKCLR0 + p->msk_offset); | ||
| 32 | } | ||
| 33 | |||
| 34 | static struct irq_chip se7780_irq_chip __read_mostly = { | ||
| 35 | .name = "SE7780", | ||
| 36 | .mask = disable_se7780_irq, | ||
| 37 | .unmask = enable_se7780_irq, | ||
| 38 | .mask_ack = disable_se7780_irq, | ||
| 39 | }; | ||
| 40 | |||
| 41 | static struct intc2_data intc2_irq_table[] = { | 19 | static struct intc2_data intc2_irq_table[] = { |
| 42 | { 2, 0, 31, 0, 31, 3 }, /* daughter board EXTINT1 */ | 20 | { 2, 0, 31, 0, 31, 3 }, /* daughter board EXTINT1 */ |
| 43 | { 4, 0, 30, 0, 30, 3 }, /* daughter board EXTINT2 */ | 21 | { 4, 0, 30, 0, 30, 3 }, /* daughter board EXTINT2 */ |
| @@ -51,13 +29,24 @@ static struct intc2_data intc2_irq_table[] = { | |||
| 51 | { 0 , 0, 24, 0, 24, 3 }, /* SM501 */ | 29 | { 0 , 0, 24, 0, 24, 3 }, /* SM501 */ |
| 52 | }; | 30 | }; |
| 53 | 31 | ||
| 32 | static struct intc2_desc intc2_irq_desc __read_mostly = { | ||
| 33 | .prio_base = 0, /* N/A */ | ||
| 34 | .msk_base = 0xffd00044, | ||
| 35 | .mskclr_base = 0xffd00064, | ||
| 36 | |||
| 37 | .intc2_data = intc2_irq_table, | ||
| 38 | .nr_irqs = ARRAY_SIZE(intc2_irq_table), | ||
| 39 | |||
| 40 | .chip = { | ||
| 41 | .name = "INTC2-se7780", | ||
| 42 | }, | ||
| 43 | }; | ||
| 44 | |||
| 54 | /* | 45 | /* |
| 55 | * Initialize IRQ setting | 46 | * Initialize IRQ setting |
| 56 | */ | 47 | */ |
| 57 | void __init init_se7780_IRQ(void) | 48 | void __init init_se7780_IRQ(void) |
| 58 | { | 49 | { |
| 59 | int i ; | ||
| 60 | |||
| 61 | /* enable all interrupt at FPGA */ | 50 | /* enable all interrupt at FPGA */ |
| 62 | ctrl_outw(0, FPGA_INTMSK1); | 51 | ctrl_outw(0, FPGA_INTMSK1); |
| 63 | /* mask SM501 interrupt */ | 52 | /* mask SM501 interrupt */ |
| @@ -79,11 +68,5 @@ void __init init_se7780_IRQ(void) | |||
| 79 | /* FPGA + 0x0A */ | 68 | /* FPGA + 0x0A */ |
| 80 | ctrl_outw((IRQPIN_PCCPW << IRQPOS_PCCPW), FPGA_INTSEL3); | 69 | ctrl_outw((IRQPIN_PCCPW << IRQPOS_PCCPW), FPGA_INTSEL3); |
| 81 | 70 | ||
| 82 | for (i = 0; i < ARRAY_SIZE(intc2_irq_table); i++) { | 71 | register_intc2_controller(&intc2_irq_desc); |
| 83 | disable_irq_nosync(intc2_irq_table[i].irq); | ||
| 84 | set_irq_chip_and_handler_name( intc2_irq_table[i].irq, &se7780_irq_chip, | ||
| 85 | handle_level_irq, "level"); | ||
| 86 | set_irq_chip_data( intc2_irq_table[i].irq, &intc2_irq_table[i] ); | ||
| 87 | disable_se7780_irq(intc2_irq_table[i].irq); | ||
| 88 | } | ||
| 89 | } | 72 | } |
diff --git a/arch/sh/boards/se/7780/setup.c b/arch/sh/boards/se/7780/setup.c index df7d08a24c9f..723f2fd4d55b 100644 --- a/arch/sh/boards/se/7780/setup.c +++ b/arch/sh/boards/se/7780/setup.c | |||
| @@ -113,10 +113,9 @@ static void __init se7780_setup(char **cmdline_p) | |||
| 113 | /* | 113 | /* |
| 114 | * The Machine Vector | 114 | * The Machine Vector |
| 115 | */ | 115 | */ |
| 116 | struct sh_machine_vector mv_se7780 __initmv = { | 116 | static struct sh_machine_vector mv_se7780 __initmv = { |
| 117 | .mv_name = "Solution Engine 7780" , | 117 | .mv_name = "Solution Engine 7780" , |
| 118 | .mv_setup = se7780_setup , | 118 | .mv_setup = se7780_setup , |
| 119 | .mv_nr_irqs = 111 , | 119 | .mv_nr_irqs = 111 , |
| 120 | .mv_init_irq = init_se7780_IRQ, | 120 | .mv_init_irq = init_se7780_IRQ, |
| 121 | }; | 121 | }; |
| 122 | ALIAS_MV(se7780) | ||
diff --git a/arch/sh/boards/sh03/setup.c b/arch/sh/boards/sh03/setup.c index c069c444b4ec..9c031a8c0a1c 100644 --- a/arch/sh/boards/sh03/setup.c +++ b/arch/sh/boards/sh03/setup.c | |||
| @@ -15,17 +15,33 @@ | |||
| 15 | #include <asm/sh03/sh03.h> | 15 | #include <asm/sh03/sh03.h> |
| 16 | #include <asm/addrspace.h> | 16 | #include <asm/addrspace.h> |
| 17 | 17 | ||
| 18 | static struct ipr_data sh03_ipr_map[] = { | 18 | static struct ipr_data ipr_irq_table[] = { |
| 19 | { IRL0_IRQ, IRL0_IPR_ADDR, IRL0_IPR_POS, IRL0_PRIORITY }, | 19 | { IRL0_IRQ, 0, IRL0_IPR_POS, IRL0_PRIORITY }, |
| 20 | { IRL1_IRQ, IRL1_IPR_ADDR, IRL1_IPR_POS, IRL1_PRIORITY }, | 20 | { IRL1_IRQ, 0, IRL1_IPR_POS, IRL1_PRIORITY }, |
| 21 | { IRL2_IRQ, IRL2_IPR_ADDR, IRL2_IPR_POS, IRL2_PRIORITY }, | 21 | { IRL2_IRQ, 0, IRL2_IPR_POS, IRL2_PRIORITY }, |
| 22 | { IRL3_IRQ, IRL3_IPR_ADDR, IRL3_IPR_POS, IRL3_PRIORITY }, | 22 | { IRL3_IRQ, 0, IRL3_IPR_POS, IRL3_PRIORITY }, |
| 23 | }; | ||
| 24 | |||
| 25 | static unsigned long ipr_offsets[] = { | ||
| 26 | INTC_IPRD, | ||
| 27 | }; | ||
| 28 | |||
| 29 | static struct ipr_desc ipr_irq_desc = { | ||
| 30 | .ipr_offsets = ipr_offsets, | ||
| 31 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
| 32 | |||
| 33 | .ipr_data = ipr_irq_table, | ||
| 34 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
| 35 | |||
| 36 | .chip = { | ||
| 37 | .name = "IPR-sh03", | ||
| 38 | }, | ||
| 23 | }; | 39 | }; |
| 24 | 40 | ||
| 25 | static void __init init_sh03_IRQ(void) | 41 | static void __init init_sh03_IRQ(void) |
| 26 | { | 42 | { |
| 27 | ctrl_outw(ctrl_inw(INTC_ICR) | INTC_ICR_IRLM, INTC_ICR); | 43 | ctrl_outw(ctrl_inw(INTC_ICR) | INTC_ICR_IRLM, INTC_ICR); |
| 28 | make_ipr_irq(sh03_ipr_map, ARRAY_SIZE(sh03_ipr_map)); | 44 | register_ipr_controller(&ipr_irq_desc); |
| 29 | } | 45 | } |
| 30 | 46 | ||
| 31 | extern void *cf_io_base; | 47 | extern void *cf_io_base; |
| @@ -74,11 +90,10 @@ static int __init sh03_devices_setup(void) | |||
| 74 | } | 90 | } |
| 75 | __initcall(sh03_devices_setup); | 91 | __initcall(sh03_devices_setup); |
| 76 | 92 | ||
| 77 | struct sh_machine_vector mv_sh03 __initmv = { | 93 | static struct sh_machine_vector mv_sh03 __initmv = { |
| 78 | .mv_name = "Interface (CTP/PCI-SH03)", | 94 | .mv_name = "Interface (CTP/PCI-SH03)", |
| 79 | .mv_setup = sh03_setup, | 95 | .mv_setup = sh03_setup, |
| 80 | .mv_nr_irqs = 48, | 96 | .mv_nr_irqs = 48, |
| 81 | .mv_ioport_map = sh03_ioport_map, | 97 | .mv_ioport_map = sh03_ioport_map, |
| 82 | .mv_init_irq = init_sh03_IRQ, | 98 | .mv_init_irq = init_sh03_IRQ, |
| 83 | }; | 99 | }; |
| 84 | ALIAS_MV(sh03) | ||
diff --git a/arch/sh/boards/shmin/setup.c b/arch/sh/boards/shmin/setup.c index 4a9df4a6b034..dfd124509f42 100644 --- a/arch/sh/boards/shmin/setup.c +++ b/arch/sh/boards/shmin/setup.c | |||
| @@ -6,28 +6,44 @@ | |||
| 6 | * SHMIN Support. | 6 | * SHMIN Support. |
| 7 | */ | 7 | */ |
| 8 | #include <linux/init.h> | 8 | #include <linux/init.h> |
| 9 | #include <linux/irq.h> | ||
| 9 | #include <asm/machvec.h> | 10 | #include <asm/machvec.h> |
| 10 | #include <asm/shmin.h> | 11 | #include <asm/shmin.h> |
| 11 | #include <asm/clock.h> | 12 | #include <asm/clock.h> |
| 12 | #include <asm/irq.h> | ||
| 13 | #include <asm/io.h> | 13 | #include <asm/io.h> |
| 14 | 14 | ||
| 15 | #define PFC_PHCR 0xa400010eUL | 15 | #define PFC_PHCR 0xa400010eUL |
| 16 | #define INTC_ICR1 0xa4000010UL | 16 | #define INTC_ICR1 0xa4000010UL |
| 17 | #define INTC_IPRC 0xa4000016UL | 17 | #define INTC_IPRC 0xa4000016UL |
| 18 | 18 | ||
| 19 | static struct ipr_data shmin_ipr_map[] = { | 19 | static struct ipr_data ipr_irq_table[] = { |
| 20 | { .irq=32, .addr=INTC_IPRC, .shift= 0, .priority=0 }, | 20 | { 32, 0, 0, 0 }, |
| 21 | { .irq=33, .addr=INTC_IPRC, .shift= 4, .priority=0 }, | 21 | { 33, 0, 4, 0 }, |
| 22 | { .irq=34, .addr=INTC_IPRC, .shift= 8, .priority=8 }, | 22 | { 34, 0, 8, 8 }, |
| 23 | { .irq=35, .addr=INTC_IPRC, .shift=12, .priority=0 }, | 23 | { 35, 0, 12, 0 }, |
| 24 | }; | ||
| 25 | |||
| 26 | static unsigned long ipr_offsets[] = { | ||
| 27 | INTC_IPRC, | ||
| 28 | }; | ||
| 29 | |||
| 30 | static struct ipr_desc ipr_irq_desc = { | ||
| 31 | .ipr_offsets = ipr_offsets, | ||
| 32 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
| 33 | |||
| 34 | .ipr_data = ipr_irq_table, | ||
| 35 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
| 36 | |||
| 37 | .chip = { | ||
| 38 | .name = "IPR-shmin", | ||
| 39 | }, | ||
| 24 | }; | 40 | }; |
| 25 | 41 | ||
| 26 | static void __init init_shmin_irq(void) | 42 | static void __init init_shmin_irq(void) |
| 27 | { | 43 | { |
| 28 | ctrl_outw(0x2a00, PFC_PHCR); // IRQ0-3=IRQ | 44 | ctrl_outw(0x2a00, PFC_PHCR); // IRQ0-3=IRQ |
| 29 | ctrl_outw(0x0aaa, INTC_ICR1); // IRQ0-3=IRQ-mode,Low-active. | 45 | ctrl_outw(0x0aaa, INTC_ICR1); // IRQ0-3=IRQ-mode,Low-active. |
| 30 | make_ipr_irq(shmin_ipr_map, ARRAY_SIZE(shmin_ipr_map)); | 46 | register_ipr_controller(&ipr_irq_desc); |
| 31 | } | 47 | } |
| 32 | 48 | ||
| 33 | static void __iomem *shmin_ioport_map(unsigned long port, unsigned int size) | 49 | static void __iomem *shmin_ioport_map(unsigned long port, unsigned int size) |
| @@ -43,9 +59,8 @@ static void __iomem *shmin_ioport_map(unsigned long port, unsigned int size) | |||
| 43 | 59 | ||
| 44 | } | 60 | } |
| 45 | 61 | ||
| 46 | struct sh_machine_vector mv_shmin __initmv = { | 62 | static struct sh_machine_vector mv_shmin __initmv = { |
| 47 | .mv_name = "SHMIN", | 63 | .mv_name = "SHMIN", |
| 48 | .mv_init_irq = init_shmin_irq, | 64 | .mv_init_irq = init_shmin_irq, |
| 49 | .mv_ioport_map = shmin_ioport_map, | 65 | .mv_ioport_map = shmin_ioport_map, |
| 50 | }; | 66 | }; |
| 51 | ALIAS_MV(shmin) | ||
diff --git a/arch/sh/boards/snapgear/setup.c b/arch/sh/boards/snapgear/setup.c index 650fb3645947..84271d85a8dd 100644 --- a/arch/sh/boards/snapgear/setup.c +++ b/arch/sh/boards/snapgear/setup.c | |||
| @@ -68,11 +68,27 @@ module_init(eraseconfig_init); | |||
| 68 | * IRL3 = crypto | 68 | * IRL3 = crypto |
| 69 | */ | 69 | */ |
| 70 | 70 | ||
| 71 | static struct ipr_data snapgear_ipr_map[] = { | 71 | static struct ipr_data ipr_irq_table[] = { |
| 72 | make_ipr_irq(IRL0_IRQ, IRL0_IPR_ADDR, IRL0_IPR_POS, IRL0_PRIORITY); | 72 | { IRL0_IRQ, 0, IRL0_IPR_POS, IRL0_PRIORITY }, |
| 73 | make_ipr_irq(IRL1_IRQ, IRL1_IPR_ADDR, IRL1_IPR_POS, IRL1_PRIORITY); | 73 | { IRL1_IRQ, 0, IRL1_IPR_POS, IRL1_PRIORITY }, |
| 74 | make_ipr_irq(IRL2_IRQ, IRL2_IPR_ADDR, IRL2_IPR_POS, IRL2_PRIORITY); | 74 | { IRL2_IRQ, 0, IRL2_IPR_POS, IRL2_PRIORITY }, |
| 75 | make_ipr_irq(IRL3_IRQ, IRL3_IPR_ADDR, IRL3_IPR_POS, IRL3_PRIORITY); | 75 | { IRL3_IRQ, 0, IRL3_IPR_POS, IRL3_PRIORITY }, |
| 76 | }; | ||
| 77 | |||
| 78 | static unsigned long ipr_offsets[] = { | ||
| 79 | INTC_IPRD, | ||
| 80 | }; | ||
| 81 | |||
| 82 | static struct ipr_desc ipr_irq_desc = { | ||
| 83 | .ipr_offsets = ipr_offsets, | ||
| 84 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
| 85 | |||
| 86 | .ipr_data = ipr_irq_table, | ||
| 87 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
| 88 | |||
| 89 | .chip = { | ||
| 90 | .name = "IPR-snapgear", | ||
| 91 | }, | ||
| 76 | }; | 92 | }; |
| 77 | 93 | ||
| 78 | static void __init init_snapgear_IRQ(void) | 94 | static void __init init_snapgear_IRQ(void) |
| @@ -82,7 +98,7 @@ static void __init init_snapgear_IRQ(void) | |||
| 82 | 98 | ||
| 83 | printk("Setup SnapGear IRQ/IPR ...\n"); | 99 | printk("Setup SnapGear IRQ/IPR ...\n"); |
| 84 | 100 | ||
| 85 | make_ipr_irq(snapgear_ipr_map, ARRAY_SIZE(snapgear_ipr_map)); | 101 | register_ipr_controller(&ipr_irq_desc); |
| 86 | } | 102 | } |
| 87 | 103 | ||
| 88 | /* | 104 | /* |
| @@ -96,7 +112,7 @@ static void __init snapgear_setup(char **cmdline_p) | |||
| 96 | /* | 112 | /* |
| 97 | * The Machine Vector | 113 | * The Machine Vector |
| 98 | */ | 114 | */ |
| 99 | struct sh_machine_vector mv_snapgear __initmv = { | 115 | static struct sh_machine_vector mv_snapgear __initmv = { |
| 100 | .mv_name = "SnapGear SecureEdge5410", | 116 | .mv_name = "SnapGear SecureEdge5410", |
| 101 | .mv_setup = snapgear_setup, | 117 | .mv_setup = snapgear_setup, |
| 102 | .mv_nr_irqs = 72, | 118 | .mv_nr_irqs = 72, |
| @@ -117,4 +133,3 @@ struct sh_machine_vector mv_snapgear __initmv = { | |||
| 117 | 133 | ||
| 118 | .mv_init_irq = init_snapgear_IRQ, | 134 | .mv_init_irq = init_snapgear_IRQ, |
| 119 | }; | 135 | }; |
| 120 | ALIAS_MV(snapgear) | ||
diff --git a/arch/sh/boards/superh/microdev/setup.c b/arch/sh/boards/superh/microdev/setup.c index 6396cea1c896..fc8cd06d66cf 100644 --- a/arch/sh/boards/superh/microdev/setup.c +++ b/arch/sh/boards/superh/microdev/setup.c | |||
| @@ -371,7 +371,7 @@ static void __init microdev_setup(char **cmdline_p) | |||
| 371 | /* | 371 | /* |
| 372 | * The Machine Vector | 372 | * The Machine Vector |
| 373 | */ | 373 | */ |
| 374 | struct sh_machine_vector mv_sh4202_microdev __initmv = { | 374 | static struct sh_machine_vector mv_sh4202_microdev __initmv = { |
| 375 | .mv_name = "SH4-202 MicroDev", | 375 | .mv_name = "SH4-202 MicroDev", |
| 376 | .mv_setup = microdev_setup, | 376 | .mv_setup = microdev_setup, |
| 377 | .mv_nr_irqs = 72, /* QQQ need to check this - use the MACRO */ | 377 | .mv_nr_irqs = 72, /* QQQ need to check this - use the MACRO */ |
| @@ -403,4 +403,3 @@ struct sh_machine_vector mv_sh4202_microdev __initmv = { | |||
| 403 | .mv_heartbeat = microdev_heartbeat, | 403 | .mv_heartbeat = microdev_heartbeat, |
| 404 | #endif | 404 | #endif |
| 405 | }; | 405 | }; |
| 406 | ALIAS_MV(sh4202_microdev) | ||
diff --git a/arch/sh/boards/titan/setup.c b/arch/sh/boards/titan/setup.c index 6bcd939bfaed..606d25a4b870 100644 --- a/arch/sh/boards/titan/setup.c +++ b/arch/sh/boards/titan/setup.c | |||
| @@ -12,7 +12,7 @@ | |||
| 12 | #include <asm/titan.h> | 12 | #include <asm/titan.h> |
| 13 | #include <asm/io.h> | 13 | #include <asm/io.h> |
| 14 | 14 | ||
| 15 | static struct ipr_data titan_ipr_map[] = { | 15 | static struct ipr_data ipr_irq_table[] = { |
| 16 | /* IRQ, IPR idx, shift, prio */ | 16 | /* IRQ, IPR idx, shift, prio */ |
| 17 | { TITAN_IRQ_WAN, 3, 12, 8 }, /* eth0 (WAN) */ | 17 | { TITAN_IRQ_WAN, 3, 12, 8 }, /* eth0 (WAN) */ |
| 18 | { TITAN_IRQ_LAN, 3, 8, 8 }, /* eth1 (LAN) */ | 18 | { TITAN_IRQ_LAN, 3, 8, 8 }, /* eth1 (LAN) */ |
| @@ -20,15 +20,33 @@ static struct ipr_data titan_ipr_map[] = { | |||
| 20 | { TITAN_IRQ_USB, 3, 0, 8 }, /* mPCI B (bottom), USB */ | 20 | { TITAN_IRQ_USB, 3, 0, 8 }, /* mPCI B (bottom), USB */ |
| 21 | }; | 21 | }; |
| 22 | 22 | ||
| 23 | static unsigned long ipr_offsets[] = { /* stolen from setup-sh7750.c */ | ||
| 24 | 0xffd00004UL, /* 0: IPRA */ | ||
| 25 | 0xffd00008UL, /* 1: IPRB */ | ||
| 26 | 0xffd0000cUL, /* 2: IPRC */ | ||
| 27 | 0xffd00010UL, /* 3: IPRD */ | ||
| 28 | }; | ||
| 29 | |||
| 30 | static struct ipr_desc ipr_irq_desc = { | ||
| 31 | .ipr_offsets = ipr_offsets, | ||
| 32 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
| 33 | |||
| 34 | .ipr_data = ipr_irq_table, | ||
| 35 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
| 36 | |||
| 37 | .chip = { | ||
| 38 | .name = "IPR-titan", | ||
| 39 | }, | ||
| 40 | }; | ||
| 23 | static void __init init_titan_irq(void) | 41 | static void __init init_titan_irq(void) |
| 24 | { | 42 | { |
| 25 | /* enable individual interrupt mode for externals */ | 43 | /* enable individual interrupt mode for externals */ |
| 26 | ipr_irq_enable_irlm(); | 44 | ipr_irq_enable_irlm(); |
| 27 | /* register ipr irqs */ | 45 | /* register ipr irqs */ |
| 28 | make_ipr_irq(titan_ipr_map, ARRAY_SIZE(titan_ipr_map)); | 46 | register_ipr_controller(&ipr_irq_desc); |
| 29 | } | 47 | } |
| 30 | 48 | ||
| 31 | struct sh_machine_vector mv_titan __initmv = { | 49 | static struct sh_machine_vector mv_titan __initmv = { |
| 32 | .mv_name = "Titan", | 50 | .mv_name = "Titan", |
| 33 | 51 | ||
| 34 | .mv_inb = titan_inb, | 52 | .mv_inb = titan_inb, |
| @@ -52,4 +70,3 @@ struct sh_machine_vector mv_titan __initmv = { | |||
| 52 | 70 | ||
| 53 | .mv_init_irq = init_titan_irq, | 71 | .mv_init_irq = init_titan_irq, |
| 54 | }; | 72 | }; |
| 55 | ALIAS_MV(titan) | ||
diff --git a/arch/sh/boards/unknown/Makefile b/arch/sh/boards/unknown/Makefile deleted file mode 100644 index 7d18f408b0c5..000000000000 --- a/arch/sh/boards/unknown/Makefile +++ /dev/null | |||
| @@ -1,6 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Makefile for unknown SH boards | ||
| 3 | # | ||
| 4 | |||
| 5 | obj-y := setup.o | ||
| 6 | |||
diff --git a/arch/sh/boards/unknown/setup.c b/arch/sh/boards/unknown/setup.c deleted file mode 100644 index bee4612de59b..000000000000 --- a/arch/sh/boards/unknown/setup.c +++ /dev/null | |||
| @@ -1,21 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * linux/arch/sh/boards/unknown/setup.c | ||
| 3 | * | ||
| 4 | * Copyright (C) 2002 Paul Mundt | ||
| 5 | * | ||
| 6 | * May be copied or modified under the terms of the GNU General Public | ||
| 7 | * License. See linux/COPYING for more information. | ||
| 8 | * | ||
| 9 | * Setup code for an unknown machine (internal peripherals only) | ||
| 10 | * | ||
| 11 | * This is the simplest of all boards, and serves only as a quick and dirty | ||
| 12 | * method to start debugging a new board during bring-up until proper board | ||
| 13 | * setup code is written. | ||
| 14 | */ | ||
| 15 | #include <linux/init.h> | ||
| 16 | #include <asm/machvec.h> | ||
| 17 | |||
| 18 | struct sh_machine_vector mv_unknown __initmv = { | ||
| 19 | .mv_name = "Unknown", | ||
| 20 | }; | ||
| 21 | ALIAS_MV(unknown) | ||
diff --git a/arch/sh/cchips/Kconfig b/arch/sh/cchips/Kconfig index 0582ca8346b6..2e516e9a6ede 100644 --- a/arch/sh/cchips/Kconfig +++ b/arch/sh/cchips/Kconfig | |||
| @@ -13,10 +13,8 @@ config VOYAGERGX | |||
| 13 | are additional GPIO bits that can be used to interface to | 13 | are additional GPIO bits that can be used to interface to |
| 14 | external as well. | 14 | external as well. |
| 15 | 15 | ||
| 16 | # A board must have defined HD6446X_SERIES in order to see these | ||
| 17 | config HD6446X_SERIES | 16 | config HD6446X_SERIES |
| 18 | bool "HD6446x support" | 17 | bool |
| 19 | default n | ||
| 20 | 18 | ||
| 21 | choice | 19 | choice |
| 22 | prompt "HD6446x options" | 20 | prompt "HD6446x options" |
| @@ -25,7 +23,6 @@ choice | |||
| 25 | 23 | ||
| 26 | config HD64461 | 24 | config HD64461 |
| 27 | bool "Hitachi HD64461 companion chip support" | 25 | bool "Hitachi HD64461 companion chip support" |
| 28 | depends on CPU_SUBTYPE_SH7709 | ||
| 29 | ---help--- | 26 | ---help--- |
| 30 | The Hitachi HD64461 provides an interface for | 27 | The Hitachi HD64461 provides an interface for |
| 31 | the SH7709 CPU, supporting a LCD controller, | 28 | the SH7709 CPU, supporting a LCD controller, |
| @@ -40,7 +37,6 @@ config HD64461 | |||
| 40 | 37 | ||
| 41 | config HD64465 | 38 | config HD64465 |
| 42 | bool "Hitachi HD64465 companion chip support" | 39 | bool "Hitachi HD64465 companion chip support" |
| 43 | depends on CPU_SUBTYPE_SH7750 | ||
| 44 | ---help--- | 40 | ---help--- |
| 45 | The Hitachi HD64465 provides an interface for | 41 | The Hitachi HD64465 provides an interface for |
| 46 | the SH7750 CPU, supporting a LCD controller, | 42 | the SH7750 CPU, supporting a LCD controller, |
diff --git a/arch/sh/configs/dreamcast_defconfig b/arch/sh/configs/dreamcast_defconfig index 8b6b5a779de8..3fdd270eecf7 100644 --- a/arch/sh/configs/dreamcast_defconfig +++ b/arch/sh/configs/dreamcast_defconfig | |||
| @@ -1,15 +1,23 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.18 | 3 | # Linux kernel version: 2.6.22-rc4 |
| 4 | # Tue Oct 3 10:51:55 2006 | 4 | # Sat Jul 7 03:47:45 2007 |
| 5 | # | 5 | # |
| 6 | CONFIG_SUPERH=y | 6 | CONFIG_SUPERH=y |
| 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
| 8 | CONFIG_GENERIC_BUG=y | ||
| 8 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 9 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
| 9 | CONFIG_GENERIC_HWEIGHT=y | 10 | CONFIG_GENERIC_HWEIGHT=y |
| 10 | CONFIG_GENERIC_HARDIRQS=y | 11 | CONFIG_GENERIC_HARDIRQS=y |
| 11 | CONFIG_GENERIC_IRQ_PROBE=y | 12 | CONFIG_GENERIC_IRQ_PROBE=y |
| 12 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
| 14 | CONFIG_GENERIC_TIME=y | ||
| 15 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
| 16 | CONFIG_SYS_SUPPORTS_PCI=y | ||
| 17 | CONFIG_STACKTRACE_SUPPORT=y | ||
| 18 | CONFIG_LOCKDEP_SUPPORT=y | ||
| 19 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
| 20 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
| 13 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 21 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
| 14 | 22 | ||
| 15 | # | 23 | # |
| @@ -28,6 +36,7 @@ CONFIG_LOCALVERSION_AUTO=y | |||
| 28 | CONFIG_SWAP=y | 36 | CONFIG_SWAP=y |
| 29 | CONFIG_SYSVIPC=y | 37 | CONFIG_SYSVIPC=y |
| 30 | # CONFIG_IPC_NS is not set | 38 | # CONFIG_IPC_NS is not set |
| 39 | CONFIG_SYSVIPC_SYSCTL=y | ||
| 31 | # CONFIG_POSIX_MQUEUE is not set | 40 | # CONFIG_POSIX_MQUEUE is not set |
| 32 | CONFIG_BSD_PROCESS_ACCT=y | 41 | CONFIG_BSD_PROCESS_ACCT=y |
| 33 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | 42 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set |
| @@ -35,8 +44,10 @@ CONFIG_BSD_PROCESS_ACCT=y | |||
| 35 | # CONFIG_UTS_NS is not set | 44 | # CONFIG_UTS_NS is not set |
| 36 | # CONFIG_AUDIT is not set | 45 | # CONFIG_AUDIT is not set |
| 37 | # CONFIG_IKCONFIG is not set | 46 | # CONFIG_IKCONFIG is not set |
| 47 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 48 | CONFIG_SYSFS_DEPRECATED=y | ||
| 38 | # CONFIG_RELAY is not set | 49 | # CONFIG_RELAY is not set |
| 39 | CONFIG_INITRAMFS_SOURCE="" | 50 | # CONFIG_BLK_DEV_INITRD is not set |
| 40 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 51 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
| 41 | CONFIG_SYSCTL=y | 52 | CONFIG_SYSCTL=y |
| 42 | CONFIG_EMBEDDED=y | 53 | CONFIG_EMBEDDED=y |
| @@ -50,14 +61,19 @@ CONFIG_BUG=y | |||
| 50 | CONFIG_ELF_CORE=y | 61 | CONFIG_ELF_CORE=y |
| 51 | CONFIG_BASE_FULL=y | 62 | CONFIG_BASE_FULL=y |
| 52 | CONFIG_FUTEX=y | 63 | CONFIG_FUTEX=y |
| 64 | CONFIG_ANON_INODES=y | ||
| 53 | CONFIG_EPOLL=y | 65 | CONFIG_EPOLL=y |
| 66 | CONFIG_SIGNALFD=y | ||
| 67 | CONFIG_TIMERFD=y | ||
| 68 | CONFIG_EVENTFD=y | ||
| 54 | CONFIG_SHMEM=y | 69 | CONFIG_SHMEM=y |
| 55 | CONFIG_SLAB=y | ||
| 56 | CONFIG_VM_EVENT_COUNTERS=y | 70 | CONFIG_VM_EVENT_COUNTERS=y |
| 71 | CONFIG_SLAB=y | ||
| 72 | # CONFIG_SLUB is not set | ||
| 73 | # CONFIG_SLOB is not set | ||
| 57 | CONFIG_RT_MUTEXES=y | 74 | CONFIG_RT_MUTEXES=y |
| 58 | # CONFIG_TINY_SHMEM is not set | 75 | # CONFIG_TINY_SHMEM is not set |
| 59 | CONFIG_BASE_SMALL=0 | 76 | CONFIG_BASE_SMALL=0 |
| 60 | # CONFIG_SLOB is not set | ||
| 61 | 77 | ||
| 62 | # | 78 | # |
| 63 | # Loadable module support | 79 | # Loadable module support |
| @@ -93,44 +109,9 @@ CONFIG_DEFAULT_IOSCHED="anticipatory" | |||
| 93 | # | 109 | # |
| 94 | # System type | 110 | # System type |
| 95 | # | 111 | # |
| 96 | # CONFIG_SH_SOLUTION_ENGINE is not set | ||
| 97 | # CONFIG_SH_7751_SOLUTION_ENGINE is not set | ||
| 98 | # CONFIG_SH_7300_SOLUTION_ENGINE is not set | ||
| 99 | # CONFIG_SH_7343_SOLUTION_ENGINE is not set | ||
| 100 | # CONFIG_SH_73180_SOLUTION_ENGINE is not set | ||
| 101 | # CONFIG_SH_7751_SYSTEMH is not set | ||
| 102 | # CONFIG_SH_HP6XX is not set | ||
| 103 | # CONFIG_SH_EC3104 is not set | ||
| 104 | # CONFIG_SH_SATURN is not set | ||
| 105 | CONFIG_SH_DREAMCAST=y | ||
| 106 | # CONFIG_SH_BIGSUR is not set | ||
| 107 | # CONFIG_SH_MPC1211 is not set | ||
| 108 | # CONFIG_SH_SH03 is not set | ||
| 109 | # CONFIG_SH_SECUREEDGE5410 is not set | ||
| 110 | # CONFIG_SH_HS7751RVOIP is not set | ||
| 111 | # CONFIG_SH_7710VOIPGW is not set | ||
| 112 | # CONFIG_SH_RTS7751R2D is not set | ||
| 113 | # CONFIG_SH_R7780RP is not set | ||
| 114 | # CONFIG_SH_EDOSK7705 is not set | ||
| 115 | # CONFIG_SH_SH4202_MICRODEV is not set | ||
| 116 | # CONFIG_SH_LANDISK is not set | ||
| 117 | # CONFIG_SH_TITAN is not set | ||
| 118 | # CONFIG_SH_SHMIN is not set | ||
| 119 | # CONFIG_SH_UNKNOWN is not set | ||
| 120 | |||
| 121 | # | ||
| 122 | # Processor selection | ||
| 123 | # | ||
| 124 | CONFIG_CPU_SH4=y | 112 | CONFIG_CPU_SH4=y |
| 125 | 113 | # CONFIG_CPU_SUBTYPE_SH7619 is not set | |
| 126 | # | 114 | # CONFIG_CPU_SUBTYPE_SH7206 is not set |
| 127 | # SH-2 Processor Support | ||
| 128 | # | ||
| 129 | # CONFIG_CPU_SUBTYPE_SH7604 is not set | ||
| 130 | |||
| 131 | # | ||
| 132 | # SH-3 Processor Support | ||
| 133 | # | ||
| 134 | # CONFIG_CPU_SUBTYPE_SH7300 is not set | 115 | # CONFIG_CPU_SUBTYPE_SH7300 is not set |
| 135 | # CONFIG_CPU_SUBTYPE_SH7705 is not set | 116 | # CONFIG_CPU_SUBTYPE_SH7705 is not set |
| 136 | # CONFIG_CPU_SUBTYPE_SH7706 is not set | 117 | # CONFIG_CPU_SUBTYPE_SH7706 is not set |
| @@ -138,79 +119,93 @@ CONFIG_CPU_SH4=y | |||
| 138 | # CONFIG_CPU_SUBTYPE_SH7708 is not set | 119 | # CONFIG_CPU_SUBTYPE_SH7708 is not set |
| 139 | # CONFIG_CPU_SUBTYPE_SH7709 is not set | 120 | # CONFIG_CPU_SUBTYPE_SH7709 is not set |
| 140 | # CONFIG_CPU_SUBTYPE_SH7710 is not set | 121 | # CONFIG_CPU_SUBTYPE_SH7710 is not set |
| 141 | 122 | # CONFIG_CPU_SUBTYPE_SH7712 is not set | |
| 142 | # | 123 | # CONFIG_CPU_SUBTYPE_SH7750 is not set |
| 143 | # SH-4 Processor Support | ||
| 144 | # | ||
| 145 | CONFIG_CPU_SUBTYPE_SH7750=y | ||
| 146 | CONFIG_CPU_SUBTYPE_SH7091=y | 124 | CONFIG_CPU_SUBTYPE_SH7091=y |
| 147 | CONFIG_CPU_SUBTYPE_SH7750R=y | 125 | # CONFIG_CPU_SUBTYPE_SH7750R is not set |
| 148 | # CONFIG_CPU_SUBTYPE_SH7750S is not set | 126 | # CONFIG_CPU_SUBTYPE_SH7750S is not set |
| 149 | # CONFIG_CPU_SUBTYPE_SH7751 is not set | 127 | # CONFIG_CPU_SUBTYPE_SH7751 is not set |
| 150 | # CONFIG_CPU_SUBTYPE_SH7751R is not set | 128 | # CONFIG_CPU_SUBTYPE_SH7751R is not set |
| 151 | # CONFIG_CPU_SUBTYPE_SH7760 is not set | 129 | # CONFIG_CPU_SUBTYPE_SH7760 is not set |
| 152 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set | 130 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set |
| 153 | |||
| 154 | # | ||
| 155 | # ST40 Processor Support | ||
| 156 | # | ||
| 157 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set | 131 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set |
| 158 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set | 132 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set |
| 159 | |||
| 160 | # | ||
| 161 | # SH-4A Processor Support | ||
| 162 | # | ||
| 163 | # CONFIG_CPU_SUBTYPE_SH7770 is not set | 133 | # CONFIG_CPU_SUBTYPE_SH7770 is not set |
| 164 | # CONFIG_CPU_SUBTYPE_SH7780 is not set | 134 | # CONFIG_CPU_SUBTYPE_SH7780 is not set |
| 165 | 135 | # CONFIG_CPU_SUBTYPE_SH7785 is not set | |
| 166 | # | 136 | # CONFIG_CPU_SUBTYPE_SHX3 is not set |
| 167 | # SH4AL-DSP Processor Support | ||
| 168 | # | ||
| 169 | # CONFIG_CPU_SUBTYPE_SH73180 is not set | 137 | # CONFIG_CPU_SUBTYPE_SH73180 is not set |
| 170 | # CONFIG_CPU_SUBTYPE_SH7343 is not set | 138 | # CONFIG_CPU_SUBTYPE_SH7343 is not set |
| 139 | # CONFIG_CPU_SUBTYPE_SH7722 is not set | ||
| 171 | 140 | ||
| 172 | # | 141 | # |
| 173 | # Memory management options | 142 | # Memory management options |
| 174 | # | 143 | # |
| 144 | CONFIG_QUICKLIST=y | ||
| 175 | CONFIG_MMU=y | 145 | CONFIG_MMU=y |
| 176 | CONFIG_PAGE_OFFSET=0x80000000 | 146 | CONFIG_PAGE_OFFSET=0x80000000 |
| 177 | CONFIG_MEMORY_START=0x0c000000 | 147 | CONFIG_MEMORY_START=0x0c000000 |
| 178 | CONFIG_MEMORY_SIZE=0x01000000 | 148 | CONFIG_MEMORY_SIZE=0x01000000 |
| 179 | CONFIG_VSYSCALL=y | 149 | CONFIG_VSYSCALL=y |
| 150 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
| 151 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
| 152 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y | ||
| 153 | CONFIG_MAX_ACTIVE_REGIONS=1 | ||
| 154 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
| 155 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | ||
| 156 | CONFIG_PAGE_SIZE_4KB=y | ||
| 157 | # CONFIG_PAGE_SIZE_8KB is not set | ||
| 158 | # CONFIG_PAGE_SIZE_64KB is not set | ||
| 180 | CONFIG_HUGETLB_PAGE_SIZE_64K=y | 159 | CONFIG_HUGETLB_PAGE_SIZE_64K=y |
| 160 | # CONFIG_HUGETLB_PAGE_SIZE_256K is not set | ||
| 181 | # CONFIG_HUGETLB_PAGE_SIZE_1MB is not set | 161 | # CONFIG_HUGETLB_PAGE_SIZE_1MB is not set |
| 162 | # CONFIG_HUGETLB_PAGE_SIZE_4MB is not set | ||
| 163 | # CONFIG_HUGETLB_PAGE_SIZE_64MB is not set | ||
| 182 | CONFIG_SELECT_MEMORY_MODEL=y | 164 | CONFIG_SELECT_MEMORY_MODEL=y |
| 183 | CONFIG_FLATMEM_MANUAL=y | 165 | CONFIG_FLATMEM_MANUAL=y |
| 184 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 166 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
| 185 | # CONFIG_SPARSEMEM_MANUAL is not set | 167 | # CONFIG_SPARSEMEM_MANUAL is not set |
| 186 | CONFIG_FLATMEM=y | 168 | CONFIG_FLATMEM=y |
| 187 | CONFIG_FLAT_NODE_MEM_MAP=y | 169 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 188 | # CONFIG_SPARSEMEM_STATIC is not set | 170 | CONFIG_SPARSEMEM_STATIC=y |
| 189 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 171 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
| 190 | # CONFIG_RESOURCES_64BIT is not set | 172 | # CONFIG_RESOURCES_64BIT is not set |
| 173 | CONFIG_ZONE_DMA_FLAG=0 | ||
| 174 | CONFIG_NR_QUICK=2 | ||
| 191 | 175 | ||
| 192 | # | 176 | # |
| 193 | # Cache configuration | 177 | # Cache configuration |
| 194 | # | 178 | # |
| 195 | # CONFIG_SH_DIRECT_MAPPED is not set | 179 | # CONFIG_SH_DIRECT_MAPPED is not set |
| 196 | # CONFIG_SH_WRITETHROUGH is not set | 180 | # CONFIG_SH_WRITETHROUGH is not set |
| 197 | # CONFIG_SH_OCRAM is not set | ||
| 198 | 181 | ||
| 199 | # | 182 | # |
| 200 | # Processor features | 183 | # Processor features |
| 201 | # | 184 | # |
| 202 | CONFIG_CPU_LITTLE_ENDIAN=y | 185 | CONFIG_CPU_LITTLE_ENDIAN=y |
| 186 | # CONFIG_CPU_BIG_ENDIAN is not set | ||
| 203 | CONFIG_SH_FPU=y | 187 | CONFIG_SH_FPU=y |
| 204 | # CONFIG_SH_DSP is not set | 188 | # CONFIG_SH_DSP is not set |
| 205 | CONFIG_SH_STORE_QUEUES=y | 189 | CONFIG_SH_STORE_QUEUES=y |
| 206 | CONFIG_CPU_HAS_INTEVT=y | 190 | CONFIG_CPU_HAS_INTEVT=y |
| 191 | CONFIG_CPU_HAS_IPR_IRQ=y | ||
| 207 | CONFIG_CPU_HAS_SR_RB=y | 192 | CONFIG_CPU_HAS_SR_RB=y |
| 193 | CONFIG_CPU_HAS_PTEA=y | ||
| 208 | 194 | ||
| 209 | # | 195 | # |
| 210 | # Timer support | 196 | # Board support |
| 197 | # | ||
| 198 | CONFIG_SH_DREAMCAST=y | ||
| 199 | |||
| 200 | # | ||
| 201 | # Timer and clock configuration | ||
| 211 | # | 202 | # |
| 212 | CONFIG_SH_TMU=y | 203 | CONFIG_SH_TMU=y |
| 204 | CONFIG_SH_TIMER_IRQ=16 | ||
| 213 | CONFIG_SH_PCLK_FREQ=49876504 | 205 | CONFIG_SH_PCLK_FREQ=49876504 |
| 206 | # CONFIG_TICK_ONESHOT is not set | ||
| 207 | # CONFIG_NO_HZ is not set | ||
| 208 | # CONFIG_HIGH_RES_TIMERS is not set | ||
| 214 | 209 | ||
| 215 | # | 210 | # |
| 216 | # CPU Frequency scaling | 211 | # CPU Frequency scaling |
| @@ -232,6 +227,7 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y | |||
| 232 | # | 227 | # |
| 233 | # DMA support | 228 | # DMA support |
| 234 | # | 229 | # |
| 230 | CONFIG_SH_DMA_API=y | ||
| 235 | CONFIG_SH_DMA=y | 231 | CONFIG_SH_DMA=y |
| 236 | CONFIG_NR_ONCHIP_DMA_CHANNELS=4 | 232 | CONFIG_NR_ONCHIP_DMA_CHANNELS=4 |
| 237 | CONFIG_NR_DMA_CHANNELS_BOOL=y | 233 | CONFIG_NR_DMA_CHANNELS_BOOL=y |
| @@ -240,17 +236,23 @@ CONFIG_NR_DMA_CHANNELS=9 | |||
| 240 | # | 236 | # |
| 241 | # Companion Chips | 237 | # Companion Chips |
| 242 | # | 238 | # |
| 243 | # CONFIG_HD6446X_SERIES is not set | 239 | |
| 240 | # | ||
| 241 | # Additional SuperH Device Drivers | ||
| 242 | # | ||
| 243 | # CONFIG_HEARTBEAT is not set | ||
| 244 | # CONFIG_PUSH_SWITCH is not set | ||
| 244 | 245 | ||
| 245 | # | 246 | # |
| 246 | # Kernel features | 247 | # Kernel features |
| 247 | # | 248 | # |
| 248 | # CONFIG_HZ_100 is not set | 249 | # CONFIG_HZ_100 is not set |
| 249 | CONFIG_HZ_250=y | 250 | CONFIG_HZ_250=y |
| 251 | # CONFIG_HZ_300 is not set | ||
| 250 | # CONFIG_HZ_1000 is not set | 252 | # CONFIG_HZ_1000 is not set |
| 251 | CONFIG_HZ=250 | 253 | CONFIG_HZ=250 |
| 252 | # CONFIG_KEXEC is not set | 254 | # CONFIG_KEXEC is not set |
| 253 | # CONFIG_SMP is not set | 255 | # CONFIG_CRASH_DUMP is not set |
| 254 | # CONFIG_PREEMPT_NONE is not set | 256 | # CONFIG_PREEMPT_NONE is not set |
| 255 | # CONFIG_PREEMPT_VOLUNTARY is not set | 257 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 256 | CONFIG_PREEMPT=y | 258 | CONFIG_PREEMPT=y |
| @@ -269,33 +271,23 @@ CONFIG_CMDLINE="console=ttySC1,115200 panic=3" | |||
| 269 | # Bus options | 271 | # Bus options |
| 270 | # | 272 | # |
| 271 | CONFIG_PCI=y | 273 | CONFIG_PCI=y |
| 272 | # CONFIG_SH_PCIDMA_NONCOHERENT is not set | 274 | CONFIG_SH_PCIDMA_NONCOHERENT=y |
| 273 | CONFIG_PCI_AUTO=y | 275 | CONFIG_PCI_AUTO=y |
| 274 | # CONFIG_PCI_MULTITHREAD_PROBE is not set | 276 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
| 275 | 277 | ||
| 276 | # | 278 | # |
| 277 | # PCCARD (PCMCIA/CardBus) support | 279 | # PCCARD (PCMCIA/CardBus) support |
| 278 | # | 280 | # |
| 279 | # CONFIG_PCCARD is not set | 281 | # CONFIG_PCCARD is not set |
| 280 | |||
| 281 | # | ||
| 282 | # PCI Hotplug Support | ||
| 283 | # | ||
| 284 | # CONFIG_HOTPLUG_PCI is not set | 282 | # CONFIG_HOTPLUG_PCI is not set |
| 285 | 283 | ||
| 286 | # | 284 | # |
| 287 | # Executable file formats | 285 | # Executable file formats |
| 288 | # | 286 | # |
| 289 | CONFIG_BINFMT_ELF=y | 287 | CONFIG_BINFMT_ELF=y |
| 290 | # CONFIG_BINFMT_FLAT is not set | ||
| 291 | # CONFIG_BINFMT_MISC is not set | 288 | # CONFIG_BINFMT_MISC is not set |
| 292 | 289 | ||
| 293 | # | 290 | # |
| 294 | # Power management options (EXPERIMENTAL) | ||
| 295 | # | ||
| 296 | # CONFIG_PM is not set | ||
| 297 | |||
| 298 | # | ||
| 299 | # Networking | 291 | # Networking |
| 300 | # | 292 | # |
| 301 | CONFIG_NET=y | 293 | CONFIG_NET=y |
| @@ -303,13 +295,13 @@ CONFIG_NET=y | |||
| 303 | # | 295 | # |
| 304 | # Networking options | 296 | # Networking options |
| 305 | # | 297 | # |
| 306 | # CONFIG_NETDEBUG is not set | ||
| 307 | CONFIG_PACKET=y | 298 | CONFIG_PACKET=y |
| 308 | # CONFIG_PACKET_MMAP is not set | 299 | # CONFIG_PACKET_MMAP is not set |
| 309 | CONFIG_UNIX=y | 300 | CONFIG_UNIX=y |
| 310 | CONFIG_XFRM=y | 301 | CONFIG_XFRM=y |
| 311 | # CONFIG_XFRM_USER is not set | 302 | # CONFIG_XFRM_USER is not set |
| 312 | # CONFIG_XFRM_SUB_POLICY is not set | 303 | # CONFIG_XFRM_SUB_POLICY is not set |
| 304 | # CONFIG_XFRM_MIGRATE is not set | ||
| 313 | # CONFIG_NET_KEY is not set | 305 | # CONFIG_NET_KEY is not set |
| 314 | CONFIG_INET=y | 306 | CONFIG_INET=y |
| 315 | # CONFIG_IP_MULTICAST is not set | 307 | # CONFIG_IP_MULTICAST is not set |
| @@ -327,30 +319,20 @@ CONFIG_IP_FIB_HASH=y | |||
| 327 | # CONFIG_INET_TUNNEL is not set | 319 | # CONFIG_INET_TUNNEL is not set |
| 328 | CONFIG_INET_XFRM_MODE_TRANSPORT=y | 320 | CONFIG_INET_XFRM_MODE_TRANSPORT=y |
| 329 | CONFIG_INET_XFRM_MODE_TUNNEL=y | 321 | CONFIG_INET_XFRM_MODE_TUNNEL=y |
| 322 | CONFIG_INET_XFRM_MODE_BEET=y | ||
| 330 | CONFIG_INET_DIAG=y | 323 | CONFIG_INET_DIAG=y |
| 331 | CONFIG_INET_TCP_DIAG=y | 324 | CONFIG_INET_TCP_DIAG=y |
| 332 | # CONFIG_TCP_CONG_ADVANCED is not set | 325 | # CONFIG_TCP_CONG_ADVANCED is not set |
| 333 | CONFIG_TCP_CONG_CUBIC=y | 326 | CONFIG_TCP_CONG_CUBIC=y |
| 334 | CONFIG_DEFAULT_TCP_CONG="cubic" | 327 | CONFIG_DEFAULT_TCP_CONG="cubic" |
| 328 | # CONFIG_TCP_MD5SIG is not set | ||
| 335 | # CONFIG_IPV6 is not set | 329 | # CONFIG_IPV6 is not set |
| 336 | # CONFIG_INET6_XFRM_TUNNEL is not set | 330 | # CONFIG_INET6_XFRM_TUNNEL is not set |
| 337 | # CONFIG_INET6_TUNNEL is not set | 331 | # CONFIG_INET6_TUNNEL is not set |
| 338 | # CONFIG_NETWORK_SECMARK is not set | 332 | # CONFIG_NETWORK_SECMARK is not set |
| 339 | # CONFIG_NETFILTER is not set | 333 | # CONFIG_NETFILTER is not set |
| 340 | |||
| 341 | # | ||
| 342 | # DCCP Configuration (EXPERIMENTAL) | ||
| 343 | # | ||
| 344 | # CONFIG_IP_DCCP is not set | 334 | # CONFIG_IP_DCCP is not set |
| 345 | |||
| 346 | # | ||
| 347 | # SCTP Configuration (EXPERIMENTAL) | ||
| 348 | # | ||
| 349 | # CONFIG_IP_SCTP is not set | 335 | # CONFIG_IP_SCTP is not set |
| 350 | |||
| 351 | # | ||
| 352 | # TIPC Configuration (EXPERIMENTAL) | ||
| 353 | # | ||
| 354 | # CONFIG_TIPC is not set | 336 | # CONFIG_TIPC is not set |
| 355 | # CONFIG_ATM is not set | 337 | # CONFIG_ATM is not set |
| 356 | # CONFIG_BRIDGE is not set | 338 | # CONFIG_BRIDGE is not set |
| @@ -376,7 +358,16 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
| 376 | # CONFIG_HAMRADIO is not set | 358 | # CONFIG_HAMRADIO is not set |
| 377 | # CONFIG_IRDA is not set | 359 | # CONFIG_IRDA is not set |
| 378 | # CONFIG_BT is not set | 360 | # CONFIG_BT is not set |
| 361 | # CONFIG_AF_RXRPC is not set | ||
| 362 | |||
| 363 | # | ||
| 364 | # Wireless | ||
| 365 | # | ||
| 366 | # CONFIG_CFG80211 is not set | ||
| 367 | # CONFIG_WIRELESS_EXT is not set | ||
| 368 | # CONFIG_MAC80211 is not set | ||
| 379 | # CONFIG_IEEE80211 is not set | 369 | # CONFIG_IEEE80211 is not set |
| 370 | # CONFIG_RFKILL is not set | ||
| 380 | 371 | ||
| 381 | # | 372 | # |
| 382 | # Device Drivers | 373 | # Device Drivers |
| @@ -394,10 +385,6 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
| 394 | # Connector - unified userspace <-> kernelspace linker | 385 | # Connector - unified userspace <-> kernelspace linker |
| 395 | # | 386 | # |
| 396 | # CONFIG_CONNECTOR is not set | 387 | # CONFIG_CONNECTOR is not set |
| 397 | |||
| 398 | # | ||
| 399 | # Memory Technology Devices (MTD) | ||
| 400 | # | ||
| 401 | # CONFIG_MTD is not set | 388 | # CONFIG_MTD is not set |
| 402 | 389 | ||
| 403 | # | 390 | # |
| @@ -408,6 +395,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
| 408 | # | 395 | # |
| 409 | # Plug and Play support | 396 | # Plug and Play support |
| 410 | # | 397 | # |
| 398 | # CONFIG_PNPACPI is not set | ||
| 411 | 399 | ||
| 412 | # | 400 | # |
| 413 | # Block devices | 401 | # Block devices |
| @@ -421,13 +409,16 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
| 421 | # CONFIG_BLK_DEV_NBD is not set | 409 | # CONFIG_BLK_DEV_NBD is not set |
| 422 | # CONFIG_BLK_DEV_SX8 is not set | 410 | # CONFIG_BLK_DEV_SX8 is not set |
| 423 | # CONFIG_BLK_DEV_RAM is not set | 411 | # CONFIG_BLK_DEV_RAM is not set |
| 424 | # CONFIG_BLK_DEV_INITRD is not set | ||
| 425 | # CONFIG_CDROM_PKTCDVD is not set | 412 | # CONFIG_CDROM_PKTCDVD is not set |
| 426 | # CONFIG_ATA_OVER_ETH is not set | 413 | # CONFIG_ATA_OVER_ETH is not set |
| 427 | 414 | ||
| 428 | # | 415 | # |
| 429 | # ATA/ATAPI/MFM/RLL support | 416 | # Misc devices |
| 430 | # | 417 | # |
| 418 | # CONFIG_PHANTOM is not set | ||
| 419 | # CONFIG_SGI_IOC4 is not set | ||
| 420 | # CONFIG_TIFM_CORE is not set | ||
| 421 | # CONFIG_BLINK is not set | ||
| 431 | # CONFIG_IDE is not set | 422 | # CONFIG_IDE is not set |
| 432 | 423 | ||
| 433 | # | 424 | # |
| @@ -436,10 +427,6 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
| 436 | # CONFIG_RAID_ATTRS is not set | 427 | # CONFIG_RAID_ATTRS is not set |
| 437 | # CONFIG_SCSI is not set | 428 | # CONFIG_SCSI is not set |
| 438 | # CONFIG_SCSI_NETLINK is not set | 429 | # CONFIG_SCSI_NETLINK is not set |
| 439 | |||
| 440 | # | ||
| 441 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
| 442 | # | ||
| 443 | # CONFIG_ATA is not set | 430 | # CONFIG_ATA is not set |
| 444 | 431 | ||
| 445 | # | 432 | # |
| @@ -455,6 +442,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
| 455 | # | 442 | # |
| 456 | # IEEE 1394 (FireWire) support | 443 | # IEEE 1394 (FireWire) support |
| 457 | # | 444 | # |
| 445 | # CONFIG_FIREWIRE is not set | ||
| 458 | # CONFIG_IEEE1394 is not set | 446 | # CONFIG_IEEE1394 is not set |
| 459 | 447 | ||
| 460 | # | 448 | # |
| @@ -470,15 +458,7 @@ CONFIG_NETDEVICES=y | |||
| 470 | # CONFIG_BONDING is not set | 458 | # CONFIG_BONDING is not set |
| 471 | # CONFIG_EQUALIZER is not set | 459 | # CONFIG_EQUALIZER is not set |
| 472 | # CONFIG_TUN is not set | 460 | # CONFIG_TUN is not set |
| 473 | |||
| 474 | # | ||
| 475 | # ARCnet devices | ||
| 476 | # | ||
| 477 | # CONFIG_ARCNET is not set | 461 | # CONFIG_ARCNET is not set |
| 478 | |||
| 479 | # | ||
| 480 | # PHY device support | ||
| 481 | # | ||
| 482 | # CONFIG_PHYLIB is not set | 462 | # CONFIG_PHYLIB is not set |
| 483 | 463 | ||
| 484 | # | 464 | # |
| @@ -521,47 +501,16 @@ CONFIG_8139TOO=y | |||
| 521 | # CONFIG_SUNDANCE is not set | 501 | # CONFIG_SUNDANCE is not set |
| 522 | # CONFIG_TLAN is not set | 502 | # CONFIG_TLAN is not set |
| 523 | # CONFIG_VIA_RHINE is not set | 503 | # CONFIG_VIA_RHINE is not set |
| 524 | 504 | # CONFIG_SC92031 is not set | |
| 525 | # | 505 | # CONFIG_NETDEV_1000 is not set |
| 526 | # Ethernet (1000 Mbit) | 506 | # CONFIG_NETDEV_10000 is not set |
| 527 | # | ||
| 528 | # CONFIG_ACENIC is not set | ||
| 529 | # CONFIG_DL2K is not set | ||
| 530 | # CONFIG_E1000 is not set | ||
| 531 | # CONFIG_NS83820 is not set | ||
| 532 | # CONFIG_HAMACHI is not set | ||
| 533 | # CONFIG_YELLOWFIN is not set | ||
| 534 | # CONFIG_R8169 is not set | ||
| 535 | # CONFIG_SIS190 is not set | ||
| 536 | # CONFIG_SKGE is not set | ||
| 537 | # CONFIG_SKY2 is not set | ||
| 538 | # CONFIG_SK98LIN is not set | ||
| 539 | # CONFIG_VIA_VELOCITY is not set | ||
| 540 | # CONFIG_TIGON3 is not set | ||
| 541 | # CONFIG_BNX2 is not set | ||
| 542 | # CONFIG_QLA3XXX is not set | ||
| 543 | |||
| 544 | # | ||
| 545 | # Ethernet (10000 Mbit) | ||
| 546 | # | ||
| 547 | # CONFIG_CHELSIO_T1 is not set | ||
| 548 | # CONFIG_IXGB is not set | ||
| 549 | # CONFIG_S2IO is not set | ||
| 550 | # CONFIG_MYRI10GE is not set | ||
| 551 | |||
| 552 | # | ||
| 553 | # Token Ring devices | ||
| 554 | # | ||
| 555 | # CONFIG_TR is not set | 507 | # CONFIG_TR is not set |
| 556 | 508 | ||
| 557 | # | 509 | # |
| 558 | # Wireless LAN (non-hamradio) | 510 | # Wireless LAN |
| 559 | # | ||
| 560 | # CONFIG_NET_RADIO is not set | ||
| 561 | |||
| 562 | # | ||
| 563 | # Wan interfaces | ||
| 564 | # | 511 | # |
| 512 | # CONFIG_WLAN_PRE80211 is not set | ||
| 513 | # CONFIG_WLAN_80211 is not set | ||
| 565 | # CONFIG_WAN is not set | 514 | # CONFIG_WAN is not set |
| 566 | # CONFIG_FDDI is not set | 515 | # CONFIG_FDDI is not set |
| 567 | # CONFIG_HIPPI is not set | 516 | # CONFIG_HIPPI is not set |
| @@ -604,17 +553,19 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | |||
| 604 | # Input Device Drivers | 553 | # Input Device Drivers |
| 605 | # | 554 | # |
| 606 | CONFIG_INPUT_KEYBOARD=y | 555 | CONFIG_INPUT_KEYBOARD=y |
| 607 | CONFIG_KEYBOARD_ATKBD=y | 556 | # CONFIG_KEYBOARD_ATKBD is not set |
| 608 | # CONFIG_KEYBOARD_SUNKBD is not set | 557 | # CONFIG_KEYBOARD_SUNKBD is not set |
| 609 | # CONFIG_KEYBOARD_LKKBD is not set | 558 | # CONFIG_KEYBOARD_LKKBD is not set |
| 610 | # CONFIG_KEYBOARD_XTKBD is not set | 559 | # CONFIG_KEYBOARD_XTKBD is not set |
| 611 | # CONFIG_KEYBOARD_NEWTON is not set | 560 | # CONFIG_KEYBOARD_NEWTON is not set |
| 612 | # CONFIG_KEYBOARD_STOWAWAY is not set | 561 | # CONFIG_KEYBOARD_STOWAWAY is not set |
| 613 | CONFIG_INPUT_MOUSE=y | 562 | CONFIG_INPUT_MOUSE=y |
| 614 | CONFIG_MOUSE_PS2=y | 563 | # CONFIG_MOUSE_PS2 is not set |
| 615 | # CONFIG_MOUSE_SERIAL is not set | 564 | # CONFIG_MOUSE_SERIAL is not set |
| 565 | # CONFIG_MOUSE_APPLETOUCH is not set | ||
| 616 | # CONFIG_MOUSE_VSXXXAA is not set | 566 | # CONFIG_MOUSE_VSXXXAA is not set |
| 617 | # CONFIG_INPUT_JOYSTICK is not set | 567 | # CONFIG_INPUT_JOYSTICK is not set |
| 568 | # CONFIG_INPUT_TABLET is not set | ||
| 618 | # CONFIG_INPUT_TOUCHSCREEN is not set | 569 | # CONFIG_INPUT_TOUCHSCREEN is not set |
| 619 | # CONFIG_INPUT_MISC is not set | 570 | # CONFIG_INPUT_MISC is not set |
| 620 | 571 | ||
| @@ -660,10 +611,6 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 660 | # IPMI | 611 | # IPMI |
| 661 | # | 612 | # |
| 662 | # CONFIG_IPMI_HANDLER is not set | 613 | # CONFIG_IPMI_HANDLER is not set |
| 663 | |||
| 664 | # | ||
| 665 | # Watchdog Cards | ||
| 666 | # | ||
| 667 | CONFIG_WATCHDOG=y | 614 | CONFIG_WATCHDOG=y |
| 668 | # CONFIG_WATCHDOG_NOWAYOUT is not set | 615 | # CONFIG_WATCHDOG_NOWAYOUT is not set |
| 669 | 616 | ||
| @@ -680,14 +627,8 @@ CONFIG_SH_WDT=y | |||
| 680 | # CONFIG_PCIPCWATCHDOG is not set | 627 | # CONFIG_PCIPCWATCHDOG is not set |
| 681 | # CONFIG_WDTPCI is not set | 628 | # CONFIG_WDTPCI is not set |
| 682 | CONFIG_HW_RANDOM=y | 629 | CONFIG_HW_RANDOM=y |
| 683 | # CONFIG_GEN_RTC is not set | ||
| 684 | # CONFIG_DTLK is not set | ||
| 685 | # CONFIG_R3964 is not set | 630 | # CONFIG_R3964 is not set |
| 686 | # CONFIG_APPLICOM is not set | 631 | # CONFIG_APPLICOM is not set |
| 687 | |||
| 688 | # | ||
| 689 | # Ftape, the floppy tape device driver | ||
| 690 | # | ||
| 691 | # CONFIG_DRM is not set | 632 | # CONFIG_DRM is not set |
| 692 | # CONFIG_RAW_DRIVER is not set | 633 | # CONFIG_RAW_DRIVER is not set |
| 693 | 634 | ||
| @@ -695,11 +636,7 @@ CONFIG_HW_RANDOM=y | |||
| 695 | # TPM devices | 636 | # TPM devices |
| 696 | # | 637 | # |
| 697 | # CONFIG_TCG_TPM is not set | 638 | # CONFIG_TCG_TPM is not set |
| 698 | # CONFIG_TELCLOCK is not set | 639 | CONFIG_DEVPORT=y |
| 699 | |||
| 700 | # | ||
| 701 | # I2C support | ||
| 702 | # | ||
| 703 | # CONFIG_I2C is not set | 640 | # CONFIG_I2C is not set |
| 704 | 641 | ||
| 705 | # | 642 | # |
| @@ -711,44 +648,51 @@ CONFIG_HW_RANDOM=y | |||
| 711 | # | 648 | # |
| 712 | # Dallas's 1-wire bus | 649 | # Dallas's 1-wire bus |
| 713 | # | 650 | # |
| 651 | # CONFIG_W1 is not set | ||
| 652 | # CONFIG_HWMON is not set | ||
| 714 | 653 | ||
| 715 | # | 654 | # |
| 716 | # Hardware Monitoring support | 655 | # Multifunction device drivers |
| 717 | # | ||
| 718 | CONFIG_HWMON=y | ||
| 719 | # CONFIG_HWMON_VID is not set | ||
| 720 | # CONFIG_SENSORS_ABITUGURU is not set | ||
| 721 | # CONFIG_SENSORS_F71805F is not set | ||
| 722 | # CONFIG_SENSORS_VT1211 is not set | ||
| 723 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
| 724 | |||
| 725 | # | ||
| 726 | # Misc devices | ||
| 727 | # | 656 | # |
| 657 | # CONFIG_MFD_SM501 is not set | ||
| 728 | 658 | ||
| 729 | # | 659 | # |
| 730 | # Multimedia devices | 660 | # Multimedia devices |
| 731 | # | 661 | # |
| 732 | # CONFIG_VIDEO_DEV is not set | 662 | # CONFIG_VIDEO_DEV is not set |
| 733 | CONFIG_VIDEO_V4L2=y | 663 | # CONFIG_DVB_CORE is not set |
| 664 | # CONFIG_DAB is not set | ||
| 734 | 665 | ||
| 735 | # | 666 | # |
| 736 | # Digital Video Broadcasting Devices | 667 | # Graphics support |
| 737 | # | 668 | # |
| 738 | # CONFIG_DVB is not set | 669 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
| 739 | 670 | ||
| 740 | # | 671 | # |
| 741 | # Graphics support | 672 | # Display device support |
| 742 | # | 673 | # |
| 743 | CONFIG_FIRMWARE_EDID=y | 674 | # CONFIG_DISPLAY_SUPPORT is not set |
| 675 | # CONFIG_VGASTATE is not set | ||
| 744 | CONFIG_FB=y | 676 | CONFIG_FB=y |
| 677 | CONFIG_FIRMWARE_EDID=y | ||
| 678 | # CONFIG_FB_DDC is not set | ||
| 745 | CONFIG_FB_CFB_FILLRECT=y | 679 | CONFIG_FB_CFB_FILLRECT=y |
| 746 | CONFIG_FB_CFB_COPYAREA=y | 680 | CONFIG_FB_CFB_COPYAREA=y |
| 747 | CONFIG_FB_CFB_IMAGEBLIT=y | 681 | CONFIG_FB_CFB_IMAGEBLIT=y |
| 682 | # CONFIG_FB_SYS_FILLRECT is not set | ||
| 683 | # CONFIG_FB_SYS_COPYAREA is not set | ||
| 684 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
| 685 | # CONFIG_FB_SYS_FOPS is not set | ||
| 686 | CONFIG_FB_DEFERRED_IO=y | ||
| 687 | # CONFIG_FB_SVGALIB is not set | ||
| 748 | # CONFIG_FB_MACMODES is not set | 688 | # CONFIG_FB_MACMODES is not set |
| 749 | # CONFIG_FB_BACKLIGHT is not set | 689 | # CONFIG_FB_BACKLIGHT is not set |
| 750 | # CONFIG_FB_MODE_HELPERS is not set | 690 | # CONFIG_FB_MODE_HELPERS is not set |
| 751 | # CONFIG_FB_TILEBLITTING is not set | 691 | # CONFIG_FB_TILEBLITTING is not set |
| 692 | |||
| 693 | # | ||
| 694 | # Frame buffer hardware drivers | ||
| 695 | # | ||
| 752 | # CONFIG_FB_CIRRUS is not set | 696 | # CONFIG_FB_CIRRUS is not set |
| 753 | # CONFIG_FB_PM2 is not set | 697 | # CONFIG_FB_PM2 is not set |
| 754 | # CONFIG_FB_CYBER2000 is not set | 698 | # CONFIG_FB_CYBER2000 is not set |
| @@ -763,13 +707,17 @@ CONFIG_FB_PVR2=y | |||
| 763 | # CONFIG_FB_RADEON is not set | 707 | # CONFIG_FB_RADEON is not set |
| 764 | # CONFIG_FB_ATY128 is not set | 708 | # CONFIG_FB_ATY128 is not set |
| 765 | # CONFIG_FB_ATY is not set | 709 | # CONFIG_FB_ATY is not set |
| 710 | # CONFIG_FB_S3 is not set | ||
| 766 | # CONFIG_FB_SAVAGE is not set | 711 | # CONFIG_FB_SAVAGE is not set |
| 767 | # CONFIG_FB_SIS is not set | 712 | # CONFIG_FB_SIS is not set |
| 768 | # CONFIG_FB_NEOMAGIC is not set | 713 | # CONFIG_FB_NEOMAGIC is not set |
| 769 | # CONFIG_FB_KYRO is not set | 714 | # CONFIG_FB_KYRO is not set |
| 770 | # CONFIG_FB_3DFX is not set | 715 | # CONFIG_FB_3DFX is not set |
| 771 | # CONFIG_FB_VOODOO1 is not set | 716 | # CONFIG_FB_VOODOO1 is not set |
| 717 | # CONFIG_FB_VT8623 is not set | ||
| 772 | # CONFIG_FB_TRIDENT is not set | 718 | # CONFIG_FB_TRIDENT is not set |
| 719 | # CONFIG_FB_ARK is not set | ||
| 720 | # CONFIG_FB_PM3 is not set | ||
| 773 | # CONFIG_FB_VIRTUAL is not set | 721 | # CONFIG_FB_VIRTUAL is not set |
| 774 | 722 | ||
| 775 | # | 723 | # |
| @@ -789,10 +737,6 @@ CONFIG_FONT_8x16=y | |||
| 789 | # CONFIG_FONT_SUN8x16 is not set | 737 | # CONFIG_FONT_SUN8x16 is not set |
| 790 | # CONFIG_FONT_SUN12x22 is not set | 738 | # CONFIG_FONT_SUN12x22 is not set |
| 791 | # CONFIG_FONT_10x18 is not set | 739 | # CONFIG_FONT_10x18 is not set |
| 792 | |||
| 793 | # | ||
| 794 | # Logo configuration | ||
| 795 | # | ||
| 796 | CONFIG_LOGO=y | 740 | CONFIG_LOGO=y |
| 797 | # CONFIG_LOGO_LINUX_MONO is not set | 741 | # CONFIG_LOGO_LINUX_MONO is not set |
| 798 | # CONFIG_LOGO_LINUX_VGA16 is not set | 742 | # CONFIG_LOGO_LINUX_VGA16 is not set |
| @@ -800,7 +744,6 @@ CONFIG_LOGO=y | |||
| 800 | # CONFIG_LOGO_SUPERH_MONO is not set | 744 | # CONFIG_LOGO_SUPERH_MONO is not set |
| 801 | # CONFIG_LOGO_SUPERH_VGA16 is not set | 745 | # CONFIG_LOGO_SUPERH_VGA16 is not set |
| 802 | CONFIG_LOGO_SUPERH_CLUT224=y | 746 | CONFIG_LOGO_SUPERH_CLUT224=y |
| 803 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
| 804 | 747 | ||
| 805 | # | 748 | # |
| 806 | # Sound | 749 | # Sound |
| @@ -808,6 +751,12 @@ CONFIG_LOGO_SUPERH_CLUT224=y | |||
| 808 | # CONFIG_SOUND is not set | 751 | # CONFIG_SOUND is not set |
| 809 | 752 | ||
| 810 | # | 753 | # |
| 754 | # HID Devices | ||
| 755 | # | ||
| 756 | CONFIG_HID=y | ||
| 757 | # CONFIG_HID_DEBUG is not set | ||
| 758 | |||
| 759 | # | ||
| 811 | # USB support | 760 | # USB support |
| 812 | # | 761 | # |
| 813 | CONFIG_USB_ARCH_HAS_HCD=y | 762 | CONFIG_USB_ARCH_HAS_HCD=y |
| @@ -823,10 +772,6 @@ CONFIG_USB_ARCH_HAS_EHCI=y | |||
| 823 | # USB Gadget Support | 772 | # USB Gadget Support |
| 824 | # | 773 | # |
| 825 | # CONFIG_USB_GADGET is not set | 774 | # CONFIG_USB_GADGET is not set |
| 826 | |||
| 827 | # | ||
| 828 | # MMC/SD Card support | ||
| 829 | # | ||
| 830 | # CONFIG_MMC is not set | 775 | # CONFIG_MMC is not set |
| 831 | 776 | ||
| 832 | # | 777 | # |
| @@ -874,10 +819,12 @@ CONFIG_USB_ARCH_HAS_EHCI=y | |||
| 874 | # | 819 | # |
| 875 | # CONFIG_EXT2_FS is not set | 820 | # CONFIG_EXT2_FS is not set |
| 876 | # CONFIG_EXT3_FS is not set | 821 | # CONFIG_EXT3_FS is not set |
| 822 | # CONFIG_EXT4DEV_FS is not set | ||
| 877 | # CONFIG_REISERFS_FS is not set | 823 | # CONFIG_REISERFS_FS is not set |
| 878 | # CONFIG_JFS_FS is not set | 824 | # CONFIG_JFS_FS is not set |
| 879 | # CONFIG_FS_POSIX_ACL is not set | 825 | # CONFIG_FS_POSIX_ACL is not set |
| 880 | # CONFIG_XFS_FS is not set | 826 | # CONFIG_XFS_FS is not set |
| 827 | # CONFIG_GFS2_FS is not set | ||
| 881 | # CONFIG_OCFS2_FS is not set | 828 | # CONFIG_OCFS2_FS is not set |
| 882 | # CONFIG_MINIX_FS is not set | 829 | # CONFIG_MINIX_FS is not set |
| 883 | # CONFIG_ROMFS_FS is not set | 830 | # CONFIG_ROMFS_FS is not set |
| @@ -957,6 +904,11 @@ CONFIG_MSDOS_PARTITION=y | |||
| 957 | # CONFIG_NLS is not set | 904 | # CONFIG_NLS is not set |
| 958 | 905 | ||
| 959 | # | 906 | # |
| 907 | # Distributed Lock Manager | ||
| 908 | # | ||
| 909 | # CONFIG_DLM is not set | ||
| 910 | |||
| 911 | # | ||
| 960 | # Profiling support | 912 | # Profiling support |
| 961 | # | 913 | # |
| 962 | CONFIG_PROFILING=y | 914 | CONFIG_PROFILING=y |
| @@ -965,17 +917,18 @@ CONFIG_PROFILING=y | |||
| 965 | # | 917 | # |
| 966 | # Kernel hacking | 918 | # Kernel hacking |
| 967 | # | 919 | # |
| 920 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
| 968 | # CONFIG_PRINTK_TIME is not set | 921 | # CONFIG_PRINTK_TIME is not set |
| 969 | CONFIG_ENABLE_MUST_CHECK=y | 922 | CONFIG_ENABLE_MUST_CHECK=y |
| 970 | # CONFIG_MAGIC_SYSRQ is not set | 923 | # CONFIG_MAGIC_SYSRQ is not set |
| 971 | # CONFIG_UNUSED_SYMBOLS is not set | 924 | # CONFIG_UNUSED_SYMBOLS is not set |
| 925 | # CONFIG_DEBUG_FS is not set | ||
| 926 | # CONFIG_HEADERS_CHECK is not set | ||
| 972 | # CONFIG_DEBUG_KERNEL is not set | 927 | # CONFIG_DEBUG_KERNEL is not set |
| 973 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 974 | # CONFIG_DEBUG_BUGVERBOSE is not set | 928 | # CONFIG_DEBUG_BUGVERBOSE is not set |
| 975 | # CONFIG_DEBUG_FS is not set | ||
| 976 | # CONFIG_SH_STANDARD_BIOS is not set | 929 | # CONFIG_SH_STANDARD_BIOS is not set |
| 977 | # CONFIG_EARLY_SCIF_CONSOLE is not set | 930 | # CONFIG_EARLY_SCIF_CONSOLE is not set |
| 978 | # CONFIG_KGDB is not set | 931 | # CONFIG_SH_KGDB is not set |
| 979 | 932 | ||
| 980 | # | 933 | # |
| 981 | # Security options | 934 | # Security options |
| @@ -991,8 +944,13 @@ CONFIG_LOG_BUF_SHIFT=14 | |||
| 991 | # | 944 | # |
| 992 | # Library routines | 945 | # Library routines |
| 993 | # | 946 | # |
| 947 | CONFIG_BITREVERSE=y | ||
| 994 | # CONFIG_CRC_CCITT is not set | 948 | # CONFIG_CRC_CCITT is not set |
| 995 | # CONFIG_CRC16 is not set | 949 | # CONFIG_CRC16 is not set |
| 950 | # CONFIG_CRC_ITU_T is not set | ||
| 996 | CONFIG_CRC32=y | 951 | CONFIG_CRC32=y |
| 997 | # CONFIG_LIBCRC32C is not set | 952 | # CONFIG_LIBCRC32C is not set |
| 998 | CONFIG_PLIST=y | 953 | CONFIG_PLIST=y |
| 954 | CONFIG_HAS_IOMEM=y | ||
| 955 | CONFIG_HAS_IOPORT=y | ||
| 956 | CONFIG_HAS_DMA=y | ||
diff --git a/arch/sh/configs/r7780mp_defconfig b/arch/sh/configs/r7780mp_defconfig new file mode 100644 index 000000000000..17f7402b31d8 --- /dev/null +++ b/arch/sh/configs/r7780mp_defconfig | |||
| @@ -0,0 +1,1223 @@ | |||
| 1 | # | ||
| 2 | # Automatically generated make config: don't edit | ||
| 3 | # Linux kernel version: 2.6.22-rc4 | ||
| 4 | # Mon Jun 11 10:24:57 2007 | ||
| 5 | # | ||
| 6 | CONFIG_SUPERH=y | ||
| 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
| 8 | CONFIG_GENERIC_BUG=y | ||
| 9 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
| 10 | CONFIG_GENERIC_HWEIGHT=y | ||
| 11 | CONFIG_GENERIC_HARDIRQS=y | ||
| 12 | CONFIG_GENERIC_IRQ_PROBE=y | ||
| 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
| 14 | CONFIG_GENERIC_TIME=y | ||
| 15 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
| 16 | CONFIG_STACKTRACE_SUPPORT=y | ||
| 17 | CONFIG_LOCKDEP_SUPPORT=y | ||
| 18 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
| 19 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
| 20 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
| 21 | |||
| 22 | # | ||
| 23 | # Code maturity level options | ||
| 24 | # | ||
| 25 | CONFIG_EXPERIMENTAL=y | ||
| 26 | CONFIG_BROKEN_ON_SMP=y | ||
| 27 | CONFIG_LOCK_KERNEL=y | ||
| 28 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
| 29 | |||
| 30 | # | ||
| 31 | # General setup | ||
| 32 | # | ||
| 33 | CONFIG_LOCALVERSION="" | ||
| 34 | CONFIG_LOCALVERSION_AUTO=y | ||
| 35 | CONFIG_SWAP=y | ||
| 36 | CONFIG_SYSVIPC=y | ||
| 37 | # CONFIG_IPC_NS is not set | ||
| 38 | CONFIG_SYSVIPC_SYSCTL=y | ||
| 39 | # CONFIG_POSIX_MQUEUE is not set | ||
| 40 | CONFIG_BSD_PROCESS_ACCT=y | ||
| 41 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | ||
| 42 | # CONFIG_TASKSTATS is not set | ||
| 43 | # CONFIG_UTS_NS is not set | ||
| 44 | # CONFIG_AUDIT is not set | ||
| 45 | CONFIG_IKCONFIG=y | ||
| 46 | CONFIG_IKCONFIG_PROC=y | ||
| 47 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 48 | # CONFIG_SYSFS_DEPRECATED is not set | ||
| 49 | # CONFIG_RELAY is not set | ||
| 50 | # CONFIG_BLK_DEV_INITRD is not set | ||
| 51 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
| 52 | CONFIG_SYSCTL=y | ||
| 53 | CONFIG_EMBEDDED=y | ||
| 54 | CONFIG_UID16=y | ||
| 55 | # CONFIG_SYSCTL_SYSCALL is not set | ||
| 56 | CONFIG_KALLSYMS=y | ||
| 57 | # CONFIG_KALLSYMS_ALL is not set | ||
| 58 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
| 59 | CONFIG_HOTPLUG=y | ||
| 60 | CONFIG_PRINTK=y | ||
| 61 | CONFIG_BUG=y | ||
| 62 | CONFIG_ELF_CORE=y | ||
| 63 | CONFIG_BASE_FULL=y | ||
| 64 | # CONFIG_FUTEX is not set | ||
| 65 | CONFIG_ANON_INODES=y | ||
| 66 | # CONFIG_EPOLL is not set | ||
| 67 | CONFIG_SIGNALFD=y | ||
| 68 | CONFIG_TIMERFD=y | ||
| 69 | CONFIG_EVENTFD=y | ||
| 70 | CONFIG_SHMEM=y | ||
| 71 | CONFIG_VM_EVENT_COUNTERS=y | ||
| 72 | CONFIG_SLAB=y | ||
| 73 | # CONFIG_SLUB is not set | ||
| 74 | # CONFIG_SLOB is not set | ||
| 75 | # CONFIG_TINY_SHMEM is not set | ||
| 76 | CONFIG_BASE_SMALL=0 | ||
| 77 | |||
| 78 | # | ||
| 79 | # Loadable module support | ||
| 80 | # | ||
| 81 | CONFIG_MODULES=y | ||
| 82 | CONFIG_MODULE_UNLOAD=y | ||
| 83 | # CONFIG_MODULE_FORCE_UNLOAD is not set | ||
| 84 | # CONFIG_MODVERSIONS is not set | ||
| 85 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
| 86 | CONFIG_KMOD=y | ||
| 87 | |||
| 88 | # | ||
| 89 | # Block layer | ||
| 90 | # | ||
| 91 | CONFIG_BLOCK=y | ||
| 92 | # CONFIG_LBD is not set | ||
| 93 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
| 94 | # CONFIG_LSF is not set | ||
| 95 | |||
| 96 | # | ||
| 97 | # IO Schedulers | ||
| 98 | # | ||
| 99 | CONFIG_IOSCHED_NOOP=y | ||
| 100 | # CONFIG_IOSCHED_AS is not set | ||
| 101 | # CONFIG_IOSCHED_DEADLINE is not set | ||
| 102 | # CONFIG_IOSCHED_CFQ is not set | ||
| 103 | # CONFIG_DEFAULT_AS is not set | ||
| 104 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 105 | # CONFIG_DEFAULT_CFQ is not set | ||
| 106 | CONFIG_DEFAULT_NOOP=y | ||
| 107 | CONFIG_DEFAULT_IOSCHED="noop" | ||
| 108 | |||
| 109 | # | ||
| 110 | # System type | ||
| 111 | # | ||
| 112 | CONFIG_CPU_SH4=y | ||
| 113 | CONFIG_CPU_SH4A=y | ||
| 114 | # CONFIG_CPU_SUBTYPE_SH7619 is not set | ||
| 115 | # CONFIG_CPU_SUBTYPE_SH7206 is not set | ||
| 116 | # CONFIG_CPU_SUBTYPE_SH7300 is not set | ||
| 117 | # CONFIG_CPU_SUBTYPE_SH7705 is not set | ||
| 118 | # CONFIG_CPU_SUBTYPE_SH7706 is not set | ||
| 119 | # CONFIG_CPU_SUBTYPE_SH7707 is not set | ||
| 120 | # CONFIG_CPU_SUBTYPE_SH7708 is not set | ||
| 121 | # CONFIG_CPU_SUBTYPE_SH7709 is not set | ||
| 122 | # CONFIG_CPU_SUBTYPE_SH7710 is not set | ||
| 123 | # CONFIG_CPU_SUBTYPE_SH7712 is not set | ||
| 124 | # CONFIG_CPU_SUBTYPE_SH7750 is not set | ||
| 125 | # CONFIG_CPU_SUBTYPE_SH7091 is not set | ||
| 126 | # CONFIG_CPU_SUBTYPE_SH7750R is not set | ||
| 127 | # CONFIG_CPU_SUBTYPE_SH7750S is not set | ||
| 128 | # CONFIG_CPU_SUBTYPE_SH7751 is not set | ||
| 129 | # CONFIG_CPU_SUBTYPE_SH7751R is not set | ||
| 130 | # CONFIG_CPU_SUBTYPE_SH7760 is not set | ||
| 131 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set | ||
| 132 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set | ||
| 133 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set | ||
| 134 | # CONFIG_CPU_SUBTYPE_SH7770 is not set | ||
| 135 | CONFIG_CPU_SUBTYPE_SH7780=y | ||
| 136 | # CONFIG_CPU_SUBTYPE_SH7785 is not set | ||
| 137 | # CONFIG_CPU_SUBTYPE_SH73180 is not set | ||
| 138 | # CONFIG_CPU_SUBTYPE_SH7343 is not set | ||
| 139 | # CONFIG_CPU_SUBTYPE_SH7722 is not set | ||
| 140 | |||
| 141 | # | ||
| 142 | # Memory management options | ||
| 143 | # | ||
| 144 | CONFIG_QUICKLIST=y | ||
| 145 | CONFIG_MMU=y | ||
| 146 | CONFIG_PAGE_OFFSET=0x80000000 | ||
| 147 | CONFIG_MEMORY_START=0x08000000 | ||
| 148 | CONFIG_MEMORY_SIZE=0x08000000 | ||
| 149 | # CONFIG_32BIT is not set | ||
| 150 | CONFIG_VSYSCALL=y | ||
| 151 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
| 152 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
| 153 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y | ||
| 154 | CONFIG_MAX_ACTIVE_REGIONS=1 | ||
| 155 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
| 156 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | ||
| 157 | CONFIG_PAGE_SIZE_4KB=y | ||
| 158 | # CONFIG_PAGE_SIZE_8KB is not set | ||
| 159 | # CONFIG_PAGE_SIZE_64KB is not set | ||
| 160 | CONFIG_HUGETLB_PAGE_SIZE_64K=y | ||
| 161 | # CONFIG_HUGETLB_PAGE_SIZE_256K is not set | ||
| 162 | # CONFIG_HUGETLB_PAGE_SIZE_1MB is not set | ||
| 163 | # CONFIG_HUGETLB_PAGE_SIZE_4MB is not set | ||
| 164 | # CONFIG_HUGETLB_PAGE_SIZE_64MB is not set | ||
| 165 | CONFIG_SELECT_MEMORY_MODEL=y | ||
| 166 | CONFIG_FLATMEM_MANUAL=y | ||
| 167 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
| 168 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
| 169 | CONFIG_FLATMEM=y | ||
| 170 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
| 171 | CONFIG_SPARSEMEM_STATIC=y | ||
| 172 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 173 | # CONFIG_RESOURCES_64BIT is not set | ||
| 174 | CONFIG_ZONE_DMA_FLAG=0 | ||
| 175 | CONFIG_NR_QUICK=2 | ||
| 176 | |||
| 177 | # | ||
| 178 | # Cache configuration | ||
| 179 | # | ||
| 180 | # CONFIG_SH_DIRECT_MAPPED is not set | ||
| 181 | # CONFIG_SH_WRITETHROUGH is not set | ||
| 182 | # CONFIG_SH_OCRAM is not set | ||
| 183 | |||
| 184 | # | ||
| 185 | # Processor features | ||
| 186 | # | ||
| 187 | CONFIG_CPU_LITTLE_ENDIAN=y | ||
| 188 | # CONFIG_CPU_BIG_ENDIAN is not set | ||
| 189 | CONFIG_SH_FPU=y | ||
| 190 | # CONFIG_SH_DSP is not set | ||
| 191 | CONFIG_SH_STORE_QUEUES=y | ||
| 192 | CONFIG_SPECULATIVE_EXECUTION=y | ||
| 193 | CONFIG_CPU_HAS_INTEVT=y | ||
| 194 | CONFIG_CPU_HAS_INTC2_IRQ=y | ||
| 195 | CONFIG_CPU_HAS_SR_RB=y | ||
| 196 | |||
| 197 | # | ||
| 198 | # Board support | ||
| 199 | # | ||
| 200 | # CONFIG_SH_7780_SOLUTION_ENGINE is not set | ||
| 201 | CONFIG_SH_HIGHLANDER=y | ||
| 202 | # CONFIG_SH_R7780RP is not set | ||
| 203 | CONFIG_SH_R7780MP=y | ||
| 204 | # CONFIG_SH_R7785RP is not set | ||
| 205 | |||
| 206 | # | ||
| 207 | # Timer and clock configuration | ||
| 208 | # | ||
| 209 | CONFIG_SH_TMU=y | ||
| 210 | CONFIG_SH_TIMER_IRQ=28 | ||
| 211 | CONFIG_SH_PCLK_FREQ=32000000 | ||
| 212 | # CONFIG_TICK_ONESHOT is not set | ||
| 213 | # CONFIG_NO_HZ is not set | ||
| 214 | # CONFIG_HIGH_RES_TIMERS is not set | ||
| 215 | |||
| 216 | # | ||
| 217 | # CPU Frequency scaling | ||
| 218 | # | ||
| 219 | # CONFIG_CPU_FREQ is not set | ||
| 220 | |||
| 221 | # | ||
| 222 | # DMA support | ||
| 223 | # | ||
| 224 | # CONFIG_SH_DMA is not set | ||
| 225 | |||
| 226 | # | ||
| 227 | # Companion Chips | ||
| 228 | # | ||
| 229 | # CONFIG_HD6446X_SERIES is not set | ||
| 230 | |||
| 231 | # | ||
| 232 | # Additional SuperH Device Drivers | ||
| 233 | # | ||
| 234 | # CONFIG_HEARTBEAT is not set | ||
| 235 | CONFIG_PUSH_SWITCH=y | ||
| 236 | |||
| 237 | # | ||
| 238 | # Kernel features | ||
| 239 | # | ||
| 240 | # CONFIG_HZ_100 is not set | ||
| 241 | CONFIG_HZ_250=y | ||
| 242 | # CONFIG_HZ_300 is not set | ||
| 243 | # CONFIG_HZ_1000 is not set | ||
| 244 | CONFIG_HZ=250 | ||
| 245 | CONFIG_KEXEC=y | ||
| 246 | # CONFIG_CRASH_DUMP is not set | ||
| 247 | # CONFIG_SMP is not set | ||
| 248 | # CONFIG_PREEMPT_NONE is not set | ||
| 249 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
| 250 | CONFIG_PREEMPT=y | ||
| 251 | CONFIG_PREEMPT_BKL=y | ||
| 252 | |||
| 253 | # | ||
| 254 | # Boot options | ||
| 255 | # | ||
| 256 | CONFIG_ZERO_PAGE_OFFSET=0x00001000 | ||
| 257 | CONFIG_BOOT_LINK_OFFSET=0x00800000 | ||
| 258 | # CONFIG_UBC_WAKEUP is not set | ||
| 259 | CONFIG_CMDLINE_BOOL=y | ||
| 260 | CONFIG_CMDLINE="console=ttySC0,115200 root=/dev/sda1" | ||
| 261 | |||
| 262 | # | ||
| 263 | # Bus options | ||
| 264 | # | ||
| 265 | CONFIG_PCI=y | ||
| 266 | CONFIG_SH_PCIDMA_NONCOHERENT=y | ||
| 267 | CONFIG_PCI_AUTO=y | ||
| 268 | CONFIG_PCI_AUTO_UPDATE_RESOURCES=y | ||
| 269 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
| 270 | # CONFIG_PCI_DEBUG is not set | ||
| 271 | |||
| 272 | # | ||
| 273 | # PCCARD (PCMCIA/CardBus) support | ||
| 274 | # | ||
| 275 | # CONFIG_PCCARD is not set | ||
| 276 | # CONFIG_HOTPLUG_PCI is not set | ||
| 277 | |||
| 278 | # | ||
| 279 | # Executable file formats | ||
| 280 | # | ||
| 281 | CONFIG_BINFMT_ELF=y | ||
| 282 | # CONFIG_BINFMT_MISC is not set | ||
| 283 | |||
| 284 | # | ||
| 285 | # Power management options (EXPERIMENTAL) | ||
| 286 | # | ||
| 287 | # CONFIG_PM is not set | ||
| 288 | |||
| 289 | # | ||
| 290 | # Networking | ||
| 291 | # | ||
| 292 | CONFIG_NET=y | ||
| 293 | |||
| 294 | # | ||
| 295 | # Networking options | ||
| 296 | # | ||
| 297 | CONFIG_PACKET=y | ||
| 298 | # CONFIG_PACKET_MMAP is not set | ||
| 299 | CONFIG_UNIX=y | ||
| 300 | CONFIG_XFRM=y | ||
| 301 | # CONFIG_XFRM_USER is not set | ||
| 302 | # CONFIG_XFRM_SUB_POLICY is not set | ||
| 303 | # CONFIG_XFRM_MIGRATE is not set | ||
| 304 | # CONFIG_NET_KEY is not set | ||
| 305 | CONFIG_INET=y | ||
| 306 | # CONFIG_IP_MULTICAST is not set | ||
| 307 | CONFIG_IP_ADVANCED_ROUTER=y | ||
| 308 | CONFIG_ASK_IP_FIB_HASH=y | ||
| 309 | # CONFIG_IP_FIB_TRIE is not set | ||
| 310 | CONFIG_IP_FIB_HASH=y | ||
| 311 | # CONFIG_IP_MULTIPLE_TABLES is not set | ||
| 312 | # CONFIG_IP_ROUTE_MULTIPATH is not set | ||
| 313 | # CONFIG_IP_ROUTE_VERBOSE is not set | ||
| 314 | CONFIG_IP_PNP=y | ||
| 315 | CONFIG_IP_PNP_DHCP=y | ||
| 316 | # CONFIG_IP_PNP_BOOTP is not set | ||
| 317 | # CONFIG_IP_PNP_RARP is not set | ||
| 318 | # CONFIG_NET_IPIP is not set | ||
| 319 | # CONFIG_NET_IPGRE is not set | ||
| 320 | # CONFIG_ARPD is not set | ||
| 321 | # CONFIG_SYN_COOKIES is not set | ||
| 322 | # CONFIG_INET_AH is not set | ||
| 323 | # CONFIG_INET_ESP is not set | ||
| 324 | # CONFIG_INET_IPCOMP is not set | ||
| 325 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
| 326 | # CONFIG_INET_TUNNEL is not set | ||
| 327 | CONFIG_INET_XFRM_MODE_TRANSPORT=y | ||
| 328 | CONFIG_INET_XFRM_MODE_TUNNEL=y | ||
| 329 | CONFIG_INET_XFRM_MODE_BEET=y | ||
| 330 | CONFIG_INET_DIAG=y | ||
| 331 | CONFIG_INET_TCP_DIAG=y | ||
| 332 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
| 333 | CONFIG_TCP_CONG_CUBIC=y | ||
| 334 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
| 335 | # CONFIG_TCP_MD5SIG is not set | ||
| 336 | # CONFIG_IPV6 is not set | ||
| 337 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
| 338 | # CONFIG_INET6_TUNNEL is not set | ||
| 339 | # CONFIG_NETWORK_SECMARK is not set | ||
| 340 | # CONFIG_NETFILTER is not set | ||
| 341 | # CONFIG_IP_DCCP is not set | ||
| 342 | # CONFIG_IP_SCTP is not set | ||
| 343 | # CONFIG_TIPC is not set | ||
| 344 | # CONFIG_ATM is not set | ||
| 345 | CONFIG_BRIDGE=m | ||
| 346 | # CONFIG_VLAN_8021Q is not set | ||
| 347 | # CONFIG_DECNET is not set | ||
| 348 | CONFIG_LLC=m | ||
| 349 | # CONFIG_LLC2 is not set | ||
| 350 | # CONFIG_IPX is not set | ||
| 351 | # CONFIG_ATALK is not set | ||
| 352 | # CONFIG_X25 is not set | ||
| 353 | # CONFIG_LAPB is not set | ||
| 354 | # CONFIG_ECONET is not set | ||
| 355 | # CONFIG_WAN_ROUTER is not set | ||
| 356 | |||
| 357 | # | ||
| 358 | # QoS and/or fair queueing | ||
| 359 | # | ||
| 360 | # CONFIG_NET_SCHED is not set | ||
| 361 | |||
| 362 | # | ||
| 363 | # Network testing | ||
| 364 | # | ||
| 365 | # CONFIG_NET_PKTGEN is not set | ||
| 366 | # CONFIG_HAMRADIO is not set | ||
| 367 | # CONFIG_IRDA is not set | ||
| 368 | # CONFIG_BT is not set | ||
| 369 | # CONFIG_AF_RXRPC is not set | ||
| 370 | |||
| 371 | # | ||
| 372 | # Wireless | ||
| 373 | # | ||
| 374 | # CONFIG_CFG80211 is not set | ||
| 375 | CONFIG_WIRELESS_EXT=y | ||
| 376 | # CONFIG_MAC80211 is not set | ||
| 377 | # CONFIG_IEEE80211 is not set | ||
| 378 | # CONFIG_RFKILL is not set | ||
| 379 | |||
| 380 | # | ||
| 381 | # Device Drivers | ||
| 382 | # | ||
| 383 | |||
| 384 | # | ||
| 385 | # Generic Driver Options | ||
| 386 | # | ||
| 387 | CONFIG_STANDALONE=y | ||
| 388 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
| 389 | CONFIG_FW_LOADER=m | ||
| 390 | # CONFIG_DEBUG_DRIVER is not set | ||
| 391 | # CONFIG_DEBUG_DEVRES is not set | ||
| 392 | # CONFIG_SYS_HYPERVISOR is not set | ||
| 393 | |||
| 394 | # | ||
| 395 | # Connector - unified userspace <-> kernelspace linker | ||
| 396 | # | ||
| 397 | # CONFIG_CONNECTOR is not set | ||
| 398 | # CONFIG_MTD is not set | ||
| 399 | |||
| 400 | # | ||
| 401 | # Parallel port support | ||
| 402 | # | ||
| 403 | # CONFIG_PARPORT is not set | ||
| 404 | |||
| 405 | # | ||
| 406 | # Plug and Play support | ||
| 407 | # | ||
| 408 | # CONFIG_PNPACPI is not set | ||
| 409 | |||
| 410 | # | ||
| 411 | # Block devices | ||
| 412 | # | ||
| 413 | # CONFIG_BLK_CPQ_DA is not set | ||
| 414 | # CONFIG_BLK_CPQ_CISS_DA is not set | ||
| 415 | # CONFIG_BLK_DEV_DAC960 is not set | ||
| 416 | # CONFIG_BLK_DEV_UMEM is not set | ||
| 417 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
| 418 | # CONFIG_BLK_DEV_LOOP is not set | ||
| 419 | # CONFIG_BLK_DEV_NBD is not set | ||
| 420 | # CONFIG_BLK_DEV_SX8 is not set | ||
| 421 | CONFIG_BLK_DEV_RAM=y | ||
| 422 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
| 423 | CONFIG_BLK_DEV_RAM_SIZE=4096 | ||
| 424 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | ||
| 425 | # CONFIG_CDROM_PKTCDVD is not set | ||
| 426 | # CONFIG_ATA_OVER_ETH is not set | ||
| 427 | |||
| 428 | # | ||
| 429 | # Misc devices | ||
| 430 | # | ||
| 431 | # CONFIG_PHANTOM is not set | ||
| 432 | # CONFIG_SGI_IOC4 is not set | ||
| 433 | # CONFIG_TIFM_CORE is not set | ||
| 434 | # CONFIG_BLINK is not set | ||
| 435 | # CONFIG_IDE is not set | ||
| 436 | |||
| 437 | # | ||
| 438 | # SCSI device support | ||
| 439 | # | ||
| 440 | # CONFIG_RAID_ATTRS is not set | ||
| 441 | CONFIG_SCSI=y | ||
| 442 | # CONFIG_SCSI_TGT is not set | ||
| 443 | # CONFIG_SCSI_NETLINK is not set | ||
| 444 | CONFIG_SCSI_PROC_FS=y | ||
| 445 | |||
| 446 | # | ||
| 447 | # SCSI support type (disk, tape, CD-ROM) | ||
| 448 | # | ||
| 449 | CONFIG_BLK_DEV_SD=y | ||
| 450 | # CONFIG_CHR_DEV_ST is not set | ||
| 451 | # CONFIG_CHR_DEV_OSST is not set | ||
| 452 | # CONFIG_BLK_DEV_SR is not set | ||
| 453 | CONFIG_CHR_DEV_SG=m | ||
| 454 | # CONFIG_CHR_DEV_SCH is not set | ||
| 455 | |||
| 456 | # | ||
| 457 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
| 458 | # | ||
| 459 | # CONFIG_SCSI_MULTI_LUN is not set | ||
| 460 | # CONFIG_SCSI_CONSTANTS is not set | ||
| 461 | # CONFIG_SCSI_LOGGING is not set | ||
| 462 | # CONFIG_SCSI_SCAN_ASYNC is not set | ||
| 463 | CONFIG_SCSI_WAIT_SCAN=m | ||
| 464 | |||
| 465 | # | ||
| 466 | # SCSI Transports | ||
| 467 | # | ||
| 468 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
| 469 | # CONFIG_SCSI_FC_ATTRS is not set | ||
| 470 | # CONFIG_SCSI_ISCSI_ATTRS is not set | ||
| 471 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
| 472 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
| 473 | |||
| 474 | # | ||
| 475 | # SCSI low-level drivers | ||
| 476 | # | ||
| 477 | # CONFIG_ISCSI_TCP is not set | ||
| 478 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | ||
| 479 | # CONFIG_SCSI_3W_9XXX is not set | ||
| 480 | # CONFIG_SCSI_ACARD is not set | ||
| 481 | # CONFIG_SCSI_AACRAID is not set | ||
| 482 | # CONFIG_SCSI_AIC7XXX is not set | ||
| 483 | # CONFIG_SCSI_AIC7XXX_OLD is not set | ||
| 484 | # CONFIG_SCSI_AIC79XX is not set | ||
| 485 | # CONFIG_SCSI_AIC94XX is not set | ||
| 486 | # CONFIG_SCSI_DPT_I2O is not set | ||
| 487 | # CONFIG_SCSI_ARCMSR is not set | ||
| 488 | # CONFIG_MEGARAID_NEWGEN is not set | ||
| 489 | # CONFIG_MEGARAID_LEGACY is not set | ||
| 490 | # CONFIG_MEGARAID_SAS is not set | ||
| 491 | # CONFIG_SCSI_HPTIOP is not set | ||
| 492 | # CONFIG_SCSI_DMX3191D is not set | ||
| 493 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | ||
| 494 | # CONFIG_SCSI_IPS is not set | ||
| 495 | # CONFIG_SCSI_INITIO is not set | ||
| 496 | # CONFIG_SCSI_INIA100 is not set | ||
| 497 | # CONFIG_SCSI_STEX is not set | ||
| 498 | # CONFIG_SCSI_SYM53C8XX_2 is not set | ||
| 499 | # CONFIG_SCSI_IPR is not set | ||
| 500 | # CONFIG_SCSI_QLOGIC_1280 is not set | ||
| 501 | # CONFIG_SCSI_QLA_FC is not set | ||
| 502 | # CONFIG_SCSI_QLA_ISCSI is not set | ||
| 503 | # CONFIG_SCSI_LPFC is not set | ||
| 504 | # CONFIG_SCSI_DC395x is not set | ||
| 505 | # CONFIG_SCSI_DC390T is not set | ||
| 506 | # CONFIG_SCSI_NSP32 is not set | ||
| 507 | # CONFIG_SCSI_DEBUG is not set | ||
| 508 | # CONFIG_SCSI_SRP is not set | ||
| 509 | CONFIG_ATA=y | ||
| 510 | # CONFIG_ATA_NONSTANDARD is not set | ||
| 511 | # CONFIG_SATA_AHCI is not set | ||
| 512 | # CONFIG_SATA_SVW is not set | ||
| 513 | # CONFIG_ATA_PIIX is not set | ||
| 514 | # CONFIG_SATA_MV is not set | ||
| 515 | # CONFIG_SATA_NV is not set | ||
| 516 | # CONFIG_PDC_ADMA is not set | ||
| 517 | # CONFIG_SATA_QSTOR is not set | ||
| 518 | # CONFIG_SATA_PROMISE is not set | ||
| 519 | # CONFIG_SATA_SX4 is not set | ||
| 520 | CONFIG_SATA_SIL=y | ||
| 521 | # CONFIG_SATA_SIL24 is not set | ||
| 522 | # CONFIG_SATA_SIS is not set | ||
| 523 | # CONFIG_SATA_ULI is not set | ||
| 524 | # CONFIG_SATA_VIA is not set | ||
| 525 | # CONFIG_SATA_VITESSE is not set | ||
| 526 | # CONFIG_SATA_INIC162X is not set | ||
| 527 | # CONFIG_PATA_ALI is not set | ||
| 528 | # CONFIG_PATA_AMD is not set | ||
| 529 | # CONFIG_PATA_ARTOP is not set | ||
| 530 | # CONFIG_PATA_ATIIXP is not set | ||
| 531 | # CONFIG_PATA_CMD640_PCI is not set | ||
| 532 | # CONFIG_PATA_CMD64X is not set | ||
| 533 | # CONFIG_PATA_CS5520 is not set | ||
| 534 | # CONFIG_PATA_CS5530 is not set | ||
| 535 | # CONFIG_PATA_CYPRESS is not set | ||
| 536 | # CONFIG_PATA_EFAR is not set | ||
| 537 | # CONFIG_ATA_GENERIC is not set | ||
| 538 | # CONFIG_PATA_HPT366 is not set | ||
| 539 | # CONFIG_PATA_HPT37X is not set | ||
| 540 | # CONFIG_PATA_HPT3X2N is not set | ||
| 541 | # CONFIG_PATA_HPT3X3 is not set | ||
| 542 | # CONFIG_PATA_IT821X is not set | ||
| 543 | # CONFIG_PATA_IT8213 is not set | ||
| 544 | # CONFIG_PATA_JMICRON is not set | ||
| 545 | # CONFIG_PATA_TRIFLEX is not set | ||
| 546 | # CONFIG_PATA_MARVELL is not set | ||
| 547 | # CONFIG_PATA_MPIIX is not set | ||
| 548 | # CONFIG_PATA_OLDPIIX is not set | ||
| 549 | # CONFIG_PATA_NETCELL is not set | ||
| 550 | # CONFIG_PATA_NS87410 is not set | ||
| 551 | # CONFIG_PATA_OPTI is not set | ||
| 552 | # CONFIG_PATA_OPTIDMA is not set | ||
| 553 | # CONFIG_PATA_PDC_OLD is not set | ||
| 554 | # CONFIG_PATA_RADISYS is not set | ||
| 555 | # CONFIG_PATA_RZ1000 is not set | ||
| 556 | # CONFIG_PATA_SC1200 is not set | ||
| 557 | # CONFIG_PATA_SERVERWORKS is not set | ||
| 558 | # CONFIG_PATA_PDC2027X is not set | ||
| 559 | # CONFIG_PATA_SIL680 is not set | ||
| 560 | # CONFIG_PATA_SIS is not set | ||
| 561 | # CONFIG_PATA_VIA is not set | ||
| 562 | # CONFIG_PATA_WINBOND is not set | ||
| 563 | CONFIG_PATA_PLATFORM=y | ||
| 564 | |||
| 565 | # | ||
| 566 | # Multi-device support (RAID and LVM) | ||
| 567 | # | ||
| 568 | # CONFIG_MD is not set | ||
| 569 | |||
| 570 | # | ||
| 571 | # Fusion MPT device support | ||
| 572 | # | ||
| 573 | # CONFIG_FUSION is not set | ||
| 574 | # CONFIG_FUSION_SPI is not set | ||
| 575 | # CONFIG_FUSION_FC is not set | ||
| 576 | # CONFIG_FUSION_SAS is not set | ||
| 577 | |||
| 578 | # | ||
| 579 | # IEEE 1394 (FireWire) support | ||
| 580 | # | ||
| 581 | # CONFIG_FIREWIRE is not set | ||
| 582 | # CONFIG_IEEE1394 is not set | ||
| 583 | |||
| 584 | # | ||
| 585 | # I2O device support | ||
| 586 | # | ||
| 587 | # CONFIG_I2O is not set | ||
| 588 | |||
| 589 | # | ||
| 590 | # Network device support | ||
| 591 | # | ||
| 592 | CONFIG_NETDEVICES=y | ||
| 593 | # CONFIG_DUMMY is not set | ||
| 594 | # CONFIG_BONDING is not set | ||
| 595 | # CONFIG_EQUALIZER is not set | ||
| 596 | # CONFIG_TUN is not set | ||
| 597 | # CONFIG_ARCNET is not set | ||
| 598 | # CONFIG_PHYLIB is not set | ||
| 599 | |||
| 600 | # | ||
| 601 | # Ethernet (10 or 100Mbit) | ||
| 602 | # | ||
| 603 | CONFIG_NET_ETHERNET=y | ||
| 604 | CONFIG_MII=y | ||
| 605 | # CONFIG_STNIC is not set | ||
| 606 | # CONFIG_HAPPYMEAL is not set | ||
| 607 | # CONFIG_SUNGEM is not set | ||
| 608 | # CONFIG_CASSINI is not set | ||
| 609 | # CONFIG_NET_VENDOR_3COM is not set | ||
| 610 | # CONFIG_SMC91X is not set | ||
| 611 | |||
| 612 | # | ||
| 613 | # Tulip family network device support | ||
| 614 | # | ||
| 615 | # CONFIG_NET_TULIP is not set | ||
| 616 | # CONFIG_HP100 is not set | ||
| 617 | CONFIG_NET_PCI=y | ||
| 618 | CONFIG_PCNET32=m | ||
| 619 | # CONFIG_PCNET32_NAPI is not set | ||
| 620 | # CONFIG_AMD8111_ETH is not set | ||
| 621 | # CONFIG_ADAPTEC_STARFIRE is not set | ||
| 622 | # CONFIG_B44 is not set | ||
| 623 | # CONFIG_FORCEDETH is not set | ||
| 624 | # CONFIG_DGRS is not set | ||
| 625 | # CONFIG_EEPRO100 is not set | ||
| 626 | # CONFIG_E100 is not set | ||
| 627 | # CONFIG_FEALNX is not set | ||
| 628 | # CONFIG_NATSEMI is not set | ||
| 629 | # CONFIG_NE2K_PCI is not set | ||
| 630 | CONFIG_8139CP=m | ||
| 631 | CONFIG_8139TOO=m | ||
| 632 | # CONFIG_8139TOO_PIO is not set | ||
| 633 | # CONFIG_8139TOO_TUNE_TWISTER is not set | ||
| 634 | CONFIG_8139TOO_8129=y | ||
| 635 | # CONFIG_8139_OLD_RX_RESET is not set | ||
| 636 | # CONFIG_SIS900 is not set | ||
| 637 | # CONFIG_EPIC100 is not set | ||
| 638 | # CONFIG_SUNDANCE is not set | ||
| 639 | # CONFIG_TLAN is not set | ||
| 640 | CONFIG_VIA_RHINE=m | ||
| 641 | CONFIG_VIA_RHINE_MMIO=y | ||
| 642 | # CONFIG_VIA_RHINE_NAPI is not set | ||
| 643 | # CONFIG_SC92031 is not set | ||
| 644 | CONFIG_NETDEV_1000=y | ||
| 645 | # CONFIG_ACENIC is not set | ||
| 646 | # CONFIG_DL2K is not set | ||
| 647 | CONFIG_E1000=m | ||
| 648 | # CONFIG_E1000_NAPI is not set | ||
| 649 | # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set | ||
| 650 | # CONFIG_NS83820 is not set | ||
| 651 | # CONFIG_HAMACHI is not set | ||
| 652 | # CONFIG_YELLOWFIN is not set | ||
| 653 | CONFIG_R8169=y | ||
| 654 | # CONFIG_R8169_NAPI is not set | ||
| 655 | # CONFIG_SIS190 is not set | ||
| 656 | # CONFIG_SKGE is not set | ||
| 657 | # CONFIG_SKY2 is not set | ||
| 658 | # CONFIG_SK98LIN is not set | ||
| 659 | # CONFIG_VIA_VELOCITY is not set | ||
| 660 | # CONFIG_TIGON3 is not set | ||
| 661 | # CONFIG_BNX2 is not set | ||
| 662 | # CONFIG_QLA3XXX is not set | ||
| 663 | # CONFIG_ATL1 is not set | ||
| 664 | CONFIG_NETDEV_10000=y | ||
| 665 | # CONFIG_CHELSIO_T1 is not set | ||
| 666 | # CONFIG_CHELSIO_T3 is not set | ||
| 667 | # CONFIG_IXGB is not set | ||
| 668 | # CONFIG_S2IO is not set | ||
| 669 | # CONFIG_MYRI10GE is not set | ||
| 670 | # CONFIG_NETXEN_NIC is not set | ||
| 671 | # CONFIG_MLX4_CORE is not set | ||
| 672 | # CONFIG_TR is not set | ||
| 673 | |||
| 674 | # | ||
| 675 | # Wireless LAN | ||
| 676 | # | ||
| 677 | # CONFIG_WLAN_PRE80211 is not set | ||
| 678 | # CONFIG_WLAN_80211 is not set | ||
| 679 | # CONFIG_WAN is not set | ||
| 680 | # CONFIG_FDDI is not set | ||
| 681 | # CONFIG_HIPPI is not set | ||
| 682 | # CONFIG_PPP is not set | ||
| 683 | # CONFIG_SLIP is not set | ||
| 684 | # CONFIG_NET_FC is not set | ||
| 685 | # CONFIG_SHAPER is not set | ||
| 686 | # CONFIG_NETCONSOLE is not set | ||
| 687 | # CONFIG_NETPOLL is not set | ||
| 688 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
| 689 | |||
| 690 | # | ||
| 691 | # ISDN subsystem | ||
| 692 | # | ||
| 693 | # CONFIG_ISDN is not set | ||
| 694 | |||
| 695 | # | ||
| 696 | # Telephony Support | ||
| 697 | # | ||
| 698 | # CONFIG_PHONE is not set | ||
| 699 | |||
| 700 | # | ||
| 701 | # Input device support | ||
| 702 | # | ||
| 703 | CONFIG_INPUT=y | ||
| 704 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
| 705 | |||
| 706 | # | ||
| 707 | # Userland interfaces | ||
| 708 | # | ||
| 709 | CONFIG_INPUT_MOUSEDEV=y | ||
| 710 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||
| 711 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
| 712 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
| 713 | # CONFIG_INPUT_JOYDEV is not set | ||
| 714 | # CONFIG_INPUT_TSDEV is not set | ||
| 715 | # CONFIG_INPUT_EVDEV is not set | ||
| 716 | # CONFIG_INPUT_EVBUG is not set | ||
| 717 | |||
| 718 | # | ||
| 719 | # Input Device Drivers | ||
| 720 | # | ||
| 721 | CONFIG_INPUT_KEYBOARD=y | ||
| 722 | CONFIG_KEYBOARD_ATKBD=y | ||
| 723 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
| 724 | # CONFIG_KEYBOARD_LKKBD is not set | ||
| 725 | # CONFIG_KEYBOARD_XTKBD is not set | ||
| 726 | # CONFIG_KEYBOARD_NEWTON is not set | ||
| 727 | # CONFIG_KEYBOARD_STOWAWAY is not set | ||
| 728 | # CONFIG_INPUT_MOUSE is not set | ||
| 729 | # CONFIG_INPUT_JOYSTICK is not set | ||
| 730 | # CONFIG_INPUT_TABLET is not set | ||
| 731 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
| 732 | # CONFIG_INPUT_MISC is not set | ||
| 733 | |||
| 734 | # | ||
| 735 | # Hardware I/O ports | ||
| 736 | # | ||
| 737 | CONFIG_SERIO=y | ||
| 738 | # CONFIG_SERIO_I8042 is not set | ||
| 739 | # CONFIG_SERIO_SERPORT is not set | ||
| 740 | # CONFIG_SERIO_PCIPS2 is not set | ||
| 741 | CONFIG_SERIO_LIBPS2=y | ||
| 742 | # CONFIG_SERIO_RAW is not set | ||
| 743 | # CONFIG_GAMEPORT is not set | ||
| 744 | |||
| 745 | # | ||
| 746 | # Character devices | ||
| 747 | # | ||
| 748 | # CONFIG_VT is not set | ||
| 749 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
| 750 | |||
| 751 | # | ||
| 752 | # Serial drivers | ||
| 753 | # | ||
| 754 | # CONFIG_SERIAL_8250 is not set | ||
| 755 | |||
| 756 | # | ||
| 757 | # Non-8250 serial port support | ||
| 758 | # | ||
| 759 | CONFIG_SERIAL_SH_SCI=y | ||
| 760 | CONFIG_SERIAL_SH_SCI_NR_UARTS=2 | ||
| 761 | CONFIG_SERIAL_SH_SCI_CONSOLE=y | ||
| 762 | CONFIG_SERIAL_CORE=y | ||
| 763 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
| 764 | # CONFIG_SERIAL_JSM is not set | ||
| 765 | CONFIG_UNIX98_PTYS=y | ||
| 766 | CONFIG_LEGACY_PTYS=y | ||
| 767 | CONFIG_LEGACY_PTY_COUNT=256 | ||
| 768 | |||
| 769 | # | ||
| 770 | # IPMI | ||
| 771 | # | ||
| 772 | # CONFIG_IPMI_HANDLER is not set | ||
| 773 | # CONFIG_WATCHDOG is not set | ||
| 774 | CONFIG_HW_RANDOM=y | ||
| 775 | # CONFIG_R3964 is not set | ||
| 776 | # CONFIG_APPLICOM is not set | ||
| 777 | # CONFIG_DRM is not set | ||
| 778 | # CONFIG_RAW_DRIVER is not set | ||
| 779 | |||
| 780 | # | ||
| 781 | # TPM devices | ||
| 782 | # | ||
| 783 | # CONFIG_TCG_TPM is not set | ||
| 784 | CONFIG_DEVPORT=y | ||
| 785 | # CONFIG_I2C is not set | ||
| 786 | |||
| 787 | # | ||
| 788 | # SPI support | ||
| 789 | # | ||
| 790 | # CONFIG_SPI is not set | ||
| 791 | # CONFIG_SPI_MASTER is not set | ||
| 792 | |||
| 793 | # | ||
| 794 | # Dallas's 1-wire bus | ||
| 795 | # | ||
| 796 | # CONFIG_W1 is not set | ||
| 797 | CONFIG_HWMON=y | ||
| 798 | # CONFIG_HWMON_VID is not set | ||
| 799 | # CONFIG_SENSORS_ABITUGURU is not set | ||
| 800 | # CONFIG_SENSORS_F71805F is not set | ||
| 801 | # CONFIG_SENSORS_PC87427 is not set | ||
| 802 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
| 803 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
| 804 | # CONFIG_SENSORS_VT1211 is not set | ||
| 805 | # CONFIG_SENSORS_W83627HF is not set | ||
| 806 | # CONFIG_HWMON_DEBUG_CHIP is not set | ||
| 807 | |||
| 808 | # | ||
| 809 | # Multifunction device drivers | ||
| 810 | # | ||
| 811 | # CONFIG_MFD_SM501 is not set | ||
| 812 | |||
| 813 | # | ||
| 814 | # Multimedia devices | ||
| 815 | # | ||
| 816 | # CONFIG_VIDEO_DEV is not set | ||
| 817 | # CONFIG_DVB_CORE is not set | ||
| 818 | CONFIG_DAB=y | ||
| 819 | |||
| 820 | # | ||
| 821 | # Graphics support | ||
| 822 | # | ||
| 823 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
| 824 | |||
| 825 | # | ||
| 826 | # Display device support | ||
| 827 | # | ||
| 828 | # CONFIG_DISPLAY_SUPPORT is not set | ||
| 829 | # CONFIG_VGASTATE is not set | ||
| 830 | # CONFIG_FB is not set | ||
| 831 | |||
| 832 | # | ||
| 833 | # Sound | ||
| 834 | # | ||
| 835 | CONFIG_SOUND=m | ||
| 836 | |||
| 837 | # | ||
| 838 | # Advanced Linux Sound Architecture | ||
| 839 | # | ||
| 840 | # CONFIG_SND is not set | ||
| 841 | |||
| 842 | # | ||
| 843 | # Open Sound System | ||
| 844 | # | ||
| 845 | CONFIG_SOUND_PRIME=m | ||
| 846 | # CONFIG_OSS_OBSOLETE is not set | ||
| 847 | # CONFIG_SOUND_TRIDENT is not set | ||
| 848 | # CONFIG_SOUND_MSNDCLAS is not set | ||
| 849 | # CONFIG_SOUND_MSNDPIN is not set | ||
| 850 | |||
| 851 | # | ||
| 852 | # HID Devices | ||
| 853 | # | ||
| 854 | CONFIG_HID=y | ||
| 855 | # CONFIG_HID_DEBUG is not set | ||
| 856 | |||
| 857 | # | ||
| 858 | # USB support | ||
| 859 | # | ||
| 860 | CONFIG_USB_ARCH_HAS_HCD=y | ||
| 861 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
| 862 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
| 863 | # CONFIG_USB is not set | ||
| 864 | |||
| 865 | # | ||
| 866 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 867 | # | ||
| 868 | |||
| 869 | # | ||
| 870 | # USB Gadget Support | ||
| 871 | # | ||
| 872 | # CONFIG_USB_GADGET is not set | ||
| 873 | # CONFIG_MMC is not set | ||
| 874 | |||
| 875 | # | ||
| 876 | # LED devices | ||
| 877 | # | ||
| 878 | # CONFIG_NEW_LEDS is not set | ||
| 879 | |||
| 880 | # | ||
| 881 | # LED drivers | ||
| 882 | # | ||
| 883 | |||
| 884 | # | ||
| 885 | # LED Triggers | ||
| 886 | # | ||
| 887 | |||
| 888 | # | ||
| 889 | # InfiniBand support | ||
| 890 | # | ||
| 891 | # CONFIG_INFINIBAND is not set | ||
| 892 | |||
| 893 | # | ||
| 894 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | ||
| 895 | # | ||
| 896 | |||
| 897 | # | ||
| 898 | # Real Time Clock | ||
| 899 | # | ||
| 900 | CONFIG_RTC_LIB=y | ||
| 901 | CONFIG_RTC_CLASS=y | ||
| 902 | CONFIG_RTC_HCTOSYS=y | ||
| 903 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
| 904 | # CONFIG_RTC_DEBUG is not set | ||
| 905 | |||
| 906 | # | ||
| 907 | # RTC interfaces | ||
| 908 | # | ||
| 909 | CONFIG_RTC_INTF_SYSFS=y | ||
| 910 | CONFIG_RTC_INTF_PROC=y | ||
| 911 | CONFIG_RTC_INTF_DEV=y | ||
| 912 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
| 913 | # CONFIG_RTC_DRV_TEST is not set | ||
| 914 | |||
| 915 | # | ||
| 916 | # I2C RTC drivers | ||
| 917 | # | ||
| 918 | |||
| 919 | # | ||
| 920 | # SPI RTC drivers | ||
| 921 | # | ||
| 922 | |||
| 923 | # | ||
| 924 | # Platform RTC drivers | ||
| 925 | # | ||
| 926 | # CONFIG_RTC_DRV_DS1553 is not set | ||
| 927 | # CONFIG_RTC_DRV_DS1742 is not set | ||
| 928 | # CONFIG_RTC_DRV_M48T86 is not set | ||
| 929 | # CONFIG_RTC_DRV_V3020 is not set | ||
| 930 | |||
| 931 | # | ||
| 932 | # on-CPU RTC drivers | ||
| 933 | # | ||
| 934 | CONFIG_RTC_DRV_SH=y | ||
| 935 | |||
| 936 | # | ||
| 937 | # DMA Engine support | ||
| 938 | # | ||
| 939 | # CONFIG_DMA_ENGINE is not set | ||
| 940 | |||
| 941 | # | ||
| 942 | # DMA Clients | ||
| 943 | # | ||
| 944 | |||
| 945 | # | ||
| 946 | # DMA Devices | ||
| 947 | # | ||
| 948 | |||
| 949 | # | ||
| 950 | # File systems | ||
| 951 | # | ||
| 952 | CONFIG_EXT2_FS=y | ||
| 953 | # CONFIG_EXT2_FS_XATTR is not set | ||
| 954 | # CONFIG_EXT2_FS_XIP is not set | ||
| 955 | CONFIG_EXT3_FS=y | ||
| 956 | CONFIG_EXT3_FS_XATTR=y | ||
| 957 | # CONFIG_EXT3_FS_POSIX_ACL is not set | ||
| 958 | # CONFIG_EXT3_FS_SECURITY is not set | ||
| 959 | # CONFIG_EXT4DEV_FS is not set | ||
| 960 | CONFIG_JBD=y | ||
| 961 | # CONFIG_JBD_DEBUG is not set | ||
| 962 | CONFIG_FS_MBCACHE=y | ||
| 963 | # CONFIG_REISERFS_FS is not set | ||
| 964 | # CONFIG_JFS_FS is not set | ||
| 965 | CONFIG_FS_POSIX_ACL=y | ||
| 966 | # CONFIG_XFS_FS is not set | ||
| 967 | # CONFIG_GFS2_FS is not set | ||
| 968 | # CONFIG_OCFS2_FS is not set | ||
| 969 | CONFIG_MINIX_FS=y | ||
| 970 | # CONFIG_ROMFS_FS is not set | ||
| 971 | CONFIG_INOTIFY=y | ||
| 972 | CONFIG_INOTIFY_USER=y | ||
| 973 | # CONFIG_QUOTA is not set | ||
| 974 | CONFIG_DNOTIFY=y | ||
| 975 | # CONFIG_AUTOFS_FS is not set | ||
| 976 | # CONFIG_AUTOFS4_FS is not set | ||
| 977 | CONFIG_FUSE_FS=m | ||
| 978 | |||
| 979 | # | ||
| 980 | # CD-ROM/DVD Filesystems | ||
| 981 | # | ||
| 982 | # CONFIG_ISO9660_FS is not set | ||
| 983 | # CONFIG_UDF_FS is not set | ||
| 984 | |||
| 985 | # | ||
| 986 | # DOS/FAT/NT Filesystems | ||
| 987 | # | ||
| 988 | CONFIG_FAT_FS=y | ||
| 989 | CONFIG_MSDOS_FS=y | ||
| 990 | CONFIG_VFAT_FS=y | ||
| 991 | CONFIG_FAT_DEFAULT_CODEPAGE=437 | ||
| 992 | CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | ||
| 993 | CONFIG_NTFS_FS=y | ||
| 994 | # CONFIG_NTFS_DEBUG is not set | ||
| 995 | CONFIG_NTFS_RW=y | ||
| 996 | |||
| 997 | # | ||
| 998 | # Pseudo filesystems | ||
| 999 | # | ||
| 1000 | CONFIG_PROC_FS=y | ||
| 1001 | CONFIG_PROC_KCORE=y | ||
| 1002 | CONFIG_PROC_SYSCTL=y | ||
| 1003 | CONFIG_SYSFS=y | ||
| 1004 | CONFIG_TMPFS=y | ||
| 1005 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
| 1006 | CONFIG_HUGETLBFS=y | ||
| 1007 | CONFIG_HUGETLB_PAGE=y | ||
| 1008 | CONFIG_RAMFS=y | ||
| 1009 | CONFIG_CONFIGFS_FS=m | ||
| 1010 | |||
| 1011 | # | ||
| 1012 | # Miscellaneous filesystems | ||
| 1013 | # | ||
| 1014 | # CONFIG_ADFS_FS is not set | ||
| 1015 | # CONFIG_AFFS_FS is not set | ||
| 1016 | # CONFIG_HFS_FS is not set | ||
| 1017 | # CONFIG_HFSPLUS_FS is not set | ||
| 1018 | # CONFIG_BEFS_FS is not set | ||
| 1019 | # CONFIG_BFS_FS is not set | ||
| 1020 | # CONFIG_EFS_FS is not set | ||
| 1021 | # CONFIG_CRAMFS is not set | ||
| 1022 | # CONFIG_VXFS_FS is not set | ||
| 1023 | # CONFIG_HPFS_FS is not set | ||
| 1024 | # CONFIG_QNX4FS_FS is not set | ||
| 1025 | # CONFIG_SYSV_FS is not set | ||
| 1026 | # CONFIG_UFS_FS is not set | ||
| 1027 | |||
| 1028 | # | ||
| 1029 | # Network File Systems | ||
| 1030 | # | ||
| 1031 | CONFIG_NFS_FS=y | ||
| 1032 | CONFIG_NFS_V3=y | ||
| 1033 | # CONFIG_NFS_V3_ACL is not set | ||
| 1034 | CONFIG_NFS_V4=y | ||
| 1035 | # CONFIG_NFS_DIRECTIO is not set | ||
| 1036 | CONFIG_NFSD=y | ||
| 1037 | CONFIG_NFSD_V3=y | ||
| 1038 | # CONFIG_NFSD_V3_ACL is not set | ||
| 1039 | CONFIG_NFSD_V4=y | ||
| 1040 | CONFIG_NFSD_TCP=y | ||
| 1041 | CONFIG_ROOT_NFS=y | ||
| 1042 | CONFIG_LOCKD=y | ||
| 1043 | CONFIG_LOCKD_V4=y | ||
| 1044 | CONFIG_EXPORTFS=y | ||
| 1045 | CONFIG_NFS_COMMON=y | ||
| 1046 | CONFIG_SUNRPC=y | ||
| 1047 | CONFIG_SUNRPC_GSS=y | ||
| 1048 | # CONFIG_SUNRPC_BIND34 is not set | ||
| 1049 | CONFIG_RPCSEC_GSS_KRB5=y | ||
| 1050 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | ||
| 1051 | # CONFIG_SMB_FS is not set | ||
| 1052 | # CONFIG_CIFS is not set | ||
| 1053 | # CONFIG_NCP_FS is not set | ||
| 1054 | # CONFIG_CODA_FS is not set | ||
| 1055 | # CONFIG_AFS_FS is not set | ||
| 1056 | # CONFIG_9P_FS is not set | ||
| 1057 | |||
| 1058 | # | ||
| 1059 | # Partition Types | ||
| 1060 | # | ||
| 1061 | # CONFIG_PARTITION_ADVANCED is not set | ||
| 1062 | CONFIG_MSDOS_PARTITION=y | ||
| 1063 | |||
| 1064 | # | ||
| 1065 | # Native Language Support | ||
| 1066 | # | ||
| 1067 | CONFIG_NLS=y | ||
| 1068 | CONFIG_NLS_DEFAULT="iso8859-1" | ||
| 1069 | CONFIG_NLS_CODEPAGE_437=y | ||
| 1070 | # CONFIG_NLS_CODEPAGE_737 is not set | ||
| 1071 | # CONFIG_NLS_CODEPAGE_775 is not set | ||
| 1072 | # CONFIG_NLS_CODEPAGE_850 is not set | ||
| 1073 | # CONFIG_NLS_CODEPAGE_852 is not set | ||
| 1074 | # CONFIG_NLS_CODEPAGE_855 is not set | ||
| 1075 | # CONFIG_NLS_CODEPAGE_857 is not set | ||
| 1076 | # CONFIG_NLS_CODEPAGE_860 is not set | ||
| 1077 | # CONFIG_NLS_CODEPAGE_861 is not set | ||
| 1078 | # CONFIG_NLS_CODEPAGE_862 is not set | ||
| 1079 | # CONFIG_NLS_CODEPAGE_863 is not set | ||
| 1080 | # CONFIG_NLS_CODEPAGE_864 is not set | ||
| 1081 | # CONFIG_NLS_CODEPAGE_865 is not set | ||
| 1082 | # CONFIG_NLS_CODEPAGE_866 is not set | ||
| 1083 | # CONFIG_NLS_CODEPAGE_869 is not set | ||
| 1084 | # CONFIG_NLS_CODEPAGE_936 is not set | ||
| 1085 | # CONFIG_NLS_CODEPAGE_950 is not set | ||
| 1086 | CONFIG_NLS_CODEPAGE_932=y | ||
| 1087 | # CONFIG_NLS_CODEPAGE_949 is not set | ||
| 1088 | # CONFIG_NLS_CODEPAGE_874 is not set | ||
| 1089 | # CONFIG_NLS_ISO8859_8 is not set | ||
| 1090 | # CONFIG_NLS_CODEPAGE_1250 is not set | ||
| 1091 | # CONFIG_NLS_CODEPAGE_1251 is not set | ||
| 1092 | # CONFIG_NLS_ASCII is not set | ||
| 1093 | CONFIG_NLS_ISO8859_1=y | ||
| 1094 | # CONFIG_NLS_ISO8859_2 is not set | ||
| 1095 | # CONFIG_NLS_ISO8859_3 is not set | ||
| 1096 | # CONFIG_NLS_ISO8859_4 is not set | ||
| 1097 | # CONFIG_NLS_ISO8859_5 is not set | ||
| 1098 | # CONFIG_NLS_ISO8859_6 is not set | ||
| 1099 | # CONFIG_NLS_ISO8859_7 is not set | ||
| 1100 | # CONFIG_NLS_ISO8859_9 is not set | ||
| 1101 | # CONFIG_NLS_ISO8859_13 is not set | ||
| 1102 | # CONFIG_NLS_ISO8859_14 is not set | ||
| 1103 | # CONFIG_NLS_ISO8859_15 is not set | ||
| 1104 | # CONFIG_NLS_KOI8_R is not set | ||
| 1105 | # CONFIG_NLS_KOI8_U is not set | ||
| 1106 | # CONFIG_NLS_UTF8 is not set | ||
| 1107 | |||
| 1108 | # | ||
| 1109 | # Distributed Lock Manager | ||
| 1110 | # | ||
| 1111 | # CONFIG_DLM is not set | ||
| 1112 | |||
| 1113 | # | ||
| 1114 | # Profiling support | ||
| 1115 | # | ||
| 1116 | CONFIG_PROFILING=y | ||
| 1117 | CONFIG_OPROFILE=m | ||
| 1118 | |||
| 1119 | # | ||
| 1120 | # Kernel hacking | ||
| 1121 | # | ||
| 1122 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
| 1123 | # CONFIG_PRINTK_TIME is not set | ||
| 1124 | CONFIG_ENABLE_MUST_CHECK=y | ||
| 1125 | CONFIG_MAGIC_SYSRQ=y | ||
| 1126 | # CONFIG_UNUSED_SYMBOLS is not set | ||
| 1127 | CONFIG_DEBUG_FS=y | ||
| 1128 | # CONFIG_HEADERS_CHECK is not set | ||
| 1129 | CONFIG_DEBUG_KERNEL=y | ||
| 1130 | # CONFIG_DEBUG_SHIRQ is not set | ||
| 1131 | CONFIG_DETECT_SOFTLOCKUP=y | ||
| 1132 | # CONFIG_SCHEDSTATS is not set | ||
| 1133 | # CONFIG_TIMER_STATS is not set | ||
| 1134 | # CONFIG_DEBUG_SLAB is not set | ||
| 1135 | # CONFIG_DEBUG_PREEMPT is not set | ||
| 1136 | # CONFIG_DEBUG_SPINLOCK is not set | ||
| 1137 | # CONFIG_DEBUG_MUTEXES is not set | ||
| 1138 | # CONFIG_DEBUG_LOCK_ALLOC is not set | ||
| 1139 | # CONFIG_PROVE_LOCKING is not set | ||
| 1140 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
| 1141 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
| 1142 | # CONFIG_DEBUG_KOBJECT is not set | ||
| 1143 | CONFIG_DEBUG_BUGVERBOSE=y | ||
| 1144 | CONFIG_DEBUG_INFO=y | ||
| 1145 | # CONFIG_DEBUG_VM is not set | ||
| 1146 | # CONFIG_DEBUG_LIST is not set | ||
| 1147 | # CONFIG_FRAME_POINTER is not set | ||
| 1148 | CONFIG_FORCED_INLINING=y | ||
| 1149 | # CONFIG_RCU_TORTURE_TEST is not set | ||
| 1150 | # CONFIG_FAULT_INJECTION is not set | ||
| 1151 | CONFIG_SH_STANDARD_BIOS=y | ||
| 1152 | # CONFIG_EARLY_SCIF_CONSOLE is not set | ||
| 1153 | CONFIG_EARLY_PRINTK=y | ||
| 1154 | # CONFIG_DEBUG_BOOTMEM is not set | ||
| 1155 | CONFIG_DEBUG_STACKOVERFLOW=y | ||
| 1156 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
| 1157 | # CONFIG_4KSTACKS is not set | ||
| 1158 | # CONFIG_SH_KGDB is not set | ||
| 1159 | |||
| 1160 | # | ||
| 1161 | # Security options | ||
| 1162 | # | ||
| 1163 | # CONFIG_KEYS is not set | ||
| 1164 | # CONFIG_SECURITY is not set | ||
| 1165 | |||
| 1166 | # | ||
| 1167 | # Cryptographic options | ||
| 1168 | # | ||
| 1169 | CONFIG_CRYPTO=y | ||
| 1170 | CONFIG_CRYPTO_ALGAPI=y | ||
| 1171 | CONFIG_CRYPTO_BLKCIPHER=y | ||
| 1172 | CONFIG_CRYPTO_HASH=y | ||
| 1173 | CONFIG_CRYPTO_MANAGER=y | ||
| 1174 | CONFIG_CRYPTO_HMAC=y | ||
| 1175 | # CONFIG_CRYPTO_XCBC is not set | ||
| 1176 | # CONFIG_CRYPTO_NULL is not set | ||
| 1177 | # CONFIG_CRYPTO_MD4 is not set | ||
| 1178 | CONFIG_CRYPTO_MD5=y | ||
| 1179 | # CONFIG_CRYPTO_SHA1 is not set | ||
| 1180 | # CONFIG_CRYPTO_SHA256 is not set | ||
| 1181 | # CONFIG_CRYPTO_SHA512 is not set | ||
| 1182 | # CONFIG_CRYPTO_WP512 is not set | ||
| 1183 | # CONFIG_CRYPTO_TGR192 is not set | ||
| 1184 | # CONFIG_CRYPTO_GF128MUL is not set | ||
| 1185 | CONFIG_CRYPTO_ECB=m | ||
| 1186 | CONFIG_CRYPTO_CBC=y | ||
| 1187 | CONFIG_CRYPTO_PCBC=m | ||
| 1188 | # CONFIG_CRYPTO_LRW is not set | ||
| 1189 | # CONFIG_CRYPTO_CRYPTD is not set | ||
| 1190 | CONFIG_CRYPTO_DES=y | ||
| 1191 | # CONFIG_CRYPTO_FCRYPT is not set | ||
| 1192 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
| 1193 | # CONFIG_CRYPTO_TWOFISH is not set | ||
| 1194 | # CONFIG_CRYPTO_SERPENT is not set | ||
| 1195 | # CONFIG_CRYPTO_AES is not set | ||
| 1196 | # CONFIG_CRYPTO_CAST5 is not set | ||
| 1197 | # CONFIG_CRYPTO_CAST6 is not set | ||
| 1198 | # CONFIG_CRYPTO_TEA is not set | ||
| 1199 | # CONFIG_CRYPTO_ARC4 is not set | ||
| 1200 | # CONFIG_CRYPTO_KHAZAD is not set | ||
| 1201 | # CONFIG_CRYPTO_ANUBIS is not set | ||
| 1202 | # CONFIG_CRYPTO_DEFLATE is not set | ||
| 1203 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
| 1204 | # CONFIG_CRYPTO_CRC32C is not set | ||
| 1205 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
| 1206 | # CONFIG_CRYPTO_TEST is not set | ||
| 1207 | |||
| 1208 | # | ||
| 1209 | # Hardware crypto devices | ||
| 1210 | # | ||
| 1211 | |||
| 1212 | # | ||
| 1213 | # Library routines | ||
| 1214 | # | ||
| 1215 | CONFIG_BITREVERSE=y | ||
| 1216 | # CONFIG_CRC_CCITT is not set | ||
| 1217 | # CONFIG_CRC16 is not set | ||
| 1218 | # CONFIG_CRC_ITU_T is not set | ||
| 1219 | CONFIG_CRC32=y | ||
| 1220 | # CONFIG_LIBCRC32C is not set | ||
| 1221 | CONFIG_HAS_IOMEM=y | ||
| 1222 | CONFIG_HAS_IOPORT=y | ||
| 1223 | CONFIG_HAS_DMA=y | ||
diff --git a/arch/sh/configs/r7785rp_defconfig b/arch/sh/configs/r7785rp_defconfig index 0f5ec649daf8..5c29338532da 100644 --- a/arch/sh/configs/r7785rp_defconfig +++ b/arch/sh/configs/r7785rp_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.21-rc3 | 3 | # Linux kernel version: 2.6.22-rc4 |
| 4 | # Mon Mar 12 14:26:33 2007 | 4 | # Thu Jul 12 12:33:15 2007 |
| 5 | # | 5 | # |
| 6 | CONFIG_SUPERH=y | 6 | CONFIG_SUPERH=y |
| 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
| @@ -11,7 +11,9 @@ CONFIG_GENERIC_HWEIGHT=y | |||
| 11 | CONFIG_GENERIC_HARDIRQS=y | 11 | CONFIG_GENERIC_HARDIRQS=y |
| 12 | CONFIG_GENERIC_IRQ_PROBE=y | 12 | CONFIG_GENERIC_IRQ_PROBE=y |
| 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
| 14 | # CONFIG_GENERIC_TIME is not set | 14 | CONFIG_GENERIC_TIME=y |
| 15 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
| 16 | CONFIG_SYS_SUPPORTS_PCI=y | ||
| 15 | CONFIG_STACKTRACE_SUPPORT=y | 17 | CONFIG_STACKTRACE_SUPPORT=y |
| 16 | CONFIG_LOCKDEP_SUPPORT=y | 18 | CONFIG_LOCKDEP_SUPPORT=y |
| 17 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 19 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
| @@ -43,6 +45,7 @@ CONFIG_BSD_PROCESS_ACCT=y | |||
| 43 | # CONFIG_AUDIT is not set | 45 | # CONFIG_AUDIT is not set |
| 44 | CONFIG_IKCONFIG=y | 46 | CONFIG_IKCONFIG=y |
| 45 | CONFIG_IKCONFIG_PROC=y | 47 | CONFIG_IKCONFIG_PROC=y |
| 48 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 46 | # CONFIG_SYSFS_DEPRECATED is not set | 49 | # CONFIG_SYSFS_DEPRECATED is not set |
| 47 | # CONFIG_RELAY is not set | 50 | # CONFIG_RELAY is not set |
| 48 | # CONFIG_BLK_DEV_INITRD is not set | 51 | # CONFIG_BLK_DEV_INITRD is not set |
| @@ -60,13 +63,18 @@ CONFIG_BUG=y | |||
| 60 | CONFIG_ELF_CORE=y | 63 | CONFIG_ELF_CORE=y |
| 61 | CONFIG_BASE_FULL=y | 64 | CONFIG_BASE_FULL=y |
| 62 | # CONFIG_FUTEX is not set | 65 | # CONFIG_FUTEX is not set |
| 66 | CONFIG_ANON_INODES=y | ||
| 63 | # CONFIG_EPOLL is not set | 67 | # CONFIG_EPOLL is not set |
| 68 | CONFIG_SIGNALFD=y | ||
| 69 | CONFIG_TIMERFD=y | ||
| 70 | CONFIG_EVENTFD=y | ||
| 64 | CONFIG_SHMEM=y | 71 | CONFIG_SHMEM=y |
| 65 | CONFIG_SLAB=y | ||
| 66 | CONFIG_VM_EVENT_COUNTERS=y | 72 | CONFIG_VM_EVENT_COUNTERS=y |
| 73 | CONFIG_SLAB=y | ||
| 74 | # CONFIG_SLUB is not set | ||
| 75 | # CONFIG_SLOB is not set | ||
| 67 | # CONFIG_TINY_SHMEM is not set | 76 | # CONFIG_TINY_SHMEM is not set |
| 68 | CONFIG_BASE_SMALL=0 | 77 | CONFIG_BASE_SMALL=0 |
| 69 | # CONFIG_SLOB is not set | ||
| 70 | 78 | ||
| 71 | # | 79 | # |
| 72 | # Loadable module support | 80 | # Loadable module support |
| @@ -102,55 +110,11 @@ CONFIG_DEFAULT_IOSCHED="noop" | |||
| 102 | # | 110 | # |
| 103 | # System type | 111 | # System type |
| 104 | # | 112 | # |
| 105 | # CONFIG_SH_SOLUTION_ENGINE is not set | ||
| 106 | # CONFIG_SH_7751_SOLUTION_ENGINE is not set | ||
| 107 | # CONFIG_SH_7300_SOLUTION_ENGINE is not set | ||
| 108 | # CONFIG_SH_7343_SOLUTION_ENGINE is not set | ||
| 109 | # CONFIG_SH_73180_SOLUTION_ENGINE is not set | ||
| 110 | # CONFIG_SH_7751_SYSTEMH is not set | ||
| 111 | # CONFIG_SH_HP6XX is not set | ||
| 112 | # CONFIG_SH_SATURN is not set | ||
| 113 | # CONFIG_SH_DREAMCAST is not set | ||
| 114 | # CONFIG_SH_MPC1211 is not set | ||
| 115 | # CONFIG_SH_SH03 is not set | ||
| 116 | # CONFIG_SH_SECUREEDGE5410 is not set | ||
| 117 | # CONFIG_SH_HS7751RVOIP is not set | ||
| 118 | # CONFIG_SH_7710VOIPGW is not set | ||
| 119 | # CONFIG_SH_RTS7751R2D is not set | ||
| 120 | CONFIG_SH_HIGHLANDER=y | ||
| 121 | # CONFIG_SH_EDOSK7705 is not set | ||
| 122 | # CONFIG_SH_SH4202_MICRODEV is not set | ||
| 123 | # CONFIG_SH_LANDISK is not set | ||
| 124 | # CONFIG_SH_TITAN is not set | ||
| 125 | # CONFIG_SH_SHMIN is not set | ||
| 126 | # CONFIG_SH_7206_SOLUTION_ENGINE is not set | ||
| 127 | # CONFIG_SH_7619_SOLUTION_ENGINE is not set | ||
| 128 | # CONFIG_SH_UNKNOWN is not set | ||
| 129 | # CONFIG_SH_R7780RP is not set | ||
| 130 | # CONFIG_SH_R7780MP is not set | ||
| 131 | CONFIG_SH_R7785RP=y | ||
| 132 | |||
| 133 | # | ||
| 134 | # Processor selection | ||
| 135 | # | ||
| 136 | CONFIG_CPU_SH4=y | 113 | CONFIG_CPU_SH4=y |
| 137 | CONFIG_CPU_SH4A=y | 114 | CONFIG_CPU_SH4A=y |
| 138 | CONFIG_CPU_SHX2=y | 115 | CONFIG_CPU_SHX2=y |
| 139 | |||
| 140 | # | ||
| 141 | # SH-2 Processor Support | ||
| 142 | # | ||
| 143 | # CONFIG_CPU_SUBTYPE_SH7604 is not set | ||
| 144 | # CONFIG_CPU_SUBTYPE_SH7619 is not set | 116 | # CONFIG_CPU_SUBTYPE_SH7619 is not set |
| 145 | |||
| 146 | # | ||
| 147 | # SH-2A Processor Support | ||
| 148 | # | ||
| 149 | # CONFIG_CPU_SUBTYPE_SH7206 is not set | 117 | # CONFIG_CPU_SUBTYPE_SH7206 is not set |
| 150 | |||
| 151 | # | ||
| 152 | # SH-3 Processor Support | ||
| 153 | # | ||
| 154 | # CONFIG_CPU_SUBTYPE_SH7300 is not set | 118 | # CONFIG_CPU_SUBTYPE_SH7300 is not set |
| 155 | # CONFIG_CPU_SUBTYPE_SH7705 is not set | 119 | # CONFIG_CPU_SUBTYPE_SH7705 is not set |
| 156 | # CONFIG_CPU_SUBTYPE_SH7706 is not set | 120 | # CONFIG_CPU_SUBTYPE_SH7706 is not set |
| @@ -158,10 +122,7 @@ CONFIG_CPU_SHX2=y | |||
| 158 | # CONFIG_CPU_SUBTYPE_SH7708 is not set | 122 | # CONFIG_CPU_SUBTYPE_SH7708 is not set |
| 159 | # CONFIG_CPU_SUBTYPE_SH7709 is not set | 123 | # CONFIG_CPU_SUBTYPE_SH7709 is not set |
| 160 | # CONFIG_CPU_SUBTYPE_SH7710 is not set | 124 | # CONFIG_CPU_SUBTYPE_SH7710 is not set |
| 161 | 125 | # CONFIG_CPU_SUBTYPE_SH7712 is not set | |
| 162 | # | ||
| 163 | # SH-4 Processor Support | ||
| 164 | # | ||
| 165 | # CONFIG_CPU_SUBTYPE_SH7750 is not set | 126 | # CONFIG_CPU_SUBTYPE_SH7750 is not set |
| 166 | # CONFIG_CPU_SUBTYPE_SH7091 is not set | 127 | # CONFIG_CPU_SUBTYPE_SH7091 is not set |
| 167 | # CONFIG_CPU_SUBTYPE_SH7750R is not set | 128 | # CONFIG_CPU_SUBTYPE_SH7750R is not set |
| @@ -170,23 +131,12 @@ CONFIG_CPU_SHX2=y | |||
| 170 | # CONFIG_CPU_SUBTYPE_SH7751R is not set | 131 | # CONFIG_CPU_SUBTYPE_SH7751R is not set |
| 171 | # CONFIG_CPU_SUBTYPE_SH7760 is not set | 132 | # CONFIG_CPU_SUBTYPE_SH7760 is not set |
| 172 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set | 133 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set |
| 173 | |||
| 174 | # | ||
| 175 | # ST40 Processor Support | ||
| 176 | # | ||
| 177 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set | 134 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set |
| 178 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set | 135 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set |
| 179 | |||
| 180 | # | ||
| 181 | # SH-4A Processor Support | ||
| 182 | # | ||
| 183 | # CONFIG_CPU_SUBTYPE_SH7770 is not set | 136 | # CONFIG_CPU_SUBTYPE_SH7770 is not set |
| 184 | # CONFIG_CPU_SUBTYPE_SH7780 is not set | 137 | # CONFIG_CPU_SUBTYPE_SH7780 is not set |
| 185 | CONFIG_CPU_SUBTYPE_SH7785=y | 138 | CONFIG_CPU_SUBTYPE_SH7785=y |
| 186 | 139 | # CONFIG_CPU_SUBTYPE_SHX3 is not set | |
| 187 | # | ||
| 188 | # SH4AL-DSP Processor Support | ||
| 189 | # | ||
| 190 | # CONFIG_CPU_SUBTYPE_SH73180 is not set | 140 | # CONFIG_CPU_SUBTYPE_SH73180 is not set |
| 191 | # CONFIG_CPU_SUBTYPE_SH7343 is not set | 141 | # CONFIG_CPU_SUBTYPE_SH7343 is not set |
| 192 | # CONFIG_CPU_SUBTYPE_SH7722 is not set | 142 | # CONFIG_CPU_SUBTYPE_SH7722 is not set |
| @@ -194,6 +144,7 @@ CONFIG_CPU_SUBTYPE_SH7785=y | |||
| 194 | # | 144 | # |
| 195 | # Memory management options | 145 | # Memory management options |
| 196 | # | 146 | # |
| 147 | CONFIG_QUICKLIST=y | ||
| 197 | CONFIG_MMU=y | 148 | CONFIG_MMU=y |
| 198 | CONFIG_PAGE_OFFSET=0x80000000 | 149 | CONFIG_PAGE_OFFSET=0x80000000 |
| 199 | CONFIG_MEMORY_START=0x08000000 | 150 | CONFIG_MEMORY_START=0x08000000 |
| @@ -201,6 +152,12 @@ CONFIG_MEMORY_SIZE=0x08000000 | |||
| 201 | CONFIG_32BIT=y | 152 | CONFIG_32BIT=y |
| 202 | # CONFIG_X2TLB is not set | 153 | # CONFIG_X2TLB is not set |
| 203 | CONFIG_VSYSCALL=y | 154 | CONFIG_VSYSCALL=y |
| 155 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
| 156 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
| 157 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y | ||
| 158 | CONFIG_MAX_ACTIVE_REGIONS=1 | ||
| 159 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
| 160 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | ||
| 204 | CONFIG_PAGE_SIZE_4KB=y | 161 | CONFIG_PAGE_SIZE_4KB=y |
| 205 | # CONFIG_PAGE_SIZE_8KB is not set | 162 | # CONFIG_PAGE_SIZE_8KB is not set |
| 206 | # CONFIG_PAGE_SIZE_64KB is not set | 163 | # CONFIG_PAGE_SIZE_64KB is not set |
| @@ -215,17 +172,17 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 215 | # CONFIG_SPARSEMEM_MANUAL is not set | 172 | # CONFIG_SPARSEMEM_MANUAL is not set |
| 216 | CONFIG_FLATMEM=y | 173 | CONFIG_FLATMEM=y |
| 217 | CONFIG_FLAT_NODE_MEM_MAP=y | 174 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 218 | # CONFIG_SPARSEMEM_STATIC is not set | 175 | CONFIG_SPARSEMEM_STATIC=y |
| 219 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 176 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
| 220 | # CONFIG_RESOURCES_64BIT is not set | 177 | # CONFIG_RESOURCES_64BIT is not set |
| 221 | CONFIG_ZONE_DMA_FLAG=0 | 178 | CONFIG_ZONE_DMA_FLAG=0 |
| 179 | CONFIG_NR_QUICK=2 | ||
| 222 | 180 | ||
| 223 | # | 181 | # |
| 224 | # Cache configuration | 182 | # Cache configuration |
| 225 | # | 183 | # |
| 226 | # CONFIG_SH_DIRECT_MAPPED is not set | 184 | # CONFIG_SH_DIRECT_MAPPED is not set |
| 227 | # CONFIG_SH_WRITETHROUGH is not set | 185 | # CONFIG_SH_WRITETHROUGH is not set |
| 228 | # CONFIG_SH_OCRAM is not set | ||
| 229 | 186 | ||
| 230 | # | 187 | # |
| 231 | # Processor features | 188 | # Processor features |
| @@ -241,12 +198,22 @@ CONFIG_CPU_HAS_SR_RB=y | |||
| 241 | CONFIG_CPU_HAS_PTEA=y | 198 | CONFIG_CPU_HAS_PTEA=y |
| 242 | 199 | ||
| 243 | # | 200 | # |
| 201 | # Board support | ||
| 202 | # | ||
| 203 | CONFIG_SH_HIGHLANDER=y | ||
| 204 | # CONFIG_SH_R7780RP is not set | ||
| 205 | # CONFIG_SH_R7780MP is not set | ||
| 206 | CONFIG_SH_R7785RP=y | ||
| 207 | |||
| 208 | # | ||
| 244 | # Timer and clock configuration | 209 | # Timer and clock configuration |
| 245 | # | 210 | # |
| 246 | CONFIG_SH_TMU=y | 211 | CONFIG_SH_TMU=y |
| 247 | CONFIG_SH_TIMER_IRQ=28 | 212 | CONFIG_SH_TIMER_IRQ=28 |
| 248 | CONFIG_NO_IDLE_HZ=y | ||
| 249 | CONFIG_SH_PCLK_FREQ=50000000 | 213 | CONFIG_SH_PCLK_FREQ=50000000 |
| 214 | # CONFIG_TICK_ONESHOT is not set | ||
| 215 | # CONFIG_NO_HZ is not set | ||
| 216 | # CONFIG_HIGH_RES_TIMERS is not set | ||
| 250 | 217 | ||
| 251 | # | 218 | # |
| 252 | # CPU Frequency scaling | 219 | # CPU Frequency scaling |
| @@ -261,7 +228,6 @@ CONFIG_SH_PCLK_FREQ=50000000 | |||
| 261 | # | 228 | # |
| 262 | # Companion Chips | 229 | # Companion Chips |
| 263 | # | 230 | # |
| 264 | # CONFIG_HD6446X_SERIES is not set | ||
| 265 | 231 | ||
| 266 | # | 232 | # |
| 267 | # Additional SuperH Device Drivers | 233 | # Additional SuperH Device Drivers |
| @@ -278,7 +244,7 @@ CONFIG_HZ_250=y | |||
| 278 | # CONFIG_HZ_1000 is not set | 244 | # CONFIG_HZ_1000 is not set |
| 279 | CONFIG_HZ=250 | 245 | CONFIG_HZ=250 |
| 280 | CONFIG_KEXEC=y | 246 | CONFIG_KEXEC=y |
| 281 | # CONFIG_SMP is not set | 247 | # CONFIG_CRASH_DUMP is not set |
| 282 | # CONFIG_PREEMPT_NONE is not set | 248 | # CONFIG_PREEMPT_NONE is not set |
| 283 | # CONFIG_PREEMPT_VOLUNTARY is not set | 249 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 284 | CONFIG_PREEMPT=y | 250 | CONFIG_PREEMPT=y |
| @@ -300,31 +266,22 @@ CONFIG_PCI=y | |||
| 300 | CONFIG_SH_PCIDMA_NONCOHERENT=y | 266 | CONFIG_SH_PCIDMA_NONCOHERENT=y |
| 301 | CONFIG_PCI_AUTO=y | 267 | CONFIG_PCI_AUTO=y |
| 302 | CONFIG_PCI_AUTO_UPDATE_RESOURCES=y | 268 | CONFIG_PCI_AUTO_UPDATE_RESOURCES=y |
| 269 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
| 303 | # CONFIG_PCI_DEBUG is not set | 270 | # CONFIG_PCI_DEBUG is not set |
| 304 | 271 | ||
| 305 | # | 272 | # |
| 306 | # PCCARD (PCMCIA/CardBus) support | 273 | # PCCARD (PCMCIA/CardBus) support |
| 307 | # | 274 | # |
| 308 | # CONFIG_PCCARD is not set | 275 | # CONFIG_PCCARD is not set |
| 309 | |||
| 310 | # | ||
| 311 | # PCI Hotplug Support | ||
| 312 | # | ||
| 313 | # CONFIG_HOTPLUG_PCI is not set | 276 | # CONFIG_HOTPLUG_PCI is not set |
| 314 | 277 | ||
| 315 | # | 278 | # |
| 316 | # Executable file formats | 279 | # Executable file formats |
| 317 | # | 280 | # |
| 318 | CONFIG_BINFMT_ELF=y | 281 | CONFIG_BINFMT_ELF=y |
| 319 | # CONFIG_BINFMT_FLAT is not set | ||
| 320 | # CONFIG_BINFMT_MISC is not set | 282 | # CONFIG_BINFMT_MISC is not set |
| 321 | 283 | ||
| 322 | # | 284 | # |
| 323 | # Power management options (EXPERIMENTAL) | ||
| 324 | # | ||
| 325 | # CONFIG_PM is not set | ||
| 326 | |||
| 327 | # | ||
| 328 | # Networking | 285 | # Networking |
| 329 | # | 286 | # |
| 330 | CONFIG_NET=y | 287 | CONFIG_NET=y |
| @@ -332,7 +289,6 @@ CONFIG_NET=y | |||
| 332 | # | 289 | # |
| 333 | # Networking options | 290 | # Networking options |
| 334 | # | 291 | # |
| 335 | # CONFIG_NETDEBUG is not set | ||
| 336 | CONFIG_PACKET=y | 292 | CONFIG_PACKET=y |
| 337 | # CONFIG_PACKET_MMAP is not set | 293 | # CONFIG_PACKET_MMAP is not set |
| 338 | CONFIG_UNIX=y | 294 | CONFIG_UNIX=y |
| @@ -377,20 +333,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
| 377 | # CONFIG_INET6_TUNNEL is not set | 333 | # CONFIG_INET6_TUNNEL is not set |
| 378 | # CONFIG_NETWORK_SECMARK is not set | 334 | # CONFIG_NETWORK_SECMARK is not set |
| 379 | # CONFIG_NETFILTER is not set | 335 | # CONFIG_NETFILTER is not set |
| 380 | |||
| 381 | # | ||
| 382 | # DCCP Configuration (EXPERIMENTAL) | ||
| 383 | # | ||
| 384 | # CONFIG_IP_DCCP is not set | 336 | # CONFIG_IP_DCCP is not set |
| 385 | |||
| 386 | # | ||
| 387 | # SCTP Configuration (EXPERIMENTAL) | ||
| 388 | # | ||
| 389 | # CONFIG_IP_SCTP is not set | 337 | # CONFIG_IP_SCTP is not set |
| 390 | |||
| 391 | # | ||
| 392 | # TIPC Configuration (EXPERIMENTAL) | ||
| 393 | # | ||
| 394 | # CONFIG_TIPC is not set | 338 | # CONFIG_TIPC is not set |
| 395 | # CONFIG_ATM is not set | 339 | # CONFIG_ATM is not set |
| 396 | CONFIG_BRIDGE=m | 340 | CONFIG_BRIDGE=m |
| @@ -417,8 +361,16 @@ CONFIG_LLC=m | |||
| 417 | # CONFIG_HAMRADIO is not set | 361 | # CONFIG_HAMRADIO is not set |
| 418 | # CONFIG_IRDA is not set | 362 | # CONFIG_IRDA is not set |
| 419 | # CONFIG_BT is not set | 363 | # CONFIG_BT is not set |
| 420 | # CONFIG_IEEE80211 is not set | 364 | # CONFIG_AF_RXRPC is not set |
| 365 | |||
| 366 | # | ||
| 367 | # Wireless | ||
| 368 | # | ||
| 369 | # CONFIG_CFG80211 is not set | ||
| 421 | CONFIG_WIRELESS_EXT=y | 370 | CONFIG_WIRELESS_EXT=y |
| 371 | # CONFIG_MAC80211 is not set | ||
| 372 | # CONFIG_IEEE80211 is not set | ||
| 373 | # CONFIG_RFKILL is not set | ||
| 422 | 374 | ||
| 423 | # | 375 | # |
| 424 | # Device Drivers | 376 | # Device Drivers |
| @@ -438,10 +390,6 @@ CONFIG_FW_LOADER=m | |||
| 438 | # Connector - unified userspace <-> kernelspace linker | 390 | # Connector - unified userspace <-> kernelspace linker |
| 439 | # | 391 | # |
| 440 | # CONFIG_CONNECTOR is not set | 392 | # CONFIG_CONNECTOR is not set |
| 441 | |||
| 442 | # | ||
| 443 | # Memory Technology Devices (MTD) | ||
| 444 | # | ||
| 445 | # CONFIG_MTD is not set | 393 | # CONFIG_MTD is not set |
| 446 | 394 | ||
| 447 | # | 395 | # |
| @@ -475,12 +423,10 @@ CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | |||
| 475 | # | 423 | # |
| 476 | # Misc devices | 424 | # Misc devices |
| 477 | # | 425 | # |
| 426 | # CONFIG_PHANTOM is not set | ||
| 478 | # CONFIG_SGI_IOC4 is not set | 427 | # CONFIG_SGI_IOC4 is not set |
| 479 | # CONFIG_TIFM_CORE is not set | 428 | # CONFIG_TIFM_CORE is not set |
| 480 | 429 | # CONFIG_BLINK is not set | |
| 481 | # | ||
| 482 | # ATA/ATAPI/MFM/RLL support | ||
| 483 | # | ||
| 484 | # CONFIG_IDE is not set | 430 | # CONFIG_IDE is not set |
| 485 | 431 | ||
| 486 | # | 432 | # |
| @@ -509,6 +455,7 @@ CONFIG_CHR_DEV_SG=m | |||
| 509 | # CONFIG_SCSI_CONSTANTS is not set | 455 | # CONFIG_SCSI_CONSTANTS is not set |
| 510 | # CONFIG_SCSI_LOGGING is not set | 456 | # CONFIG_SCSI_LOGGING is not set |
| 511 | # CONFIG_SCSI_SCAN_ASYNC is not set | 457 | # CONFIG_SCSI_SCAN_ASYNC is not set |
| 458 | CONFIG_SCSI_WAIT_SCAN=m | ||
| 512 | 459 | ||
| 513 | # | 460 | # |
| 514 | # SCSI Transports | 461 | # SCSI Transports |
| @@ -554,10 +501,6 @@ CONFIG_CHR_DEV_SG=m | |||
| 554 | # CONFIG_SCSI_NSP32 is not set | 501 | # CONFIG_SCSI_NSP32 is not set |
| 555 | # CONFIG_SCSI_DEBUG is not set | 502 | # CONFIG_SCSI_DEBUG is not set |
| 556 | # CONFIG_SCSI_SRP is not set | 503 | # CONFIG_SCSI_SRP is not set |
| 557 | |||
| 558 | # | ||
| 559 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
| 560 | # | ||
| 561 | CONFIG_ATA=y | 504 | CONFIG_ATA=y |
| 562 | # CONFIG_ATA_NONSTANDARD is not set | 505 | # CONFIG_ATA_NONSTANDARD is not set |
| 563 | # CONFIG_SATA_AHCI is not set | 506 | # CONFIG_SATA_AHCI is not set |
| @@ -580,6 +523,7 @@ CONFIG_SATA_SIL=y | |||
| 580 | # CONFIG_PATA_AMD is not set | 523 | # CONFIG_PATA_AMD is not set |
| 581 | # CONFIG_PATA_ARTOP is not set | 524 | # CONFIG_PATA_ARTOP is not set |
| 582 | # CONFIG_PATA_ATIIXP is not set | 525 | # CONFIG_PATA_ATIIXP is not set |
| 526 | # CONFIG_PATA_CMD640_PCI is not set | ||
| 583 | # CONFIG_PATA_CMD64X is not set | 527 | # CONFIG_PATA_CMD64X is not set |
| 584 | # CONFIG_PATA_CS5520 is not set | 528 | # CONFIG_PATA_CS5520 is not set |
| 585 | # CONFIG_PATA_CS5530 is not set | 529 | # CONFIG_PATA_CS5530 is not set |
| @@ -629,6 +573,7 @@ CONFIG_PATA_PLATFORM=y | |||
| 629 | # | 573 | # |
| 630 | # IEEE 1394 (FireWire) support | 574 | # IEEE 1394 (FireWire) support |
| 631 | # | 575 | # |
| 576 | # CONFIG_FIREWIRE is not set | ||
| 632 | # CONFIG_IEEE1394 is not set | 577 | # CONFIG_IEEE1394 is not set |
| 633 | 578 | ||
| 634 | # | 579 | # |
| @@ -644,15 +589,7 @@ CONFIG_NETDEVICES=y | |||
| 644 | # CONFIG_BONDING is not set | 589 | # CONFIG_BONDING is not set |
| 645 | # CONFIG_EQUALIZER is not set | 590 | # CONFIG_EQUALIZER is not set |
| 646 | # CONFIG_TUN is not set | 591 | # CONFIG_TUN is not set |
| 647 | |||
| 648 | # | ||
| 649 | # ARCnet devices | ||
| 650 | # | ||
| 651 | # CONFIG_ARCNET is not set | 592 | # CONFIG_ARCNET is not set |
| 652 | |||
| 653 | # | ||
| 654 | # PHY device support | ||
| 655 | # | ||
| 656 | # CONFIG_PHYLIB is not set | 593 | # CONFIG_PHYLIB is not set |
| 657 | 594 | ||
| 658 | # | 595 | # |
| @@ -673,10 +610,7 @@ CONFIG_MII=y | |||
| 673 | # CONFIG_NET_TULIP is not set | 610 | # CONFIG_NET_TULIP is not set |
| 674 | # CONFIG_HP100 is not set | 611 | # CONFIG_HP100 is not set |
| 675 | # CONFIG_NET_PCI is not set | 612 | # CONFIG_NET_PCI is not set |
| 676 | 613 | CONFIG_NETDEV_1000=y | |
| 677 | # | ||
| 678 | # Ethernet (1000 Mbit) | ||
| 679 | # | ||
| 680 | # CONFIG_ACENIC is not set | 614 | # CONFIG_ACENIC is not set |
| 681 | # CONFIG_DL2K is not set | 615 | # CONFIG_DL2K is not set |
| 682 | # CONFIG_E1000 is not set | 616 | # CONFIG_E1000 is not set |
| @@ -689,55 +623,26 @@ CONFIG_R8169=y | |||
| 689 | # CONFIG_SKGE is not set | 623 | # CONFIG_SKGE is not set |
| 690 | # CONFIG_SKY2 is not set | 624 | # CONFIG_SKY2 is not set |
| 691 | # CONFIG_SK98LIN is not set | 625 | # CONFIG_SK98LIN is not set |
| 626 | # CONFIG_VIA_VELOCITY is not set | ||
| 692 | # CONFIG_TIGON3 is not set | 627 | # CONFIG_TIGON3 is not set |
| 693 | # CONFIG_BNX2 is not set | 628 | # CONFIG_BNX2 is not set |
| 694 | # CONFIG_QLA3XXX is not set | 629 | # CONFIG_QLA3XXX is not set |
| 695 | # CONFIG_ATL1 is not set | 630 | # CONFIG_ATL1 is not set |
| 696 | 631 | CONFIG_NETDEV_10000=y | |
| 697 | # | ||
| 698 | # Ethernet (10000 Mbit) | ||
| 699 | # | ||
| 700 | # CONFIG_CHELSIO_T1 is not set | 632 | # CONFIG_CHELSIO_T1 is not set |
| 701 | # CONFIG_CHELSIO_T3 is not set | 633 | # CONFIG_CHELSIO_T3 is not set |
| 702 | # CONFIG_IXGB is not set | 634 | # CONFIG_IXGB is not set |
| 703 | # CONFIG_S2IO is not set | 635 | # CONFIG_S2IO is not set |
| 704 | # CONFIG_MYRI10GE is not set | 636 | # CONFIG_MYRI10GE is not set |
| 705 | # CONFIG_NETXEN_NIC is not set | 637 | # CONFIG_NETXEN_NIC is not set |
| 706 | 638 | # CONFIG_MLX4_CORE is not set | |
| 707 | # | ||
| 708 | # Token Ring devices | ||
| 709 | # | ||
| 710 | # CONFIG_TR is not set | 639 | # CONFIG_TR is not set |
| 711 | 640 | ||
| 712 | # | 641 | # |
| 713 | # Wireless LAN (non-hamradio) | 642 | # Wireless LAN |
| 714 | # | ||
| 715 | CONFIG_NET_RADIO=y | ||
| 716 | # CONFIG_NET_WIRELESS_RTNETLINK is not set | ||
| 717 | |||
| 718 | # | ||
| 719 | # Obsolete Wireless cards support (pre-802.11) | ||
| 720 | # | ||
| 721 | # CONFIG_STRIP is not set | ||
| 722 | |||
| 723 | # | ||
| 724 | # Wireless 802.11b ISA/PCI cards support | ||
| 725 | # | ||
| 726 | # CONFIG_IPW2100 is not set | ||
| 727 | # CONFIG_IPW2200 is not set | ||
| 728 | # CONFIG_HERMES is not set | ||
| 729 | # CONFIG_ATMEL is not set | ||
| 730 | |||
| 731 | # | ||
| 732 | # Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support | ||
| 733 | # | ||
| 734 | # CONFIG_PRISM54 is not set | ||
| 735 | # CONFIG_HOSTAP is not set | ||
| 736 | CONFIG_NET_WIRELESS=y | ||
| 737 | |||
| 738 | # | ||
| 739 | # Wan interfaces | ||
| 740 | # | 643 | # |
| 644 | # CONFIG_WLAN_PRE80211 is not set | ||
| 645 | # CONFIG_WLAN_80211 is not set | ||
| 741 | # CONFIG_WAN is not set | 646 | # CONFIG_WAN is not set |
| 742 | # CONFIG_FDDI is not set | 647 | # CONFIG_FDDI is not set |
| 743 | # CONFIG_HIPPI is not set | 648 | # CONFIG_HIPPI is not set |
| @@ -789,6 +694,7 @@ CONFIG_KEYBOARD_ATKBD=y | |||
| 789 | # CONFIG_KEYBOARD_STOWAWAY is not set | 694 | # CONFIG_KEYBOARD_STOWAWAY is not set |
| 790 | # CONFIG_INPUT_MOUSE is not set | 695 | # CONFIG_INPUT_MOUSE is not set |
| 791 | # CONFIG_INPUT_JOYSTICK is not set | 696 | # CONFIG_INPUT_JOYSTICK is not set |
| 697 | # CONFIG_INPUT_TABLET is not set | ||
| 792 | # CONFIG_INPUT_TOUCHSCREEN is not set | 698 | # CONFIG_INPUT_TOUCHSCREEN is not set |
| 793 | # CONFIG_INPUT_MISC is not set | 699 | # CONFIG_INPUT_MISC is not set |
| 794 | 700 | ||
| @@ -831,14 +737,8 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 831 | # IPMI | 737 | # IPMI |
| 832 | # | 738 | # |
| 833 | # CONFIG_IPMI_HANDLER is not set | 739 | # CONFIG_IPMI_HANDLER is not set |
| 834 | |||
| 835 | # | ||
| 836 | # Watchdog Cards | ||
| 837 | # | ||
| 838 | # CONFIG_WATCHDOG is not set | 740 | # CONFIG_WATCHDOG is not set |
| 839 | CONFIG_HW_RANDOM=y | 741 | CONFIG_HW_RANDOM=y |
| 840 | # CONFIG_GEN_RTC is not set | ||
| 841 | # CONFIG_DTLK is not set | ||
| 842 | # CONFIG_R3964 is not set | 742 | # CONFIG_R3964 is not set |
| 843 | # CONFIG_APPLICOM is not set | 743 | # CONFIG_APPLICOM is not set |
| 844 | # CONFIG_DRM is not set | 744 | # CONFIG_DRM is not set |
| @@ -848,10 +748,7 @@ CONFIG_HW_RANDOM=y | |||
| 848 | # TPM devices | 748 | # TPM devices |
| 849 | # | 749 | # |
| 850 | # CONFIG_TCG_TPM is not set | 750 | # CONFIG_TCG_TPM is not set |
| 851 | 751 | CONFIG_DEVPORT=y | |
| 852 | # | ||
| 853 | # I2C support | ||
| 854 | # | ||
| 855 | # CONFIG_I2C is not set | 752 | # CONFIG_I2C is not set |
| 856 | 753 | ||
| 857 | # | 754 | # |
| @@ -864,16 +761,15 @@ CONFIG_HW_RANDOM=y | |||
| 864 | # Dallas's 1-wire bus | 761 | # Dallas's 1-wire bus |
| 865 | # | 762 | # |
| 866 | # CONFIG_W1 is not set | 763 | # CONFIG_W1 is not set |
| 867 | |||
| 868 | # | ||
| 869 | # Hardware Monitoring support | ||
| 870 | # | ||
| 871 | CONFIG_HWMON=y | 764 | CONFIG_HWMON=y |
| 872 | # CONFIG_HWMON_VID is not set | 765 | # CONFIG_HWMON_VID is not set |
| 873 | # CONFIG_SENSORS_ABITUGURU is not set | 766 | # CONFIG_SENSORS_ABITUGURU is not set |
| 874 | # CONFIG_SENSORS_F71805F is not set | 767 | # CONFIG_SENSORS_F71805F is not set |
| 875 | # CONFIG_SENSORS_PC87427 is not set | 768 | # CONFIG_SENSORS_PC87427 is not set |
| 769 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
| 770 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
| 876 | # CONFIG_SENSORS_VT1211 is not set | 771 | # CONFIG_SENSORS_VT1211 is not set |
| 772 | # CONFIG_SENSORS_W83627HF is not set | ||
| 877 | # CONFIG_HWMON_DEBUG_CHIP is not set | 773 | # CONFIG_HWMON_DEBUG_CHIP is not set |
| 878 | 774 | ||
| 879 | # | 775 | # |
| @@ -885,22 +781,30 @@ CONFIG_HWMON=y | |||
| 885 | # Multimedia devices | 781 | # Multimedia devices |
| 886 | # | 782 | # |
| 887 | # CONFIG_VIDEO_DEV is not set | 783 | # CONFIG_VIDEO_DEV is not set |
| 784 | # CONFIG_DVB_CORE is not set | ||
| 785 | # CONFIG_DAB is not set | ||
| 888 | 786 | ||
| 889 | # | 787 | # |
| 890 | # Digital Video Broadcasting Devices | 788 | # Graphics support |
| 891 | # | 789 | # |
| 892 | # CONFIG_DVB is not set | 790 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
| 893 | 791 | ||
| 894 | # | 792 | # |
| 895 | # Graphics support | 793 | # Display device support |
| 896 | # | 794 | # |
| 897 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 795 | # CONFIG_DISPLAY_SUPPORT is not set |
| 796 | # CONFIG_VGASTATE is not set | ||
| 898 | CONFIG_FB=y | 797 | CONFIG_FB=y |
| 899 | # CONFIG_FIRMWARE_EDID is not set | 798 | # CONFIG_FIRMWARE_EDID is not set |
| 900 | # CONFIG_FB_DDC is not set | 799 | # CONFIG_FB_DDC is not set |
| 901 | # CONFIG_FB_CFB_FILLRECT is not set | 800 | # CONFIG_FB_CFB_FILLRECT is not set |
| 902 | # CONFIG_FB_CFB_COPYAREA is not set | 801 | # CONFIG_FB_CFB_COPYAREA is not set |
| 903 | # CONFIG_FB_CFB_IMAGEBLIT is not set | 802 | # CONFIG_FB_CFB_IMAGEBLIT is not set |
| 803 | # CONFIG_FB_SYS_FILLRECT is not set | ||
| 804 | # CONFIG_FB_SYS_COPYAREA is not set | ||
| 805 | # CONFIG_FB_SYS_IMAGEBLIT is not set | ||
| 806 | # CONFIG_FB_SYS_FOPS is not set | ||
| 807 | CONFIG_FB_DEFERRED_IO=y | ||
| 904 | # CONFIG_FB_SVGALIB is not set | 808 | # CONFIG_FB_SVGALIB is not set |
| 905 | # CONFIG_FB_MACMODES is not set | 809 | # CONFIG_FB_MACMODES is not set |
| 906 | # CONFIG_FB_BACKLIGHT is not set | 810 | # CONFIG_FB_BACKLIGHT is not set |
| @@ -908,7 +812,7 @@ CONFIG_FB=y | |||
| 908 | # CONFIG_FB_TILEBLITTING is not set | 812 | # CONFIG_FB_TILEBLITTING is not set |
| 909 | 813 | ||
| 910 | # | 814 | # |
| 911 | # Frambuffer hardware drivers | 815 | # Frame buffer hardware drivers |
| 912 | # | 816 | # |
| 913 | # CONFIG_FB_CIRRUS is not set | 817 | # CONFIG_FB_CIRRUS is not set |
| 914 | # CONFIG_FB_PM2 is not set | 818 | # CONFIG_FB_PM2 is not set |
| @@ -930,12 +834,11 @@ CONFIG_FB=y | |||
| 930 | # CONFIG_FB_KYRO is not set | 834 | # CONFIG_FB_KYRO is not set |
| 931 | # CONFIG_FB_3DFX is not set | 835 | # CONFIG_FB_3DFX is not set |
| 932 | # CONFIG_FB_VOODOO1 is not set | 836 | # CONFIG_FB_VOODOO1 is not set |
| 837 | # CONFIG_FB_VT8623 is not set | ||
| 933 | # CONFIG_FB_TRIDENT is not set | 838 | # CONFIG_FB_TRIDENT is not set |
| 839 | # CONFIG_FB_ARK is not set | ||
| 840 | # CONFIG_FB_PM3 is not set | ||
| 934 | # CONFIG_FB_VIRTUAL is not set | 841 | # CONFIG_FB_VIRTUAL is not set |
| 935 | |||
| 936 | # | ||
| 937 | # Logo configuration | ||
| 938 | # | ||
| 939 | # CONFIG_LOGO is not set | 842 | # CONFIG_LOGO is not set |
| 940 | 843 | ||
| 941 | # | 844 | # |
| @@ -952,13 +855,10 @@ CONFIG_SOUND=m | |||
| 952 | # Open Sound System | 855 | # Open Sound System |
| 953 | # | 856 | # |
| 954 | CONFIG_SOUND_PRIME=m | 857 | CONFIG_SOUND_PRIME=m |
| 955 | # CONFIG_OBSOLETE_OSS is not set | 858 | # CONFIG_OSS_OBSOLETE is not set |
| 956 | # CONFIG_SOUND_BT878 is not set | ||
| 957 | # CONFIG_SOUND_ICH is not set | ||
| 958 | # CONFIG_SOUND_TRIDENT is not set | 859 | # CONFIG_SOUND_TRIDENT is not set |
| 959 | # CONFIG_SOUND_MSNDCLAS is not set | 860 | # CONFIG_SOUND_MSNDCLAS is not set |
| 960 | # CONFIG_SOUND_MSNDPIN is not set | 861 | # CONFIG_SOUND_MSNDPIN is not set |
| 961 | # CONFIG_SOUND_VIA82CXXX is not set | ||
| 962 | 862 | ||
| 963 | # | 863 | # |
| 964 | # HID Devices | 864 | # HID Devices |
| @@ -982,10 +882,6 @@ CONFIG_USB_ARCH_HAS_EHCI=y | |||
| 982 | # USB Gadget Support | 882 | # USB Gadget Support |
| 983 | # | 883 | # |
| 984 | # CONFIG_USB_GADGET is not set | 884 | # CONFIG_USB_GADGET is not set |
| 985 | |||
| 986 | # | ||
| 987 | # MMC/SD Card support | ||
| 988 | # | ||
| 989 | # CONFIG_MMC is not set | 885 | # CONFIG_MMC is not set |
| 990 | 886 | ||
| 991 | # | 887 | # |
| @@ -1026,18 +922,30 @@ CONFIG_RTC_INTF_SYSFS=y | |||
| 1026 | CONFIG_RTC_INTF_PROC=y | 922 | CONFIG_RTC_INTF_PROC=y |
| 1027 | CONFIG_RTC_INTF_DEV=y | 923 | CONFIG_RTC_INTF_DEV=y |
| 1028 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | 924 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set |
| 925 | # CONFIG_RTC_DRV_TEST is not set | ||
| 926 | |||
| 927 | # | ||
| 928 | # I2C RTC drivers | ||
| 929 | # | ||
| 1029 | 930 | ||
| 1030 | # | 931 | # |
| 1031 | # RTC drivers | 932 | # SPI RTC drivers |
| 933 | # | ||
| 934 | |||
| 935 | # | ||
| 936 | # Platform RTC drivers | ||
| 1032 | # | 937 | # |
| 1033 | # CONFIG_RTC_DRV_DS1553 is not set | 938 | # CONFIG_RTC_DRV_DS1553 is not set |
| 1034 | # CONFIG_RTC_DRV_DS1742 is not set | 939 | # CONFIG_RTC_DRV_DS1742 is not set |
| 1035 | # CONFIG_RTC_DRV_M48T86 is not set | 940 | # CONFIG_RTC_DRV_M48T86 is not set |
| 1036 | CONFIG_RTC_DRV_SH=y | ||
| 1037 | # CONFIG_RTC_DRV_TEST is not set | ||
| 1038 | # CONFIG_RTC_DRV_V3020 is not set | 941 | # CONFIG_RTC_DRV_V3020 is not set |
| 1039 | 942 | ||
| 1040 | # | 943 | # |
| 944 | # on-CPU RTC drivers | ||
| 945 | # | ||
| 946 | CONFIG_RTC_DRV_SH=y | ||
| 947 | |||
| 948 | # | ||
| 1041 | # DMA Engine support | 949 | # DMA Engine support |
| 1042 | # | 950 | # |
| 1043 | # CONFIG_DMA_ENGINE is not set | 951 | # CONFIG_DMA_ENGINE is not set |
| @@ -1051,14 +959,6 @@ CONFIG_RTC_DRV_SH=y | |||
| 1051 | # | 959 | # |
| 1052 | 960 | ||
| 1053 | # | 961 | # |
| 1054 | # Auxiliary Display support | ||
| 1055 | # | ||
| 1056 | |||
| 1057 | # | ||
| 1058 | # Virtualization | ||
| 1059 | # | ||
| 1060 | |||
| 1061 | # | ||
| 1062 | # File systems | 962 | # File systems |
| 1063 | # | 963 | # |
| 1064 | CONFIG_EXT2_FS=y | 964 | CONFIG_EXT2_FS=y |
| @@ -1157,6 +1057,7 @@ CONFIG_EXPORTFS=y | |||
| 1157 | CONFIG_NFS_COMMON=y | 1057 | CONFIG_NFS_COMMON=y |
| 1158 | CONFIG_SUNRPC=y | 1058 | CONFIG_SUNRPC=y |
| 1159 | CONFIG_SUNRPC_GSS=y | 1059 | CONFIG_SUNRPC_GSS=y |
| 1060 | # CONFIG_SUNRPC_BIND34 is not set | ||
| 1160 | CONFIG_RPCSEC_GSS_KRB5=y | 1061 | CONFIG_RPCSEC_GSS_KRB5=y |
| 1161 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1062 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
| 1162 | # CONFIG_SMB_FS is not set | 1063 | # CONFIG_SMB_FS is not set |
| @@ -1239,7 +1140,6 @@ CONFIG_DEBUG_FS=y | |||
| 1239 | # CONFIG_HEADERS_CHECK is not set | 1140 | # CONFIG_HEADERS_CHECK is not set |
| 1240 | CONFIG_DEBUG_KERNEL=y | 1141 | CONFIG_DEBUG_KERNEL=y |
| 1241 | # CONFIG_DEBUG_SHIRQ is not set | 1142 | # CONFIG_DEBUG_SHIRQ is not set |
| 1242 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 1243 | # CONFIG_DETECT_SOFTLOCKUP is not set | 1143 | # CONFIG_DETECT_SOFTLOCKUP is not set |
| 1244 | # CONFIG_SCHEDSTATS is not set | 1144 | # CONFIG_SCHEDSTATS is not set |
| 1245 | # CONFIG_TIMER_STATS is not set | 1145 | # CONFIG_TIMER_STATS is not set |
| @@ -1266,6 +1166,7 @@ CONFIG_FORCED_INLINING=y | |||
| 1266 | CONFIG_SH_STANDARD_BIOS=y | 1166 | CONFIG_SH_STANDARD_BIOS=y |
| 1267 | # CONFIG_EARLY_SCIF_CONSOLE is not set | 1167 | # CONFIG_EARLY_SCIF_CONSOLE is not set |
| 1268 | CONFIG_EARLY_PRINTK=y | 1168 | CONFIG_EARLY_PRINTK=y |
| 1169 | # CONFIG_DEBUG_BOOTMEM is not set | ||
| 1269 | CONFIG_DEBUG_STACKOVERFLOW=y | 1170 | CONFIG_DEBUG_STACKOVERFLOW=y |
| 1270 | CONFIG_DEBUG_STACK_USAGE=y | 1171 | CONFIG_DEBUG_STACK_USAGE=y |
| 1271 | # CONFIG_4KSTACKS is not set | 1172 | # CONFIG_4KSTACKS is not set |
| @@ -1300,6 +1201,7 @@ CONFIG_CRYPTO_ECB=m | |||
| 1300 | CONFIG_CRYPTO_CBC=y | 1201 | CONFIG_CRYPTO_CBC=y |
| 1301 | CONFIG_CRYPTO_PCBC=m | 1202 | CONFIG_CRYPTO_PCBC=m |
| 1302 | # CONFIG_CRYPTO_LRW is not set | 1203 | # CONFIG_CRYPTO_LRW is not set |
| 1204 | # CONFIG_CRYPTO_CRYPTD is not set | ||
| 1303 | CONFIG_CRYPTO_DES=y | 1205 | CONFIG_CRYPTO_DES=y |
| 1304 | # CONFIG_CRYPTO_FCRYPT is not set | 1206 | # CONFIG_CRYPTO_FCRYPT is not set |
| 1305 | # CONFIG_CRYPTO_BLOWFISH is not set | 1207 | # CONFIG_CRYPTO_BLOWFISH is not set |
| @@ -1328,7 +1230,9 @@ CONFIG_CRYPTO_DES=y | |||
| 1328 | CONFIG_BITREVERSE=y | 1230 | CONFIG_BITREVERSE=y |
| 1329 | # CONFIG_CRC_CCITT is not set | 1231 | # CONFIG_CRC_CCITT is not set |
| 1330 | # CONFIG_CRC16 is not set | 1232 | # CONFIG_CRC16 is not set |
| 1233 | # CONFIG_CRC_ITU_T is not set | ||
| 1331 | CONFIG_CRC32=y | 1234 | CONFIG_CRC32=y |
| 1332 | # CONFIG_LIBCRC32C is not set | 1235 | # CONFIG_LIBCRC32C is not set |
| 1333 | CONFIG_HAS_IOMEM=y | 1236 | CONFIG_HAS_IOMEM=y |
| 1334 | CONFIG_HAS_IOPORT=y | 1237 | CONFIG_HAS_IOPORT=y |
| 1238 | CONFIG_HAS_DMA=y | ||
diff --git a/arch/sh/configs/se7206_defconfig b/arch/sh/configs/se7206_defconfig index 87ab9080fd1d..f2f2a3c9c32d 100644 --- a/arch/sh/configs/se7206_defconfig +++ b/arch/sh/configs/se7206_defconfig | |||
| @@ -1,18 +1,22 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.19 | 3 | # Linux kernel version: 2.6.22-rc4 |
| 4 | # Wed Dec 6 14:40:15 2006 | 4 | # Fri Jun 15 19:37:46 2007 |
| 5 | # | 5 | # |
| 6 | CONFIG_SUPERH=y | 6 | CONFIG_SUPERH=y |
| 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
| 8 | CONFIG_GENERIC_BUG=y | ||
| 8 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 9 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
| 9 | CONFIG_GENERIC_HWEIGHT=y | 10 | CONFIG_GENERIC_HWEIGHT=y |
| 10 | CONFIG_GENERIC_HARDIRQS=y | 11 | CONFIG_GENERIC_HARDIRQS=y |
| 11 | CONFIG_GENERIC_IRQ_PROBE=y | 12 | CONFIG_GENERIC_IRQ_PROBE=y |
| 12 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
| 13 | # CONFIG_GENERIC_TIME is not set | 14 | # CONFIG_GENERIC_TIME is not set |
| 15 | # CONFIG_GENERIC_CLOCKEVENTS is not set | ||
| 14 | CONFIG_STACKTRACE_SUPPORT=y | 16 | CONFIG_STACKTRACE_SUPPORT=y |
| 15 | CONFIG_LOCKDEP_SUPPORT=y | 17 | CONFIG_LOCKDEP_SUPPORT=y |
| 18 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
| 19 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
| 16 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 20 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
| 17 | 21 | ||
| 18 | # | 22 | # |
| @@ -34,8 +38,10 @@ CONFIG_LOCALVERSION="" | |||
| 34 | # CONFIG_UTS_NS is not set | 38 | # CONFIG_UTS_NS is not set |
| 35 | # CONFIG_AUDIT is not set | 39 | # CONFIG_AUDIT is not set |
| 36 | # CONFIG_IKCONFIG is not set | 40 | # CONFIG_IKCONFIG is not set |
| 41 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 42 | CONFIG_SYSFS_DEPRECATED=y | ||
| 37 | # CONFIG_RELAY is not set | 43 | # CONFIG_RELAY is not set |
| 38 | CONFIG_INITRAMFS_SOURCE="" | 44 | # CONFIG_BLK_DEV_INITRD is not set |
| 39 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 45 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
| 40 | CONFIG_SYSCTL=y | 46 | CONFIG_SYSCTL=y |
| 41 | CONFIG_EMBEDDED=y | 47 | CONFIG_EMBEDDED=y |
| @@ -48,12 +54,17 @@ CONFIG_BUG=y | |||
| 48 | # CONFIG_ELF_CORE is not set | 54 | # CONFIG_ELF_CORE is not set |
| 49 | # CONFIG_BASE_FULL is not set | 55 | # CONFIG_BASE_FULL is not set |
| 50 | # CONFIG_FUTEX is not set | 56 | # CONFIG_FUTEX is not set |
| 57 | CONFIG_ANON_INODES=y | ||
| 51 | # CONFIG_EPOLL is not set | 58 | # CONFIG_EPOLL is not set |
| 52 | CONFIG_SLAB=y | 59 | CONFIG_SIGNALFD=y |
| 60 | CONFIG_TIMERFD=y | ||
| 61 | CONFIG_EVENTFD=y | ||
| 53 | # CONFIG_VM_EVENT_COUNTERS is not set | 62 | # CONFIG_VM_EVENT_COUNTERS is not set |
| 63 | CONFIG_SLAB=y | ||
| 64 | # CONFIG_SLUB is not set | ||
| 65 | # CONFIG_SLOB is not set | ||
| 54 | CONFIG_TINY_SHMEM=y | 66 | CONFIG_TINY_SHMEM=y |
| 55 | CONFIG_BASE_SMALL=1 | 67 | CONFIG_BASE_SMALL=1 |
| 56 | # CONFIG_SLOB is not set | ||
| 57 | 68 | ||
| 58 | # | 69 | # |
| 59 | # Loadable module support | 70 | # Loadable module support |
| @@ -83,53 +94,10 @@ CONFIG_DEFAULT_IOSCHED="noop" | |||
| 83 | # | 94 | # |
| 84 | # System type | 95 | # System type |
| 85 | # | 96 | # |
| 86 | # CONFIG_SH_SOLUTION_ENGINE is not set | ||
| 87 | # CONFIG_SH_7751_SOLUTION_ENGINE is not set | ||
| 88 | # CONFIG_SH_7300_SOLUTION_ENGINE is not set | ||
| 89 | # CONFIG_SH_7343_SOLUTION_ENGINE is not set | ||
| 90 | # CONFIG_SH_73180_SOLUTION_ENGINE is not set | ||
| 91 | # CONFIG_SH_7751_SYSTEMH is not set | ||
| 92 | # CONFIG_SH_HP6XX is not set | ||
| 93 | # CONFIG_SH_EC3104 is not set | ||
| 94 | # CONFIG_SH_SATURN is not set | ||
| 95 | # CONFIG_SH_DREAMCAST is not set | ||
| 96 | # CONFIG_SH_BIGSUR is not set | ||
| 97 | # CONFIG_SH_MPC1211 is not set | ||
| 98 | # CONFIG_SH_SH03 is not set | ||
| 99 | # CONFIG_SH_SECUREEDGE5410 is not set | ||
| 100 | # CONFIG_SH_HS7751RVOIP is not set | ||
| 101 | # CONFIG_SH_7710VOIPGW is not set | ||
| 102 | # CONFIG_SH_RTS7751R2D is not set | ||
| 103 | # CONFIG_SH_R7780RP is not set | ||
| 104 | # CONFIG_SH_EDOSK7705 is not set | ||
| 105 | # CONFIG_SH_SH4202_MICRODEV is not set | ||
| 106 | # CONFIG_SH_LANDISK is not set | ||
| 107 | # CONFIG_SH_TITAN is not set | ||
| 108 | # CONFIG_SH_SHMIN is not set | ||
| 109 | CONFIG_SH_7206_SOLUTION_ENGINE=y | ||
| 110 | # CONFIG_SH_7619_SOLUTION_ENGINE is not set | ||
| 111 | # CONFIG_SH_UNKNOWN is not set | ||
| 112 | |||
| 113 | # | ||
| 114 | # Processor selection | ||
| 115 | # | ||
| 116 | CONFIG_CPU_SH2=y | 97 | CONFIG_CPU_SH2=y |
| 117 | CONFIG_CPU_SH2A=y | 98 | CONFIG_CPU_SH2A=y |
| 118 | |||
| 119 | # | ||
| 120 | # SH-2 Processor Support | ||
| 121 | # | ||
| 122 | # CONFIG_CPU_SUBTYPE_SH7604 is not set | ||
| 123 | # CONFIG_CPU_SUBTYPE_SH7619 is not set | 99 | # CONFIG_CPU_SUBTYPE_SH7619 is not set |
| 124 | |||
| 125 | # | ||
| 126 | # SH-2A Processor Support | ||
| 127 | # | ||
| 128 | CONFIG_CPU_SUBTYPE_SH7206=y | 100 | CONFIG_CPU_SUBTYPE_SH7206=y |
| 129 | |||
| 130 | # | ||
| 131 | # SH-3 Processor Support | ||
| 132 | # | ||
| 133 | # CONFIG_CPU_SUBTYPE_SH7300 is not set | 101 | # CONFIG_CPU_SUBTYPE_SH7300 is not set |
| 134 | # CONFIG_CPU_SUBTYPE_SH7705 is not set | 102 | # CONFIG_CPU_SUBTYPE_SH7705 is not set |
| 135 | # CONFIG_CPU_SUBTYPE_SH7706 is not set | 103 | # CONFIG_CPU_SUBTYPE_SH7706 is not set |
| @@ -137,10 +105,7 @@ CONFIG_CPU_SUBTYPE_SH7206=y | |||
| 137 | # CONFIG_CPU_SUBTYPE_SH7708 is not set | 105 | # CONFIG_CPU_SUBTYPE_SH7708 is not set |
| 138 | # CONFIG_CPU_SUBTYPE_SH7709 is not set | 106 | # CONFIG_CPU_SUBTYPE_SH7709 is not set |
| 139 | # CONFIG_CPU_SUBTYPE_SH7710 is not set | 107 | # CONFIG_CPU_SUBTYPE_SH7710 is not set |
| 140 | 108 | # CONFIG_CPU_SUBTYPE_SH7712 is not set | |
| 141 | # | ||
| 142 | # SH-4 Processor Support | ||
| 143 | # | ||
| 144 | # CONFIG_CPU_SUBTYPE_SH7750 is not set | 109 | # CONFIG_CPU_SUBTYPE_SH7750 is not set |
| 145 | # CONFIG_CPU_SUBTYPE_SH7091 is not set | 110 | # CONFIG_CPU_SUBTYPE_SH7091 is not set |
| 146 | # CONFIG_CPU_SUBTYPE_SH7750R is not set | 111 | # CONFIG_CPU_SUBTYPE_SH7750R is not set |
| @@ -149,32 +114,28 @@ CONFIG_CPU_SUBTYPE_SH7206=y | |||
| 149 | # CONFIG_CPU_SUBTYPE_SH7751R is not set | 114 | # CONFIG_CPU_SUBTYPE_SH7751R is not set |
| 150 | # CONFIG_CPU_SUBTYPE_SH7760 is not set | 115 | # CONFIG_CPU_SUBTYPE_SH7760 is not set |
| 151 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set | 116 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set |
| 152 | |||
| 153 | # | ||
| 154 | # ST40 Processor Support | ||
| 155 | # | ||
| 156 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set | 117 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set |
| 157 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set | 118 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set |
| 158 | |||
| 159 | # | ||
| 160 | # SH-4A Processor Support | ||
| 161 | # | ||
| 162 | # CONFIG_CPU_SUBTYPE_SH7770 is not set | 119 | # CONFIG_CPU_SUBTYPE_SH7770 is not set |
| 163 | # CONFIG_CPU_SUBTYPE_SH7780 is not set | 120 | # CONFIG_CPU_SUBTYPE_SH7780 is not set |
| 164 | # CONFIG_CPU_SUBTYPE_SH7785 is not set | 121 | # CONFIG_CPU_SUBTYPE_SH7785 is not set |
| 165 | |||
| 166 | # | ||
| 167 | # SH4AL-DSP Processor Support | ||
| 168 | # | ||
| 169 | # CONFIG_CPU_SUBTYPE_SH73180 is not set | 122 | # CONFIG_CPU_SUBTYPE_SH73180 is not set |
| 170 | # CONFIG_CPU_SUBTYPE_SH7343 is not set | 123 | # CONFIG_CPU_SUBTYPE_SH7343 is not set |
| 124 | # CONFIG_CPU_SUBTYPE_SH7722 is not set | ||
| 171 | 125 | ||
| 172 | # | 126 | # |
| 173 | # Memory management options | 127 | # Memory management options |
| 174 | # | 128 | # |
| 129 | CONFIG_QUICKLIST=y | ||
| 175 | CONFIG_PAGE_OFFSET=0x00000000 | 130 | CONFIG_PAGE_OFFSET=0x00000000 |
| 176 | CONFIG_MEMORY_START=0x0c000000 | 131 | CONFIG_MEMORY_START=0x0c000000 |
| 177 | CONFIG_MEMORY_SIZE=0x04000000 | 132 | CONFIG_MEMORY_SIZE=0x04000000 |
| 133 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
| 134 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
| 135 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y | ||
| 136 | CONFIG_MAX_ACTIVE_REGIONS=1 | ||
| 137 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
| 138 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | ||
| 178 | CONFIG_PAGE_SIZE_4KB=y | 139 | CONFIG_PAGE_SIZE_4KB=y |
| 179 | # CONFIG_PAGE_SIZE_8KB is not set | 140 | # CONFIG_PAGE_SIZE_8KB is not set |
| 180 | # CONFIG_PAGE_SIZE_64KB is not set | 141 | # CONFIG_PAGE_SIZE_64KB is not set |
| @@ -184,35 +145,42 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 184 | # CONFIG_SPARSEMEM_MANUAL is not set | 145 | # CONFIG_SPARSEMEM_MANUAL is not set |
| 185 | CONFIG_FLATMEM=y | 146 | CONFIG_FLATMEM=y |
| 186 | CONFIG_FLAT_NODE_MEM_MAP=y | 147 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 187 | # CONFIG_SPARSEMEM_STATIC is not set | 148 | CONFIG_SPARSEMEM_STATIC=y |
| 188 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 149 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
| 189 | # CONFIG_RESOURCES_64BIT is not set | 150 | # CONFIG_RESOURCES_64BIT is not set |
| 151 | CONFIG_ZONE_DMA_FLAG=0 | ||
| 152 | CONFIG_NR_QUICK=2 | ||
| 190 | 153 | ||
| 191 | # | 154 | # |
| 192 | # Cache configuration | 155 | # Cache configuration |
| 193 | # | 156 | # |
| 194 | # CONFIG_SH_DIRECT_MAPPED is not set | 157 | # CONFIG_SH_DIRECT_MAPPED is not set |
| 195 | # CONFIG_SH_WRITETHROUGH is not set | 158 | # CONFIG_SH_WRITETHROUGH is not set |
| 196 | # CONFIG_SH_OCRAM is not set | ||
| 197 | 159 | ||
| 198 | # | 160 | # |
| 199 | # Processor features | 161 | # Processor features |
| 200 | # | 162 | # |
| 201 | # CONFIG_CPU_LITTLE_ENDIAN is not set | 163 | # CONFIG_CPU_LITTLE_ENDIAN is not set |
| 202 | CONFIG_CPU_BIG_ENDIAN=y | 164 | CONFIG_CPU_BIG_ENDIAN=y |
| 203 | # CONFIG_SH_FPU is not set | ||
| 204 | # CONFIG_SH_FPU_EMU is not set | 165 | # CONFIG_SH_FPU_EMU is not set |
| 205 | # CONFIG_SH_DSP is not set | 166 | # CONFIG_SH_DSP is not set |
| 167 | CONFIG_CPU_HAS_IPR_IRQ=y | ||
| 168 | |||
| 169 | # | ||
| 170 | # Board support | ||
| 171 | # | ||
| 172 | CONFIG_SOLUTION_ENGINE=y | ||
| 173 | CONFIG_SH_7206_SOLUTION_ENGINE=y | ||
| 206 | 174 | ||
| 207 | # | 175 | # |
| 208 | # Timer support | 176 | # Timer and clock configuration |
| 209 | # | 177 | # |
| 210 | CONFIG_SH_CMT=y | 178 | CONFIG_SH_CMT=y |
| 211 | # CONFIG_SH_MTU2 is not set | 179 | # CONFIG_SH_MTU2 is not set |
| 212 | CONFIG_SH_TIMER_IRQ=140 | 180 | CONFIG_SH_TIMER_IRQ=140 |
| 213 | # CONFIG_NO_IDLE_HZ is not set | ||
| 214 | CONFIG_SH_PCLK_FREQ=33333333 | 181 | CONFIG_SH_PCLK_FREQ=33333333 |
| 215 | CONFIG_SH_CLK_MD=6 | 182 | CONFIG_SH_CLK_MD=6 |
| 183 | # CONFIG_TICK_ONESHOT is not set | ||
| 216 | 184 | ||
| 217 | # | 185 | # |
| 218 | # CPU Frequency scaling | 186 | # CPU Frequency scaling |
| @@ -227,11 +195,11 @@ CONFIG_SH_CLK_MD=6 | |||
| 227 | # | 195 | # |
| 228 | # Companion Chips | 196 | # Companion Chips |
| 229 | # | 197 | # |
| 230 | # CONFIG_HD6446X_SERIES is not set | ||
| 231 | 198 | ||
| 232 | # | 199 | # |
| 233 | # Additional SuperH Device Drivers | 200 | # Additional SuperH Device Drivers |
| 234 | # | 201 | # |
| 202 | # CONFIG_HEARTBEAT is not set | ||
| 235 | # CONFIG_PUSH_SWITCH is not set | 203 | # CONFIG_PUSH_SWITCH is not set |
| 236 | 204 | ||
| 237 | # | 205 | # |
| @@ -239,10 +207,11 @@ CONFIG_SH_CLK_MD=6 | |||
| 239 | # | 207 | # |
| 240 | CONFIG_HZ_100=y | 208 | CONFIG_HZ_100=y |
| 241 | # CONFIG_HZ_250 is not set | 209 | # CONFIG_HZ_250 is not set |
| 210 | # CONFIG_HZ_300 is not set | ||
| 242 | # CONFIG_HZ_1000 is not set | 211 | # CONFIG_HZ_1000 is not set |
| 243 | CONFIG_HZ=100 | 212 | CONFIG_HZ=100 |
| 244 | # CONFIG_KEXEC is not set | 213 | # CONFIG_KEXEC is not set |
| 245 | # CONFIG_SMP is not set | 214 | # CONFIG_CRASH_DUMP is not set |
| 246 | CONFIG_PREEMPT_NONE=y | 215 | CONFIG_PREEMPT_NONE=y |
| 247 | # CONFIG_PREEMPT_VOLUNTARY is not set | 216 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 248 | # CONFIG_PREEMPT is not set | 217 | # CONFIG_PREEMPT is not set |
| @@ -252,23 +221,18 @@ CONFIG_PREEMPT_NONE=y | |||
| 252 | # | 221 | # |
| 253 | CONFIG_ZERO_PAGE_OFFSET=0x00001000 | 222 | CONFIG_ZERO_PAGE_OFFSET=0x00001000 |
| 254 | CONFIG_BOOT_LINK_OFFSET=0x00800000 | 223 | CONFIG_BOOT_LINK_OFFSET=0x00800000 |
| 255 | # CONFIG_UBC_WAKEUP is not set | ||
| 256 | # CONFIG_CMDLINE_BOOL is not set | 224 | # CONFIG_CMDLINE_BOOL is not set |
| 257 | 225 | ||
| 258 | # | 226 | # |
| 259 | # Bus options | 227 | # Bus options |
| 260 | # | 228 | # |
| 261 | # CONFIG_PCI is not set | 229 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
| 262 | 230 | ||
| 263 | # | 231 | # |
| 264 | # PCCARD (PCMCIA/CardBus) support | 232 | # PCCARD (PCMCIA/CardBus) support |
| 265 | # | 233 | # |
| 266 | 234 | ||
| 267 | # | 235 | # |
| 268 | # PCI Hotplug Support | ||
| 269 | # | ||
| 270 | |||
| 271 | # | ||
| 272 | # Executable file formats | 236 | # Executable file formats |
| 273 | # | 237 | # |
| 274 | CONFIG_BINFMT_FLAT=y | 238 | CONFIG_BINFMT_FLAT=y |
| @@ -277,11 +241,6 @@ CONFIG_BINFMT_ZFLAT=y | |||
| 277 | # CONFIG_BINFMT_MISC is not set | 241 | # CONFIG_BINFMT_MISC is not set |
| 278 | 242 | ||
| 279 | # | 243 | # |
| 280 | # Power management options (EXPERIMENTAL) | ||
| 281 | # | ||
| 282 | # CONFIG_PM is not set | ||
| 283 | |||
| 284 | # | ||
| 285 | # Networking | 244 | # Networking |
| 286 | # | 245 | # |
| 287 | CONFIG_NET=y | 246 | CONFIG_NET=y |
| @@ -289,7 +248,6 @@ CONFIG_NET=y | |||
| 289 | # | 248 | # |
| 290 | # Networking options | 249 | # Networking options |
| 291 | # | 250 | # |
| 292 | # CONFIG_NETDEBUG is not set | ||
| 293 | # CONFIG_PACKET is not set | 251 | # CONFIG_PACKET is not set |
| 294 | # CONFIG_UNIX is not set | 252 | # CONFIG_UNIX is not set |
| 295 | # CONFIG_NET_KEY is not set | 253 | # CONFIG_NET_KEY is not set |
| @@ -314,25 +272,14 @@ CONFIG_IP_FIB_HASH=y | |||
| 314 | # CONFIG_TCP_CONG_ADVANCED is not set | 272 | # CONFIG_TCP_CONG_ADVANCED is not set |
| 315 | CONFIG_TCP_CONG_CUBIC=y | 273 | CONFIG_TCP_CONG_CUBIC=y |
| 316 | CONFIG_DEFAULT_TCP_CONG="cubic" | 274 | CONFIG_DEFAULT_TCP_CONG="cubic" |
| 275 | # CONFIG_TCP_MD5SIG is not set | ||
| 317 | # CONFIG_IPV6 is not set | 276 | # CONFIG_IPV6 is not set |
| 318 | # CONFIG_INET6_XFRM_TUNNEL is not set | 277 | # CONFIG_INET6_XFRM_TUNNEL is not set |
| 319 | # CONFIG_INET6_TUNNEL is not set | 278 | # CONFIG_INET6_TUNNEL is not set |
| 320 | # CONFIG_NETWORK_SECMARK is not set | 279 | # CONFIG_NETWORK_SECMARK is not set |
| 321 | # CONFIG_NETFILTER is not set | 280 | # CONFIG_NETFILTER is not set |
| 322 | |||
| 323 | # | ||
| 324 | # DCCP Configuration (EXPERIMENTAL) | ||
| 325 | # | ||
| 326 | # CONFIG_IP_DCCP is not set | 281 | # CONFIG_IP_DCCP is not set |
| 327 | |||
| 328 | # | ||
| 329 | # SCTP Configuration (EXPERIMENTAL) | ||
| 330 | # | ||
| 331 | # CONFIG_IP_SCTP is not set | 282 | # CONFIG_IP_SCTP is not set |
| 332 | |||
| 333 | # | ||
| 334 | # TIPC Configuration (EXPERIMENTAL) | ||
| 335 | # | ||
| 336 | # CONFIG_TIPC is not set | 283 | # CONFIG_TIPC is not set |
| 337 | # CONFIG_ATM is not set | 284 | # CONFIG_ATM is not set |
| 338 | # CONFIG_BRIDGE is not set | 285 | # CONFIG_BRIDGE is not set |
| @@ -358,7 +305,16 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
| 358 | # CONFIG_HAMRADIO is not set | 305 | # CONFIG_HAMRADIO is not set |
| 359 | # CONFIG_IRDA is not set | 306 | # CONFIG_IRDA is not set |
| 360 | # CONFIG_BT is not set | 307 | # CONFIG_BT is not set |
| 308 | # CONFIG_AF_RXRPC is not set | ||
| 309 | |||
| 310 | # | ||
| 311 | # Wireless | ||
| 312 | # | ||
| 313 | # CONFIG_CFG80211 is not set | ||
| 314 | # CONFIG_WIRELESS_EXT is not set | ||
| 315 | # CONFIG_MAC80211 is not set | ||
| 361 | # CONFIG_IEEE80211 is not set | 316 | # CONFIG_IEEE80211 is not set |
| 317 | # CONFIG_RFKILL is not set | ||
| 362 | 318 | ||
| 363 | # | 319 | # |
| 364 | # Device Drivers | 320 | # Device Drivers |
| @@ -375,10 +331,6 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
| 375 | # Connector - unified userspace <-> kernelspace linker | 331 | # Connector - unified userspace <-> kernelspace linker |
| 376 | # | 332 | # |
| 377 | # CONFIG_CONNECTOR is not set | 333 | # CONFIG_CONNECTOR is not set |
| 378 | |||
| 379 | # | ||
| 380 | # Memory Technology Devices (MTD) | ||
| 381 | # | ||
| 382 | CONFIG_MTD=y | 334 | CONFIG_MTD=y |
| 383 | # CONFIG_MTD_DEBUG is not set | 335 | # CONFIG_MTD_DEBUG is not set |
| 384 | CONFIG_MTD_CONCAT=y | 336 | CONFIG_MTD_CONCAT=y |
| @@ -393,6 +345,7 @@ CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 | |||
| 393 | # User Modules And Translation Layers | 345 | # User Modules And Translation Layers |
| 394 | # | 346 | # |
| 395 | CONFIG_MTD_CHAR=y | 347 | CONFIG_MTD_CHAR=y |
| 348 | CONFIG_MTD_BLKDEVS=y | ||
| 396 | CONFIG_MTD_BLOCK=y | 349 | CONFIG_MTD_BLOCK=y |
| 397 | # CONFIG_FTL is not set | 350 | # CONFIG_FTL is not set |
| 398 | # CONFIG_NFTL is not set | 351 | # CONFIG_NFTL is not set |
| @@ -424,7 +377,6 @@ CONFIG_MTD_CFI_UTIL=y | |||
| 424 | # CONFIG_MTD_RAM is not set | 377 | # CONFIG_MTD_RAM is not set |
| 425 | # CONFIG_MTD_ROM is not set | 378 | # CONFIG_MTD_ROM is not set |
| 426 | # CONFIG_MTD_ABSENT is not set | 379 | # CONFIG_MTD_ABSENT is not set |
| 427 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
| 428 | 380 | ||
| 429 | # | 381 | # |
| 430 | # Mapping drivers for chip access | 382 | # Mapping drivers for chip access |
| @@ -452,16 +404,13 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=4 | |||
| 452 | # CONFIG_MTD_DOC2000 is not set | 404 | # CONFIG_MTD_DOC2000 is not set |
| 453 | # CONFIG_MTD_DOC2001 is not set | 405 | # CONFIG_MTD_DOC2001 is not set |
| 454 | # CONFIG_MTD_DOC2001PLUS is not set | 406 | # CONFIG_MTD_DOC2001PLUS is not set |
| 455 | |||
| 456 | # | ||
| 457 | # NAND Flash Device Drivers | ||
| 458 | # | ||
| 459 | # CONFIG_MTD_NAND is not set | 407 | # CONFIG_MTD_NAND is not set |
| 408 | # CONFIG_MTD_ONENAND is not set | ||
| 460 | 409 | ||
| 461 | # | 410 | # |
| 462 | # OneNAND Flash Device Drivers | 411 | # UBI - Unsorted block images |
| 463 | # | 412 | # |
| 464 | # CONFIG_MTD_ONENAND is not set | 413 | # CONFIG_MTD_UBI is not set |
| 465 | 414 | ||
| 466 | # | 415 | # |
| 467 | # Parallel port support | 416 | # Parallel port support |
| @@ -471,6 +420,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=4 | |||
| 471 | # | 420 | # |
| 472 | # Plug and Play support | 421 | # Plug and Play support |
| 473 | # | 422 | # |
| 423 | # CONFIG_PNPACPI is not set | ||
| 474 | 424 | ||
| 475 | # | 425 | # |
| 476 | # Block devices | 426 | # Block devices |
| @@ -479,18 +429,13 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=4 | |||
| 479 | # CONFIG_BLK_DEV_LOOP is not set | 429 | # CONFIG_BLK_DEV_LOOP is not set |
| 480 | # CONFIG_BLK_DEV_NBD is not set | 430 | # CONFIG_BLK_DEV_NBD is not set |
| 481 | # CONFIG_BLK_DEV_RAM is not set | 431 | # CONFIG_BLK_DEV_RAM is not set |
| 482 | # CONFIG_BLK_DEV_INITRD is not set | ||
| 483 | # CONFIG_CDROM_PKTCDVD is not set | 432 | # CONFIG_CDROM_PKTCDVD is not set |
| 484 | # CONFIG_ATA_OVER_ETH is not set | 433 | # CONFIG_ATA_OVER_ETH is not set |
| 485 | 434 | ||
| 486 | # | 435 | # |
| 487 | # Misc devices | 436 | # Misc devices |
| 488 | # | 437 | # |
| 489 | # CONFIG_TIFM_CORE is not set | 438 | # CONFIG_BLINK is not set |
| 490 | |||
| 491 | # | ||
| 492 | # ATA/ATAPI/MFM/RLL support | ||
| 493 | # | ||
| 494 | # CONFIG_IDE is not set | 439 | # CONFIG_IDE is not set |
| 495 | 440 | ||
| 496 | # | 441 | # |
| @@ -499,10 +444,6 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=4 | |||
| 499 | # CONFIG_RAID_ATTRS is not set | 444 | # CONFIG_RAID_ATTRS is not set |
| 500 | # CONFIG_SCSI is not set | 445 | # CONFIG_SCSI is not set |
| 501 | # CONFIG_SCSI_NETLINK is not set | 446 | # CONFIG_SCSI_NETLINK is not set |
| 502 | |||
| 503 | # | ||
| 504 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
| 505 | # | ||
| 506 | # CONFIG_ATA is not set | 447 | # CONFIG_ATA is not set |
| 507 | 448 | ||
| 508 | # | 449 | # |
| @@ -511,19 +452,6 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=4 | |||
| 511 | # CONFIG_MD is not set | 452 | # CONFIG_MD is not set |
| 512 | 453 | ||
| 513 | # | 454 | # |
| 514 | # Fusion MPT device support | ||
| 515 | # | ||
| 516 | # CONFIG_FUSION is not set | ||
| 517 | |||
| 518 | # | ||
| 519 | # IEEE 1394 (FireWire) support | ||
| 520 | # | ||
| 521 | |||
| 522 | # | ||
| 523 | # I2O device support | ||
| 524 | # | ||
| 525 | |||
| 526 | # | ||
| 527 | # Network device support | 455 | # Network device support |
| 528 | # | 456 | # |
| 529 | CONFIG_NETDEVICES=y | 457 | CONFIG_NETDEVICES=y |
| @@ -531,10 +459,6 @@ CONFIG_NETDEVICES=y | |||
| 531 | # CONFIG_BONDING is not set | 459 | # CONFIG_BONDING is not set |
| 532 | # CONFIG_EQUALIZER is not set | 460 | # CONFIG_EQUALIZER is not set |
| 533 | # CONFIG_TUN is not set | 461 | # CONFIG_TUN is not set |
| 534 | |||
| 535 | # | ||
| 536 | # PHY device support | ||
| 537 | # | ||
| 538 | # CONFIG_PHYLIB is not set | 462 | # CONFIG_PHYLIB is not set |
| 539 | 463 | ||
| 540 | # | 464 | # |
| @@ -544,27 +468,14 @@ CONFIG_NET_ETHERNET=y | |||
| 544 | CONFIG_MII=y | 468 | CONFIG_MII=y |
| 545 | # CONFIG_STNIC is not set | 469 | # CONFIG_STNIC is not set |
| 546 | CONFIG_SMC91X=y | 470 | CONFIG_SMC91X=y |
| 471 | CONFIG_NETDEV_1000=y | ||
| 472 | CONFIG_NETDEV_10000=y | ||
| 547 | 473 | ||
| 548 | # | 474 | # |
| 549 | # Ethernet (1000 Mbit) | 475 | # Wireless LAN |
| 550 | # | ||
| 551 | |||
| 552 | # | ||
| 553 | # Ethernet (10000 Mbit) | ||
| 554 | # | ||
| 555 | |||
| 556 | # | ||
| 557 | # Token Ring devices | ||
| 558 | # | ||
| 559 | |||
| 560 | # | ||
| 561 | # Wireless LAN (non-hamradio) | ||
| 562 | # | ||
| 563 | # CONFIG_NET_RADIO is not set | ||
| 564 | |||
| 565 | # | ||
| 566 | # Wan interfaces | ||
| 567 | # | 476 | # |
| 477 | # CONFIG_WLAN_PRE80211 is not set | ||
| 478 | # CONFIG_WLAN_80211 is not set | ||
| 568 | # CONFIG_WAN is not set | 479 | # CONFIG_WAN is not set |
| 569 | # CONFIG_PPP is not set | 480 | # CONFIG_PPP is not set |
| 570 | # CONFIG_SLIP is not set | 481 | # CONFIG_SLIP is not set |
| @@ -604,6 +515,7 @@ CONFIG_INPUT=y | |||
| 604 | # CONFIG_INPUT_KEYBOARD is not set | 515 | # CONFIG_INPUT_KEYBOARD is not set |
| 605 | # CONFIG_INPUT_MOUSE is not set | 516 | # CONFIG_INPUT_MOUSE is not set |
| 606 | # CONFIG_INPUT_JOYSTICK is not set | 517 | # CONFIG_INPUT_JOYSTICK is not set |
| 518 | # CONFIG_INPUT_TABLET is not set | ||
| 607 | # CONFIG_INPUT_TOUCHSCREEN is not set | 519 | # CONFIG_INPUT_TOUCHSCREEN is not set |
| 608 | # CONFIG_INPUT_MISC is not set | 520 | # CONFIG_INPUT_MISC is not set |
| 609 | 521 | ||
| @@ -639,29 +551,15 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
| 639 | # IPMI | 551 | # IPMI |
| 640 | # | 552 | # |
| 641 | # CONFIG_IPMI_HANDLER is not set | 553 | # CONFIG_IPMI_HANDLER is not set |
| 642 | |||
| 643 | # | ||
| 644 | # Watchdog Cards | ||
| 645 | # | ||
| 646 | # CONFIG_WATCHDOG is not set | 554 | # CONFIG_WATCHDOG is not set |
| 647 | # CONFIG_HW_RANDOM is not set | 555 | # CONFIG_HW_RANDOM is not set |
| 648 | # CONFIG_GEN_RTC is not set | ||
| 649 | # CONFIG_DTLK is not set | ||
| 650 | # CONFIG_R3964 is not set | 556 | # CONFIG_R3964 is not set |
| 651 | |||
| 652 | # | ||
| 653 | # Ftape, the floppy tape device driver | ||
| 654 | # | ||
| 655 | # CONFIG_RAW_DRIVER is not set | 557 | # CONFIG_RAW_DRIVER is not set |
| 656 | 558 | ||
| 657 | # | 559 | # |
| 658 | # TPM devices | 560 | # TPM devices |
| 659 | # | 561 | # |
| 660 | # CONFIG_TCG_TPM is not set | 562 | # CONFIG_TCG_TPM is not set |
| 661 | |||
| 662 | # | ||
| 663 | # I2C support | ||
| 664 | # | ||
| 665 | # CONFIG_I2C is not set | 563 | # CONFIG_I2C is not set |
| 666 | 564 | ||
| 667 | # | 565 | # |
| @@ -674,27 +572,30 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
| 674 | # Dallas's 1-wire bus | 572 | # Dallas's 1-wire bus |
| 675 | # | 573 | # |
| 676 | # CONFIG_W1 is not set | 574 | # CONFIG_W1 is not set |
| 575 | # CONFIG_HWMON is not set | ||
| 677 | 576 | ||
| 678 | # | 577 | # |
| 679 | # Hardware Monitoring support | 578 | # Multifunction device drivers |
| 680 | # | 579 | # |
| 681 | # CONFIG_HWMON is not set | 580 | # CONFIG_MFD_SM501 is not set |
| 682 | # CONFIG_HWMON_VID is not set | ||
| 683 | 581 | ||
| 684 | # | 582 | # |
| 685 | # Multimedia devices | 583 | # Multimedia devices |
| 686 | # | 584 | # |
| 687 | # CONFIG_VIDEO_DEV is not set | 585 | # CONFIG_VIDEO_DEV is not set |
| 586 | # CONFIG_DVB_CORE is not set | ||
| 587 | CONFIG_DAB=y | ||
| 688 | 588 | ||
| 689 | # | 589 | # |
| 690 | # Digital Video Broadcasting Devices | 590 | # Graphics support |
| 691 | # | 591 | # |
| 692 | # CONFIG_DVB is not set | 592 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
| 693 | 593 | ||
| 694 | # | 594 | # |
| 695 | # Graphics support | 595 | # Display device support |
| 696 | # | 596 | # |
| 697 | # CONFIG_FIRMWARE_EDID is not set | 597 | # CONFIG_DISPLAY_SUPPORT is not set |
| 598 | # CONFIG_VGASTATE is not set | ||
| 698 | # CONFIG_FB is not set | 599 | # CONFIG_FB is not set |
| 699 | 600 | ||
| 700 | # | 601 | # |
| @@ -703,6 +604,12 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
| 703 | # CONFIG_SOUND is not set | 604 | # CONFIG_SOUND is not set |
| 704 | 605 | ||
| 705 | # | 606 | # |
| 607 | # HID Devices | ||
| 608 | # | ||
| 609 | CONFIG_HID=y | ||
| 610 | # CONFIG_HID_DEBUG is not set | ||
| 611 | |||
| 612 | # | ||
| 706 | # USB support | 613 | # USB support |
| 707 | # | 614 | # |
| 708 | # CONFIG_USB_ARCH_HAS_HCD is not set | 615 | # CONFIG_USB_ARCH_HAS_HCD is not set |
| @@ -717,10 +624,6 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
| 717 | # USB Gadget Support | 624 | # USB Gadget Support |
| 718 | # | 625 | # |
| 719 | # CONFIG_USB_GADGET is not set | 626 | # CONFIG_USB_GADGET is not set |
| 720 | |||
| 721 | # | ||
| 722 | # MMC/SD Card support | ||
| 723 | # | ||
| 724 | # CONFIG_MMC is not set | 627 | # CONFIG_MMC is not set |
| 725 | 628 | ||
| 726 | # | 629 | # |
| @@ -802,7 +705,6 @@ CONFIG_PROC_FS=y | |||
| 802 | CONFIG_PROC_SYSCTL=y | 705 | CONFIG_PROC_SYSCTL=y |
| 803 | # CONFIG_SYSFS is not set | 706 | # CONFIG_SYSFS is not set |
| 804 | # CONFIG_TMPFS is not set | 707 | # CONFIG_TMPFS is not set |
| 805 | # CONFIG_HUGETLBFS is not set | ||
| 806 | # CONFIG_HUGETLB_PAGE is not set | 708 | # CONFIG_HUGETLB_PAGE is not set |
| 807 | CONFIG_RAMFS=y | 709 | CONFIG_RAMFS=y |
| 808 | 710 | ||
| @@ -816,7 +718,6 @@ CONFIG_RAMFS=y | |||
| 816 | # CONFIG_BEFS_FS is not set | 718 | # CONFIG_BEFS_FS is not set |
| 817 | # CONFIG_BFS_FS is not set | 719 | # CONFIG_BFS_FS is not set |
| 818 | # CONFIG_EFS_FS is not set | 720 | # CONFIG_EFS_FS is not set |
| 819 | # CONFIG_JFFS_FS is not set | ||
| 820 | # CONFIG_JFFS2_FS is not set | 721 | # CONFIG_JFFS2_FS is not set |
| 821 | # CONFIG_CRAMFS is not set | 722 | # CONFIG_CRAMFS is not set |
| 822 | # CONFIG_VXFS_FS is not set | 723 | # CONFIG_VXFS_FS is not set |
| @@ -849,6 +750,11 @@ CONFIG_MSDOS_PARTITION=y | |||
| 849 | # CONFIG_NLS is not set | 750 | # CONFIG_NLS is not set |
| 850 | 751 | ||
| 851 | # | 752 | # |
| 753 | # Distributed Lock Manager | ||
| 754 | # | ||
| 755 | # CONFIG_DLM is not set | ||
| 756 | |||
| 757 | # | ||
| 852 | # Profiling support | 758 | # Profiling support |
| 853 | # | 759 | # |
| 854 | # CONFIG_PROFILING is not set | 760 | # CONFIG_PROFILING is not set |
| @@ -861,14 +767,11 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y | |||
| 861 | # CONFIG_ENABLE_MUST_CHECK is not set | 767 | # CONFIG_ENABLE_MUST_CHECK is not set |
| 862 | # CONFIG_MAGIC_SYSRQ is not set | 768 | # CONFIG_MAGIC_SYSRQ is not set |
| 863 | # CONFIG_UNUSED_SYMBOLS is not set | 769 | # CONFIG_UNUSED_SYMBOLS is not set |
| 770 | # CONFIG_HEADERS_CHECK is not set | ||
| 864 | # CONFIG_DEBUG_KERNEL is not set | 771 | # CONFIG_DEBUG_KERNEL is not set |
| 865 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 866 | # CONFIG_DEBUG_BUGVERBOSE is not set | 772 | # CONFIG_DEBUG_BUGVERBOSE is not set |
| 867 | # CONFIG_UNWIND_INFO is not set | ||
| 868 | # CONFIG_HEADERS_CHECK is not set | ||
| 869 | # CONFIG_SH_STANDARD_BIOS is not set | 773 | # CONFIG_SH_STANDARD_BIOS is not set |
| 870 | # CONFIG_EARLY_SCIF_CONSOLE is not set | 774 | # CONFIG_EARLY_SCIF_CONSOLE is not set |
| 871 | # CONFIG_KGDB is not set | ||
| 872 | 775 | ||
| 873 | # | 776 | # |
| 874 | # Security options | 777 | # Security options |
| @@ -883,8 +786,13 @@ CONFIG_LOG_BUF_SHIFT=14 | |||
| 883 | # | 786 | # |
| 884 | # Library routines | 787 | # Library routines |
| 885 | # | 788 | # |
| 789 | CONFIG_BITREVERSE=y | ||
| 886 | # CONFIG_CRC_CCITT is not set | 790 | # CONFIG_CRC_CCITT is not set |
| 887 | # CONFIG_CRC16 is not set | 791 | # CONFIG_CRC16 is not set |
| 792 | # CONFIG_CRC_ITU_T is not set | ||
| 888 | CONFIG_CRC32=y | 793 | CONFIG_CRC32=y |
| 889 | # CONFIG_LIBCRC32C is not set | 794 | # CONFIG_LIBCRC32C is not set |
| 890 | CONFIG_ZLIB_INFLATE=y | 795 | CONFIG_ZLIB_INFLATE=y |
| 796 | CONFIG_HAS_IOMEM=y | ||
| 797 | CONFIG_HAS_IOPORT=y | ||
| 798 | CONFIG_HAS_DMA=y | ||
diff --git a/arch/sh/configs/se7619_defconfig b/arch/sh/configs/se7619_defconfig index 20ac7f4c53fb..3a3c3c1f507d 100644 --- a/arch/sh/configs/se7619_defconfig +++ b/arch/sh/configs/se7619_defconfig | |||
| @@ -1,18 +1,22 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.19 | 3 | # Linux kernel version: 2.6.22-rc4 |
| 4 | # Wed Dec 6 16:35:36 2006 | 4 | # Fri Jun 15 19:43:06 2007 |
| 5 | # | 5 | # |
| 6 | CONFIG_SUPERH=y | 6 | CONFIG_SUPERH=y |
| 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
| 8 | CONFIG_GENERIC_BUG=y | ||
| 8 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 9 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
| 9 | CONFIG_GENERIC_HWEIGHT=y | 10 | CONFIG_GENERIC_HWEIGHT=y |
| 10 | CONFIG_GENERIC_HARDIRQS=y | 11 | CONFIG_GENERIC_HARDIRQS=y |
| 11 | CONFIG_GENERIC_IRQ_PROBE=y | 12 | CONFIG_GENERIC_IRQ_PROBE=y |
| 12 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
| 13 | # CONFIG_GENERIC_TIME is not set | 14 | # CONFIG_GENERIC_TIME is not set |
| 15 | # CONFIG_GENERIC_CLOCKEVENTS is not set | ||
| 14 | CONFIG_STACKTRACE_SUPPORT=y | 16 | CONFIG_STACKTRACE_SUPPORT=y |
| 15 | CONFIG_LOCKDEP_SUPPORT=y | 17 | CONFIG_LOCKDEP_SUPPORT=y |
| 18 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
| 19 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
| 16 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | 20 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" |
| 17 | 21 | ||
| 18 | # | 22 | # |
| @@ -31,8 +35,10 @@ CONFIG_LOCALVERSION="" | |||
| 31 | # CONFIG_BSD_PROCESS_ACCT is not set | 35 | # CONFIG_BSD_PROCESS_ACCT is not set |
| 32 | # CONFIG_UTS_NS is not set | 36 | # CONFIG_UTS_NS is not set |
| 33 | # CONFIG_IKCONFIG is not set | 37 | # CONFIG_IKCONFIG is not set |
| 38 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 39 | CONFIG_SYSFS_DEPRECATED=y | ||
| 34 | # CONFIG_RELAY is not set | 40 | # CONFIG_RELAY is not set |
| 35 | CONFIG_INITRAMFS_SOURCE="" | 41 | # CONFIG_BLK_DEV_INITRD is not set |
| 36 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 42 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
| 37 | CONFIG_SYSCTL=y | 43 | CONFIG_SYSCTL=y |
| 38 | CONFIG_EMBEDDED=y | 44 | CONFIG_EMBEDDED=y |
| @@ -45,12 +51,17 @@ CONFIG_BUG=y | |||
| 45 | # CONFIG_ELF_CORE is not set | 51 | # CONFIG_ELF_CORE is not set |
| 46 | # CONFIG_BASE_FULL is not set | 52 | # CONFIG_BASE_FULL is not set |
| 47 | # CONFIG_FUTEX is not set | 53 | # CONFIG_FUTEX is not set |
| 54 | CONFIG_ANON_INODES=y | ||
| 48 | # CONFIG_EPOLL is not set | 55 | # CONFIG_EPOLL is not set |
| 49 | CONFIG_SLAB=y | 56 | CONFIG_SIGNALFD=y |
| 57 | CONFIG_TIMERFD=y | ||
| 58 | CONFIG_EVENTFD=y | ||
| 50 | # CONFIG_VM_EVENT_COUNTERS is not set | 59 | # CONFIG_VM_EVENT_COUNTERS is not set |
| 60 | CONFIG_SLAB=y | ||
| 61 | # CONFIG_SLUB is not set | ||
| 62 | # CONFIG_SLOB is not set | ||
| 51 | CONFIG_TINY_SHMEM=y | 63 | CONFIG_TINY_SHMEM=y |
| 52 | CONFIG_BASE_SMALL=1 | 64 | CONFIG_BASE_SMALL=1 |
| 53 | # CONFIG_SLOB is not set | ||
| 54 | 65 | ||
| 55 | # | 66 | # |
| 56 | # Loadable module support | 67 | # Loadable module support |
| @@ -80,52 +91,9 @@ CONFIG_DEFAULT_IOSCHED="noop" | |||
| 80 | # | 91 | # |
| 81 | # System type | 92 | # System type |
| 82 | # | 93 | # |
| 83 | # CONFIG_SH_SOLUTION_ENGINE is not set | ||
| 84 | # CONFIG_SH_7751_SOLUTION_ENGINE is not set | ||
| 85 | # CONFIG_SH_7300_SOLUTION_ENGINE is not set | ||
| 86 | # CONFIG_SH_7343_SOLUTION_ENGINE is not set | ||
| 87 | # CONFIG_SH_73180_SOLUTION_ENGINE is not set | ||
| 88 | # CONFIG_SH_7751_SYSTEMH is not set | ||
| 89 | # CONFIG_SH_HP6XX is not set | ||
| 90 | # CONFIG_SH_EC3104 is not set | ||
| 91 | # CONFIG_SH_SATURN is not set | ||
| 92 | # CONFIG_SH_DREAMCAST is not set | ||
| 93 | # CONFIG_SH_BIGSUR is not set | ||
| 94 | # CONFIG_SH_MPC1211 is not set | ||
| 95 | # CONFIG_SH_SH03 is not set | ||
| 96 | # CONFIG_SH_SECUREEDGE5410 is not set | ||
| 97 | # CONFIG_SH_HS7751RVOIP is not set | ||
| 98 | # CONFIG_SH_7710VOIPGW is not set | ||
| 99 | # CONFIG_SH_RTS7751R2D is not set | ||
| 100 | # CONFIG_SH_R7780RP is not set | ||
| 101 | # CONFIG_SH_EDOSK7705 is not set | ||
| 102 | # CONFIG_SH_SH4202_MICRODEV is not set | ||
| 103 | # CONFIG_SH_LANDISK is not set | ||
| 104 | # CONFIG_SH_TITAN is not set | ||
| 105 | # CONFIG_SH_SHMIN is not set | ||
| 106 | # CONFIG_SH_7206_SOLUTION_ENGINE is not set | ||
| 107 | CONFIG_SH_7619_SOLUTION_ENGINE=y | ||
| 108 | # CONFIG_SH_UNKNOWN is not set | ||
| 109 | |||
| 110 | # | ||
| 111 | # Processor selection | ||
| 112 | # | ||
| 113 | CONFIG_CPU_SH2=y | 94 | CONFIG_CPU_SH2=y |
| 114 | |||
| 115 | # | ||
| 116 | # SH-2 Processor Support | ||
| 117 | # | ||
| 118 | # CONFIG_CPU_SUBTYPE_SH7604 is not set | ||
| 119 | CONFIG_CPU_SUBTYPE_SH7619=y | 95 | CONFIG_CPU_SUBTYPE_SH7619=y |
| 120 | |||
| 121 | # | ||
| 122 | # SH-2A Processor Support | ||
| 123 | # | ||
| 124 | # CONFIG_CPU_SUBTYPE_SH7206 is not set | 96 | # CONFIG_CPU_SUBTYPE_SH7206 is not set |
| 125 | |||
| 126 | # | ||
| 127 | # SH-3 Processor Support | ||
| 128 | # | ||
| 129 | # CONFIG_CPU_SUBTYPE_SH7300 is not set | 97 | # CONFIG_CPU_SUBTYPE_SH7300 is not set |
| 130 | # CONFIG_CPU_SUBTYPE_SH7705 is not set | 98 | # CONFIG_CPU_SUBTYPE_SH7705 is not set |
| 131 | # CONFIG_CPU_SUBTYPE_SH7706 is not set | 99 | # CONFIG_CPU_SUBTYPE_SH7706 is not set |
| @@ -133,10 +101,7 @@ CONFIG_CPU_SUBTYPE_SH7619=y | |||
| 133 | # CONFIG_CPU_SUBTYPE_SH7708 is not set | 101 | # CONFIG_CPU_SUBTYPE_SH7708 is not set |
| 134 | # CONFIG_CPU_SUBTYPE_SH7709 is not set | 102 | # CONFIG_CPU_SUBTYPE_SH7709 is not set |
| 135 | # CONFIG_CPU_SUBTYPE_SH7710 is not set | 103 | # CONFIG_CPU_SUBTYPE_SH7710 is not set |
| 136 | 104 | # CONFIG_CPU_SUBTYPE_SH7712 is not set | |
| 137 | # | ||
| 138 | # SH-4 Processor Support | ||
| 139 | # | ||
| 140 | # CONFIG_CPU_SUBTYPE_SH7750 is not set | 105 | # CONFIG_CPU_SUBTYPE_SH7750 is not set |
| 141 | # CONFIG_CPU_SUBTYPE_SH7091 is not set | 106 | # CONFIG_CPU_SUBTYPE_SH7091 is not set |
| 142 | # CONFIG_CPU_SUBTYPE_SH7750R is not set | 107 | # CONFIG_CPU_SUBTYPE_SH7750R is not set |
| @@ -145,32 +110,28 @@ CONFIG_CPU_SUBTYPE_SH7619=y | |||
| 145 | # CONFIG_CPU_SUBTYPE_SH7751R is not set | 110 | # CONFIG_CPU_SUBTYPE_SH7751R is not set |
| 146 | # CONFIG_CPU_SUBTYPE_SH7760 is not set | 111 | # CONFIG_CPU_SUBTYPE_SH7760 is not set |
| 147 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set | 112 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set |
| 148 | |||
| 149 | # | ||
| 150 | # ST40 Processor Support | ||
| 151 | # | ||
| 152 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set | 113 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set |
| 153 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set | 114 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set |
| 154 | |||
| 155 | # | ||
| 156 | # SH-4A Processor Support | ||
| 157 | # | ||
| 158 | # CONFIG_CPU_SUBTYPE_SH7770 is not set | 115 | # CONFIG_CPU_SUBTYPE_SH7770 is not set |
| 159 | # CONFIG_CPU_SUBTYPE_SH7780 is not set | 116 | # CONFIG_CPU_SUBTYPE_SH7780 is not set |
| 160 | # CONFIG_CPU_SUBTYPE_SH7785 is not set | 117 | # CONFIG_CPU_SUBTYPE_SH7785 is not set |
| 161 | |||
| 162 | # | ||
| 163 | # SH4AL-DSP Processor Support | ||
| 164 | # | ||
| 165 | # CONFIG_CPU_SUBTYPE_SH73180 is not set | 118 | # CONFIG_CPU_SUBTYPE_SH73180 is not set |
| 166 | # CONFIG_CPU_SUBTYPE_SH7343 is not set | 119 | # CONFIG_CPU_SUBTYPE_SH7343 is not set |
| 120 | # CONFIG_CPU_SUBTYPE_SH7722 is not set | ||
| 167 | 121 | ||
| 168 | # | 122 | # |
| 169 | # Memory management options | 123 | # Memory management options |
| 170 | # | 124 | # |
| 125 | CONFIG_QUICKLIST=y | ||
| 171 | CONFIG_PAGE_OFFSET=0x00000000 | 126 | CONFIG_PAGE_OFFSET=0x00000000 |
| 172 | CONFIG_MEMORY_START=0x0c000000 | 127 | CONFIG_MEMORY_START=0x0c000000 |
| 173 | CONFIG_MEMORY_SIZE=0x04000000 | 128 | CONFIG_MEMORY_SIZE=0x04000000 |
| 129 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
| 130 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
| 131 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y | ||
| 132 | CONFIG_MAX_ACTIVE_REGIONS=1 | ||
| 133 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
| 134 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | ||
| 174 | CONFIG_PAGE_SIZE_4KB=y | 135 | CONFIG_PAGE_SIZE_4KB=y |
| 175 | # CONFIG_PAGE_SIZE_8KB is not set | 136 | # CONFIG_PAGE_SIZE_8KB is not set |
| 176 | # CONFIG_PAGE_SIZE_64KB is not set | 137 | # CONFIG_PAGE_SIZE_64KB is not set |
| @@ -180,34 +141,41 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 180 | # CONFIG_SPARSEMEM_MANUAL is not set | 141 | # CONFIG_SPARSEMEM_MANUAL is not set |
| 181 | CONFIG_FLATMEM=y | 142 | CONFIG_FLATMEM=y |
| 182 | CONFIG_FLAT_NODE_MEM_MAP=y | 143 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 183 | # CONFIG_SPARSEMEM_STATIC is not set | 144 | CONFIG_SPARSEMEM_STATIC=y |
| 184 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 145 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
| 185 | # CONFIG_RESOURCES_64BIT is not set | 146 | # CONFIG_RESOURCES_64BIT is not set |
| 147 | CONFIG_ZONE_DMA_FLAG=0 | ||
| 148 | CONFIG_NR_QUICK=2 | ||
| 186 | 149 | ||
| 187 | # | 150 | # |
| 188 | # Cache configuration | 151 | # Cache configuration |
| 189 | # | 152 | # |
| 190 | # CONFIG_SH_DIRECT_MAPPED is not set | 153 | # CONFIG_SH_DIRECT_MAPPED is not set |
| 191 | CONFIG_SH_WRITETHROUGH=y | 154 | CONFIG_SH_WRITETHROUGH=y |
| 192 | # CONFIG_SH_OCRAM is not set | ||
| 193 | 155 | ||
| 194 | # | 156 | # |
| 195 | # Processor features | 157 | # Processor features |
| 196 | # | 158 | # |
| 197 | # CONFIG_CPU_LITTLE_ENDIAN is not set | 159 | # CONFIG_CPU_LITTLE_ENDIAN is not set |
| 198 | CONFIG_CPU_BIG_ENDIAN=y | 160 | CONFIG_CPU_BIG_ENDIAN=y |
| 199 | # CONFIG_SH_FPU is not set | ||
| 200 | # CONFIG_SH_FPU_EMU is not set | 161 | # CONFIG_SH_FPU_EMU is not set |
| 201 | # CONFIG_SH_DSP is not set | 162 | # CONFIG_SH_DSP is not set |
| 163 | CONFIG_CPU_HAS_IPR_IRQ=y | ||
| 164 | |||
| 165 | # | ||
| 166 | # Board support | ||
| 167 | # | ||
| 168 | CONFIG_SOLUTION_ENGINE=y | ||
| 169 | CONFIG_SH_7619_SOLUTION_ENGINE=y | ||
| 202 | 170 | ||
| 203 | # | 171 | # |
| 204 | # Timer support | 172 | # Timer and clock configuration |
| 205 | # | 173 | # |
| 206 | CONFIG_SH_CMT=y | 174 | CONFIG_SH_CMT=y |
| 207 | CONFIG_SH_TIMER_IRQ=86 | 175 | CONFIG_SH_TIMER_IRQ=86 |
| 208 | # CONFIG_NO_IDLE_HZ is not set | ||
| 209 | CONFIG_SH_PCLK_FREQ=31250000 | 176 | CONFIG_SH_PCLK_FREQ=31250000 |
| 210 | CONFIG_SH_CLK_MD=5 | 177 | CONFIG_SH_CLK_MD=5 |
| 178 | # CONFIG_TICK_ONESHOT is not set | ||
| 211 | 179 | ||
| 212 | # | 180 | # |
| 213 | # CPU Frequency scaling | 181 | # CPU Frequency scaling |
| @@ -222,11 +190,11 @@ CONFIG_SH_CLK_MD=5 | |||
| 222 | # | 190 | # |
| 223 | # Companion Chips | 191 | # Companion Chips |
| 224 | # | 192 | # |
| 225 | # CONFIG_HD6446X_SERIES is not set | ||
| 226 | 193 | ||
| 227 | # | 194 | # |
| 228 | # Additional SuperH Device Drivers | 195 | # Additional SuperH Device Drivers |
| 229 | # | 196 | # |
| 197 | # CONFIG_HEARTBEAT is not set | ||
| 230 | # CONFIG_PUSH_SWITCH is not set | 198 | # CONFIG_PUSH_SWITCH is not set |
| 231 | 199 | ||
| 232 | # | 200 | # |
| @@ -234,10 +202,11 @@ CONFIG_SH_CLK_MD=5 | |||
| 234 | # | 202 | # |
| 235 | CONFIG_HZ_100=y | 203 | CONFIG_HZ_100=y |
| 236 | # CONFIG_HZ_250 is not set | 204 | # CONFIG_HZ_250 is not set |
| 205 | # CONFIG_HZ_300 is not set | ||
| 237 | # CONFIG_HZ_1000 is not set | 206 | # CONFIG_HZ_1000 is not set |
| 238 | CONFIG_HZ=100 | 207 | CONFIG_HZ=100 |
| 239 | # CONFIG_KEXEC is not set | 208 | # CONFIG_KEXEC is not set |
| 240 | # CONFIG_SMP is not set | 209 | # CONFIG_CRASH_DUMP is not set |
| 241 | CONFIG_PREEMPT_NONE=y | 210 | CONFIG_PREEMPT_NONE=y |
| 242 | # CONFIG_PREEMPT_VOLUNTARY is not set | 211 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 243 | # CONFIG_PREEMPT is not set | 212 | # CONFIG_PREEMPT is not set |
| @@ -247,23 +216,18 @@ CONFIG_PREEMPT_NONE=y | |||
| 247 | # | 216 | # |
| 248 | CONFIG_ZERO_PAGE_OFFSET=0x00001000 | 217 | CONFIG_ZERO_PAGE_OFFSET=0x00001000 |
| 249 | CONFIG_BOOT_LINK_OFFSET=0x00800000 | 218 | CONFIG_BOOT_LINK_OFFSET=0x00800000 |
| 250 | # CONFIG_UBC_WAKEUP is not set | ||
| 251 | # CONFIG_CMDLINE_BOOL is not set | 219 | # CONFIG_CMDLINE_BOOL is not set |
| 252 | 220 | ||
| 253 | # | 221 | # |
| 254 | # Bus options | 222 | # Bus options |
| 255 | # | 223 | # |
| 256 | # CONFIG_PCI is not set | 224 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
| 257 | 225 | ||
| 258 | # | 226 | # |
| 259 | # PCCARD (PCMCIA/CardBus) support | 227 | # PCCARD (PCMCIA/CardBus) support |
| 260 | # | 228 | # |
| 261 | 229 | ||
| 262 | # | 230 | # |
| 263 | # PCI Hotplug Support | ||
| 264 | # | ||
| 265 | |||
| 266 | # | ||
| 267 | # Executable file formats | 231 | # Executable file formats |
| 268 | # | 232 | # |
| 269 | CONFIG_BINFMT_FLAT=y | 233 | CONFIG_BINFMT_FLAT=y |
| @@ -272,11 +236,6 @@ CONFIG_BINFMT_ZFLAT=y | |||
| 272 | # CONFIG_BINFMT_MISC is not set | 236 | # CONFIG_BINFMT_MISC is not set |
| 273 | 237 | ||
| 274 | # | 238 | # |
| 275 | # Power management options (EXPERIMENTAL) | ||
| 276 | # | ||
| 277 | # CONFIG_PM is not set | ||
| 278 | |||
| 279 | # | ||
| 280 | # Networking | 239 | # Networking |
| 281 | # | 240 | # |
| 282 | # CONFIG_NET is not set | 241 | # CONFIG_NET is not set |
| @@ -295,10 +254,6 @@ CONFIG_BINFMT_ZFLAT=y | |||
| 295 | # | 254 | # |
| 296 | # Connector - unified userspace <-> kernelspace linker | 255 | # Connector - unified userspace <-> kernelspace linker |
| 297 | # | 256 | # |
| 298 | |||
| 299 | # | ||
| 300 | # Memory Technology Devices (MTD) | ||
| 301 | # | ||
| 302 | CONFIG_MTD=y | 257 | CONFIG_MTD=y |
| 303 | # CONFIG_MTD_DEBUG is not set | 258 | # CONFIG_MTD_DEBUG is not set |
| 304 | CONFIG_MTD_CONCAT=y | 259 | CONFIG_MTD_CONCAT=y |
| @@ -313,6 +268,7 @@ CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 | |||
| 313 | # User Modules And Translation Layers | 268 | # User Modules And Translation Layers |
| 314 | # | 269 | # |
| 315 | CONFIG_MTD_CHAR=y | 270 | CONFIG_MTD_CHAR=y |
| 271 | CONFIG_MTD_BLKDEVS=y | ||
| 316 | CONFIG_MTD_BLOCK=y | 272 | CONFIG_MTD_BLOCK=y |
| 317 | # CONFIG_FTL is not set | 273 | # CONFIG_FTL is not set |
| 318 | # CONFIG_NFTL is not set | 274 | # CONFIG_NFTL is not set |
| @@ -344,7 +300,6 @@ CONFIG_MTD_CFI_UTIL=y | |||
| 344 | # CONFIG_MTD_RAM is not set | 300 | # CONFIG_MTD_RAM is not set |
| 345 | # CONFIG_MTD_ROM is not set | 301 | # CONFIG_MTD_ROM is not set |
| 346 | # CONFIG_MTD_ABSENT is not set | 302 | # CONFIG_MTD_ABSENT is not set |
| 347 | # CONFIG_MTD_OBSOLETE_CHIPS is not set | ||
| 348 | 303 | ||
| 349 | # | 304 | # |
| 350 | # Mapping drivers for chip access | 305 | # Mapping drivers for chip access |
| @@ -372,16 +327,13 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 | |||
| 372 | # CONFIG_MTD_DOC2000 is not set | 327 | # CONFIG_MTD_DOC2000 is not set |
| 373 | # CONFIG_MTD_DOC2001 is not set | 328 | # CONFIG_MTD_DOC2001 is not set |
| 374 | # CONFIG_MTD_DOC2001PLUS is not set | 329 | # CONFIG_MTD_DOC2001PLUS is not set |
| 375 | |||
| 376 | # | ||
| 377 | # NAND Flash Device Drivers | ||
| 378 | # | ||
| 379 | # CONFIG_MTD_NAND is not set | 330 | # CONFIG_MTD_NAND is not set |
| 331 | # CONFIG_MTD_ONENAND is not set | ||
| 380 | 332 | ||
| 381 | # | 333 | # |
| 382 | # OneNAND Flash Device Drivers | 334 | # UBI - Unsorted block images |
| 383 | # | 335 | # |
| 384 | # CONFIG_MTD_ONENAND is not set | 336 | # CONFIG_MTD_UBI is not set |
| 385 | 337 | ||
| 386 | # | 338 | # |
| 387 | # Parallel port support | 339 | # Parallel port support |
| @@ -391,6 +343,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 | |||
| 391 | # | 343 | # |
| 392 | # Plug and Play support | 344 | # Plug and Play support |
| 393 | # | 345 | # |
| 346 | # CONFIG_PNPACPI is not set | ||
| 394 | 347 | ||
| 395 | # | 348 | # |
| 396 | # Block devices | 349 | # Block devices |
| @@ -398,17 +351,12 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 | |||
| 398 | # CONFIG_BLK_DEV_COW_COMMON is not set | 351 | # CONFIG_BLK_DEV_COW_COMMON is not set |
| 399 | # CONFIG_BLK_DEV_LOOP is not set | 352 | # CONFIG_BLK_DEV_LOOP is not set |
| 400 | # CONFIG_BLK_DEV_RAM is not set | 353 | # CONFIG_BLK_DEV_RAM is not set |
| 401 | # CONFIG_BLK_DEV_INITRD is not set | ||
| 402 | # CONFIG_CDROM_PKTCDVD is not set | 354 | # CONFIG_CDROM_PKTCDVD is not set |
| 403 | 355 | ||
| 404 | # | 356 | # |
| 405 | # Misc devices | 357 | # Misc devices |
| 406 | # | 358 | # |
| 407 | # CONFIG_TIFM_CORE is not set | 359 | # CONFIG_BLINK is not set |
| 408 | |||
| 409 | # | ||
| 410 | # ATA/ATAPI/MFM/RLL support | ||
| 411 | # | ||
| 412 | # CONFIG_IDE is not set | 360 | # CONFIG_IDE is not set |
| 413 | 361 | ||
| 414 | # | 362 | # |
| @@ -417,10 +365,6 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 | |||
| 417 | # CONFIG_RAID_ATTRS is not set | 365 | # CONFIG_RAID_ATTRS is not set |
| 418 | # CONFIG_SCSI is not set | 366 | # CONFIG_SCSI is not set |
| 419 | # CONFIG_SCSI_NETLINK is not set | 367 | # CONFIG_SCSI_NETLINK is not set |
| 420 | |||
| 421 | # | ||
| 422 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
| 423 | # | ||
| 424 | # CONFIG_ATA is not set | 368 | # CONFIG_ATA is not set |
| 425 | 369 | ||
| 426 | # | 370 | # |
| @@ -429,19 +373,6 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 | |||
| 429 | # CONFIG_MD is not set | 373 | # CONFIG_MD is not set |
| 430 | 374 | ||
| 431 | # | 375 | # |
| 432 | # Fusion MPT device support | ||
| 433 | # | ||
| 434 | # CONFIG_FUSION is not set | ||
| 435 | |||
| 436 | # | ||
| 437 | # IEEE 1394 (FireWire) support | ||
| 438 | # | ||
| 439 | |||
| 440 | # | ||
| 441 | # I2O device support | ||
| 442 | # | ||
| 443 | |||
| 444 | # | ||
| 445 | # ISDN subsystem | 376 | # ISDN subsystem |
| 446 | # | 377 | # |
| 447 | 378 | ||
| @@ -471,6 +402,7 @@ CONFIG_INPUT=y | |||
| 471 | # CONFIG_INPUT_KEYBOARD is not set | 402 | # CONFIG_INPUT_KEYBOARD is not set |
| 472 | # CONFIG_INPUT_MOUSE is not set | 403 | # CONFIG_INPUT_MOUSE is not set |
| 473 | # CONFIG_INPUT_JOYSTICK is not set | 404 | # CONFIG_INPUT_JOYSTICK is not set |
| 405 | # CONFIG_INPUT_TABLET is not set | ||
| 474 | # CONFIG_INPUT_TOUCHSCREEN is not set | 406 | # CONFIG_INPUT_TOUCHSCREEN is not set |
| 475 | # CONFIG_INPUT_MISC is not set | 407 | # CONFIG_INPUT_MISC is not set |
| 476 | 408 | ||
| @@ -506,29 +438,15 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
| 506 | # IPMI | 438 | # IPMI |
| 507 | # | 439 | # |
| 508 | # CONFIG_IPMI_HANDLER is not set | 440 | # CONFIG_IPMI_HANDLER is not set |
| 509 | |||
| 510 | # | ||
| 511 | # Watchdog Cards | ||
| 512 | # | ||
| 513 | # CONFIG_WATCHDOG is not set | 441 | # CONFIG_WATCHDOG is not set |
| 514 | # CONFIG_HW_RANDOM is not set | 442 | # CONFIG_HW_RANDOM is not set |
| 515 | # CONFIG_GEN_RTC is not set | ||
| 516 | # CONFIG_DTLK is not set | ||
| 517 | # CONFIG_R3964 is not set | 443 | # CONFIG_R3964 is not set |
| 518 | |||
| 519 | # | ||
| 520 | # Ftape, the floppy tape device driver | ||
| 521 | # | ||
| 522 | # CONFIG_RAW_DRIVER is not set | 444 | # CONFIG_RAW_DRIVER is not set |
| 523 | 445 | ||
| 524 | # | 446 | # |
| 525 | # TPM devices | 447 | # TPM devices |
| 526 | # | 448 | # |
| 527 | # CONFIG_TCG_TPM is not set | 449 | # CONFIG_TCG_TPM is not set |
| 528 | |||
| 529 | # | ||
| 530 | # I2C support | ||
| 531 | # | ||
| 532 | # CONFIG_I2C is not set | 450 | # CONFIG_I2C is not set |
| 533 | 451 | ||
| 534 | # | 452 | # |
| @@ -541,26 +459,29 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
| 541 | # Dallas's 1-wire bus | 459 | # Dallas's 1-wire bus |
| 542 | # | 460 | # |
| 543 | # CONFIG_W1 is not set | 461 | # CONFIG_W1 is not set |
| 462 | # CONFIG_HWMON is not set | ||
| 544 | 463 | ||
| 545 | # | 464 | # |
| 546 | # Hardware Monitoring support | 465 | # Multifunction device drivers |
| 547 | # | 466 | # |
| 548 | # CONFIG_HWMON is not set | 467 | # CONFIG_MFD_SM501 is not set |
| 549 | # CONFIG_HWMON_VID is not set | ||
| 550 | 468 | ||
| 551 | # | 469 | # |
| 552 | # Multimedia devices | 470 | # Multimedia devices |
| 553 | # | 471 | # |
| 554 | # CONFIG_VIDEO_DEV is not set | 472 | # CONFIG_VIDEO_DEV is not set |
| 473 | CONFIG_DAB=y | ||
| 555 | 474 | ||
| 556 | # | 475 | # |
| 557 | # Digital Video Broadcasting Devices | 476 | # Graphics support |
| 558 | # | 477 | # |
| 478 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
| 559 | 479 | ||
| 560 | # | 480 | # |
| 561 | # Graphics support | 481 | # Display device support |
| 562 | # | 482 | # |
| 563 | # CONFIG_FIRMWARE_EDID is not set | 483 | # CONFIG_DISPLAY_SUPPORT is not set |
| 484 | # CONFIG_VGASTATE is not set | ||
| 564 | # CONFIG_FB is not set | 485 | # CONFIG_FB is not set |
| 565 | 486 | ||
| 566 | # | 487 | # |
| @@ -569,6 +490,12 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
| 569 | # CONFIG_SOUND is not set | 490 | # CONFIG_SOUND is not set |
| 570 | 491 | ||
| 571 | # | 492 | # |
| 493 | # HID Devices | ||
| 494 | # | ||
| 495 | CONFIG_HID=y | ||
| 496 | # CONFIG_HID_DEBUG is not set | ||
| 497 | |||
| 498 | # | ||
| 572 | # USB support | 499 | # USB support |
| 573 | # | 500 | # |
| 574 | # CONFIG_USB_ARCH_HAS_HCD is not set | 501 | # CONFIG_USB_ARCH_HAS_HCD is not set |
| @@ -583,10 +510,6 @@ CONFIG_SERIAL_CORE_CONSOLE=y | |||
| 583 | # USB Gadget Support | 510 | # USB Gadget Support |
| 584 | # | 511 | # |
| 585 | # CONFIG_USB_GADGET is not set | 512 | # CONFIG_USB_GADGET is not set |
| 586 | |||
| 587 | # | ||
| 588 | # MMC/SD Card support | ||
| 589 | # | ||
| 590 | # CONFIG_MMC is not set | 513 | # CONFIG_MMC is not set |
| 591 | 514 | ||
| 592 | # | 515 | # |
| @@ -668,7 +591,6 @@ CONFIG_PROC_FS=y | |||
| 668 | CONFIG_PROC_SYSCTL=y | 591 | CONFIG_PROC_SYSCTL=y |
| 669 | # CONFIG_SYSFS is not set | 592 | # CONFIG_SYSFS is not set |
| 670 | # CONFIG_TMPFS is not set | 593 | # CONFIG_TMPFS is not set |
| 671 | # CONFIG_HUGETLBFS is not set | ||
| 672 | # CONFIG_HUGETLB_PAGE is not set | 594 | # CONFIG_HUGETLB_PAGE is not set |
| 673 | CONFIG_RAMFS=y | 595 | CONFIG_RAMFS=y |
| 674 | 596 | ||
| @@ -682,7 +604,6 @@ CONFIG_RAMFS=y | |||
| 682 | # CONFIG_BEFS_FS is not set | 604 | # CONFIG_BEFS_FS is not set |
| 683 | # CONFIG_BFS_FS is not set | 605 | # CONFIG_BFS_FS is not set |
| 684 | # CONFIG_EFS_FS is not set | 606 | # CONFIG_EFS_FS is not set |
| 685 | # CONFIG_JFFS_FS is not set | ||
| 686 | # CONFIG_JFFS2_FS is not set | 607 | # CONFIG_JFFS2_FS is not set |
| 687 | # CONFIG_CRAMFS is not set | 608 | # CONFIG_CRAMFS is not set |
| 688 | # CONFIG_VXFS_FS is not set | 609 | # CONFIG_VXFS_FS is not set |
| @@ -715,14 +636,11 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y | |||
| 715 | # CONFIG_ENABLE_MUST_CHECK is not set | 636 | # CONFIG_ENABLE_MUST_CHECK is not set |
| 716 | # CONFIG_MAGIC_SYSRQ is not set | 637 | # CONFIG_MAGIC_SYSRQ is not set |
| 717 | # CONFIG_UNUSED_SYMBOLS is not set | 638 | # CONFIG_UNUSED_SYMBOLS is not set |
| 639 | # CONFIG_HEADERS_CHECK is not set | ||
| 718 | # CONFIG_DEBUG_KERNEL is not set | 640 | # CONFIG_DEBUG_KERNEL is not set |
| 719 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 720 | # CONFIG_DEBUG_BUGVERBOSE is not set | 641 | # CONFIG_DEBUG_BUGVERBOSE is not set |
| 721 | # CONFIG_UNWIND_INFO is not set | ||
| 722 | # CONFIG_HEADERS_CHECK is not set | ||
| 723 | # CONFIG_SH_STANDARD_BIOS is not set | 642 | # CONFIG_SH_STANDARD_BIOS is not set |
| 724 | # CONFIG_EARLY_SCIF_CONSOLE is not set | 643 | # CONFIG_EARLY_SCIF_CONSOLE is not set |
| 725 | # CONFIG_KGDB is not set | ||
| 726 | 644 | ||
| 727 | # | 645 | # |
| 728 | # Security options | 646 | # Security options |
| @@ -737,8 +655,13 @@ CONFIG_LOG_BUF_SHIFT=14 | |||
| 737 | # | 655 | # |
| 738 | # Library routines | 656 | # Library routines |
| 739 | # | 657 | # |
| 658 | CONFIG_BITREVERSE=y | ||
| 740 | # CONFIG_CRC_CCITT is not set | 659 | # CONFIG_CRC_CCITT is not set |
| 741 | # CONFIG_CRC16 is not set | 660 | # CONFIG_CRC16 is not set |
| 661 | # CONFIG_CRC_ITU_T is not set | ||
| 742 | CONFIG_CRC32=y | 662 | CONFIG_CRC32=y |
| 743 | # CONFIG_LIBCRC32C is not set | 663 | # CONFIG_LIBCRC32C is not set |
| 744 | CONFIG_ZLIB_INFLATE=y | 664 | CONFIG_ZLIB_INFLATE=y |
| 665 | CONFIG_HAS_IOMEM=y | ||
| 666 | CONFIG_HAS_IOPORT=y | ||
| 667 | CONFIG_HAS_DMA=y | ||
diff --git a/arch/sh/configs/se7722_defconfig b/arch/sh/configs/se7722_defconfig index ca4c663dfa37..764b813c4051 100644 --- a/arch/sh/configs/se7722_defconfig +++ b/arch/sh/configs/se7722_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.21-rc7 | 3 | # Linux kernel version: 2.6.22-rc4 |
| 4 | # Fri Apr 27 16:30:30 2007 | 4 | # Wed Jun 20 18:08:04 2007 |
| 5 | # | 5 | # |
| 6 | CONFIG_SUPERH=y | 6 | CONFIG_SUPERH=y |
| 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
| @@ -11,7 +11,9 @@ CONFIG_GENERIC_HWEIGHT=y | |||
| 11 | CONFIG_GENERIC_HARDIRQS=y | 11 | CONFIG_GENERIC_HARDIRQS=y |
| 12 | CONFIG_GENERIC_IRQ_PROBE=y | 12 | CONFIG_GENERIC_IRQ_PROBE=y |
| 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y | 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y |
| 14 | # CONFIG_GENERIC_TIME is not set | 14 | CONFIG_GENERIC_TIME=y |
| 15 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
| 16 | CONFIG_SYS_SUPPORTS_NUMA=y | ||
| 15 | CONFIG_STACKTRACE_SUPPORT=y | 17 | CONFIG_STACKTRACE_SUPPORT=y |
| 16 | CONFIG_LOCKDEP_SUPPORT=y | 18 | CONFIG_LOCKDEP_SUPPORT=y |
| 17 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 19 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
| @@ -43,6 +45,7 @@ CONFIG_BSD_PROCESS_ACCT=y | |||
| 43 | # CONFIG_AUDIT is not set | 45 | # CONFIG_AUDIT is not set |
| 44 | CONFIG_IKCONFIG=y | 46 | CONFIG_IKCONFIG=y |
| 45 | CONFIG_IKCONFIG_PROC=y | 47 | CONFIG_IKCONFIG_PROC=y |
| 48 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 46 | # CONFIG_SYSFS_DEPRECATED is not set | 49 | # CONFIG_SYSFS_DEPRECATED is not set |
| 47 | # CONFIG_RELAY is not set | 50 | # CONFIG_RELAY is not set |
| 48 | CONFIG_BLK_DEV_INITRD=y | 51 | CONFIG_BLK_DEV_INITRD=y |
| @@ -60,14 +63,20 @@ CONFIG_BUG=y | |||
| 60 | CONFIG_ELF_CORE=y | 63 | CONFIG_ELF_CORE=y |
| 61 | CONFIG_BASE_FULL=y | 64 | CONFIG_BASE_FULL=y |
| 62 | CONFIG_FUTEX=y | 65 | CONFIG_FUTEX=y |
| 66 | CONFIG_ANON_INODES=y | ||
| 63 | CONFIG_EPOLL=y | 67 | CONFIG_EPOLL=y |
| 68 | CONFIG_SIGNALFD=y | ||
| 69 | CONFIG_TIMERFD=y | ||
| 70 | CONFIG_EVENTFD=y | ||
| 64 | CONFIG_SHMEM=y | 71 | CONFIG_SHMEM=y |
| 65 | CONFIG_SLAB=y | ||
| 66 | CONFIG_VM_EVENT_COUNTERS=y | 72 | CONFIG_VM_EVENT_COUNTERS=y |
| 73 | CONFIG_SLUB_DEBUG=y | ||
| 74 | # CONFIG_SLAB is not set | ||
| 75 | CONFIG_SLUB=y | ||
| 76 | # CONFIG_SLOB is not set | ||
| 67 | CONFIG_RT_MUTEXES=y | 77 | CONFIG_RT_MUTEXES=y |
| 68 | # CONFIG_TINY_SHMEM is not set | 78 | # CONFIG_TINY_SHMEM is not set |
| 69 | CONFIG_BASE_SMALL=0 | 79 | CONFIG_BASE_SMALL=0 |
| 70 | # CONFIG_SLOB is not set | ||
| 71 | 80 | ||
| 72 | # | 81 | # |
| 73 | # Loadable module support | 82 | # Loadable module support |
| @@ -103,57 +112,12 @@ CONFIG_DEFAULT_IOSCHED="noop" | |||
| 103 | # | 112 | # |
| 104 | # System type | 113 | # System type |
| 105 | # | 114 | # |
| 106 | CONFIG_SOLUTION_ENGINE=y | ||
| 107 | # CONFIG_SH_SOLUTION_ENGINE is not set | ||
| 108 | CONFIG_SH_7722_SOLUTION_ENGINE=y | ||
| 109 | # CONFIG_SH_7751_SOLUTION_ENGINE is not set | ||
| 110 | # CONFIG_SH_7780_SOLUTION_ENGINE is not set | ||
| 111 | # CONFIG_SH_7300_SOLUTION_ENGINE is not set | ||
| 112 | # CONFIG_SH_7343_SOLUTION_ENGINE is not set | ||
| 113 | # CONFIG_SH_73180_SOLUTION_ENGINE is not set | ||
| 114 | # CONFIG_SH_7751_SYSTEMH is not set | ||
| 115 | # CONFIG_SH_HP6XX is not set | ||
| 116 | # CONFIG_SH_SATURN is not set | ||
| 117 | # CONFIG_SH_DREAMCAST is not set | ||
| 118 | # CONFIG_SH_MPC1211 is not set | ||
| 119 | # CONFIG_SH_SH03 is not set | ||
| 120 | # CONFIG_SH_SECUREEDGE5410 is not set | ||
| 121 | # CONFIG_SH_HS7751RVOIP is not set | ||
| 122 | # CONFIG_SH_7710VOIPGW is not set | ||
| 123 | # CONFIG_SH_RTS7751R2D is not set | ||
| 124 | # CONFIG_SH_HIGHLANDER is not set | ||
| 125 | # CONFIG_SH_EDOSK7705 is not set | ||
| 126 | # CONFIG_SH_SH4202_MICRODEV is not set | ||
| 127 | # CONFIG_SH_LANDISK is not set | ||
| 128 | # CONFIG_SH_TITAN is not set | ||
| 129 | # CONFIG_SH_SHMIN is not set | ||
| 130 | # CONFIG_SH_7206_SOLUTION_ENGINE is not set | ||
| 131 | # CONFIG_SH_7619_SOLUTION_ENGINE is not set | ||
| 132 | # CONFIG_SH_LBOX_RE2 is not set | ||
| 133 | # CONFIG_SH_UNKNOWN is not set | ||
| 134 | |||
| 135 | # | ||
| 136 | # Processor selection | ||
| 137 | # | ||
| 138 | CONFIG_CPU_SH4=y | 115 | CONFIG_CPU_SH4=y |
| 139 | CONFIG_CPU_SH4A=y | 116 | CONFIG_CPU_SH4A=y |
| 140 | CONFIG_CPU_SH4AL_DSP=y | 117 | CONFIG_CPU_SH4AL_DSP=y |
| 141 | CONFIG_CPU_SHX2=y | 118 | CONFIG_CPU_SHX2=y |
| 142 | |||
| 143 | # | ||
| 144 | # SH-2 Processor Support | ||
| 145 | # | ||
| 146 | # CONFIG_CPU_SUBTYPE_SH7604 is not set | ||
| 147 | # CONFIG_CPU_SUBTYPE_SH7619 is not set | 119 | # CONFIG_CPU_SUBTYPE_SH7619 is not set |
| 148 | |||
| 149 | # | ||
| 150 | # SH-2A Processor Support | ||
| 151 | # | ||
| 152 | # CONFIG_CPU_SUBTYPE_SH7206 is not set | 120 | # CONFIG_CPU_SUBTYPE_SH7206 is not set |
| 153 | |||
| 154 | # | ||
| 155 | # SH-3 Processor Support | ||
| 156 | # | ||
| 157 | # CONFIG_CPU_SUBTYPE_SH7300 is not set | 121 | # CONFIG_CPU_SUBTYPE_SH7300 is not set |
| 158 | # CONFIG_CPU_SUBTYPE_SH7705 is not set | 122 | # CONFIG_CPU_SUBTYPE_SH7705 is not set |
| 159 | # CONFIG_CPU_SUBTYPE_SH7706 is not set | 123 | # CONFIG_CPU_SUBTYPE_SH7706 is not set |
| @@ -162,10 +126,6 @@ CONFIG_CPU_SHX2=y | |||
| 162 | # CONFIG_CPU_SUBTYPE_SH7709 is not set | 126 | # CONFIG_CPU_SUBTYPE_SH7709 is not set |
| 163 | # CONFIG_CPU_SUBTYPE_SH7710 is not set | 127 | # CONFIG_CPU_SUBTYPE_SH7710 is not set |
| 164 | # CONFIG_CPU_SUBTYPE_SH7712 is not set | 128 | # CONFIG_CPU_SUBTYPE_SH7712 is not set |
| 165 | |||
| 166 | # | ||
| 167 | # SH-4 Processor Support | ||
| 168 | # | ||
| 169 | # CONFIG_CPU_SUBTYPE_SH7750 is not set | 129 | # CONFIG_CPU_SUBTYPE_SH7750 is not set |
| 170 | # CONFIG_CPU_SUBTYPE_SH7091 is not set | 130 | # CONFIG_CPU_SUBTYPE_SH7091 is not set |
| 171 | # CONFIG_CPU_SUBTYPE_SH7750R is not set | 131 | # CONFIG_CPU_SUBTYPE_SH7750R is not set |
| @@ -174,23 +134,11 @@ CONFIG_CPU_SHX2=y | |||
| 174 | # CONFIG_CPU_SUBTYPE_SH7751R is not set | 134 | # CONFIG_CPU_SUBTYPE_SH7751R is not set |
| 175 | # CONFIG_CPU_SUBTYPE_SH7760 is not set | 135 | # CONFIG_CPU_SUBTYPE_SH7760 is not set |
| 176 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set | 136 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set |
| 177 | |||
| 178 | # | ||
| 179 | # ST40 Processor Support | ||
| 180 | # | ||
| 181 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set | 137 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set |
| 182 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set | 138 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set |
| 183 | |||
| 184 | # | ||
| 185 | # SH-4A Processor Support | ||
| 186 | # | ||
| 187 | # CONFIG_CPU_SUBTYPE_SH7770 is not set | 139 | # CONFIG_CPU_SUBTYPE_SH7770 is not set |
| 188 | # CONFIG_CPU_SUBTYPE_SH7780 is not set | 140 | # CONFIG_CPU_SUBTYPE_SH7780 is not set |
| 189 | # CONFIG_CPU_SUBTYPE_SH7785 is not set | 141 | # CONFIG_CPU_SUBTYPE_SH7785 is not set |
| 190 | |||
| 191 | # | ||
| 192 | # SH4AL-DSP Processor Support | ||
| 193 | # | ||
| 194 | # CONFIG_CPU_SUBTYPE_SH73180 is not set | 142 | # CONFIG_CPU_SUBTYPE_SH73180 is not set |
| 195 | # CONFIG_CPU_SUBTYPE_SH7343 is not set | 143 | # CONFIG_CPU_SUBTYPE_SH7343 is not set |
| 196 | CONFIG_CPU_SUBTYPE_SH7722=y | 144 | CONFIG_CPU_SUBTYPE_SH7722=y |
| @@ -198,15 +146,21 @@ CONFIG_CPU_SUBTYPE_SH7722=y | |||
| 198 | # | 146 | # |
| 199 | # Memory management options | 147 | # Memory management options |
| 200 | # | 148 | # |
| 149 | CONFIG_QUICKLIST=y | ||
| 201 | CONFIG_MMU=y | 150 | CONFIG_MMU=y |
| 202 | CONFIG_PAGE_OFFSET=0x80000000 | 151 | CONFIG_PAGE_OFFSET=0x80000000 |
| 203 | CONFIG_MEMORY_START=0x0c000000 | 152 | CONFIG_MEMORY_START=0x0c000000 |
| 204 | CONFIG_MEMORY_SIZE=0x04000000 | 153 | CONFIG_MEMORY_SIZE=0x04000000 |
| 205 | # CONFIG_32BIT is not set | ||
| 206 | # CONFIG_X2TLB is not set | 154 | # CONFIG_X2TLB is not set |
| 207 | CONFIG_VSYSCALL=y | 155 | CONFIG_VSYSCALL=y |
| 208 | CONFIG_ARCH_FLATMEM_ENABLE=y | 156 | CONFIG_NUMA=y |
| 157 | CONFIG_NODES_SHIFT=1 | ||
| 158 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
| 159 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y | ||
| 160 | CONFIG_MAX_ACTIVE_REGIONS=2 | ||
| 209 | CONFIG_ARCH_POPULATES_NODE_MAP=y | 161 | CONFIG_ARCH_POPULATES_NODE_MAP=y |
| 162 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | ||
| 163 | CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y | ||
| 210 | CONFIG_PAGE_SIZE_4KB=y | 164 | CONFIG_PAGE_SIZE_4KB=y |
| 211 | # CONFIG_PAGE_SIZE_8KB is not set | 165 | # CONFIG_PAGE_SIZE_8KB is not set |
| 212 | # CONFIG_PAGE_SIZE_64KB is not set | 166 | # CONFIG_PAGE_SIZE_64KB is not set |
| @@ -216,26 +170,25 @@ CONFIG_HUGETLB_PAGE_SIZE_64K=y | |||
| 216 | # CONFIG_HUGETLB_PAGE_SIZE_4MB is not set | 170 | # CONFIG_HUGETLB_PAGE_SIZE_4MB is not set |
| 217 | # CONFIG_HUGETLB_PAGE_SIZE_64MB is not set | 171 | # CONFIG_HUGETLB_PAGE_SIZE_64MB is not set |
| 218 | CONFIG_SELECT_MEMORY_MODEL=y | 172 | CONFIG_SELECT_MEMORY_MODEL=y |
| 219 | CONFIG_FLATMEM_MANUAL=y | 173 | # CONFIG_FLATMEM_MANUAL is not set |
| 220 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 174 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
| 221 | # CONFIG_SPARSEMEM_MANUAL is not set | 175 | CONFIG_SPARSEMEM_MANUAL=y |
| 222 | CONFIG_FLATMEM=y | 176 | CONFIG_SPARSEMEM=y |
| 223 | CONFIG_FLAT_NODE_MEM_MAP=y | 177 | CONFIG_NEED_MULTIPLE_NODES=y |
| 224 | # CONFIG_SPARSEMEM_STATIC is not set | 178 | CONFIG_HAVE_MEMORY_PRESENT=y |
| 179 | CONFIG_SPARSEMEM_STATIC=y | ||
| 180 | # CONFIG_MEMORY_HOTPLUG is not set | ||
| 225 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 181 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
| 182 | CONFIG_MIGRATION=y | ||
| 226 | # CONFIG_RESOURCES_64BIT is not set | 183 | # CONFIG_RESOURCES_64BIT is not set |
| 227 | CONFIG_ZONE_DMA_FLAG=0 | 184 | CONFIG_ZONE_DMA_FLAG=0 |
| 185 | CONFIG_NR_QUICK=2 | ||
| 228 | 186 | ||
| 229 | # | 187 | # |
| 230 | # Cache configuration | 188 | # Cache configuration |
| 231 | # | 189 | # |
| 232 | # CONFIG_SH_DIRECT_MAPPED is not set | 190 | # CONFIG_SH_DIRECT_MAPPED is not set |
| 233 | # CONFIG_SH_WRITETHROUGH is not set | 191 | # CONFIG_SH_WRITETHROUGH is not set |
| 234 | # CONFIG_SH_OCRAM is not set | ||
| 235 | CONFIG_CF_ENABLER=y | ||
| 236 | # CONFIG_CF_AREA5 is not set | ||
| 237 | CONFIG_CF_AREA6=y | ||
| 238 | CONFIG_CF_BASE_ADDR=0xb8000000 | ||
| 239 | 192 | ||
| 240 | # | 193 | # |
| 241 | # Processor features | 194 | # Processor features |
| @@ -252,12 +205,20 @@ CONFIG_CPU_HAS_SR_RB=y | |||
| 252 | CONFIG_CPU_HAS_PTEA=y | 205 | CONFIG_CPU_HAS_PTEA=y |
| 253 | 206 | ||
| 254 | # | 207 | # |
| 208 | # Board support | ||
| 209 | # | ||
| 210 | CONFIG_SOLUTION_ENGINE=y | ||
| 211 | CONFIG_SH_7722_SOLUTION_ENGINE=y | ||
| 212 | |||
| 213 | # | ||
| 255 | # Timer and clock configuration | 214 | # Timer and clock configuration |
| 256 | # | 215 | # |
| 257 | CONFIG_SH_TMU=y | 216 | CONFIG_SH_TMU=y |
| 258 | CONFIG_SH_TIMER_IRQ=16 | 217 | CONFIG_SH_TIMER_IRQ=16 |
| 259 | CONFIG_NO_IDLE_HZ=y | ||
| 260 | CONFIG_SH_PCLK_FREQ=33333333 | 218 | CONFIG_SH_PCLK_FREQ=33333333 |
| 219 | CONFIG_TICK_ONESHOT=y | ||
| 220 | CONFIG_NO_HZ=y | ||
| 221 | CONFIG_HIGH_RES_TIMERS=y | ||
| 261 | 222 | ||
| 262 | # | 223 | # |
| 263 | # CPU Frequency scaling | 224 | # CPU Frequency scaling |
| @@ -272,7 +233,6 @@ CONFIG_SH_PCLK_FREQ=33333333 | |||
| 272 | # | 233 | # |
| 273 | # Companion Chips | 234 | # Companion Chips |
| 274 | # | 235 | # |
| 275 | # CONFIG_HD6446X_SERIES is not set | ||
| 276 | 236 | ||
| 277 | # | 237 | # |
| 278 | # Additional SuperH Device Drivers | 238 | # Additional SuperH Device Drivers |
| @@ -290,7 +250,6 @@ CONFIG_HZ_250=y | |||
| 290 | CONFIG_HZ=250 | 250 | CONFIG_HZ=250 |
| 291 | CONFIG_KEXEC=y | 251 | CONFIG_KEXEC=y |
| 292 | # CONFIG_CRASH_DUMP is not set | 252 | # CONFIG_CRASH_DUMP is not set |
| 293 | # CONFIG_SMP is not set | ||
| 294 | # CONFIG_PREEMPT_NONE is not set | 253 | # CONFIG_PREEMPT_NONE is not set |
| 295 | # CONFIG_PREEMPT_VOLUNTARY is not set | 254 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 296 | CONFIG_PREEMPT=y | 255 | CONFIG_PREEMPT=y |
| @@ -307,7 +266,11 @@ CONFIG_BOOT_LINK_OFFSET=0x00800000 | |||
| 307 | # | 266 | # |
| 308 | # Bus options | 267 | # Bus options |
| 309 | # | 268 | # |
| 310 | # CONFIG_PCI is not set | 269 | CONFIG_CF_ENABLER=y |
| 270 | # CONFIG_CF_AREA5 is not set | ||
| 271 | CONFIG_CF_AREA6=y | ||
| 272 | CONFIG_CF_BASE_ADDR=0xb8000000 | ||
| 273 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
| 311 | 274 | ||
| 312 | # | 275 | # |
| 313 | # PCCARD (PCMCIA/CardBus) support | 276 | # PCCARD (PCMCIA/CardBus) support |
| @@ -315,22 +278,12 @@ CONFIG_BOOT_LINK_OFFSET=0x00800000 | |||
| 315 | # CONFIG_PCCARD is not set | 278 | # CONFIG_PCCARD is not set |
| 316 | 279 | ||
| 317 | # | 280 | # |
| 318 | # PCI Hotplug Support | ||
| 319 | # | ||
| 320 | |||
| 321 | # | ||
| 322 | # Executable file formats | 281 | # Executable file formats |
| 323 | # | 282 | # |
| 324 | CONFIG_BINFMT_ELF=y | 283 | CONFIG_BINFMT_ELF=y |
| 325 | # CONFIG_BINFMT_FLAT is not set | ||
| 326 | # CONFIG_BINFMT_MISC is not set | 284 | # CONFIG_BINFMT_MISC is not set |
| 327 | 285 | ||
| 328 | # | 286 | # |
| 329 | # Power management options (EXPERIMENTAL) | ||
| 330 | # | ||
| 331 | # CONFIG_PM is not set | ||
| 332 | |||
| 333 | # | ||
| 334 | # Networking | 287 | # Networking |
| 335 | # | 288 | # |
| 336 | CONFIG_NET=y | 289 | CONFIG_NET=y |
| @@ -338,7 +291,6 @@ CONFIG_NET=y | |||
| 338 | # | 291 | # |
| 339 | # Networking options | 292 | # Networking options |
| 340 | # | 293 | # |
| 341 | # CONFIG_NETDEBUG is not set | ||
| 342 | CONFIG_PACKET=y | 294 | CONFIG_PACKET=y |
| 343 | CONFIG_PACKET_MMAP=y | 295 | CONFIG_PACKET_MMAP=y |
| 344 | CONFIG_UNIX=y | 296 | CONFIG_UNIX=y |
| @@ -375,20 +327,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
| 375 | # CONFIG_INET6_TUNNEL is not set | 327 | # CONFIG_INET6_TUNNEL is not set |
| 376 | # CONFIG_NETWORK_SECMARK is not set | 328 | # CONFIG_NETWORK_SECMARK is not set |
| 377 | # CONFIG_NETFILTER is not set | 329 | # CONFIG_NETFILTER is not set |
| 378 | |||
| 379 | # | ||
| 380 | # DCCP Configuration (EXPERIMENTAL) | ||
| 381 | # | ||
| 382 | # CONFIG_IP_DCCP is not set | 330 | # CONFIG_IP_DCCP is not set |
| 383 | |||
| 384 | # | ||
| 385 | # SCTP Configuration (EXPERIMENTAL) | ||
| 386 | # | ||
| 387 | # CONFIG_IP_SCTP is not set | 331 | # CONFIG_IP_SCTP is not set |
| 388 | |||
| 389 | # | ||
| 390 | # TIPC Configuration (EXPERIMENTAL) | ||
| 391 | # | ||
| 392 | # CONFIG_TIPC is not set | 332 | # CONFIG_TIPC is not set |
| 393 | # CONFIG_ATM is not set | 333 | # CONFIG_ATM is not set |
| 394 | # CONFIG_BRIDGE is not set | 334 | # CONFIG_BRIDGE is not set |
| @@ -414,7 +354,16 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
| 414 | # CONFIG_HAMRADIO is not set | 354 | # CONFIG_HAMRADIO is not set |
| 415 | # CONFIG_IRDA is not set | 355 | # CONFIG_IRDA is not set |
| 416 | # CONFIG_BT is not set | 356 | # CONFIG_BT is not set |
| 357 | # CONFIG_AF_RXRPC is not set | ||
| 358 | |||
| 359 | # | ||
| 360 | # Wireless | ||
| 361 | # | ||
| 362 | # CONFIG_CFG80211 is not set | ||
| 363 | # CONFIG_WIRELESS_EXT is not set | ||
| 364 | # CONFIG_MAC80211 is not set | ||
| 417 | # CONFIG_IEEE80211 is not set | 365 | # CONFIG_IEEE80211 is not set |
| 366 | # CONFIG_RFKILL is not set | ||
| 418 | 367 | ||
| 419 | # | 368 | # |
| 420 | # Device Drivers | 369 | # Device Drivers |
| @@ -432,10 +381,6 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
| 432 | # Connector - unified userspace <-> kernelspace linker | 381 | # Connector - unified userspace <-> kernelspace linker |
| 433 | # | 382 | # |
| 434 | # CONFIG_CONNECTOR is not set | 383 | # CONFIG_CONNECTOR is not set |
| 435 | |||
| 436 | # | ||
| 437 | # Memory Technology Devices (MTD) | ||
| 438 | # | ||
| 439 | # CONFIG_MTD is not set | 384 | # CONFIG_MTD is not set |
| 440 | 385 | ||
| 441 | # | 386 | # |
| @@ -464,10 +409,7 @@ CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | |||
| 464 | # | 409 | # |
| 465 | # Misc devices | 410 | # Misc devices |
| 466 | # | 411 | # |
| 467 | 412 | # CONFIG_BLINK is not set | |
| 468 | # | ||
| 469 | # ATA/ATAPI/MFM/RLL support | ||
| 470 | # | ||
| 471 | # CONFIG_IDE is not set | 413 | # CONFIG_IDE is not set |
| 472 | 414 | ||
| 473 | # | 415 | # |
| @@ -496,6 +438,7 @@ CONFIG_BLK_DEV_SD=y | |||
| 496 | # CONFIG_SCSI_CONSTANTS is not set | 438 | # CONFIG_SCSI_CONSTANTS is not set |
| 497 | # CONFIG_SCSI_LOGGING is not set | 439 | # CONFIG_SCSI_LOGGING is not set |
| 498 | # CONFIG_SCSI_SCAN_ASYNC is not set | 440 | # CONFIG_SCSI_SCAN_ASYNC is not set |
| 441 | CONFIG_SCSI_WAIT_SCAN=m | ||
| 499 | 442 | ||
| 500 | # | 443 | # |
| 501 | # SCSI Transports | 444 | # SCSI Transports |
| @@ -511,10 +454,6 @@ CONFIG_BLK_DEV_SD=y | |||
| 511 | # | 454 | # |
| 512 | # CONFIG_ISCSI_TCP is not set | 455 | # CONFIG_ISCSI_TCP is not set |
| 513 | # CONFIG_SCSI_DEBUG is not set | 456 | # CONFIG_SCSI_DEBUG is not set |
| 514 | |||
| 515 | # | ||
| 516 | # Serial ATA (prod) and Parallel ATA (experimental) drivers | ||
| 517 | # | ||
| 518 | CONFIG_ATA=y | 457 | CONFIG_ATA=y |
| 519 | # CONFIG_ATA_NONSTANDARD is not set | 458 | # CONFIG_ATA_NONSTANDARD is not set |
| 520 | CONFIG_PATA_PLATFORM=y | 459 | CONFIG_PATA_PLATFORM=y |
| @@ -525,19 +464,6 @@ CONFIG_PATA_PLATFORM=y | |||
| 525 | # CONFIG_MD is not set | 464 | # CONFIG_MD is not set |
| 526 | 465 | ||
| 527 | # | 466 | # |
| 528 | # Fusion MPT device support | ||
| 529 | # | ||
| 530 | # CONFIG_FUSION is not set | ||
| 531 | |||
| 532 | # | ||
| 533 | # IEEE 1394 (FireWire) support | ||
| 534 | # | ||
| 535 | |||
| 536 | # | ||
| 537 | # I2O device support | ||
| 538 | # | ||
| 539 | |||
| 540 | # | ||
| 541 | # Network device support | 467 | # Network device support |
| 542 | # | 468 | # |
| 543 | CONFIG_NETDEVICES=y | 469 | CONFIG_NETDEVICES=y |
| @@ -545,10 +471,6 @@ CONFIG_NETDEVICES=y | |||
| 545 | # CONFIG_BONDING is not set | 471 | # CONFIG_BONDING is not set |
| 546 | # CONFIG_EQUALIZER is not set | 472 | # CONFIG_EQUALIZER is not set |
| 547 | # CONFIG_TUN is not set | 473 | # CONFIG_TUN is not set |
| 548 | |||
| 549 | # | ||
| 550 | # PHY device support | ||
| 551 | # | ||
| 552 | # CONFIG_PHYLIB is not set | 474 | # CONFIG_PHYLIB is not set |
| 553 | 475 | ||
| 554 | # | 476 | # |
| @@ -558,27 +480,14 @@ CONFIG_NET_ETHERNET=y | |||
| 558 | CONFIG_MII=y | 480 | CONFIG_MII=y |
| 559 | # CONFIG_STNIC is not set | 481 | # CONFIG_STNIC is not set |
| 560 | CONFIG_SMC91X=y | 482 | CONFIG_SMC91X=y |
| 483 | CONFIG_NETDEV_1000=y | ||
| 484 | CONFIG_NETDEV_10000=y | ||
| 561 | 485 | ||
| 562 | # | 486 | # |
| 563 | # Ethernet (1000 Mbit) | 487 | # Wireless LAN |
| 564 | # | ||
| 565 | |||
| 566 | # | ||
| 567 | # Ethernet (10000 Mbit) | ||
| 568 | # | ||
| 569 | |||
| 570 | # | ||
| 571 | # Token Ring devices | ||
| 572 | # | ||
| 573 | |||
| 574 | # | ||
| 575 | # Wireless LAN (non-hamradio) | ||
| 576 | # | ||
| 577 | # CONFIG_NET_RADIO is not set | ||
| 578 | |||
| 579 | # | ||
| 580 | # Wan interfaces | ||
| 581 | # | 488 | # |
| 489 | # CONFIG_WLAN_PRE80211 is not set | ||
| 490 | # CONFIG_WLAN_80211 is not set | ||
| 582 | # CONFIG_WAN is not set | 491 | # CONFIG_WAN is not set |
| 583 | # CONFIG_PPP is not set | 492 | # CONFIG_PPP is not set |
| 584 | # CONFIG_SLIP is not set | 493 | # CONFIG_SLIP is not set |
| @@ -627,6 +536,7 @@ CONFIG_KEYBOARD_ATKBD=y | |||
| 627 | # CONFIG_KEYBOARD_STOWAWAY is not set | 536 | # CONFIG_KEYBOARD_STOWAWAY is not set |
| 628 | # CONFIG_INPUT_MOUSE is not set | 537 | # CONFIG_INPUT_MOUSE is not set |
| 629 | # CONFIG_INPUT_JOYSTICK is not set | 538 | # CONFIG_INPUT_JOYSTICK is not set |
| 539 | # CONFIG_INPUT_TABLET is not set | ||
| 630 | # CONFIG_INPUT_TOUCHSCREEN is not set | 540 | # CONFIG_INPUT_TOUCHSCREEN is not set |
| 631 | # CONFIG_INPUT_MISC is not set | 541 | # CONFIG_INPUT_MISC is not set |
| 632 | 542 | ||
| @@ -667,14 +577,8 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 667 | # IPMI | 577 | # IPMI |
| 668 | # | 578 | # |
| 669 | # CONFIG_IPMI_HANDLER is not set | 579 | # CONFIG_IPMI_HANDLER is not set |
| 670 | |||
| 671 | # | ||
| 672 | # Watchdog Cards | ||
| 673 | # | ||
| 674 | # CONFIG_WATCHDOG is not set | 580 | # CONFIG_WATCHDOG is not set |
| 675 | CONFIG_HW_RANDOM=y | 581 | CONFIG_HW_RANDOM=y |
| 676 | # CONFIG_GEN_RTC is not set | ||
| 677 | # CONFIG_DTLK is not set | ||
| 678 | # CONFIG_R3964 is not set | 582 | # CONFIG_R3964 is not set |
| 679 | # CONFIG_RAW_DRIVER is not set | 583 | # CONFIG_RAW_DRIVER is not set |
| 680 | 584 | ||
| @@ -682,10 +586,6 @@ CONFIG_HW_RANDOM=y | |||
| 682 | # TPM devices | 586 | # TPM devices |
| 683 | # | 587 | # |
| 684 | # CONFIG_TCG_TPM is not set | 588 | # CONFIG_TCG_TPM is not set |
| 685 | |||
| 686 | # | ||
| 687 | # I2C support | ||
| 688 | # | ||
| 689 | # CONFIG_I2C is not set | 589 | # CONFIG_I2C is not set |
| 690 | 590 | ||
| 691 | # | 591 | # |
| @@ -698,16 +598,15 @@ CONFIG_HW_RANDOM=y | |||
| 698 | # Dallas's 1-wire bus | 598 | # Dallas's 1-wire bus |
| 699 | # | 599 | # |
| 700 | # CONFIG_W1 is not set | 600 | # CONFIG_W1 is not set |
| 701 | |||
| 702 | # | ||
| 703 | # Hardware Monitoring support | ||
| 704 | # | ||
| 705 | CONFIG_HWMON=y | 601 | CONFIG_HWMON=y |
| 706 | # CONFIG_HWMON_VID is not set | 602 | # CONFIG_HWMON_VID is not set |
| 707 | # CONFIG_SENSORS_ABITUGURU is not set | 603 | # CONFIG_SENSORS_ABITUGURU is not set |
| 708 | # CONFIG_SENSORS_F71805F is not set | 604 | # CONFIG_SENSORS_F71805F is not set |
| 709 | # CONFIG_SENSORS_PC87427 is not set | 605 | # CONFIG_SENSORS_PC87427 is not set |
| 606 | # CONFIG_SENSORS_SMSC47M1 is not set | ||
| 607 | # CONFIG_SENSORS_SMSC47B397 is not set | ||
| 710 | # CONFIG_SENSORS_VT1211 is not set | 608 | # CONFIG_SENSORS_VT1211 is not set |
| 609 | # CONFIG_SENSORS_W83627HF is not set | ||
| 711 | # CONFIG_HWMON_DEBUG_CHIP is not set | 610 | # CONFIG_HWMON_DEBUG_CHIP is not set |
| 712 | 611 | ||
| 713 | # | 612 | # |
| @@ -719,16 +618,19 @@ CONFIG_HWMON=y | |||
| 719 | # Multimedia devices | 618 | # Multimedia devices |
| 720 | # | 619 | # |
| 721 | # CONFIG_VIDEO_DEV is not set | 620 | # CONFIG_VIDEO_DEV is not set |
| 621 | # CONFIG_DVB_CORE is not set | ||
| 622 | CONFIG_DAB=y | ||
| 722 | 623 | ||
| 723 | # | 624 | # |
| 724 | # Digital Video Broadcasting Devices | 625 | # Graphics support |
| 725 | # | 626 | # |
| 726 | # CONFIG_DVB is not set | 627 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
| 727 | 628 | ||
| 728 | # | 629 | # |
| 729 | # Graphics support | 630 | # Display device support |
| 730 | # | 631 | # |
| 731 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 632 | # CONFIG_DISPLAY_SUPPORT is not set |
| 633 | # CONFIG_VGASTATE is not set | ||
| 732 | # CONFIG_FB is not set | 634 | # CONFIG_FB is not set |
| 733 | 635 | ||
| 734 | # | 636 | # |
| @@ -757,10 +659,6 @@ CONFIG_HID=y | |||
| 757 | # USB Gadget Support | 659 | # USB Gadget Support |
| 758 | # | 660 | # |
| 759 | # CONFIG_USB_GADGET is not set | 661 | # CONFIG_USB_GADGET is not set |
| 760 | |||
| 761 | # | ||
| 762 | # MMC/SD Card support | ||
| 763 | # | ||
| 764 | # CONFIG_MMC is not set | 662 | # CONFIG_MMC is not set |
| 765 | 663 | ||
| 766 | # | 664 | # |
| @@ -800,18 +698,30 @@ CONFIG_RTC_INTF_SYSFS=y | |||
| 800 | CONFIG_RTC_INTF_PROC=y | 698 | CONFIG_RTC_INTF_PROC=y |
| 801 | CONFIG_RTC_INTF_DEV=y | 699 | CONFIG_RTC_INTF_DEV=y |
| 802 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | 700 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set |
| 701 | # CONFIG_RTC_DRV_TEST is not set | ||
| 803 | 702 | ||
| 804 | # | 703 | # |
| 805 | # RTC drivers | 704 | # I2C RTC drivers |
| 705 | # | ||
| 706 | |||
| 707 | # | ||
| 708 | # SPI RTC drivers | ||
| 709 | # | ||
| 710 | |||
| 711 | # | ||
| 712 | # Platform RTC drivers | ||
| 806 | # | 713 | # |
| 807 | # CONFIG_RTC_DRV_DS1553 is not set | 714 | # CONFIG_RTC_DRV_DS1553 is not set |
| 808 | # CONFIG_RTC_DRV_DS1742 is not set | 715 | # CONFIG_RTC_DRV_DS1742 is not set |
| 809 | # CONFIG_RTC_DRV_M48T86 is not set | 716 | # CONFIG_RTC_DRV_M48T86 is not set |
| 810 | CONFIG_RTC_DRV_SH=y | ||
| 811 | # CONFIG_RTC_DRV_TEST is not set | ||
| 812 | # CONFIG_RTC_DRV_V3020 is not set | 717 | # CONFIG_RTC_DRV_V3020 is not set |
| 813 | 718 | ||
| 814 | # | 719 | # |
| 720 | # on-CPU RTC drivers | ||
| 721 | # | ||
| 722 | CONFIG_RTC_DRV_SH=y | ||
| 723 | |||
| 724 | # | ||
| 815 | # DMA Engine support | 725 | # DMA Engine support |
| 816 | # | 726 | # |
| 817 | # CONFIG_DMA_ENGINE is not set | 727 | # CONFIG_DMA_ENGINE is not set |
| @@ -825,14 +735,6 @@ CONFIG_RTC_DRV_SH=y | |||
| 825 | # | 735 | # |
| 826 | 736 | ||
| 827 | # | 737 | # |
| 828 | # Auxiliary Display support | ||
| 829 | # | ||
| 830 | |||
| 831 | # | ||
| 832 | # Virtualization | ||
| 833 | # | ||
| 834 | |||
| 835 | # | ||
| 836 | # File systems | 738 | # File systems |
| 837 | # | 739 | # |
| 838 | CONFIG_EXT2_FS=y | 740 | CONFIG_EXT2_FS=y |
| @@ -937,23 +839,24 @@ CONFIG_MSDOS_PARTITION=y | |||
| 937 | # | 839 | # |
| 938 | # Profiling support | 840 | # Profiling support |
| 939 | # | 841 | # |
| 940 | # CONFIG_PROFILING is not set | 842 | CONFIG_PROFILING=y |
| 843 | # CONFIG_OPROFILE is not set | ||
| 941 | 844 | ||
| 942 | # | 845 | # |
| 943 | # Kernel hacking | 846 | # Kernel hacking |
| 944 | # | 847 | # |
| 945 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | 848 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y |
| 946 | # CONFIG_PRINTK_TIME is not set | 849 | CONFIG_PRINTK_TIME=y |
| 947 | # CONFIG_ENABLE_MUST_CHECK is not set | 850 | # CONFIG_ENABLE_MUST_CHECK is not set |
| 948 | # CONFIG_MAGIC_SYSRQ is not set | 851 | CONFIG_MAGIC_SYSRQ=y |
| 949 | # CONFIG_UNUSED_SYMBOLS is not set | 852 | # CONFIG_UNUSED_SYMBOLS is not set |
| 950 | # CONFIG_DEBUG_FS is not set | 853 | CONFIG_DEBUG_FS=y |
| 951 | # CONFIG_HEADERS_CHECK is not set | 854 | # CONFIG_HEADERS_CHECK is not set |
| 952 | # CONFIG_DEBUG_KERNEL is not set | 855 | # CONFIG_DEBUG_KERNEL is not set |
| 953 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 954 | # CONFIG_DEBUG_BUGVERBOSE is not set | 856 | # CONFIG_DEBUG_BUGVERBOSE is not set |
| 955 | # CONFIG_SH_STANDARD_BIOS is not set | 857 | CONFIG_SH_STANDARD_BIOS=y |
| 956 | # CONFIG_EARLY_SCIF_CONSOLE is not set | 858 | # CONFIG_EARLY_SCIF_CONSOLE is not set |
| 859 | # CONFIG_EARLY_PRINTK is not set | ||
| 957 | # CONFIG_SH_KGDB is not set | 860 | # CONFIG_SH_KGDB is not set |
| 958 | 861 | ||
| 959 | # | 862 | # |
| @@ -973,8 +876,10 @@ CONFIG_LOG_BUF_SHIFT=14 | |||
| 973 | CONFIG_BITREVERSE=y | 876 | CONFIG_BITREVERSE=y |
| 974 | # CONFIG_CRC_CCITT is not set | 877 | # CONFIG_CRC_CCITT is not set |
| 975 | # CONFIG_CRC16 is not set | 878 | # CONFIG_CRC16 is not set |
| 879 | # CONFIG_CRC_ITU_T is not set | ||
| 976 | CONFIG_CRC32=y | 880 | CONFIG_CRC32=y |
| 977 | # CONFIG_LIBCRC32C is not set | 881 | # CONFIG_LIBCRC32C is not set |
| 978 | CONFIG_PLIST=y | 882 | CONFIG_PLIST=y |
| 979 | CONFIG_HAS_IOMEM=y | 883 | CONFIG_HAS_IOMEM=y |
| 980 | CONFIG_HAS_IOPORT=y | 884 | CONFIG_HAS_IOPORT=y |
| 885 | CONFIG_HAS_DMA=y | ||
diff --git a/arch/sh/configs/shx3_defconfig b/arch/sh/configs/shx3_defconfig new file mode 100644 index 000000000000..219bad558b10 --- /dev/null +++ b/arch/sh/configs/shx3_defconfig | |||
| @@ -0,0 +1,756 @@ | |||
| 1 | # | ||
| 2 | # Automatically generated make config: don't edit | ||
| 3 | # Linux kernel version: 2.6.22-rc4 | ||
| 4 | # Wed Jun 20 14:09:27 2007 | ||
| 5 | # | ||
| 6 | CONFIG_SUPERH=y | ||
| 7 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | ||
| 8 | CONFIG_GENERIC_BUG=y | ||
| 9 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
| 10 | CONFIG_GENERIC_HWEIGHT=y | ||
| 11 | CONFIG_GENERIC_HARDIRQS=y | ||
| 12 | CONFIG_GENERIC_IRQ_PROBE=y | ||
| 13 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
| 14 | CONFIG_GENERIC_TIME=y | ||
| 15 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
| 16 | CONFIG_STACKTRACE_SUPPORT=y | ||
| 17 | CONFIG_LOCKDEP_SUPPORT=y | ||
| 18 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | ||
| 19 | # CONFIG_ARCH_HAS_ILOG2_U64 is not set | ||
| 20 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
| 21 | |||
| 22 | # | ||
| 23 | # Code maturity level options | ||
| 24 | # | ||
| 25 | CONFIG_EXPERIMENTAL=y | ||
| 26 | CONFIG_BROKEN_ON_SMP=y | ||
| 27 | CONFIG_LOCK_KERNEL=y | ||
| 28 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
| 29 | |||
| 30 | # | ||
| 31 | # General setup | ||
| 32 | # | ||
| 33 | CONFIG_LOCALVERSION="" | ||
| 34 | CONFIG_LOCALVERSION_AUTO=y | ||
| 35 | CONFIG_SWAP=y | ||
| 36 | CONFIG_SYSVIPC=y | ||
| 37 | # CONFIG_IPC_NS is not set | ||
| 38 | CONFIG_SYSVIPC_SYSCTL=y | ||
| 39 | CONFIG_BSD_PROCESS_ACCT=y | ||
| 40 | # CONFIG_BSD_PROCESS_ACCT_V3 is not set | ||
| 41 | # CONFIG_UTS_NS is not set | ||
| 42 | CONFIG_IKCONFIG=y | ||
| 43 | CONFIG_IKCONFIG_PROC=y | ||
| 44 | CONFIG_LOG_BUF_SHIFT=14 | ||
| 45 | # CONFIG_SYSFS_DEPRECATED is not set | ||
| 46 | # CONFIG_RELAY is not set | ||
| 47 | CONFIG_BLK_DEV_INITRD=y | ||
| 48 | CONFIG_INITRAMFS_SOURCE="" | ||
| 49 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
| 50 | CONFIG_SYSCTL=y | ||
| 51 | CONFIG_EMBEDDED=y | ||
| 52 | CONFIG_UID16=y | ||
| 53 | CONFIG_SYSCTL_SYSCALL=y | ||
| 54 | CONFIG_KALLSYMS=y | ||
| 55 | CONFIG_KALLSYMS_ALL=y | ||
| 56 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
| 57 | CONFIG_HOTPLUG=y | ||
| 58 | CONFIG_PRINTK=y | ||
| 59 | CONFIG_BUG=y | ||
| 60 | CONFIG_ELF_CORE=y | ||
| 61 | CONFIG_BASE_FULL=y | ||
| 62 | CONFIG_FUTEX=y | ||
| 63 | CONFIG_ANON_INODES=y | ||
| 64 | CONFIG_EPOLL=y | ||
| 65 | CONFIG_SIGNALFD=y | ||
| 66 | CONFIG_TIMERFD=y | ||
| 67 | CONFIG_EVENTFD=y | ||
| 68 | CONFIG_SHMEM=y | ||
| 69 | CONFIG_VM_EVENT_COUNTERS=y | ||
| 70 | CONFIG_SLAB=y | ||
| 71 | # CONFIG_SLUB is not set | ||
| 72 | # CONFIG_SLOB is not set | ||
| 73 | CONFIG_RT_MUTEXES=y | ||
| 74 | # CONFIG_TINY_SHMEM is not set | ||
| 75 | CONFIG_BASE_SMALL=0 | ||
| 76 | |||
| 77 | # | ||
| 78 | # Loadable module support | ||
| 79 | # | ||
| 80 | CONFIG_MODULES=y | ||
| 81 | CONFIG_MODULE_UNLOAD=y | ||
| 82 | # CONFIG_MODULE_FORCE_UNLOAD is not set | ||
| 83 | # CONFIG_MODVERSIONS is not set | ||
| 84 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
| 85 | CONFIG_KMOD=y | ||
| 86 | |||
| 87 | # | ||
| 88 | # Block layer | ||
| 89 | # | ||
| 90 | CONFIG_BLOCK=y | ||
| 91 | # CONFIG_LBD is not set | ||
| 92 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
| 93 | # CONFIG_LSF is not set | ||
| 94 | |||
| 95 | # | ||
| 96 | # IO Schedulers | ||
| 97 | # | ||
| 98 | CONFIG_IOSCHED_NOOP=y | ||
| 99 | # CONFIG_IOSCHED_AS is not set | ||
| 100 | # CONFIG_IOSCHED_DEADLINE is not set | ||
| 101 | # CONFIG_IOSCHED_CFQ is not set | ||
| 102 | # CONFIG_DEFAULT_AS is not set | ||
| 103 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 104 | # CONFIG_DEFAULT_CFQ is not set | ||
| 105 | CONFIG_DEFAULT_NOOP=y | ||
| 106 | CONFIG_DEFAULT_IOSCHED="noop" | ||
| 107 | |||
| 108 | # | ||
| 109 | # System type | ||
| 110 | # | ||
| 111 | CONFIG_CPU_SH4=y | ||
| 112 | CONFIG_CPU_SH4A=y | ||
| 113 | CONFIG_CPU_SHX3=y | ||
| 114 | # CONFIG_CPU_SUBTYPE_SH7619 is not set | ||
| 115 | # CONFIG_CPU_SUBTYPE_SH7206 is not set | ||
| 116 | # CONFIG_CPU_SUBTYPE_SH7300 is not set | ||
| 117 | # CONFIG_CPU_SUBTYPE_SH7705 is not set | ||
| 118 | # CONFIG_CPU_SUBTYPE_SH7706 is not set | ||
| 119 | # CONFIG_CPU_SUBTYPE_SH7707 is not set | ||
| 120 | # CONFIG_CPU_SUBTYPE_SH7708 is not set | ||
| 121 | # CONFIG_CPU_SUBTYPE_SH7709 is not set | ||
| 122 | # CONFIG_CPU_SUBTYPE_SH7710 is not set | ||
| 123 | # CONFIG_CPU_SUBTYPE_SH7712 is not set | ||
| 124 | # CONFIG_CPU_SUBTYPE_SH7750 is not set | ||
| 125 | # CONFIG_CPU_SUBTYPE_SH7091 is not set | ||
| 126 | # CONFIG_CPU_SUBTYPE_SH7750R is not set | ||
| 127 | # CONFIG_CPU_SUBTYPE_SH7750S is not set | ||
| 128 | # CONFIG_CPU_SUBTYPE_SH7751 is not set | ||
| 129 | # CONFIG_CPU_SUBTYPE_SH7751R is not set | ||
| 130 | # CONFIG_CPU_SUBTYPE_SH7760 is not set | ||
| 131 | # CONFIG_CPU_SUBTYPE_SH4_202 is not set | ||
| 132 | # CONFIG_CPU_SUBTYPE_ST40STB1 is not set | ||
| 133 | # CONFIG_CPU_SUBTYPE_ST40GX1 is not set | ||
| 134 | # CONFIG_CPU_SUBTYPE_SH7770 is not set | ||
| 135 | # CONFIG_CPU_SUBTYPE_SH7780 is not set | ||
| 136 | # CONFIG_CPU_SUBTYPE_SH7785 is not set | ||
| 137 | CONFIG_CPU_SUBTYPE_SHX3=y | ||
| 138 | # CONFIG_CPU_SUBTYPE_SH73180 is not set | ||
| 139 | # CONFIG_CPU_SUBTYPE_SH7343 is not set | ||
| 140 | # CONFIG_CPU_SUBTYPE_SH7722 is not set | ||
| 141 | |||
| 142 | # | ||
| 143 | # Memory management options | ||
| 144 | # | ||
| 145 | CONFIG_QUICKLIST=y | ||
| 146 | CONFIG_MMU=y | ||
| 147 | CONFIG_PAGE_OFFSET=0x80000000 | ||
| 148 | CONFIG_MEMORY_START=0x0c000000 | ||
| 149 | CONFIG_MEMORY_SIZE=0x04000000 | ||
| 150 | CONFIG_VSYSCALL=y | ||
| 151 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
| 152 | CONFIG_ARCH_SPARSEMEM_ENABLE=y | ||
| 153 | CONFIG_ARCH_SPARSEMEM_DEFAULT=y | ||
| 154 | CONFIG_MAX_ACTIVE_REGIONS=1 | ||
| 155 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
| 156 | CONFIG_ARCH_SELECT_MEMORY_MODEL=y | ||
| 157 | CONFIG_PAGE_SIZE_4KB=y | ||
| 158 | # CONFIG_PAGE_SIZE_8KB is not set | ||
| 159 | # CONFIG_PAGE_SIZE_64KB is not set | ||
| 160 | CONFIG_HUGETLB_PAGE_SIZE_64K=y | ||
| 161 | # CONFIG_HUGETLB_PAGE_SIZE_256K is not set | ||
| 162 | # CONFIG_HUGETLB_PAGE_SIZE_1MB is not set | ||
| 163 | # CONFIG_HUGETLB_PAGE_SIZE_4MB is not set | ||
| 164 | # CONFIG_HUGETLB_PAGE_SIZE_64MB is not set | ||
| 165 | CONFIG_SELECT_MEMORY_MODEL=y | ||
| 166 | CONFIG_FLATMEM_MANUAL=y | ||
| 167 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
| 168 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
| 169 | CONFIG_FLATMEM=y | ||
| 170 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
| 171 | CONFIG_SPARSEMEM_STATIC=y | ||
| 172 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 173 | # CONFIG_RESOURCES_64BIT is not set | ||
| 174 | CONFIG_ZONE_DMA_FLAG=0 | ||
| 175 | CONFIG_NR_QUICK=2 | ||
| 176 | |||
| 177 | # | ||
| 178 | # Cache configuration | ||
| 179 | # | ||
| 180 | # CONFIG_SH_DIRECT_MAPPED is not set | ||
| 181 | # CONFIG_SH_WRITETHROUGH is not set | ||
| 182 | |||
| 183 | # | ||
| 184 | # Processor features | ||
| 185 | # | ||
| 186 | CONFIG_CPU_LITTLE_ENDIAN=y | ||
| 187 | # CONFIG_CPU_BIG_ENDIAN is not set | ||
| 188 | # CONFIG_SH_FPU is not set | ||
| 189 | # CONFIG_SH_FPU_EMU is not set | ||
| 190 | CONFIG_SH_DSP=y | ||
| 191 | CONFIG_SH_STORE_QUEUES=y | ||
| 192 | CONFIG_CPU_HAS_INTEVT=y | ||
| 193 | CONFIG_CPU_HAS_INTC2_IRQ=y | ||
| 194 | CONFIG_CPU_HAS_SR_RB=y | ||
| 195 | |||
| 196 | # | ||
| 197 | # Board support | ||
| 198 | # | ||
| 199 | |||
| 200 | # | ||
| 201 | # Timer and clock configuration | ||
| 202 | # | ||
| 203 | CONFIG_SH_TMU=y | ||
| 204 | CONFIG_SH_TIMER_IRQ=16 | ||
| 205 | CONFIG_SH_PCLK_FREQ=50000000 | ||
| 206 | CONFIG_TICK_ONESHOT=y | ||
| 207 | CONFIG_NO_HZ=y | ||
| 208 | CONFIG_HIGH_RES_TIMERS=y | ||
| 209 | |||
| 210 | # | ||
| 211 | # CPU Frequency scaling | ||
| 212 | # | ||
| 213 | # CONFIG_CPU_FREQ is not set | ||
| 214 | |||
| 215 | # | ||
| 216 | # DMA support | ||
| 217 | # | ||
| 218 | # CONFIG_SH_DMA is not set | ||
| 219 | |||
| 220 | # | ||
| 221 | # Companion Chips | ||
| 222 | # | ||
| 223 | |||
| 224 | # | ||
| 225 | # Additional SuperH Device Drivers | ||
| 226 | # | ||
| 227 | CONFIG_HEARTBEAT=y | ||
| 228 | # CONFIG_PUSH_SWITCH is not set | ||
| 229 | |||
| 230 | # | ||
| 231 | # Kernel features | ||
| 232 | # | ||
| 233 | # CONFIG_HZ_100 is not set | ||
| 234 | CONFIG_HZ_250=y | ||
| 235 | # CONFIG_HZ_300 is not set | ||
| 236 | # CONFIG_HZ_1000 is not set | ||
| 237 | CONFIG_HZ=250 | ||
| 238 | CONFIG_KEXEC=y | ||
| 239 | # CONFIG_CRASH_DUMP is not set | ||
| 240 | # CONFIG_PREEMPT_NONE is not set | ||
| 241 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
| 242 | CONFIG_PREEMPT=y | ||
| 243 | CONFIG_PREEMPT_BKL=y | ||
| 244 | |||
| 245 | # | ||
| 246 | # Boot options | ||
| 247 | # | ||
| 248 | CONFIG_ZERO_PAGE_OFFSET=0x00001000 | ||
| 249 | CONFIG_BOOT_LINK_OFFSET=0x00800000 | ||
| 250 | # CONFIG_UBC_WAKEUP is not set | ||
| 251 | CONFIG_CMDLINE_BOOL=y | ||
| 252 | CONFIG_CMDLINE="console=ttySC0,115200 ip=192.168.1.2:::255.255.255.0 root=/dev/nfs nfsroot=192.168.1.1:/exports/devel/rfs/mobiler noaliencache earlyprintk=bios ignore_loglevel" | ||
| 253 | |||
| 254 | # | ||
| 255 | # Bus options | ||
| 256 | # | ||
| 257 | # CONFIG_ARCH_SUPPORTS_MSI is not set | ||
| 258 | |||
| 259 | # | ||
| 260 | # PCCARD (PCMCIA/CardBus) support | ||
| 261 | # | ||
| 262 | # CONFIG_PCCARD is not set | ||
| 263 | |||
| 264 | # | ||
| 265 | # Executable file formats | ||
| 266 | # | ||
| 267 | CONFIG_BINFMT_ELF=y | ||
| 268 | # CONFIG_BINFMT_MISC is not set | ||
| 269 | |||
| 270 | # | ||
| 271 | # Networking | ||
| 272 | # | ||
| 273 | # CONFIG_NET is not set | ||
| 274 | |||
| 275 | # | ||
| 276 | # Device Drivers | ||
| 277 | # | ||
| 278 | |||
| 279 | # | ||
| 280 | # Generic Driver Options | ||
| 281 | # | ||
| 282 | CONFIG_STANDALONE=y | ||
| 283 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
| 284 | # CONFIG_FW_LOADER is not set | ||
| 285 | # CONFIG_DEBUG_DRIVER is not set | ||
| 286 | # CONFIG_DEBUG_DEVRES is not set | ||
| 287 | # CONFIG_SYS_HYPERVISOR is not set | ||
| 288 | |||
| 289 | # | ||
| 290 | # Connector - unified userspace <-> kernelspace linker | ||
| 291 | # | ||
| 292 | # CONFIG_MTD is not set | ||
| 293 | |||
| 294 | # | ||
| 295 | # Parallel port support | ||
| 296 | # | ||
| 297 | # CONFIG_PARPORT is not set | ||
| 298 | |||
| 299 | # | ||
| 300 | # Plug and Play support | ||
| 301 | # | ||
| 302 | # CONFIG_PNPACPI is not set | ||
| 303 | |||
| 304 | # | ||
| 305 | # Block devices | ||
| 306 | # | ||
| 307 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
| 308 | # CONFIG_BLK_DEV_LOOP is not set | ||
| 309 | CONFIG_BLK_DEV_RAM=y | ||
| 310 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
| 311 | CONFIG_BLK_DEV_RAM_SIZE=4096 | ||
| 312 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | ||
| 313 | # CONFIG_CDROM_PKTCDVD is not set | ||
| 314 | |||
| 315 | # | ||
| 316 | # Misc devices | ||
| 317 | # | ||
| 318 | # CONFIG_BLINK is not set | ||
| 319 | # CONFIG_IDE is not set | ||
| 320 | |||
| 321 | # | ||
| 322 | # SCSI device support | ||
| 323 | # | ||
| 324 | # CONFIG_RAID_ATTRS is not set | ||
| 325 | CONFIG_SCSI=y | ||
| 326 | # CONFIG_SCSI_TGT is not set | ||
| 327 | # CONFIG_SCSI_NETLINK is not set | ||
| 328 | CONFIG_SCSI_PROC_FS=y | ||
| 329 | |||
| 330 | # | ||
| 331 | # SCSI support type (disk, tape, CD-ROM) | ||
| 332 | # | ||
| 333 | CONFIG_BLK_DEV_SD=y | ||
| 334 | # CONFIG_CHR_DEV_ST is not set | ||
| 335 | # CONFIG_CHR_DEV_OSST is not set | ||
| 336 | # CONFIG_BLK_DEV_SR is not set | ||
| 337 | # CONFIG_CHR_DEV_SG is not set | ||
| 338 | # CONFIG_CHR_DEV_SCH is not set | ||
| 339 | |||
| 340 | # | ||
| 341 | # Some SCSI devices (e.g. CD jukebox) support multiple LUNs | ||
| 342 | # | ||
| 343 | # CONFIG_SCSI_MULTI_LUN is not set | ||
| 344 | # CONFIG_SCSI_CONSTANTS is not set | ||
| 345 | # CONFIG_SCSI_LOGGING is not set | ||
| 346 | # CONFIG_SCSI_SCAN_ASYNC is not set | ||
| 347 | CONFIG_SCSI_WAIT_SCAN=m | ||
| 348 | |||
| 349 | # | ||
| 350 | # SCSI Transports | ||
| 351 | # | ||
| 352 | # CONFIG_SCSI_SPI_ATTRS is not set | ||
| 353 | # CONFIG_SCSI_FC_ATTRS is not set | ||
| 354 | # CONFIG_SCSI_SAS_ATTRS is not set | ||
| 355 | # CONFIG_SCSI_SAS_LIBSAS is not set | ||
| 356 | |||
| 357 | # | ||
| 358 | # SCSI low-level drivers | ||
| 359 | # | ||
| 360 | # CONFIG_SCSI_DEBUG is not set | ||
| 361 | CONFIG_ATA=y | ||
| 362 | # CONFIG_ATA_NONSTANDARD is not set | ||
| 363 | CONFIG_PATA_PLATFORM=y | ||
| 364 | |||
| 365 | # | ||
| 366 | # Multi-device support (RAID and LVM) | ||
| 367 | # | ||
| 368 | # CONFIG_MD is not set | ||
| 369 | |||
| 370 | # | ||
| 371 | # ISDN subsystem | ||
| 372 | # | ||
| 373 | |||
| 374 | # | ||
| 375 | # Telephony Support | ||
| 376 | # | ||
| 377 | # CONFIG_PHONE is not set | ||
| 378 | |||
| 379 | # | ||
| 380 | # Input device support | ||
| 381 | # | ||
| 382 | CONFIG_INPUT=y | ||
| 383 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
| 384 | |||
| 385 | # | ||
| 386 | # Userland interfaces | ||
| 387 | # | ||
| 388 | CONFIG_INPUT_MOUSEDEV=y | ||
| 389 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||
| 390 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | ||
| 391 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | ||
| 392 | # CONFIG_INPUT_JOYDEV is not set | ||
| 393 | # CONFIG_INPUT_TSDEV is not set | ||
| 394 | # CONFIG_INPUT_EVDEV is not set | ||
| 395 | # CONFIG_INPUT_EVBUG is not set | ||
| 396 | |||
| 397 | # | ||
| 398 | # Input Device Drivers | ||
| 399 | # | ||
| 400 | CONFIG_INPUT_KEYBOARD=y | ||
| 401 | CONFIG_KEYBOARD_ATKBD=y | ||
| 402 | # CONFIG_KEYBOARD_SUNKBD is not set | ||
| 403 | # CONFIG_KEYBOARD_LKKBD is not set | ||
| 404 | # CONFIG_KEYBOARD_XTKBD is not set | ||
| 405 | # CONFIG_KEYBOARD_NEWTON is not set | ||
| 406 | # CONFIG_KEYBOARD_STOWAWAY is not set | ||
| 407 | # CONFIG_INPUT_MOUSE is not set | ||
| 408 | # CONFIG_INPUT_JOYSTICK is not set | ||
| 409 | # CONFIG_INPUT_TABLET is not set | ||
| 410 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
| 411 | # CONFIG_INPUT_MISC is not set | ||
| 412 | |||
| 413 | # | ||
| 414 | # Hardware I/O ports | ||
| 415 | # | ||
| 416 | CONFIG_SERIO=y | ||
| 417 | # CONFIG_SERIO_I8042 is not set | ||
| 418 | # CONFIG_SERIO_SERPORT is not set | ||
| 419 | CONFIG_SERIO_LIBPS2=y | ||
| 420 | # CONFIG_SERIO_RAW is not set | ||
| 421 | # CONFIG_GAMEPORT is not set | ||
| 422 | |||
| 423 | # | ||
| 424 | # Character devices | ||
| 425 | # | ||
| 426 | # CONFIG_VT is not set | ||
| 427 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
| 428 | |||
| 429 | # | ||
| 430 | # Serial drivers | ||
| 431 | # | ||
| 432 | # CONFIG_SERIAL_8250 is not set | ||
| 433 | |||
| 434 | # | ||
| 435 | # Non-8250 serial port support | ||
| 436 | # | ||
| 437 | CONFIG_SERIAL_SH_SCI=y | ||
| 438 | CONFIG_SERIAL_SH_SCI_NR_UARTS=2 | ||
| 439 | CONFIG_SERIAL_SH_SCI_CONSOLE=y | ||
| 440 | CONFIG_SERIAL_CORE=y | ||
| 441 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
| 442 | CONFIG_UNIX98_PTYS=y | ||
| 443 | CONFIG_LEGACY_PTYS=y | ||
| 444 | CONFIG_LEGACY_PTY_COUNT=256 | ||
| 445 | |||
| 446 | # | ||
| 447 | # IPMI | ||
| 448 | # | ||
| 449 | # CONFIG_IPMI_HANDLER is not set | ||
| 450 | # CONFIG_WATCHDOG is not set | ||
| 451 | CONFIG_HW_RANDOM=y | ||
| 452 | # CONFIG_R3964 is not set | ||
| 453 | # CONFIG_RAW_DRIVER is not set | ||
| 454 | |||
| 455 | # | ||
| 456 | # TPM devices | ||
| 457 | # | ||
| 458 | # CONFIG_TCG_TPM is not set | ||
| 459 | # CONFIG_I2C is not set | ||
| 460 | |||
| 461 | # | ||
| 462 | # SPI support | ||
| 463 | # | ||
| 464 | # CONFIG_SPI is not set | ||
| 465 | # CONFIG_SPI_MASTER is not set | ||
| 466 | |||
| 467 | # | ||
| 468 | # Dallas's 1-wire bus | ||
| 469 | # | ||
| 470 | # CONFIG_W1 is not set | ||
| 471 | # CONFIG_HWMON is not set | ||
| 472 | |||
| 473 | # | ||
| 474 | # Multifunction device drivers | ||
| 475 | # | ||
| 476 | # CONFIG_MFD_SM501 is not set | ||
| 477 | |||
| 478 | # | ||
| 479 | # Multimedia devices | ||
| 480 | # | ||
| 481 | # CONFIG_VIDEO_DEV is not set | ||
| 482 | # CONFIG_DAB is not set | ||
| 483 | |||
| 484 | # | ||
| 485 | # Graphics support | ||
| 486 | # | ||
| 487 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
| 488 | |||
| 489 | # | ||
| 490 | # Display device support | ||
| 491 | # | ||
| 492 | # CONFIG_DISPLAY_SUPPORT is not set | ||
| 493 | # CONFIG_VGASTATE is not set | ||
| 494 | # CONFIG_FB is not set | ||
| 495 | |||
| 496 | # | ||
| 497 | # Sound | ||
| 498 | # | ||
| 499 | # CONFIG_SOUND is not set | ||
| 500 | |||
| 501 | # | ||
| 502 | # HID Devices | ||
| 503 | # | ||
| 504 | # CONFIG_HID is not set | ||
| 505 | |||
| 506 | # | ||
| 507 | # USB support | ||
| 508 | # | ||
| 509 | # CONFIG_USB_ARCH_HAS_HCD is not set | ||
| 510 | # CONFIG_USB_ARCH_HAS_OHCI is not set | ||
| 511 | # CONFIG_USB_ARCH_HAS_EHCI is not set | ||
| 512 | |||
| 513 | # | ||
| 514 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 515 | # | ||
| 516 | |||
| 517 | # | ||
| 518 | # USB Gadget Support | ||
| 519 | # | ||
| 520 | # CONFIG_USB_GADGET is not set | ||
| 521 | # CONFIG_MMC is not set | ||
| 522 | |||
| 523 | # | ||
| 524 | # LED devices | ||
| 525 | # | ||
| 526 | # CONFIG_NEW_LEDS is not set | ||
| 527 | |||
| 528 | # | ||
| 529 | # LED drivers | ||
| 530 | # | ||
| 531 | |||
| 532 | # | ||
| 533 | # LED Triggers | ||
| 534 | # | ||
| 535 | |||
| 536 | # | ||
| 537 | # InfiniBand support | ||
| 538 | # | ||
| 539 | |||
| 540 | # | ||
| 541 | # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) | ||
| 542 | # | ||
| 543 | |||
| 544 | # | ||
| 545 | # Real Time Clock | ||
| 546 | # | ||
| 547 | CONFIG_RTC_LIB=y | ||
| 548 | CONFIG_RTC_CLASS=y | ||
| 549 | CONFIG_RTC_HCTOSYS=y | ||
| 550 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
| 551 | # CONFIG_RTC_DEBUG is not set | ||
| 552 | |||
| 553 | # | ||
| 554 | # RTC interfaces | ||
| 555 | # | ||
| 556 | CONFIG_RTC_INTF_SYSFS=y | ||
| 557 | CONFIG_RTC_INTF_PROC=y | ||
| 558 | CONFIG_RTC_INTF_DEV=y | ||
| 559 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
| 560 | # CONFIG_RTC_DRV_TEST is not set | ||
| 561 | |||
| 562 | # | ||
| 563 | # I2C RTC drivers | ||
| 564 | # | ||
| 565 | |||
| 566 | # | ||
| 567 | # SPI RTC drivers | ||
| 568 | # | ||
| 569 | |||
| 570 | # | ||
| 571 | # Platform RTC drivers | ||
| 572 | # | ||
| 573 | # CONFIG_RTC_DRV_DS1553 is not set | ||
| 574 | # CONFIG_RTC_DRV_DS1742 is not set | ||
| 575 | # CONFIG_RTC_DRV_M48T86 is not set | ||
| 576 | # CONFIG_RTC_DRV_V3020 is not set | ||
| 577 | |||
| 578 | # | ||
| 579 | # on-CPU RTC drivers | ||
| 580 | # | ||
| 581 | CONFIG_RTC_DRV_SH=y | ||
| 582 | |||
| 583 | # | ||
| 584 | # DMA Engine support | ||
| 585 | # | ||
| 586 | # CONFIG_DMA_ENGINE is not set | ||
| 587 | |||
| 588 | # | ||
| 589 | # DMA Clients | ||
| 590 | # | ||
| 591 | |||
| 592 | # | ||
| 593 | # DMA Devices | ||
| 594 | # | ||
| 595 | |||
| 596 | # | ||
| 597 | # File systems | ||
| 598 | # | ||
| 599 | CONFIG_EXT2_FS=y | ||
| 600 | # CONFIG_EXT2_FS_XATTR is not set | ||
| 601 | # CONFIG_EXT2_FS_XIP is not set | ||
| 602 | CONFIG_EXT3_FS=y | ||
| 603 | CONFIG_EXT3_FS_XATTR=y | ||
| 604 | # CONFIG_EXT3_FS_POSIX_ACL is not set | ||
| 605 | # CONFIG_EXT3_FS_SECURITY is not set | ||
| 606 | # CONFIG_EXT4DEV_FS is not set | ||
| 607 | CONFIG_JBD=y | ||
| 608 | # CONFIG_JBD_DEBUG is not set | ||
| 609 | CONFIG_FS_MBCACHE=y | ||
| 610 | # CONFIG_REISERFS_FS is not set | ||
| 611 | # CONFIG_JFS_FS is not set | ||
| 612 | # CONFIG_FS_POSIX_ACL is not set | ||
| 613 | # CONFIG_XFS_FS is not set | ||
| 614 | # CONFIG_GFS2_FS is not set | ||
| 615 | # CONFIG_MINIX_FS is not set | ||
| 616 | # CONFIG_ROMFS_FS is not set | ||
| 617 | CONFIG_INOTIFY=y | ||
| 618 | CONFIG_INOTIFY_USER=y | ||
| 619 | # CONFIG_QUOTA is not set | ||
| 620 | CONFIG_DNOTIFY=y | ||
| 621 | # CONFIG_AUTOFS_FS is not set | ||
| 622 | # CONFIG_AUTOFS4_FS is not set | ||
| 623 | # CONFIG_FUSE_FS is not set | ||
| 624 | |||
| 625 | # | ||
| 626 | # CD-ROM/DVD Filesystems | ||
| 627 | # | ||
| 628 | # CONFIG_ISO9660_FS is not set | ||
| 629 | # CONFIG_UDF_FS is not set | ||
| 630 | |||
| 631 | # | ||
| 632 | # DOS/FAT/NT Filesystems | ||
| 633 | # | ||
| 634 | # CONFIG_MSDOS_FS is not set | ||
| 635 | # CONFIG_VFAT_FS is not set | ||
| 636 | # CONFIG_NTFS_FS is not set | ||
| 637 | |||
| 638 | # | ||
| 639 | # Pseudo filesystems | ||
| 640 | # | ||
| 641 | CONFIG_PROC_FS=y | ||
| 642 | CONFIG_PROC_KCORE=y | ||
| 643 | CONFIG_PROC_SYSCTL=y | ||
| 644 | CONFIG_SYSFS=y | ||
| 645 | CONFIG_TMPFS=y | ||
| 646 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
| 647 | CONFIG_HUGETLBFS=y | ||
| 648 | CONFIG_HUGETLB_PAGE=y | ||
| 649 | CONFIG_RAMFS=y | ||
| 650 | # CONFIG_CONFIGFS_FS is not set | ||
| 651 | |||
| 652 | # | ||
| 653 | # Miscellaneous filesystems | ||
| 654 | # | ||
| 655 | # CONFIG_ADFS_FS is not set | ||
| 656 | # CONFIG_AFFS_FS is not set | ||
| 657 | # CONFIG_HFS_FS is not set | ||
| 658 | # CONFIG_HFSPLUS_FS is not set | ||
| 659 | # CONFIG_BEFS_FS is not set | ||
| 660 | # CONFIG_BFS_FS is not set | ||
| 661 | # CONFIG_EFS_FS is not set | ||
| 662 | # CONFIG_CRAMFS is not set | ||
| 663 | # CONFIG_VXFS_FS is not set | ||
| 664 | # CONFIG_HPFS_FS is not set | ||
| 665 | # CONFIG_QNX4FS_FS is not set | ||
| 666 | # CONFIG_SYSV_FS is not set | ||
| 667 | # CONFIG_UFS_FS is not set | ||
| 668 | |||
| 669 | # | ||
| 670 | # Partition Types | ||
| 671 | # | ||
| 672 | # CONFIG_PARTITION_ADVANCED is not set | ||
| 673 | CONFIG_MSDOS_PARTITION=y | ||
| 674 | |||
| 675 | # | ||
| 676 | # Native Language Support | ||
| 677 | # | ||
| 678 | # CONFIG_NLS is not set | ||
| 679 | |||
| 680 | # | ||
| 681 | # Profiling support | ||
| 682 | # | ||
| 683 | CONFIG_PROFILING=y | ||
| 684 | # CONFIG_OPROFILE is not set | ||
| 685 | |||
| 686 | # | ||
| 687 | # Kernel hacking | ||
| 688 | # | ||
| 689 | CONFIG_TRACE_IRQFLAGS_SUPPORT=y | ||
| 690 | CONFIG_PRINTK_TIME=y | ||
| 691 | # CONFIG_ENABLE_MUST_CHECK is not set | ||
| 692 | CONFIG_MAGIC_SYSRQ=y | ||
| 693 | # CONFIG_UNUSED_SYMBOLS is not set | ||
| 694 | CONFIG_DEBUG_FS=y | ||
| 695 | # CONFIG_HEADERS_CHECK is not set | ||
| 696 | CONFIG_DEBUG_KERNEL=y | ||
| 697 | # CONFIG_DEBUG_SHIRQ is not set | ||
| 698 | CONFIG_DETECT_SOFTLOCKUP=y | ||
| 699 | # CONFIG_SCHEDSTATS is not set | ||
| 700 | # CONFIG_TIMER_STATS is not set | ||
| 701 | CONFIG_DEBUG_SLAB=y | ||
| 702 | CONFIG_DEBUG_SLAB_LEAK=y | ||
| 703 | CONFIG_DEBUG_PREEMPT=y | ||
| 704 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
| 705 | # CONFIG_RT_MUTEX_TESTER is not set | ||
| 706 | CONFIG_DEBUG_SPINLOCK=y | ||
| 707 | CONFIG_DEBUG_MUTEXES=y | ||
| 708 | CONFIG_DEBUG_LOCK_ALLOC=y | ||
| 709 | # CONFIG_PROVE_LOCKING is not set | ||
| 710 | CONFIG_LOCKDEP=y | ||
| 711 | CONFIG_DEBUG_LOCKDEP=y | ||
| 712 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
| 713 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
| 714 | CONFIG_STACKTRACE=y | ||
| 715 | # CONFIG_DEBUG_KOBJECT is not set | ||
| 716 | CONFIG_DEBUG_BUGVERBOSE=y | ||
| 717 | # CONFIG_DEBUG_INFO is not set | ||
| 718 | CONFIG_DEBUG_VM=y | ||
| 719 | # CONFIG_DEBUG_LIST is not set | ||
| 720 | CONFIG_FRAME_POINTER=y | ||
| 721 | CONFIG_FORCED_INLINING=y | ||
| 722 | # CONFIG_RCU_TORTURE_TEST is not set | ||
| 723 | # CONFIG_FAULT_INJECTION is not set | ||
| 724 | CONFIG_SH_STANDARD_BIOS=y | ||
| 725 | # CONFIG_EARLY_SCIF_CONSOLE is not set | ||
| 726 | CONFIG_EARLY_PRINTK=y | ||
| 727 | # CONFIG_DEBUG_BOOTMEM is not set | ||
| 728 | CONFIG_DEBUG_STACKOVERFLOW=y | ||
| 729 | CONFIG_DEBUG_STACK_USAGE=y | ||
| 730 | # CONFIG_4KSTACKS is not set | ||
| 731 | # CONFIG_SH_KGDB is not set | ||
| 732 | |||
| 733 | # | ||
| 734 | # Security options | ||
| 735 | # | ||
| 736 | # CONFIG_KEYS is not set | ||
| 737 | # CONFIG_SECURITY is not set | ||
| 738 | |||
| 739 | # | ||
| 740 | # Cryptographic options | ||
| 741 | # | ||
| 742 | # CONFIG_CRYPTO is not set | ||
| 743 | |||
| 744 | # | ||
| 745 | # Library routines | ||
| 746 | # | ||
| 747 | CONFIG_BITREVERSE=y | ||
| 748 | # CONFIG_CRC_CCITT is not set | ||
| 749 | # CONFIG_CRC16 is not set | ||
| 750 | # CONFIG_CRC_ITU_T is not set | ||
| 751 | CONFIG_CRC32=y | ||
| 752 | # CONFIG_LIBCRC32C is not set | ||
| 753 | CONFIG_PLIST=y | ||
| 754 | CONFIG_HAS_IOMEM=y | ||
| 755 | CONFIG_HAS_IOPORT=y | ||
| 756 | CONFIG_HAS_DMA=y | ||
diff --git a/arch/sh/drivers/dma/Kconfig b/arch/sh/drivers/dma/Kconfig index 99935f9daf4b..333898077c7c 100644 --- a/arch/sh/drivers/dma/Kconfig +++ b/arch/sh/drivers/dma/Kconfig | |||
| @@ -36,23 +36,6 @@ config NR_DMA_CHANNELS | |||
| 36 | support. Setting this to a higher value allows for cascading DMACs | 36 | support. Setting this to a higher value allows for cascading DMACs |
| 37 | with additional channels. | 37 | with additional channels. |
| 38 | 38 | ||
| 39 | config DMA_PAGE_OPS | ||
| 40 | bool "Use DMAC for page copy/clear" | ||
| 41 | depends on SH_DMA && BROKEN | ||
| 42 | help | ||
| 43 | Selecting this option will use a dual-address mode configured channel | ||
| 44 | in the SH DMAC for copy_page()/clear_page(). Primarily a performance | ||
| 45 | hack. | ||
| 46 | |||
| 47 | config DMA_PAGE_OPS_CHANNEL | ||
| 48 | depends on DMA_PAGE_OPS | ||
| 49 | int "DMA channel for sh memory-manager page copy/clear" | ||
| 50 | default "3" | ||
| 51 | help | ||
| 52 | This allows the specification of the dual address dma channel, | ||
| 53 | in case channel 3 is unavailable. On the SH4, channels 1,2, and 3 | ||
| 54 | are dual-address capable. | ||
| 55 | |||
| 56 | config SH_DMABRG | 39 | config SH_DMABRG |
| 57 | bool "SH7760 DMABRG support" | 40 | bool "SH7760 DMABRG support" |
| 58 | depends on CPU_SUBTYPE_SH7760 | 41 | depends on CPU_SUBTYPE_SH7760 |
diff --git a/arch/sh/drivers/pci/Kconfig b/arch/sh/drivers/pci/Kconfig index 6d1cbbe6745c..fbc6f2c8649f 100644 --- a/arch/sh/drivers/pci/Kconfig +++ b/arch/sh/drivers/pci/Kconfig | |||
| @@ -1,5 +1,6 @@ | |||
| 1 | config PCI | 1 | config PCI |
| 2 | bool "PCI support" | 2 | bool "PCI support" |
| 3 | depends on SYS_SUPPORTS_PCI | ||
| 3 | help | 4 | help |
| 4 | Find out whether you have a PCI motherboard. PCI is the name of a | 5 | Find out whether you have a PCI motherboard. PCI is the name of a |
| 5 | bus system, i.e. the way the CPU talks to the other stuff inside | 6 | bus system, i.e. the way the CPU talks to the other stuff inside |
diff --git a/arch/sh/kernel/Makefile b/arch/sh/kernel/Makefile index 9104b6257644..1f141a8ba17c 100644 --- a/arch/sh/kernel/Makefile +++ b/arch/sh/kernel/Makefile | |||
| @@ -4,10 +4,9 @@ | |||
| 4 | 4 | ||
| 5 | extra-y := head.o init_task.o vmlinux.lds | 5 | extra-y := head.o init_task.o vmlinux.lds |
| 6 | 6 | ||
| 7 | obj-y := process.o signal.o traps.o irq.o \ | 7 | obj-y := debugtraps.o io.o io_generic.o irq.o machvec.o process.o ptrace.o \ |
| 8 | ptrace.o setup.o time.o sys_sh.o semaphore.o \ | 8 | semaphore.o setup.o signal.o sys_sh.o syscalls.o \ |
| 9 | io.o io_generic.o sh_ksyms.o syscalls.o \ | 9 | time.o topology.o traps.o |
| 10 | debugtraps.o | ||
| 11 | 10 | ||
| 12 | obj-y += cpu/ timers/ | 11 | obj-y += cpu/ timers/ |
| 13 | obj-$(CONFIG_VSYSCALL) += vsyscall/ | 12 | obj-$(CONFIG_VSYSCALL) += vsyscall/ |
| @@ -17,7 +16,7 @@ obj-$(CONFIG_CF_ENABLER) += cf-enabler.o | |||
| 17 | obj-$(CONFIG_SH_STANDARD_BIOS) += sh_bios.o | 16 | obj-$(CONFIG_SH_STANDARD_BIOS) += sh_bios.o |
| 18 | obj-$(CONFIG_SH_KGDB) += kgdb_stub.o kgdb_jmp.o | 17 | obj-$(CONFIG_SH_KGDB) += kgdb_stub.o kgdb_jmp.o |
| 19 | obj-$(CONFIG_SH_CPU_FREQ) += cpufreq.o | 18 | obj-$(CONFIG_SH_CPU_FREQ) += cpufreq.o |
| 20 | obj-$(CONFIG_MODULES) += module.o | 19 | obj-$(CONFIG_MODULES) += sh_ksyms.o module.o |
| 21 | obj-$(CONFIG_EARLY_PRINTK) += early_printk.o | 20 | obj-$(CONFIG_EARLY_PRINTK) += early_printk.o |
| 22 | obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o | 21 | obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o |
| 23 | obj-$(CONFIG_CRASH_DUMP) += crash_dump.o | 22 | obj-$(CONFIG_CRASH_DUMP) += crash_dump.o |
diff --git a/arch/sh/kernel/cf-enabler.c b/arch/sh/kernel/cf-enabler.c index ebc73b85094a..1c3b99642e1c 100644 --- a/arch/sh/kernel/cf-enabler.c +++ b/arch/sh/kernel/cf-enabler.c | |||
| @@ -75,11 +75,7 @@ static int __init cf_init_default(void) | |||
| 75 | #if defined(CONFIG_CPU_SH4) | 75 | #if defined(CONFIG_CPU_SH4) |
| 76 | allocate_cf_area(); | 76 | allocate_cf_area(); |
| 77 | #endif | 77 | #endif |
| 78 | #if defined(CONFIG_SH_UNKNOWN) | 78 | |
| 79 | /* This should be done in each board's init_xxx_irq. */ | ||
| 80 | make_imask_irq(14); | ||
| 81 | disable_irq(14); | ||
| 82 | #endif | ||
| 83 | return 0; | 79 | return 0; |
| 84 | } | 80 | } |
| 85 | 81 | ||
diff --git a/arch/sh/kernel/cpu/init.c b/arch/sh/kernel/cpu/init.c index 6451ad630174..9172e97dc26a 100644 --- a/arch/sh/kernel/cpu/init.c +++ b/arch/sh/kernel/cpu/init.c | |||
| @@ -21,8 +21,7 @@ | |||
| 21 | #include <asm/cacheflush.h> | 21 | #include <asm/cacheflush.h> |
| 22 | #include <asm/cache.h> | 22 | #include <asm/cache.h> |
| 23 | #include <asm/io.h> | 23 | #include <asm/io.h> |
| 24 | 24 | #include <asm/ubc.h> | |
| 25 | extern void detect_cpu_and_cache_system(void); | ||
| 26 | 25 | ||
| 27 | /* | 26 | /* |
| 28 | * Generic wrapper for command line arguments to disable on-chip | 27 | * Generic wrapper for command line arguments to disable on-chip |
| @@ -152,15 +151,6 @@ static void __init cache_init(void) | |||
| 152 | flags |= CCR_CACHE_CB; | 151 | flags |= CCR_CACHE_CB; |
| 153 | #endif | 152 | #endif |
| 154 | 153 | ||
| 155 | #ifdef CONFIG_SH_OCRAM | ||
| 156 | /* Turn on OCRAM -- halve the OC */ | ||
| 157 | flags |= CCR_CACHE_ORA; | ||
| 158 | current_cpu_data.dcache.sets >>= 1; | ||
| 159 | |||
| 160 | current_cpu_data.dcache.way_size = current_cpu_data.dcache.sets * | ||
| 161 | current_cpu_data.dcache.linesz; | ||
| 162 | #endif | ||
| 163 | |||
| 164 | ctrl_outl(flags, CCR); | 154 | ctrl_outl(flags, CCR); |
| 165 | back_to_P1(); | 155 | back_to_P1(); |
| 166 | } | 156 | } |
| @@ -269,7 +259,6 @@ asmlinkage void __init sh_cpu_init(void) | |||
| 269 | } | 259 | } |
| 270 | #endif | 260 | #endif |
| 271 | 261 | ||
| 272 | #ifdef CONFIG_UBC_WAKEUP | ||
| 273 | /* | 262 | /* |
| 274 | * Some brain-damaged loaders decided it would be a good idea to put | 263 | * Some brain-damaged loaders decided it would be a good idea to put |
| 275 | * the UBC to sleep. This causes some issues when it comes to things | 264 | * the UBC to sleep. This causes some issues when it comes to things |
| @@ -277,7 +266,5 @@ asmlinkage void __init sh_cpu_init(void) | |||
| 277 | * we wake it up and hope that all is well. | 266 | * we wake it up and hope that all is well. |
| 278 | */ | 267 | */ |
| 279 | ubc_wakeup(); | 268 | ubc_wakeup(); |
| 280 | #endif | ||
| 281 | |||
| 282 | speculative_execution_init(); | 269 | speculative_execution_init(); |
| 283 | } | 270 | } |
diff --git a/arch/sh/kernel/cpu/irq/intc2.c b/arch/sh/kernel/cpu/irq/intc2.c index d8e22f4ff0f0..cc5221390e09 100644 --- a/arch/sh/kernel/cpu/irq/intc2.c +++ b/arch/sh/kernel/cpu/irq/intc2.c | |||
| @@ -13,36 +13,31 @@ | |||
| 13 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
| 14 | #include <linux/interrupt.h> | 14 | #include <linux/interrupt.h> |
| 15 | #include <linux/io.h> | 15 | #include <linux/io.h> |
| 16 | #include <asm/smp.h> | ||
| 16 | 17 | ||
| 17 | #if defined(CONFIG_CPU_SUBTYPE_SH7760) | 18 | static inline struct intc2_desc *get_intc2_desc(unsigned int irq) |
| 18 | #define INTC2_BASE 0xfe080000 | 19 | { |
| 19 | #define INTC2_INTMSK (INTC2_BASE + 0x40) | 20 | struct irq_chip *chip = get_irq_chip(irq); |
| 20 | #define INTC2_INTMSKCLR (INTC2_BASE + 0x60) | 21 | return (void *)((char *)chip - offsetof(struct intc2_desc, chip)); |
| 21 | #elif defined(CONFIG_CPU_SUBTYPE_SH7780) || \ | 22 | } |
| 22 | defined(CONFIG_CPU_SUBTYPE_SH7785) | ||
| 23 | #define INTC2_BASE 0xffd40000 | ||
| 24 | #define INTC2_INTMSK (INTC2_BASE + 0x38) | ||
| 25 | #define INTC2_INTMSKCLR (INTC2_BASE + 0x3c) | ||
| 26 | #endif | ||
| 27 | 23 | ||
| 28 | static void disable_intc2_irq(unsigned int irq) | 24 | static void disable_intc2_irq(unsigned int irq) |
| 29 | { | 25 | { |
| 30 | struct intc2_data *p = get_irq_chip_data(irq); | 26 | struct intc2_data *p = get_irq_chip_data(irq); |
| 31 | ctrl_outl(1 << p->msk_shift, INTC2_INTMSK + p->msk_offset); | 27 | struct intc2_desc *d = get_intc2_desc(irq); |
| 28 | |||
| 29 | ctrl_outl(1 << p->msk_shift, d->msk_base + p->msk_offset + | ||
| 30 | (hard_smp_processor_id() * 4)); | ||
| 32 | } | 31 | } |
| 33 | 32 | ||
| 34 | static void enable_intc2_irq(unsigned int irq) | 33 | static void enable_intc2_irq(unsigned int irq) |
| 35 | { | 34 | { |
| 36 | struct intc2_data *p = get_irq_chip_data(irq); | 35 | struct intc2_data *p = get_irq_chip_data(irq); |
| 37 | ctrl_outl(1 << p->msk_shift, INTC2_INTMSKCLR + p->msk_offset); | 36 | struct intc2_desc *d = get_intc2_desc(irq); |
| 38 | } | ||
| 39 | 37 | ||
| 40 | static struct irq_chip intc2_irq_chip = { | 38 | ctrl_outl(1 << p->msk_shift, d->mskclr_base + p->msk_offset + |
| 41 | .name = "INTC2", | 39 | (hard_smp_processor_id() * 4)); |
| 42 | .mask = disable_intc2_irq, | 40 | } |
| 43 | .unmask = enable_intc2_irq, | ||
| 44 | .mask_ack = disable_intc2_irq, | ||
| 45 | }; | ||
| 46 | 41 | ||
| 47 | /* | 42 | /* |
| 48 | * Setup an INTC2 style interrupt. | 43 | * Setup an INTC2 style interrupt. |
| @@ -56,30 +51,36 @@ static struct irq_chip intc2_irq_chip = { | |||
| 56 | * | 51 | * |
| 57 | * in the intc2_data table. | 52 | * in the intc2_data table. |
| 58 | */ | 53 | */ |
| 59 | void make_intc2_irq(struct intc2_data *table, unsigned int nr_irqs) | 54 | void register_intc2_controller(struct intc2_desc *desc) |
| 60 | { | 55 | { |
| 61 | int i; | 56 | int i; |
| 62 | 57 | ||
| 63 | for (i = 0; i < nr_irqs; i++) { | 58 | desc->chip.mask = disable_intc2_irq; |
| 59 | desc->chip.unmask = enable_intc2_irq; | ||
| 60 | desc->chip.mask_ack = disable_intc2_irq; | ||
| 61 | |||
| 62 | for (i = 0; i < desc->nr_irqs; i++) { | ||
| 64 | unsigned long ipr, flags; | 63 | unsigned long ipr, flags; |
| 65 | struct intc2_data *p = table + i; | 64 | struct intc2_data *p = desc->intc2_data + i; |
| 66 | 65 | ||
| 67 | disable_irq_nosync(p->irq); | 66 | disable_irq_nosync(p->irq); |
| 68 | 67 | ||
| 69 | /* Set the priority level */ | 68 | if (desc->prio_base) { |
| 70 | local_irq_save(flags); | 69 | /* Set the priority level */ |
| 70 | local_irq_save(flags); | ||
| 71 | 71 | ||
| 72 | ipr = ctrl_inl(INTC2_BASE + p->ipr_offset); | 72 | ipr = ctrl_inl(desc->prio_base + p->ipr_offset); |
| 73 | ipr &= ~(0xf << p->ipr_shift); | 73 | ipr &= ~(0xf << p->ipr_shift); |
| 74 | ipr |= p->priority << p->ipr_shift; | 74 | ipr |= p->priority << p->ipr_shift; |
| 75 | ctrl_outl(ipr, INTC2_BASE + p->ipr_offset); | 75 | ctrl_outl(ipr, desc->prio_base + p->ipr_offset); |
| 76 | 76 | ||
| 77 | local_irq_restore(flags); | 77 | local_irq_restore(flags); |
| 78 | } | ||
| 78 | 79 | ||
| 79 | set_irq_chip_and_handler_name(p->irq, &intc2_irq_chip, | 80 | set_irq_chip_and_handler_name(p->irq, &desc->chip, |
| 80 | handle_level_irq, "level"); | 81 | handle_level_irq, "level"); |
| 81 | set_irq_chip_data(p->irq, p); | 82 | set_irq_chip_data(p->irq, p); |
| 82 | 83 | ||
| 83 | enable_intc2_irq(p->irq); | 84 | disable_intc2_irq(p->irq); |
| 84 | } | 85 | } |
| 85 | } | 86 | } |
diff --git a/arch/sh/kernel/cpu/irq/ipr.c b/arch/sh/kernel/cpu/irq/ipr.c index 210280b6fddf..98e84f40c713 100644 --- a/arch/sh/kernel/cpu/irq/ipr.c +++ b/arch/sh/kernel/cpu/irq/ipr.c | |||
| @@ -22,58 +22,57 @@ | |||
| 22 | #include <linux/io.h> | 22 | #include <linux/io.h> |
| 23 | #include <linux/interrupt.h> | 23 | #include <linux/interrupt.h> |
| 24 | 24 | ||
| 25 | static inline struct ipr_desc *get_ipr_desc(unsigned int irq) | ||
| 26 | { | ||
| 27 | struct irq_chip *chip = get_irq_chip(irq); | ||
| 28 | return (void *)((char *)chip - offsetof(struct ipr_desc, chip)); | ||
| 29 | } | ||
| 30 | |||
| 25 | static void disable_ipr_irq(unsigned int irq) | 31 | static void disable_ipr_irq(unsigned int irq) |
| 26 | { | 32 | { |
| 27 | struct ipr_data *p = get_irq_chip_data(irq); | 33 | struct ipr_data *p = get_irq_chip_data(irq); |
| 34 | unsigned long addr = get_ipr_desc(irq)->ipr_offsets[p->ipr_idx]; | ||
| 28 | /* Set the priority in IPR to 0 */ | 35 | /* Set the priority in IPR to 0 */ |
| 29 | ctrl_outw(ctrl_inw(p->addr) & (0xffff ^ (0xf << p->shift)), p->addr); | 36 | ctrl_outw(ctrl_inw(addr) & (0xffff ^ (0xf << p->shift)), addr); |
| 30 | } | 37 | } |
| 31 | 38 | ||
| 32 | static void enable_ipr_irq(unsigned int irq) | 39 | static void enable_ipr_irq(unsigned int irq) |
| 33 | { | 40 | { |
| 34 | struct ipr_data *p = get_irq_chip_data(irq); | 41 | struct ipr_data *p = get_irq_chip_data(irq); |
| 42 | unsigned long addr = get_ipr_desc(irq)->ipr_offsets[p->ipr_idx]; | ||
| 35 | /* Set priority in IPR back to original value */ | 43 | /* Set priority in IPR back to original value */ |
| 36 | ctrl_outw(ctrl_inw(p->addr) | (p->priority << p->shift), p->addr); | 44 | ctrl_outw(ctrl_inw(addr) | (p->priority << p->shift), addr); |
| 37 | } | 45 | } |
| 38 | 46 | ||
| 39 | static struct irq_chip ipr_irq_chip = { | 47 | /* |
| 40 | .name = "IPR", | 48 | * The shift value is now the number of bits to shift, not the number of |
| 41 | .mask = disable_ipr_irq, | 49 | * bits/4. This is to make it easier to read the value directly from the |
| 42 | .unmask = enable_ipr_irq, | 50 | * datasheets. The IPR address is calculated using the ipr_offset table. |
| 43 | .mask_ack = disable_ipr_irq, | 51 | */ |
| 44 | }; | ||
| 45 | |||
| 46 | unsigned int map_ipridx_to_addr(int idx) __attribute__ ((weak)); | ||
| 47 | unsigned int map_ipridx_to_addr(int idx) | ||
| 48 | { | ||
| 49 | return 0; | ||
| 50 | } | ||
| 51 | 52 | ||
| 52 | void make_ipr_irq(struct ipr_data *table, unsigned int nr_irqs) | 53 | void register_ipr_controller(struct ipr_desc *desc) |
| 53 | { | 54 | { |
| 54 | int i; | 55 | int i; |
| 55 | 56 | ||
| 56 | for (i = 0; i < nr_irqs; i++) { | 57 | desc->chip.mask = disable_ipr_irq; |
| 57 | unsigned int irq = table[i].irq; | 58 | desc->chip.unmask = enable_ipr_irq; |
| 59 | desc->chip.mask_ack = disable_ipr_irq; | ||
| 58 | 60 | ||
| 59 | if (!irq) | 61 | for (i = 0; i < desc->nr_irqs; i++) { |
| 60 | irq = table[i].irq = i; | 62 | struct ipr_data *p = desc->ipr_data + i; |
| 61 | 63 | ||
| 62 | /* could the IPR index be mapped, if not we ignore this */ | 64 | BUG_ON(p->ipr_idx >= desc->nr_offsets); |
| 63 | if (!table[i].addr) { | 65 | BUG_ON(!desc->ipr_offsets[p->ipr_idx]); |
| 64 | table[i].addr = map_ipridx_to_addr(table[i].ipr_idx); | ||
| 65 | if (!table[i].addr) | ||
| 66 | continue; | ||
| 67 | } | ||
| 68 | 66 | ||
| 69 | disable_irq_nosync(irq); | 67 | disable_irq_nosync(p->irq); |
| 70 | set_irq_chip_and_handler_name(irq, &ipr_irq_chip, | 68 | set_irq_chip_and_handler_name(p->irq, &desc->chip, |
| 71 | handle_level_irq, "level"); | 69 | handle_level_irq, "level"); |
| 72 | set_irq_chip_data(irq, &table[i]); | 70 | set_irq_chip_data(p->irq, p); |
| 73 | enable_ipr_irq(irq); | 71 | disable_ipr_irq(p->irq); |
| 74 | } | 72 | } |
| 75 | } | 73 | } |
| 76 | EXPORT_SYMBOL(make_ipr_irq); | 74 | |
| 75 | EXPORT_SYMBOL(register_ipr_controller); | ||
| 77 | 76 | ||
| 78 | #if !defined(CONFIG_CPU_HAS_PINT_IRQ) | 77 | #if !defined(CONFIG_CPU_HAS_PINT_IRQ) |
| 79 | int ipr_irq_demux(int irq) | 78 | int ipr_irq_demux(int irq) |
diff --git a/arch/sh/kernel/cpu/sh2/entry.S b/arch/sh/kernel/cpu/sh2/entry.S index c16dc8fec489..ee8f1fe84b08 100644 --- a/arch/sh/kernel/cpu/sh2/entry.S +++ b/arch/sh/kernel/cpu/sh2/entry.S | |||
| @@ -311,6 +311,7 @@ restore_all: | |||
| 311 | rte | 311 | rte |
| 312 | nop | 312 | nop |
| 313 | 313 | ||
| 314 | .align 2 | ||
| 314 | #ifdef CONFIG_TRACE_IRQFLAGS | 315 | #ifdef CONFIG_TRACE_IRQFLAGS |
| 315 | 1: .long trace_hardirqs_off | 316 | 1: .long trace_hardirqs_off |
| 316 | #endif | 317 | #endif |
diff --git a/arch/sh/kernel/cpu/sh2/probe.c b/arch/sh/kernel/cpu/sh2/probe.c index 108e81b682ed..abbf17427e52 100644 --- a/arch/sh/kernel/cpu/sh2/probe.c +++ b/arch/sh/kernel/cpu/sh2/probe.c | |||
| @@ -9,23 +9,14 @@ | |||
| 9 | * License. See the file "COPYING" in the main directory of this archive | 9 | * License. See the file "COPYING" in the main directory of this archive |
| 10 | * for more details. | 10 | * for more details. |
| 11 | */ | 11 | */ |
| 12 | |||
| 13 | |||
| 14 | #include <linux/init.h> | 12 | #include <linux/init.h> |
| 13 | #include <linux/smp.h> | ||
| 15 | #include <asm/processor.h> | 14 | #include <asm/processor.h> |
| 16 | #include <asm/cache.h> | 15 | #include <asm/cache.h> |
| 17 | 16 | ||
| 18 | int __init detect_cpu_and_cache_system(void) | 17 | int __init detect_cpu_and_cache_system(void) |
| 19 | { | 18 | { |
| 20 | #if defined(CONFIG_CPU_SUBTYPE_SH7604) | 19 | #if defined(CONFIG_CPU_SUBTYPE_SH7619) |
| 21 | current_cpu_data.type = CPU_SH7604; | ||
| 22 | current_cpu_data.dcache.ways = 4; | ||
| 23 | current_cpu_data.dcache.way_incr = (1<<10); | ||
| 24 | current_cpu_data.dcache.sets = 64; | ||
| 25 | current_cpu_data.dcache.entry_shift = 4; | ||
| 26 | current_cpu_data.dcache.linesz = L1_CACHE_BYTES; | ||
| 27 | current_cpu_data.dcache.flags = 0; | ||
| 28 | #elif defined(CONFIG_CPU_SUBTYPE_SH7619) | ||
| 29 | current_cpu_data.type = CPU_SH7619; | 20 | current_cpu_data.type = CPU_SH7619; |
| 30 | current_cpu_data.dcache.ways = 4; | 21 | current_cpu_data.dcache.ways = 4; |
| 31 | current_cpu_data.dcache.way_incr = (1<<12); | 22 | current_cpu_data.dcache.way_incr = (1<<12); |
diff --git a/arch/sh/kernel/cpu/sh2/setup-sh7619.c b/arch/sh/kernel/cpu/sh2/setup-sh7619.c index f83ff8a68f35..1a107fe22dde 100644 --- a/arch/sh/kernel/cpu/sh2/setup-sh7619.c +++ b/arch/sh/kernel/cpu/sh2/setup-sh7619.c | |||
| @@ -52,7 +52,7 @@ static int __init sh7619_devices_setup(void) | |||
| 52 | } | 52 | } |
| 53 | __initcall(sh7619_devices_setup); | 53 | __initcall(sh7619_devices_setup); |
| 54 | 54 | ||
| 55 | static struct ipr_data sh7619_ipr_map[] = { | 55 | static struct ipr_data ipr_irq_table[] = { |
| 56 | { 86, 0, 4, 2 }, /* CMI0 */ | 56 | { 86, 0, 4, 2 }, /* CMI0 */ |
| 57 | { 88, 1, 12, 3 }, /* SCIF0_ERI */ | 57 | { 88, 1, 12, 3 }, /* SCIF0_ERI */ |
| 58 | { 89, 1, 12, 3 }, /* SCIF0_RXI */ | 58 | { 89, 1, 12, 3 }, /* SCIF0_RXI */ |
| @@ -68,7 +68,7 @@ static struct ipr_data sh7619_ipr_map[] = { | |||
| 68 | { 99, 1, 4, 3 }, /* SCIF2_TXI */ | 68 | { 99, 1, 4, 3 }, /* SCIF2_TXI */ |
| 69 | }; | 69 | }; |
| 70 | 70 | ||
| 71 | static unsigned int ipr_offsets[] = { | 71 | static unsigned long ipr_offsets[] = { |
| 72 | 0xf8080000, /* IPRC */ | 72 | 0xf8080000, /* IPRC */ |
| 73 | 0xf8080002, /* IPRD */ | 73 | 0xf8080002, /* IPRD */ |
| 74 | 0xf8080004, /* IPRE */ | 74 | 0xf8080004, /* IPRE */ |
| @@ -76,15 +76,19 @@ static unsigned int ipr_offsets[] = { | |||
| 76 | 0xf8080008, /* IPRG */ | 76 | 0xf8080008, /* IPRG */ |
| 77 | }; | 77 | }; |
| 78 | 78 | ||
| 79 | /* given the IPR index return the address of the IPR register */ | 79 | static struct ipr_desc ipr_irq_desc = { |
| 80 | unsigned int map_ipridx_to_addr(int idx) | 80 | .ipr_offsets = ipr_offsets, |
| 81 | { | 81 | .nr_offsets = ARRAY_SIZE(ipr_offsets), |
| 82 | if (unlikely(idx >= ARRAY_SIZE(ipr_offsets))) | 82 | |
| 83 | return 0; | 83 | .ipr_data = ipr_irq_table, |
| 84 | return ipr_offsets[idx]; | 84 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), |
| 85 | } | 85 | |
| 86 | .chip = { | ||
| 87 | .name = "IPR-sh7619", | ||
| 88 | }, | ||
| 89 | }; | ||
| 86 | 90 | ||
| 87 | void __init init_IRQ_ipr(void) | 91 | void __init init_IRQ_ipr(void) |
| 88 | { | 92 | { |
| 89 | make_ipr_irq(sh7619_ipr_map, ARRAY_SIZE(sh7619_ipr_map)); | 93 | register_ipr_controller(&ipr_irq_desc); |
| 90 | } | 94 | } |
diff --git a/arch/sh/kernel/cpu/sh2a/setup-sh7206.c b/arch/sh/kernel/cpu/sh2a/setup-sh7206.c index 4ed9110632bc..b6e3a6351fa6 100644 --- a/arch/sh/kernel/cpu/sh2a/setup-sh7206.c +++ b/arch/sh/kernel/cpu/sh2a/setup-sh7206.c | |||
| @@ -57,7 +57,7 @@ static int __init sh7206_devices_setup(void) | |||
| 57 | } | 57 | } |
| 58 | __initcall(sh7206_devices_setup); | 58 | __initcall(sh7206_devices_setup); |
| 59 | 59 | ||
| 60 | static struct ipr_data sh7206_ipr_map[] = { | 60 | static struct ipr_data ipr_irq_table[] = { |
| 61 | { 140, 7, 12, 2 }, /* CMI0 */ | 61 | { 140, 7, 12, 2 }, /* CMI0 */ |
| 62 | { 164, 8, 4, 2 }, /* MTU2_TGI1A */ | 62 | { 164, 8, 4, 2 }, /* MTU2_TGI1A */ |
| 63 | { 240, 13, 12, 3 }, /* SCIF0_BRI */ | 63 | { 240, 13, 12, 3 }, /* SCIF0_BRI */ |
| @@ -78,7 +78,7 @@ static struct ipr_data sh7206_ipr_map[] = { | |||
| 78 | { 255, 13, 0, 3 }, /* SCIF3_TXI */ | 78 | { 255, 13, 0, 3 }, /* SCIF3_TXI */ |
| 79 | }; | 79 | }; |
| 80 | 80 | ||
| 81 | static unsigned int ipr_offsets[] = { | 81 | static unsigned long ipr_offsets[] = { |
| 82 | 0xfffe0818, /* IPR01 */ | 82 | 0xfffe0818, /* IPR01 */ |
| 83 | 0xfffe081a, /* IPR02 */ | 83 | 0xfffe081a, /* IPR02 */ |
| 84 | 0, /* unused */ | 84 | 0, /* unused */ |
| @@ -95,15 +95,19 @@ static unsigned int ipr_offsets[] = { | |||
| 95 | 0xfffe0c10, /* IPR14 */ | 95 | 0xfffe0c10, /* IPR14 */ |
| 96 | }; | 96 | }; |
| 97 | 97 | ||
| 98 | /* given the IPR index return the address of the IPR register */ | 98 | static struct ipr_desc ipr_irq_desc = { |
| 99 | unsigned int map_ipridx_to_addr(int idx) | 99 | .ipr_offsets = ipr_offsets, |
| 100 | { | 100 | .nr_offsets = ARRAY_SIZE(ipr_offsets), |
| 101 | if (unlikely(idx >= ARRAY_SIZE(ipr_offsets))) | 101 | |
| 102 | return 0; | 102 | .ipr_data = ipr_irq_table, |
| 103 | return ipr_offsets[idx]; | 103 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), |
| 104 | } | 104 | |
| 105 | .chip = { | ||
| 106 | .name = "IPR-sh7206", | ||
| 107 | }, | ||
| 108 | }; | ||
| 105 | 109 | ||
| 106 | void __init init_IRQ_ipr(void) | 110 | void __init init_IRQ_ipr(void) |
| 107 | { | 111 | { |
| 108 | make_ipr_irq(sh7206_ipr_map, ARRAY_SIZE(sh7206_ipr_map)); | 112 | register_ipr_controller(&ipr_irq_desc); |
| 109 | } | 113 | } |
diff --git a/arch/sh/kernel/cpu/sh3/entry.S b/arch/sh/kernel/cpu/sh3/entry.S index b0b59d4a33ca..d8e122971c3e 100644 --- a/arch/sh/kernel/cpu/sh3/entry.S +++ b/arch/sh/kernel/cpu/sh3/entry.S | |||
| @@ -340,8 +340,27 @@ ENTRY(vbr_base) | |||
| 340 | general_exception: | 340 | general_exception: |
| 341 | mov.l 1f, k2 | 341 | mov.l 1f, k2 |
| 342 | mov.l 2f, k3 | 342 | mov.l 2f, k3 |
| 343 | #ifdef CONFIG_CPU_SUBTYPE_SHX3 | ||
| 344 | mov.l @k2, k2 | ||
| 345 | |||
| 346 | ! Is EXPEVT larger than 0x800? | ||
| 347 | mov #0x8, k0 | ||
| 348 | shll8 k0 | ||
| 349 | cmp/hs k0, k2 | ||
| 350 | bf 0f | ||
| 351 | |||
| 352 | ! then add 0x580 (k2 is 0xd80 or 0xda0) | ||
| 353 | mov #0x58, k0 | ||
| 354 | shll2 k0 | ||
| 355 | shll2 k0 | ||
| 356 | add k0, k2 | ||
| 357 | 0: | ||
| 358 | bra handle_exception | ||
| 359 | nop | ||
| 360 | #else | ||
| 343 | bra handle_exception | 361 | bra handle_exception |
| 344 | mov.l @k2, k2 | 362 | mov.l @k2, k2 |
| 363 | #endif | ||
| 345 | .align 2 | 364 | .align 2 |
| 346 | 1: .long EXPEVT | 365 | 1: .long EXPEVT |
| 347 | 2: .long ret_from_exception | 366 | 2: .long ret_from_exception |
diff --git a/arch/sh/kernel/cpu/sh3/setup-sh7705.c b/arch/sh/kernel/cpu/sh3/setup-sh7705.c index 1983fb7ad6ea..a55b8ce2c54c 100644 --- a/arch/sh/kernel/cpu/sh3/setup-sh7705.c +++ b/arch/sh/kernel/cpu/sh3/setup-sh7705.c | |||
| @@ -48,7 +48,7 @@ static int __init sh7705_devices_setup(void) | |||
| 48 | } | 48 | } |
| 49 | __initcall(sh7705_devices_setup); | 49 | __initcall(sh7705_devices_setup); |
| 50 | 50 | ||
| 51 | static struct ipr_data sh7705_ipr_map[] = { | 51 | static struct ipr_data ipr_irq_table[] = { |
| 52 | /* IRQ, IPR-idx, shift, priority */ | 52 | /* IRQ, IPR-idx, shift, priority */ |
| 53 | { 16, 0, 12, 2 }, /* TMU0 TUNI*/ | 53 | { 16, 0, 12, 2 }, /* TMU0 TUNI*/ |
| 54 | { 17, 0, 8, 2 }, /* TMU1 TUNI */ | 54 | { 17, 0, 8, 2 }, /* TMU1 TUNI */ |
| @@ -70,25 +70,29 @@ static struct ipr_data sh7705_ipr_map[] = { | |||
| 70 | }; | 70 | }; |
| 71 | 71 | ||
| 72 | static unsigned long ipr_offsets[] = { | 72 | static unsigned long ipr_offsets[] = { |
| 73 | 0xFFFFFEE2 /* 0: IPRA */ | 73 | 0xFFFFFEE2, /* 0: IPRA */ |
| 74 | , 0xFFFFFEE4 /* 1: IPRB */ | 74 | 0xFFFFFEE4, /* 1: IPRB */ |
| 75 | , 0xA4000016 /* 2: IPRC */ | 75 | 0xA4000016, /* 2: IPRC */ |
| 76 | , 0xA4000018 /* 3: IPRD */ | 76 | 0xA4000018, /* 3: IPRD */ |
| 77 | , 0xA400001A /* 4: IPRE */ | 77 | 0xA400001A, /* 4: IPRE */ |
| 78 | , 0xA4080000 /* 5: IPRF */ | 78 | 0xA4080000, /* 5: IPRF */ |
| 79 | , 0xA4080002 /* 6: IPRG */ | 79 | 0xA4080002, /* 6: IPRG */ |
| 80 | , 0xA4080004 /* 7: IPRH */ | 80 | 0xA4080004, /* 7: IPRH */ |
| 81 | }; | 81 | }; |
| 82 | 82 | ||
| 83 | /* given the IPR index return the address of the IPR register */ | 83 | static struct ipr_desc ipr_irq_desc = { |
| 84 | unsigned int map_ipridx_to_addr(int idx) | 84 | .ipr_offsets = ipr_offsets, |
| 85 | { | 85 | .nr_offsets = ARRAY_SIZE(ipr_offsets), |
| 86 | if (idx >= ARRAY_SIZE(ipr_offsets)) | 86 | |
| 87 | return 0; | 87 | .ipr_data = ipr_irq_table, |
| 88 | return ipr_offsets[idx]; | 88 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), |
| 89 | } | 89 | |
| 90 | .chip = { | ||
| 91 | .name = "IPR-sh7705", | ||
| 92 | }, | ||
| 93 | }; | ||
| 90 | 94 | ||
| 91 | void __init init_IRQ_ipr() | 95 | void __init init_IRQ_ipr(void) |
| 92 | { | 96 | { |
| 93 | make_ipr_irq(sh7705_ipr_map, ARRAY_SIZE(sh7705_ipr_map)); | 97 | register_ipr_controller(&ipr_irq_desc); |
| 94 | } | 98 | } |
diff --git a/arch/sh/kernel/cpu/sh3/setup-sh7709.c b/arch/sh/kernel/cpu/sh3/setup-sh7709.c index c7d7c35fc834..d79ec0c0522f 100644 --- a/arch/sh/kernel/cpu/sh3/setup-sh7709.c +++ b/arch/sh/kernel/cpu/sh3/setup-sh7709.c | |||
| @@ -12,6 +12,26 @@ | |||
| 12 | #include <linux/serial.h> | 12 | #include <linux/serial.h> |
| 13 | #include <asm/sci.h> | 13 | #include <asm/sci.h> |
| 14 | 14 | ||
| 15 | static struct resource rtc_resources[] = { | ||
| 16 | [0] = { | ||
| 17 | .start = 0xfffffec0, | ||
| 18 | .end = 0xfffffec0 + 0x1e, | ||
| 19 | .flags = IORESOURCE_IO, | ||
| 20 | }, | ||
| 21 | [1] = { | ||
| 22 | .start = 20, | ||
| 23 | .flags = IORESOURCE_IRQ, | ||
| 24 | }, | ||
| 25 | [2] = { | ||
| 26 | .start = 21, | ||
| 27 | .flags = IORESOURCE_IRQ, | ||
| 28 | }, | ||
| 29 | [3] = { | ||
| 30 | .start = 22, | ||
| 31 | .flags = IORESOURCE_IRQ, | ||
| 32 | }, | ||
| 33 | }; | ||
| 34 | |||
| 15 | static struct plat_sci_port sci_platform_data[] = { | 35 | static struct plat_sci_port sci_platform_data[] = { |
| 16 | { | 36 | { |
| 17 | .mapbase = 0xfffffe80, | 37 | .mapbase = 0xfffffe80, |
| @@ -41,8 +61,16 @@ static struct platform_device sci_device = { | |||
| 41 | }, | 61 | }, |
| 42 | }; | 62 | }; |
| 43 | 63 | ||
| 64 | static struct platform_device rtc_device = { | ||
| 65 | .name = "sh-rtc", | ||
| 66 | .id = -1, | ||
| 67 | .num_resources = ARRAY_SIZE(rtc_resources), | ||
| 68 | .resource = rtc_resources, | ||
| 69 | }; | ||
| 70 | |||
| 44 | static struct platform_device *sh7709_devices[] __initdata = { | 71 | static struct platform_device *sh7709_devices[] __initdata = { |
| 45 | &sci_device, | 72 | &sci_device, |
| 73 | &rtc_device, | ||
| 46 | }; | 74 | }; |
| 47 | 75 | ||
| 48 | static int __init sh7709_devices_setup(void) | 76 | static int __init sh7709_devices_setup(void) |
| @@ -52,32 +80,66 @@ static int __init sh7709_devices_setup(void) | |||
| 52 | } | 80 | } |
| 53 | __initcall(sh7709_devices_setup); | 81 | __initcall(sh7709_devices_setup); |
| 54 | 82 | ||
| 55 | #define IPRx(A,N) .addr=A, .shift=N | 83 | static struct ipr_data ipr_irq_table[] = { |
| 56 | #define IPRA(N) IPRx(0xfffffee2UL,N) | 84 | { 16, 0, 12, 2 }, /* TMU TUNI0 */ |
| 57 | #define IPRB(N) IPRx(0xfffffee4UL,N) | 85 | { 17, 0, 8, 4 }, /* TMU TUNI1 */ |
| 58 | #define IPRC(N) IPRx(0xa4000016UL,N) | 86 | { 18, 0, 4, 1 }, /* TMU TUNI1 */ |
| 59 | #define IPRD(N) IPRx(0xa4000018UL,N) | 87 | { 19, 0, 4, 1 }, /* TMU TUNI1 */ |
| 60 | #define IPRE(N) IPRx(0xa400001aUL,N) | 88 | { 20, 0, 0, 2 }, /* RTC CUI */ |
| 61 | 89 | { 21, 0, 0, 2 }, /* RTC CUI */ | |
| 62 | static struct ipr_data sh7709_ipr_map[] = { | 90 | { 22, 0, 0, 2 }, /* RTC CUI */ |
| 63 | [16] = { IPRA(12), 2 }, /* TMU TUNI0 */ | 91 | |
| 64 | [17] = { IPRA(8), 4 }, /* TMU TUNI1 */ | 92 | { 23, 1, 4, 3 }, /* SCI */ |
| 65 | [18 ... 19] = { IPRA(4), 1 }, /* TMU TUNI1 */ | 93 | { 24, 1, 4, 3 }, /* SCI */ |
| 66 | [20 ... 22] = { IPRA(0), 2 }, /* RTC CUI */ | 94 | { 25, 1, 4, 3 }, /* SCI */ |
| 67 | [23 ... 26] = { IPRB(4), 3 }, /* SCI */ | 95 | { 26, 1, 4, 3 }, /* SCI */ |
| 68 | [27] = { IPRB(12), 2 }, /* WDT ITI */ | 96 | { 27, 1, 12, 3 }, /* WDT ITI */ |
| 69 | [32] = { IPRC(0), 1 }, /* IRQ 0 */ | 97 | |
| 70 | [33] = { IPRC(4), 1 }, /* IRQ 1 */ | 98 | { 32, 2, 0, 1 }, /* IRQ 0 */ |
| 71 | [34] = { IPRC(8), 1 }, /* IRQ 2 APM */ | 99 | { 33, 2, 4, 1 }, /* IRQ 1 */ |
| 72 | [35] = { IPRC(12), 1 }, /* IRQ 3 TOUCHSCREEN */ | 100 | { 34, 2, 8, 1 }, /* IRQ 2 APM */ |
| 73 | [36] = { IPRD(0), 1 }, /* IRQ 4 */ | 101 | { 35, 2, 12, 1 }, /* IRQ 3 TOUCHSCREEN */ |
| 74 | [37] = { IPRD(4), 1 }, /* IRQ 5 */ | 102 | |
| 75 | [48 ... 51] = { IPRE(12), 7 }, /* DMA */ | 103 | { 36, 3, 0, 1 }, /* IRQ 4 */ |
| 76 | [52 ... 55] = { IPRE(8), 3 }, /* IRDA */ | 104 | { 37, 3, 4, 1 }, /* IRQ 5 */ |
| 77 | [56 ... 59] = { IPRE(4), 3 }, /* SCIF */ | 105 | |
| 106 | { 48, 4, 12, 7 }, /* DMA */ | ||
| 107 | { 49, 4, 12, 7 }, /* DMA */ | ||
| 108 | { 50, 4, 12, 7 }, /* DMA */ | ||
| 109 | { 51, 4, 12, 7 }, /* DMA */ | ||
| 110 | |||
| 111 | { 52, 4, 8, 3 }, /* IRDA */ | ||
| 112 | { 53, 4, 8, 3 }, /* IRDA */ | ||
| 113 | { 54, 4, 8, 3 }, /* IRDA */ | ||
| 114 | { 55, 4, 8, 3 }, /* IRDA */ | ||
| 115 | |||
| 116 | { 56, 4, 4, 3 }, /* SCIF */ | ||
| 117 | { 57, 4, 4, 3 }, /* SCIF */ | ||
| 118 | { 58, 4, 4, 3 }, /* SCIF */ | ||
| 119 | { 59, 4, 4, 3 }, /* SCIF */ | ||
| 120 | }; | ||
| 121 | |||
| 122 | static unsigned long ipr_offsets[] = { | ||
| 123 | 0xfffffee2, /* 0: IPRA */ | ||
| 124 | 0xfffffee4, /* 1: IPRB */ | ||
| 125 | 0xa4000016, /* 2: IPRC */ | ||
| 126 | 0xa4000018, /* 3: IPRD */ | ||
| 127 | 0xa400001a, /* 4: IPRE */ | ||
| 128 | }; | ||
| 129 | |||
| 130 | static struct ipr_desc ipr_irq_desc = { | ||
| 131 | .ipr_offsets = ipr_offsets, | ||
| 132 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
| 133 | |||
| 134 | .ipr_data = ipr_irq_table, | ||
| 135 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
| 136 | |||
| 137 | .chip = { | ||
| 138 | .name = "IPR-sh7709", | ||
| 139 | }, | ||
| 78 | }; | 140 | }; |
| 79 | 141 | ||
| 80 | void __init init_IRQ_ipr() | 142 | void __init init_IRQ_ipr(void) |
| 81 | { | 143 | { |
| 82 | make_ipr_irq(sh7709_ipr_map, ARRAY_SIZE(sh7709_ipr_map)); | 144 | register_ipr_controller(&ipr_irq_desc); |
| 83 | } | 145 | } |
diff --git a/arch/sh/kernel/cpu/sh3/setup-sh7710.c b/arch/sh/kernel/cpu/sh3/setup-sh7710.c index 51760a7e7f1c..f40e6dac337d 100644 --- a/arch/sh/kernel/cpu/sh3/setup-sh7710.c +++ b/arch/sh/kernel/cpu/sh3/setup-sh7710.c | |||
| @@ -49,7 +49,7 @@ static int __init sh7710_devices_setup(void) | |||
| 49 | } | 49 | } |
| 50 | __initcall(sh7710_devices_setup); | 50 | __initcall(sh7710_devices_setup); |
| 51 | 51 | ||
| 52 | static struct ipr_data sh7710_ipr_map[] = { | 52 | static struct ipr_data ipr_irq_table[] = { |
| 53 | /* IRQ, IPR-idx, shift, priority */ | 53 | /* IRQ, IPR-idx, shift, priority */ |
| 54 | { 16, 0, 12, 2 }, /* TMU0 TUNI*/ | 54 | { 16, 0, 12, 2 }, /* TMU0 TUNI*/ |
| 55 | { 17, 0, 8, 2 }, /* TMU1 TUNI */ | 55 | { 17, 0, 8, 2 }, /* TMU1 TUNI */ |
| @@ -78,26 +78,30 @@ static struct ipr_data sh7710_ipr_map[] = { | |||
| 78 | }; | 78 | }; |
| 79 | 79 | ||
| 80 | static unsigned long ipr_offsets[] = { | 80 | static unsigned long ipr_offsets[] = { |
| 81 | 0xA414FEE2 /* 0: IPRA */ | 81 | 0xA414FEE2, /* 0: IPRA */ |
| 82 | , 0xA414FEE4 /* 1: IPRB */ | 82 | 0xA414FEE4, /* 1: IPRB */ |
| 83 | , 0xA4140016 /* 2: IPRC */ | 83 | 0xA4140016, /* 2: IPRC */ |
| 84 | , 0xA4140018 /* 3: IPRD */ | 84 | 0xA4140018, /* 3: IPRD */ |
| 85 | , 0xA414001A /* 4: IPRE */ | 85 | 0xA414001A, /* 4: IPRE */ |
| 86 | , 0xA4080000 /* 5: IPRF */ | 86 | 0xA4080000, /* 5: IPRF */ |
| 87 | , 0xA4080002 /* 6: IPRG */ | 87 | 0xA4080002, /* 6: IPRG */ |
| 88 | , 0xA4080004 /* 7: IPRH */ | 88 | 0xA4080004, /* 7: IPRH */ |
| 89 | , 0xA4080006 /* 8: IPRI */ | 89 | 0xA4080006, /* 8: IPRI */ |
| 90 | }; | 90 | }; |
| 91 | 91 | ||
| 92 | /* given the IPR index return the address of the IPR register */ | 92 | static struct ipr_desc ipr_irq_desc = { |
| 93 | unsigned int map_ipridx_to_addr(int idx) | 93 | .ipr_offsets = ipr_offsets, |
| 94 | { | 94 | .nr_offsets = ARRAY_SIZE(ipr_offsets), |
| 95 | if (idx >= ARRAY_SIZE(ipr_offsets)) | 95 | |
| 96 | return 0; | 96 | .ipr_data = ipr_irq_table, |
| 97 | return ipr_offsets[idx]; | 97 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), |
| 98 | } | 98 | |
| 99 | .chip = { | ||
| 100 | .name = "IPR-sh7710", | ||
| 101 | }, | ||
| 102 | }; | ||
| 99 | 103 | ||
| 100 | void __init init_IRQ_ipr() | 104 | void __init init_IRQ_ipr(void) |
| 101 | { | 105 | { |
| 102 | make_ipr_irq(sh7710_ipr_map, ARRAY_SIZE(sh7710_ipr_map)); | 106 | register_ipr_controller(&ipr_irq_desc); |
| 103 | } | 107 | } |
diff --git a/arch/sh/kernel/cpu/sh4/Makefile b/arch/sh/kernel/cpu/sh4/Makefile index 8add10bd8268..dadd6bffc128 100644 --- a/arch/sh/kernel/cpu/sh4/Makefile +++ b/arch/sh/kernel/cpu/sh4/Makefile | |||
| @@ -10,7 +10,11 @@ obj-$(CONFIG_SH_STORE_QUEUES) += sq.o | |||
| 10 | 10 | ||
| 11 | # CPU subtype setup | 11 | # CPU subtype setup |
| 12 | obj-$(CONFIG_CPU_SUBTYPE_SH7750) += setup-sh7750.o | 12 | obj-$(CONFIG_CPU_SUBTYPE_SH7750) += setup-sh7750.o |
| 13 | obj-$(CONFIG_CPU_SUBTYPE_SH7750R) += setup-sh7750.o | ||
| 14 | obj-$(CONFIG_CPU_SUBTYPE_SH7750S) += setup-sh7750.o | ||
| 15 | obj-$(CONFIG_CPU_SUBTYPE_SH7091) += setup-sh7750.o | ||
| 13 | obj-$(CONFIG_CPU_SUBTYPE_SH7751) += setup-sh7750.o | 16 | obj-$(CONFIG_CPU_SUBTYPE_SH7751) += setup-sh7750.o |
| 17 | obj-$(CONFIG_CPU_SUBTYPE_SH7751R) += setup-sh7750.o | ||
| 14 | obj-$(CONFIG_CPU_SUBTYPE_SH7760) += setup-sh7760.o | 18 | obj-$(CONFIG_CPU_SUBTYPE_SH7760) += setup-sh7760.o |
| 15 | obj-$(CONFIG_CPU_SUBTYPE_SH4_202) += setup-sh4-202.o | 19 | obj-$(CONFIG_CPU_SUBTYPE_SH4_202) += setup-sh4-202.o |
| 16 | 20 | ||
diff --git a/arch/sh/kernel/cpu/sh4/probe.c b/arch/sh/kernel/cpu/sh4/probe.c index fab2eb07196b..66c3f75647b2 100644 --- a/arch/sh/kernel/cpu/sh4/probe.c +++ b/arch/sh/kernel/cpu/sh4/probe.c | |||
| @@ -141,6 +141,14 @@ int __init detect_cpu_and_cache_system(void) | |||
| 141 | current_cpu_data.flags |= CPU_HAS_LLSC; | 141 | current_cpu_data.flags |= CPU_HAS_LLSC; |
| 142 | } | 142 | } |
| 143 | break; | 143 | break; |
| 144 | case 0x4000: /* 1st cut */ | ||
| 145 | case 0x4001: /* 2nd cut */ | ||
| 146 | current_cpu_data.type = CPU_SHX3; | ||
| 147 | current_cpu_data.icache.ways = 4; | ||
| 148 | current_cpu_data.dcache.ways = 4; | ||
| 149 | current_cpu_data.flags |= CPU_HAS_FPU | CPU_HAS_PERF_COUNTER | | ||
| 150 | CPU_HAS_LLSC; | ||
| 151 | break; | ||
| 144 | case 0x8000: | 152 | case 0x8000: |
| 145 | current_cpu_data.type = CPU_ST40RA; | 153 | current_cpu_data.type = CPU_ST40RA; |
| 146 | current_cpu_data.flags |= CPU_HAS_FPU; | 154 | current_cpu_data.flags |= CPU_HAS_FPU; |
diff --git a/arch/sh/kernel/cpu/sh4/setup-sh7750.c b/arch/sh/kernel/cpu/sh4/setup-sh7750.c index 03b14cf78ddf..da153bcdfeb2 100644 --- a/arch/sh/kernel/cpu/sh4/setup-sh7750.c +++ b/arch/sh/kernel/cpu/sh4/setup-sh7750.c | |||
| @@ -82,7 +82,7 @@ static int __init sh7750_devices_setup(void) | |||
| 82 | } | 82 | } |
| 83 | __initcall(sh7750_devices_setup); | 83 | __initcall(sh7750_devices_setup); |
| 84 | 84 | ||
| 85 | static struct ipr_data sh7750_ipr_map[] = { | 85 | static struct ipr_data ipr_irq_table[] = { |
| 86 | /* IRQ, IPR-idx, shift, priority */ | 86 | /* IRQ, IPR-idx, shift, priority */ |
| 87 | { 16, 0, 12, 2 }, /* TMU0 TUNI*/ | 87 | { 16, 0, 12, 2 }, /* TMU0 TUNI*/ |
| 88 | { 17, 0, 12, 2 }, /* TMU1 TUNI */ | 88 | { 17, 0, 12, 2 }, /* TMU1 TUNI */ |
| @@ -106,8 +106,27 @@ static struct ipr_data sh7750_ipr_map[] = { | |||
| 106 | { 38, 2, 8, 7 }, /* DMAC DMAE */ | 106 | { 38, 2, 8, 7 }, /* DMAC DMAE */ |
| 107 | }; | 107 | }; |
| 108 | 108 | ||
| 109 | static unsigned long ipr_offsets[] = { | ||
| 110 | 0xffd00004UL, /* 0: IPRA */ | ||
| 111 | 0xffd00008UL, /* 1: IPRB */ | ||
| 112 | 0xffd0000cUL, /* 2: IPRC */ | ||
| 113 | 0xffd00010UL, /* 3: IPRD */ | ||
| 114 | }; | ||
| 115 | |||
| 116 | static struct ipr_desc ipr_irq_desc = { | ||
| 117 | .ipr_offsets = ipr_offsets, | ||
| 118 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
| 119 | |||
| 120 | .ipr_data = ipr_irq_table, | ||
| 121 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
| 122 | |||
| 123 | .chip = { | ||
| 124 | .name = "IPR-sh7750", | ||
| 125 | }, | ||
| 126 | }; | ||
| 127 | |||
| 109 | #ifdef CONFIG_CPU_SUBTYPE_SH7751 | 128 | #ifdef CONFIG_CPU_SUBTYPE_SH7751 |
| 110 | static struct ipr_data sh7751_ipr_map[] = { | 129 | static struct ipr_data ipr_irq_table_sh7751[] = { |
| 111 | { 44, 2, 8, 7 }, /* DMAC DMTE4 */ | 130 | { 44, 2, 8, 7 }, /* DMAC DMTE4 */ |
| 112 | { 45, 2, 8, 7 }, /* DMAC DMTE5 */ | 131 | { 45, 2, 8, 7 }, /* DMAC DMTE5 */ |
| 113 | { 46, 2, 8, 7 }, /* DMAC DMTE6 */ | 132 | { 46, 2, 8, 7 }, /* DMAC DMTE6 */ |
| @@ -118,21 +137,26 @@ static struct ipr_data sh7751_ipr_map[] = { | |||
| 118 | /*{ 72, INTPRI00, 8, ? },*/ /* TMU3 TUNI */ | 137 | /*{ 72, INTPRI00, 8, ? },*/ /* TMU3 TUNI */ |
| 119 | /*{ 76, INTPRI00, 12, ? },*/ /* TMU4 TUNI */ | 138 | /*{ 76, INTPRI00, 12, ? },*/ /* TMU4 TUNI */ |
| 120 | }; | 139 | }; |
| 121 | #endif | ||
| 122 | 140 | ||
| 123 | static unsigned long ipr_offsets[] = { | 141 | static struct ipr_desc ipr_irq_desc_sh7751 = { |
| 124 | 0xffd00004UL, /* 0: IPRA */ | 142 | .ipr_offsets = ipr_offsets, |
| 125 | 0xffd00008UL, /* 1: IPRB */ | 143 | .nr_offsets = ARRAY_SIZE(ipr_offsets), |
| 126 | 0xffd0000cUL, /* 2: IPRC */ | 144 | |
| 127 | 0xffd00010UL, /* 3: IPRD */ | 145 | .ipr_data = ipr_irq_table_sh7751, |
| 146 | .nr_irqs = ARRAY_SIZE(ipr_irq_table_sh7751), | ||
| 147 | |||
| 148 | .chip = { | ||
| 149 | .name = "IPR-sh7751", | ||
| 150 | }, | ||
| 128 | }; | 151 | }; |
| 152 | #endif | ||
| 129 | 153 | ||
| 130 | /* given the IPR index return the address of the IPR register */ | 154 | void __init init_IRQ_ipr(void) |
| 131 | unsigned int map_ipridx_to_addr(int idx) | ||
| 132 | { | 155 | { |
| 133 | if (idx >= ARRAY_SIZE(ipr_offsets)) | 156 | register_ipr_controller(&ipr_irq_desc); |
| 134 | return 0; | 157 | #ifdef CONFIG_CPU_SUBTYPE_SH7751 |
| 135 | return ipr_offsets[idx]; | 158 | register_ipr_controller(&ipr_irq_desc_sh7751); |
| 159 | #endif | ||
| 136 | } | 160 | } |
| 137 | 161 | ||
| 138 | #define INTC_ICR 0xffd00000UL | 162 | #define INTC_ICR 0xffd00000UL |
| @@ -143,11 +167,3 @@ void ipr_irq_enable_irlm(void) | |||
| 143 | { | 167 | { |
| 144 | ctrl_outw(ctrl_inw(INTC_ICR) | INTC_ICR_IRLM, INTC_ICR); | 168 | ctrl_outw(ctrl_inw(INTC_ICR) | INTC_ICR_IRLM, INTC_ICR); |
| 145 | } | 169 | } |
| 146 | |||
| 147 | void __init init_IRQ_ipr() | ||
| 148 | { | ||
| 149 | make_ipr_irq(sh7750_ipr_map, ARRAY_SIZE(sh7750_ipr_map)); | ||
| 150 | #ifdef CONFIG_CPU_SUBTYPE_SH7751 | ||
| 151 | make_ipr_irq(sh7751_ipr_map, ARRAY_SIZE(sh7751_ipr_map)); | ||
| 152 | #endif | ||
| 153 | } | ||
diff --git a/arch/sh/kernel/cpu/sh4/setup-sh7760.c b/arch/sh/kernel/cpu/sh4/setup-sh7760.c index b7c702821e6f..3df169755673 100644 --- a/arch/sh/kernel/cpu/sh4/setup-sh7760.c +++ b/arch/sh/kernel/cpu/sh4/setup-sh7760.c | |||
| @@ -96,7 +96,25 @@ static struct intc2_data intc2_irq_table[] = { | |||
| 96 | {109,12, 0, 4, 0, 3}, /* CMTI */ | 96 | {109,12, 0, 4, 0, 3}, /* CMTI */ |
| 97 | }; | 97 | }; |
| 98 | 98 | ||
| 99 | static struct ipr_data sh7760_ipr_map[] = { | 99 | static struct intc2_desc intc2_irq_desc __read_mostly = { |
| 100 | .prio_base = 0xfe080000, | ||
| 101 | .msk_base = 0xfe080040, | ||
| 102 | .mskclr_base = 0xfe080060, | ||
| 103 | |||
| 104 | .intc2_data = intc2_irq_table, | ||
| 105 | .nr_irqs = ARRAY_SIZE(intc2_irq_table), | ||
| 106 | |||
| 107 | .chip = { | ||
| 108 | .name = "INTC2-sh7760", | ||
| 109 | }, | ||
| 110 | }; | ||
| 111 | |||
| 112 | void __init init_IRQ_intc2(void) | ||
| 113 | { | ||
| 114 | register_intc2_controller(&intc2_irq_desc); | ||
| 115 | } | ||
| 116 | |||
| 117 | static struct ipr_data ipr_irq_table[] = { | ||
| 100 | /* IRQ, IPR-idx, shift, priority */ | 118 | /* IRQ, IPR-idx, shift, priority */ |
| 101 | { 16, 0, 12, 2 }, /* TMU0 TUNI*/ | 119 | { 16, 0, 12, 2 }, /* TMU0 TUNI*/ |
| 102 | { 17, 0, 8, 2 }, /* TMU1 TUNI */ | 120 | { 17, 0, 8, 2 }, /* TMU1 TUNI */ |
| @@ -133,20 +151,19 @@ static unsigned long ipr_offsets[] = { | |||
| 133 | 0xffd00010UL, /* 3: IPRD */ | 151 | 0xffd00010UL, /* 3: IPRD */ |
| 134 | }; | 152 | }; |
| 135 | 153 | ||
| 136 | /* given the IPR index return the address of the IPR register */ | 154 | static struct ipr_desc ipr_irq_desc = { |
| 137 | unsigned int map_ipridx_to_addr(int idx) | 155 | .ipr_offsets = ipr_offsets, |
| 138 | { | 156 | .nr_offsets = ARRAY_SIZE(ipr_offsets), |
| 139 | if (idx >= ARRAY_SIZE(ipr_offsets)) | ||
| 140 | return 0; | ||
| 141 | return ipr_offsets[idx]; | ||
| 142 | } | ||
| 143 | 157 | ||
| 144 | void __init init_IRQ_intc2(void) | 158 | .ipr_data = ipr_irq_table, |
| 145 | { | 159 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), |
| 146 | make_intc2_irq(intc2_irq_table, ARRAY_SIZE(intc2_irq_table)); | 160 | |
| 147 | } | 161 | .chip = { |
| 162 | .name = "IPR-sh7760", | ||
| 163 | }, | ||
| 164 | }; | ||
| 148 | 165 | ||
| 149 | void __init init_IRQ_ipr(void) | 166 | void __init init_IRQ_ipr(void) |
| 150 | { | 167 | { |
| 151 | make_ipr_irq(sh7760_ipr_map, ARRAY_SIZE(sh7760_ipr_map)); | 168 | register_ipr_controller(&ipr_irq_desc); |
| 152 | } | 169 | } |
diff --git a/arch/sh/kernel/cpu/sh4a/Makefile b/arch/sh/kernel/cpu/sh4a/Makefile index ab7422f8f820..400623286487 100644 --- a/arch/sh/kernel/cpu/sh4a/Makefile +++ b/arch/sh/kernel/cpu/sh4a/Makefile | |||
| @@ -9,6 +9,7 @@ obj-$(CONFIG_CPU_SUBTYPE_SH7785) += setup-sh7785.o | |||
| 9 | obj-$(CONFIG_CPU_SUBTYPE_SH73180) += setup-sh73180.o | 9 | obj-$(CONFIG_CPU_SUBTYPE_SH73180) += setup-sh73180.o |
| 10 | obj-$(CONFIG_CPU_SUBTYPE_SH7343) += setup-sh7343.o | 10 | obj-$(CONFIG_CPU_SUBTYPE_SH7343) += setup-sh7343.o |
| 11 | obj-$(CONFIG_CPU_SUBTYPE_SH7722) += setup-sh7722.o | 11 | obj-$(CONFIG_CPU_SUBTYPE_SH7722) += setup-sh7722.o |
| 12 | obj-$(CONFIG_CPU_SUBTYPE_SHX3) += setup-shx3.o | ||
| 12 | 13 | ||
| 13 | # Primary on-chip clocks (common) | 14 | # Primary on-chip clocks (common) |
| 14 | clock-$(CONFIG_CPU_SUBTYPE_SH73180) := clock-sh73180.o | 15 | clock-$(CONFIG_CPU_SUBTYPE_SH73180) := clock-sh73180.o |
| @@ -17,5 +18,6 @@ clock-$(CONFIG_CPU_SUBTYPE_SH7780) := clock-sh7780.o | |||
| 17 | clock-$(CONFIG_CPU_SUBTYPE_SH7785) := clock-sh7785.o | 18 | clock-$(CONFIG_CPU_SUBTYPE_SH7785) := clock-sh7785.o |
| 18 | clock-$(CONFIG_CPU_SUBTYPE_SH7343) := clock-sh7343.o | 19 | clock-$(CONFIG_CPU_SUBTYPE_SH7343) := clock-sh7343.o |
| 19 | clock-$(CONFIG_CPU_SUBTYPE_SH7722) := clock-sh7722.o | 20 | clock-$(CONFIG_CPU_SUBTYPE_SH7722) := clock-sh7722.o |
| 21 | clock-$(CONFIG_CPU_SUBTYPE_SHX3) := clock-shx3.o | ||
| 20 | 22 | ||
| 21 | obj-y += $(clock-y) | 23 | obj-y += $(clock-y) |
diff --git a/arch/sh/kernel/cpu/sh4a/clock-shx3.c b/arch/sh/kernel/cpu/sh4a/clock-shx3.c new file mode 100644 index 000000000000..c630b29e06a8 --- /dev/null +++ b/arch/sh/kernel/cpu/sh4a/clock-shx3.c | |||
| @@ -0,0 +1,135 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/kernel/cpu/sh4/clock-shx3.c | ||
| 3 | * | ||
| 4 | * SH-X3 support for the clock framework | ||
| 5 | * | ||
| 6 | * Copyright (C) 2006-2007 Renesas Technology Corp. | ||
| 7 | * Copyright (C) 2006-2007 Renesas Solutions Corp. | ||
| 8 | * Copyright (C) 2006-2007 Paul Mundt | ||
| 9 | * | ||
| 10 | * This file is subject to the terms and conditions of the GNU General Public | ||
| 11 | * License. See the file "COPYING" in the main directory of this archive | ||
| 12 | * for more details. | ||
| 13 | */ | ||
| 14 | #include <linux/init.h> | ||
| 15 | #include <linux/kernel.h> | ||
| 16 | #include <asm/clock.h> | ||
| 17 | #include <asm/freq.h> | ||
| 18 | #include <asm/io.h> | ||
| 19 | |||
| 20 | static int ifc_divisors[] = { 1, 2, 4 ,6 }; | ||
| 21 | static int bfc_divisors[] = { 1, 1, 1, 1, 1, 12, 16, 18, 24, 32, 36, 48 }; | ||
| 22 | static int pfc_divisors[] = { 1, 1, 1, 1, 1, 1, 1, 18, 24, 32, 36, 48 }; | ||
| 23 | static int cfc_divisors[] = { 1, 1, 4, 6 }; | ||
| 24 | |||
| 25 | #define IFC_POS 28 | ||
| 26 | #define IFC_MSK 0x0003 | ||
| 27 | #define BFC_MSK 0x000f | ||
| 28 | #define PFC_MSK 0x000f | ||
| 29 | #define CFC_MSK 0x0003 | ||
| 30 | #define BFC_POS 16 | ||
| 31 | #define PFC_POS 0 | ||
| 32 | #define CFC_POS 20 | ||
| 33 | |||
| 34 | static void master_clk_init(struct clk *clk) | ||
| 35 | { | ||
| 36 | clk->rate *= pfc_divisors[(ctrl_inl(FRQCR) >> PFC_POS) & PFC_MSK]; | ||
| 37 | } | ||
| 38 | |||
| 39 | static struct clk_ops shx3_master_clk_ops = { | ||
| 40 | .init = master_clk_init, | ||
| 41 | }; | ||
| 42 | |||
| 43 | static void module_clk_recalc(struct clk *clk) | ||
| 44 | { | ||
| 45 | int idx = ((ctrl_inl(FRQCR) >> PFC_POS) & PFC_MSK); | ||
| 46 | clk->rate = clk->parent->rate / pfc_divisors[idx]; | ||
| 47 | } | ||
| 48 | |||
| 49 | static struct clk_ops shx3_module_clk_ops = { | ||
| 50 | .recalc = module_clk_recalc, | ||
| 51 | }; | ||
| 52 | |||
| 53 | static void bus_clk_recalc(struct clk *clk) | ||
| 54 | { | ||
| 55 | int idx = ((ctrl_inl(FRQCR) >> BFC_POS) & BFC_MSK); | ||
| 56 | clk->rate = clk->parent->rate / bfc_divisors[idx]; | ||
| 57 | } | ||
| 58 | |||
| 59 | static struct clk_ops shx3_bus_clk_ops = { | ||
| 60 | .recalc = bus_clk_recalc, | ||
| 61 | }; | ||
| 62 | |||
| 63 | static void cpu_clk_recalc(struct clk *clk) | ||
| 64 | { | ||
| 65 | int idx = ((ctrl_inl(FRQCR) >> IFC_POS) & IFC_MSK); | ||
| 66 | clk->rate = clk->parent->rate / ifc_divisors[idx]; | ||
| 67 | } | ||
| 68 | |||
| 69 | static struct clk_ops shx3_cpu_clk_ops = { | ||
| 70 | .recalc = cpu_clk_recalc, | ||
| 71 | }; | ||
| 72 | |||
| 73 | static struct clk_ops *shx3_clk_ops[] = { | ||
| 74 | &shx3_master_clk_ops, | ||
| 75 | &shx3_module_clk_ops, | ||
| 76 | &shx3_bus_clk_ops, | ||
| 77 | &shx3_cpu_clk_ops, | ||
| 78 | }; | ||
| 79 | |||
| 80 | void __init arch_init_clk_ops(struct clk_ops **ops, int idx) | ||
| 81 | { | ||
| 82 | if (idx < ARRAY_SIZE(shx3_clk_ops)) | ||
| 83 | *ops = shx3_clk_ops[idx]; | ||
| 84 | } | ||
| 85 | |||
| 86 | static void shyway_clk_recalc(struct clk *clk) | ||
| 87 | { | ||
| 88 | int idx = ((ctrl_inl(FRQCR) >> CFC_POS) & CFC_MSK); | ||
| 89 | clk->rate = clk->parent->rate / cfc_divisors[idx]; | ||
| 90 | } | ||
| 91 | |||
| 92 | static struct clk_ops shx3_shyway_clk_ops = { | ||
| 93 | .recalc = shyway_clk_recalc, | ||
| 94 | }; | ||
| 95 | |||
| 96 | static struct clk shx3_shyway_clk = { | ||
| 97 | .name = "shyway_clk", | ||
| 98 | .flags = CLK_ALWAYS_ENABLED, | ||
| 99 | .ops = &shx3_shyway_clk_ops, | ||
| 100 | }; | ||
| 101 | |||
| 102 | /* | ||
| 103 | * Additional SHx3-specific on-chip clocks that aren't already part of the | ||
| 104 | * clock framework | ||
| 105 | */ | ||
| 106 | static struct clk *shx3_onchip_clocks[] = { | ||
| 107 | &shx3_shyway_clk, | ||
| 108 | }; | ||
| 109 | |||
| 110 | static int __init shx3_clk_init(void) | ||
| 111 | { | ||
| 112 | struct clk *clk = clk_get(NULL, "master_clk"); | ||
| 113 | int i; | ||
| 114 | |||
| 115 | for (i = 0; i < ARRAY_SIZE(shx3_onchip_clocks); i++) { | ||
| 116 | struct clk *clkp = shx3_onchip_clocks[i]; | ||
| 117 | |||
| 118 | clkp->parent = clk; | ||
| 119 | clk_register(clkp); | ||
| 120 | clk_enable(clkp); | ||
| 121 | } | ||
| 122 | |||
| 123 | /* | ||
| 124 | * Now that we have the rest of the clocks registered, we need to | ||
| 125 | * force the parent clock to propagate so that these clocks will | ||
| 126 | * automatically figure out their rate. We cheat by handing the | ||
| 127 | * parent clock its current rate and forcing child propagation. | ||
| 128 | */ | ||
| 129 | clk_set_rate(clk, clk_get_rate(clk)); | ||
| 130 | |||
| 131 | clk_put(clk); | ||
| 132 | |||
| 133 | return 0; | ||
| 134 | } | ||
| 135 | arch_initcall(shx3_clk_init); | ||
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7722.c b/arch/sh/kernel/cpu/sh4a/setup-sh7722.c index 1143fbf65faf..a3e159ef6dfe 100644 --- a/arch/sh/kernel/cpu/sh4a/setup-sh7722.c +++ b/arch/sh/kernel/cpu/sh4a/setup-sh7722.c | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * SH7722 Setup | 2 | * SH7722 Setup |
| 3 | * | 3 | * |
| 4 | * Copyright (C) 2006 Paul Mundt | 4 | * Copyright (C) 2006 - 2007 Paul Mundt |
| 5 | * | 5 | * |
| 6 | * This file is subject to the terms and conditions of the GNU General Public | 6 | * This file is subject to the terms and conditions of the GNU General Public |
| 7 | * License. See the file "COPYING" in the main directory of this archive | 7 | * License. See the file "COPYING" in the main directory of this archive |
| @@ -10,6 +10,8 @@ | |||
| 10 | #include <linux/platform_device.h> | 10 | #include <linux/platform_device.h> |
| 11 | #include <linux/init.h> | 11 | #include <linux/init.h> |
| 12 | #include <linux/serial.h> | 12 | #include <linux/serial.h> |
| 13 | #include <linux/mm.h> | ||
| 14 | #include <asm/mmzone.h> | ||
| 13 | #include <asm/sci.h> | 15 | #include <asm/sci.h> |
| 14 | 16 | ||
| 15 | static struct plat_sci_port sci_platform_data[] = { | 17 | static struct plat_sci_port sci_platform_data[] = { |
| @@ -42,7 +44,7 @@ static int __init sh7722_devices_setup(void) | |||
| 42 | } | 44 | } |
| 43 | __initcall(sh7722_devices_setup); | 45 | __initcall(sh7722_devices_setup); |
| 44 | 46 | ||
| 45 | static struct ipr_data sh7722_ipr_map[] = { | 47 | static struct ipr_data ipr_irq_table[] = { |
| 46 | /* IRQ, IPR-idx, shift, prio */ | 48 | /* IRQ, IPR-idx, shift, prio */ |
| 47 | { 16, 0, 12, 2 }, /* TMU0 */ | 49 | { 16, 0, 12, 2 }, /* TMU0 */ |
| 48 | { 17, 0, 8, 2 }, /* TMU1 */ | 50 | { 17, 0, 8, 2 }, /* TMU1 */ |
| @@ -67,14 +69,25 @@ static unsigned long ipr_offsets[] = { | |||
| 67 | 0xa408002c, /* 11: IPRL */ | 69 | 0xa408002c, /* 11: IPRL */ |
| 68 | }; | 70 | }; |
| 69 | 71 | ||
| 70 | unsigned int map_ipridx_to_addr(int idx) | 72 | static struct ipr_desc ipr_irq_desc = { |
| 73 | .ipr_offsets = ipr_offsets, | ||
| 74 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
| 75 | |||
| 76 | .ipr_data = ipr_irq_table, | ||
| 77 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
| 78 | |||
| 79 | .chip = { | ||
| 80 | .name = "IPR-sh7722", | ||
| 81 | }, | ||
| 82 | }; | ||
| 83 | |||
| 84 | void __init init_IRQ_ipr(void) | ||
| 71 | { | 85 | { |
| 72 | if (unlikely(idx >= ARRAY_SIZE(ipr_offsets))) | 86 | register_ipr_controller(&ipr_irq_desc); |
| 73 | return 0; | ||
| 74 | return ipr_offsets[idx]; | ||
| 75 | } | 87 | } |
| 76 | 88 | ||
| 77 | void __init init_IRQ_ipr(void) | 89 | void __init plat_mem_setup(void) |
| 78 | { | 90 | { |
| 79 | make_ipr_irq(sh7722_ipr_map, ARRAY_SIZE(sh7722_ipr_map)); | 91 | /* Register the URAM space as Node 1 */ |
| 92 | setup_bootmem_node(1, 0x055f0000, 0x05610000); | ||
| 80 | } | 93 | } |
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7780.c b/arch/sh/kernel/cpu/sh4a/setup-sh7780.c index 9aeaa2ddaa28..b57c760bffde 100644 --- a/arch/sh/kernel/cpu/sh4a/setup-sh7780.c +++ b/arch/sh/kernel/cpu/sh4a/setup-sh7780.c | |||
| @@ -102,7 +102,20 @@ static struct intc2_data intc2_irq_table[] = { | |||
| 102 | { 68, 0x14, 8, 0, 18, 2 }, /* PCIC4 */ | 102 | { 68, 0x14, 8, 0, 18, 2 }, /* PCIC4 */ |
| 103 | }; | 103 | }; |
| 104 | 104 | ||
| 105 | static struct intc2_desc intc2_irq_desc __read_mostly = { | ||
| 106 | .prio_base = 0xffd40000, | ||
| 107 | .msk_base = 0xffd40038, | ||
| 108 | .mskclr_base = 0xffd4003c, | ||
| 109 | |||
| 110 | .intc2_data = intc2_irq_table, | ||
| 111 | .nr_irqs = ARRAY_SIZE(intc2_irq_table), | ||
| 112 | |||
| 113 | .chip = { | ||
| 114 | .name = "INTC2-sh7780", | ||
| 115 | }, | ||
| 116 | }; | ||
| 117 | |||
| 105 | void __init init_IRQ_intc2(void) | 118 | void __init init_IRQ_intc2(void) |
| 106 | { | 119 | { |
| 107 | make_intc2_irq(intc2_irq_table, ARRAY_SIZE(intc2_irq_table)); | 120 | register_intc2_controller(&intc2_irq_desc); |
| 108 | } | 121 | } |
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7785.c b/arch/sh/kernel/cpu/sh4a/setup-sh7785.c index 07b0de82cfe6..ce10ec5d6914 100644 --- a/arch/sh/kernel/cpu/sh4a/setup-sh7785.c +++ b/arch/sh/kernel/cpu/sh4a/setup-sh7785.c | |||
| @@ -97,7 +97,21 @@ static struct intc2_data intc2_irq_table[] = { | |||
| 97 | { 60, 12, 16, 0, 7, 3 }, /* SCIF5 ERI, RXI, BRI, TXI */ | 97 | { 60, 12, 16, 0, 7, 3 }, /* SCIF5 ERI, RXI, BRI, TXI */ |
| 98 | }; | 98 | }; |
| 99 | 99 | ||
| 100 | static struct intc2_desc intc2_irq_desc __read_mostly = { | ||
| 101 | .prio_base = 0xffd40000, | ||
| 102 | .msk_base = 0xffd40038, | ||
| 103 | .mskclr_base = 0xffd4003c, | ||
| 104 | |||
| 105 | .intc2_data = intc2_irq_table, | ||
| 106 | .nr_irqs = ARRAY_SIZE(intc2_irq_table), | ||
| 107 | |||
| 108 | .chip = { | ||
| 109 | .name = "INTC2-sh7785", | ||
| 110 | }, | ||
| 111 | }; | ||
| 112 | |||
| 100 | void __init init_IRQ_intc2(void) | 113 | void __init init_IRQ_intc2(void) |
| 101 | { | 114 | { |
| 102 | make_intc2_irq(intc2_irq_table, ARRAY_SIZE(intc2_irq_table)); | 115 | register_intc2_controller(&intc2_irq_desc); |
| 103 | } | 116 | } |
| 117 | |||
diff --git a/arch/sh/kernel/cpu/sh4a/setup-shx3.c b/arch/sh/kernel/cpu/sh4a/setup-shx3.c new file mode 100644 index 000000000000..70683ea12b83 --- /dev/null +++ b/arch/sh/kernel/cpu/sh4a/setup-shx3.c | |||
| @@ -0,0 +1,85 @@ | |||
| 1 | /* | ||
| 2 | * SH-X3 Setup | ||
| 3 | * | ||
| 4 | * Copyright (C) 2007 Paul Mundt | ||
| 5 | * | ||
| 6 | * This file is subject to the terms and conditions of the GNU General Public | ||
| 7 | * License. See the file "COPYING" in the main directory of this archive | ||
| 8 | * for more details. | ||
| 9 | */ | ||
| 10 | #include <linux/platform_device.h> | ||
| 11 | #include <linux/init.h> | ||
| 12 | #include <linux/serial.h> | ||
| 13 | #include <linux/io.h> | ||
| 14 | #include <asm/sci.h> | ||
| 15 | |||
| 16 | static struct plat_sci_port sci_platform_data[] = { | ||
| 17 | { | ||
| 18 | .mapbase = 0xffc30000, | ||
| 19 | .flags = UPF_BOOT_AUTOCONF, | ||
| 20 | .type = PORT_SCIF, | ||
| 21 | .irqs = { 40, 41, 43, 42 }, | ||
| 22 | }, { | ||
| 23 | .mapbase = 0xffc40000, | ||
| 24 | .flags = UPF_BOOT_AUTOCONF, | ||
| 25 | .type = PORT_SCIF, | ||
| 26 | .irqs = { 44, 45, 47, 46 }, | ||
| 27 | }, { | ||
| 28 | .mapbase = 0xffc50000, | ||
| 29 | .flags = UPF_BOOT_AUTOCONF, | ||
| 30 | .type = PORT_SCIF, | ||
| 31 | .irqs = { 48, 49, 51, 50 }, | ||
| 32 | }, { | ||
| 33 | .mapbase = 0xffc60000, | ||
| 34 | .flags = UPF_BOOT_AUTOCONF, | ||
| 35 | .type = PORT_SCIF, | ||
| 36 | .irqs = { 52, 53, 55, 54 }, | ||
| 37 | }, { | ||
| 38 | .flags = 0, | ||
| 39 | } | ||
| 40 | }; | ||
| 41 | |||
| 42 | static struct platform_device sci_device = { | ||
| 43 | .name = "sh-sci", | ||
| 44 | .id = -1, | ||
| 45 | .dev = { | ||
| 46 | .platform_data = sci_platform_data, | ||
| 47 | }, | ||
| 48 | }; | ||
| 49 | |||
| 50 | static struct platform_device *shx3_devices[] __initdata = { | ||
| 51 | &sci_device, | ||
| 52 | }; | ||
| 53 | |||
| 54 | static int __init shx3_devices_setup(void) | ||
| 55 | { | ||
| 56 | return platform_add_devices(shx3_devices, | ||
| 57 | ARRAY_SIZE(shx3_devices)); | ||
| 58 | } | ||
| 59 | __initcall(shx3_devices_setup); | ||
| 60 | |||
| 61 | static struct intc2_data intc2_irq_table[] = { | ||
| 62 | { 16, 0, 0, 0, 1, 2 }, /* TMU0 */ | ||
| 63 | { 40, 4, 0, 0x20, 0, 3 }, /* SCIF0 ERI */ | ||
| 64 | { 41, 4, 0, 0x20, 1, 3 }, /* SCIF0 RXI */ | ||
| 65 | { 42, 4, 0, 0x20, 2, 3 }, /* SCIF0 BRI */ | ||
| 66 | { 43, 4, 0, 0x20, 3, 3 }, /* SCIF0 TXI */ | ||
| 67 | }; | ||
| 68 | |||
| 69 | static struct intc2_desc intc2_irq_desc __read_mostly = { | ||
| 70 | .prio_base = 0xfe410000, | ||
| 71 | .msk_base = 0xfe410820, | ||
| 72 | .mskclr_base = 0xfe410850, | ||
| 73 | |||
| 74 | .intc2_data = intc2_irq_table, | ||
| 75 | .nr_irqs = ARRAY_SIZE(intc2_irq_table), | ||
| 76 | |||
| 77 | .chip = { | ||
| 78 | .name = "INTC2-SHX3", | ||
| 79 | }, | ||
| 80 | }; | ||
| 81 | |||
| 82 | void __init init_IRQ_intc2(void) | ||
| 83 | { | ||
| 84 | register_intc2_controller(&intc2_irq_desc); | ||
| 85 | } | ||
diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c index 27b923c45b3d..27897798867a 100644 --- a/arch/sh/kernel/irq.c +++ b/arch/sh/kernel/irq.c | |||
| @@ -158,15 +158,11 @@ asmlinkage int do_IRQ(unsigned int irq, struct pt_regs *regs) | |||
| 158 | } | 158 | } |
| 159 | 159 | ||
| 160 | #ifdef CONFIG_4KSTACKS | 160 | #ifdef CONFIG_4KSTACKS |
| 161 | /* | ||
| 162 | * These should really be __section__(".bss.page_aligned") as well, but | ||
| 163 | * gcc's 3.0 and earlier don't handle that correctly. | ||
| 164 | */ | ||
| 165 | static char softirq_stack[NR_CPUS * THREAD_SIZE] | 161 | static char softirq_stack[NR_CPUS * THREAD_SIZE] |
| 166 | __attribute__((__aligned__(THREAD_SIZE))); | 162 | __attribute__((__section__(".bss.page_aligned"))); |
| 167 | 163 | ||
| 168 | static char hardirq_stack[NR_CPUS * THREAD_SIZE] | 164 | static char hardirq_stack[NR_CPUS * THREAD_SIZE] |
| 169 | __attribute__((__aligned__(THREAD_SIZE))); | 165 | __attribute__((__section__(".bss.page_aligned"))); |
| 170 | 166 | ||
| 171 | /* | 167 | /* |
| 172 | * allocate per-cpu stacks for hardirq and for softirq processing | 168 | * allocate per-cpu stacks for hardirq and for softirq processing |
diff --git a/arch/sh/kernel/machvec.c b/arch/sh/kernel/machvec.c new file mode 100644 index 000000000000..23c5948f0124 --- /dev/null +++ b/arch/sh/kernel/machvec.c | |||
| @@ -0,0 +1,130 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/kernel/machvec.c | ||
| 3 | * | ||
| 4 | * The SuperH machine vector setup handlers, yanked from setup.c | ||
| 5 | * | ||
| 6 | * Copyright (C) 1999 Niibe Yutaka | ||
| 7 | * Copyright (C) 2002 - 2007 Paul Mundt | ||
| 8 | * | ||
| 9 | * This file is subject to the terms and conditions of the GNU General Public | ||
| 10 | * License. See the file "COPYING" in the main directory of this archive | ||
| 11 | * for more details. | ||
| 12 | */ | ||
| 13 | #include <linux/init.h> | ||
| 14 | #include <linux/string.h> | ||
| 15 | #include <asm/machvec.h> | ||
| 16 | #include <asm/sections.h> | ||
| 17 | #include <asm/io.h> | ||
| 18 | #include <asm/irq.h> | ||
| 19 | |||
| 20 | #define MV_NAME_SIZE 32 | ||
| 21 | |||
| 22 | #define for_each_mv(mv) \ | ||
| 23 | for ((mv) = (struct sh_machine_vector *)&__machvec_start; \ | ||
| 24 | (mv) && (unsigned long)(mv) < (unsigned long)&__machvec_end; \ | ||
| 25 | (mv)++) | ||
| 26 | |||
| 27 | static struct sh_machine_vector * __init get_mv_byname(const char *name) | ||
| 28 | { | ||
| 29 | struct sh_machine_vector *mv; | ||
| 30 | |||
| 31 | for_each_mv(mv) | ||
| 32 | if (strcasecmp(name, mv->mv_name) == 0) | ||
| 33 | return mv; | ||
| 34 | |||
| 35 | return NULL; | ||
| 36 | } | ||
| 37 | |||
| 38 | static unsigned int __initdata machvec_selected; | ||
| 39 | |||
| 40 | static int __init early_parse_mv(char *from) | ||
| 41 | { | ||
| 42 | char mv_name[MV_NAME_SIZE] = ""; | ||
| 43 | char *mv_end; | ||
| 44 | char *mv_comma; | ||
| 45 | int mv_len; | ||
| 46 | struct sh_machine_vector *mvp; | ||
| 47 | |||
| 48 | mv_end = strchr(from, ' '); | ||
| 49 | if (mv_end == NULL) | ||
| 50 | mv_end = from + strlen(from); | ||
| 51 | |||
| 52 | mv_comma = strchr(from, ','); | ||
| 53 | mv_len = mv_end - from; | ||
| 54 | if (mv_len > (MV_NAME_SIZE-1)) | ||
| 55 | mv_len = MV_NAME_SIZE-1; | ||
| 56 | memcpy(mv_name, from, mv_len); | ||
| 57 | mv_name[mv_len] = '\0'; | ||
| 58 | from = mv_end; | ||
| 59 | |||
| 60 | machvec_selected = 1; | ||
| 61 | |||
| 62 | /* Boot with the generic vector */ | ||
| 63 | if (strcmp(mv_name, "generic") == 0) | ||
| 64 | return 0; | ||
| 65 | |||
| 66 | mvp = get_mv_byname(mv_name); | ||
| 67 | if (unlikely(!mvp)) { | ||
| 68 | printk("Available vectors:\n\n\t'%s', ", sh_mv.mv_name); | ||
| 69 | for_each_mv(mvp) | ||
| 70 | printk("'%s', ", mvp->mv_name); | ||
| 71 | printk("\n\n"); | ||
| 72 | panic("Failed to select machvec '%s' -- halting.\n", | ||
| 73 | mv_name); | ||
| 74 | } else | ||
| 75 | sh_mv = *mvp; | ||
| 76 | |||
| 77 | return 0; | ||
| 78 | } | ||
| 79 | early_param("sh_mv", early_parse_mv); | ||
| 80 | |||
| 81 | void __init sh_mv_setup(void) | ||
| 82 | { | ||
| 83 | /* | ||
| 84 | * Only overload the machvec if one hasn't been selected on | ||
| 85 | * the command line with sh_mv= | ||
| 86 | */ | ||
| 87 | if (!machvec_selected) { | ||
| 88 | unsigned long machvec_size; | ||
| 89 | |||
| 90 | machvec_size = ((unsigned long)&__machvec_end - | ||
| 91 | (unsigned long)&__machvec_start); | ||
| 92 | |||
| 93 | /* | ||
| 94 | * If the machvec hasn't been preselected, use the first | ||
| 95 | * vector (usually the only one) from .machvec.init. | ||
| 96 | */ | ||
| 97 | if (machvec_size >= sizeof(struct sh_machine_vector)) | ||
| 98 | sh_mv = *(struct sh_machine_vector *)&__machvec_start; | ||
| 99 | } | ||
| 100 | |||
| 101 | printk(KERN_NOTICE "Booting machvec: %s\n", get_system_type()); | ||
| 102 | |||
| 103 | /* | ||
| 104 | * Manually walk the vec, fill in anything that the board hasn't yet | ||
| 105 | * by hand, wrapping to the generic implementation. | ||
| 106 | */ | ||
| 107 | #define mv_set(elem) do { \ | ||
| 108 | if (!sh_mv.mv_##elem) \ | ||
| 109 | sh_mv.mv_##elem = generic_##elem; \ | ||
| 110 | } while (0) | ||
| 111 | |||
| 112 | mv_set(inb); mv_set(inw); mv_set(inl); | ||
| 113 | mv_set(outb); mv_set(outw); mv_set(outl); | ||
| 114 | |||
| 115 | mv_set(inb_p); mv_set(inw_p); mv_set(inl_p); | ||
| 116 | mv_set(outb_p); mv_set(outw_p); mv_set(outl_p); | ||
| 117 | |||
| 118 | mv_set(insb); mv_set(insw); mv_set(insl); | ||
| 119 | mv_set(outsb); mv_set(outsw); mv_set(outsl); | ||
| 120 | |||
| 121 | mv_set(readb); mv_set(readw); mv_set(readl); | ||
| 122 | mv_set(writeb); mv_set(writew); mv_set(writel); | ||
| 123 | |||
| 124 | mv_set(ioport_map); | ||
| 125 | mv_set(ioport_unmap); | ||
| 126 | mv_set(irq_demux); | ||
| 127 | |||
| 128 | if (!sh_mv.mv_nr_irqs) | ||
| 129 | sh_mv.mv_nr_irqs = NR_IRQS; | ||
| 130 | } | ||
diff --git a/arch/sh/kernel/process.c b/arch/sh/kernel/process.c index a11e2aa73cbc..6334a4c54c7c 100644 --- a/arch/sh/kernel/process.c +++ b/arch/sh/kernel/process.c | |||
| @@ -17,6 +17,7 @@ | |||
| 17 | #include <linux/kexec.h> | 17 | #include <linux/kexec.h> |
| 18 | #include <linux/kdebug.h> | 18 | #include <linux/kdebug.h> |
| 19 | #include <linux/tick.h> | 19 | #include <linux/tick.h> |
| 20 | #include <linux/reboot.h> | ||
| 20 | #include <asm/uaccess.h> | 21 | #include <asm/uaccess.h> |
| 21 | #include <asm/mmu_context.h> | 22 | #include <asm/mmu_context.h> |
| 22 | #include <asm/pgalloc.h> | 23 | #include <asm/pgalloc.h> |
| @@ -319,9 +320,7 @@ static void ubc_set_tracing(int asid, unsigned long pc) | |||
| 319 | ctrl_outl(pc, UBC_BARA); | 320 | ctrl_outl(pc, UBC_BARA); |
| 320 | 321 | ||
| 321 | #ifdef CONFIG_MMU | 322 | #ifdef CONFIG_MMU |
| 322 | /* We don't have any ASID settings for the SH-2! */ | 323 | ctrl_outb(asid, UBC_BASRA); |
| 323 | if (current_cpu_data.type != CPU_SH7604) | ||
| 324 | ctrl_outb(asid, UBC_BASRA); | ||
| 325 | #endif | 324 | #endif |
| 326 | 325 | ||
| 327 | ctrl_outl(0, UBC_BAMRA); | 326 | ctrl_outl(0, UBC_BAMRA); |
| @@ -405,8 +404,8 @@ asmlinkage int sys_fork(unsigned long r4, unsigned long r5, | |||
| 405 | unsigned long r6, unsigned long r7, | 404 | unsigned long r6, unsigned long r7, |
| 406 | struct pt_regs __regs) | 405 | struct pt_regs __regs) |
| 407 | { | 406 | { |
| 408 | struct pt_regs *regs = RELOC_HIDE(&__regs, 0); | ||
| 409 | #ifdef CONFIG_MMU | 407 | #ifdef CONFIG_MMU |
| 408 | struct pt_regs *regs = RELOC_HIDE(&__regs, 0); | ||
| 410 | return do_fork(SIGCHLD, regs->regs[15], regs, 0, NULL, NULL); | 409 | return do_fork(SIGCHLD, regs->regs[15], regs, 0, NULL, NULL); |
| 411 | #else | 410 | #else |
| 412 | /* fork almost works, enough to trick you into looking elsewhere :-( */ | 411 | /* fork almost works, enough to trick you into looking elsewhere :-( */ |
| @@ -449,23 +448,20 @@ asmlinkage int sys_vfork(unsigned long r4, unsigned long r5, | |||
| 449 | /* | 448 | /* |
| 450 | * sys_execve() executes a new program. | 449 | * sys_execve() executes a new program. |
| 451 | */ | 450 | */ |
| 452 | asmlinkage int sys_execve(char *ufilename, char **uargv, | 451 | asmlinkage int sys_execve(char __user *ufilename, char __user * __user *uargv, |
| 453 | char **uenvp, unsigned long r7, | 452 | char __user * __user *uenvp, unsigned long r7, |
| 454 | struct pt_regs __regs) | 453 | struct pt_regs __regs) |
| 455 | { | 454 | { |
| 456 | struct pt_regs *regs = RELOC_HIDE(&__regs, 0); | 455 | struct pt_regs *regs = RELOC_HIDE(&__regs, 0); |
| 457 | int error; | 456 | int error; |
| 458 | char *filename; | 457 | char *filename; |
| 459 | 458 | ||
| 460 | filename = getname((char __user *)ufilename); | 459 | filename = getname(ufilename); |
| 461 | error = PTR_ERR(filename); | 460 | error = PTR_ERR(filename); |
| 462 | if (IS_ERR(filename)) | 461 | if (IS_ERR(filename)) |
| 463 | goto out; | 462 | goto out; |
| 464 | 463 | ||
| 465 | error = do_execve(filename, | 464 | error = do_execve(filename, uargv, uenvp, regs); |
| 466 | (char __user * __user *)uargv, | ||
| 467 | (char __user * __user *)uenvp, | ||
| 468 | regs); | ||
| 469 | if (error == 0) { | 465 | if (error == 0) { |
| 470 | task_lock(current); | 466 | task_lock(current); |
| 471 | current->ptrace &= ~PT_DTRACE; | 467 | current->ptrace &= ~PT_DTRACE; |
diff --git a/arch/sh/kernel/ptrace.c b/arch/sh/kernel/ptrace.c index 3fb5fc0b550d..f2eaa485d04d 100644 --- a/arch/sh/kernel/ptrace.c +++ b/arch/sh/kernel/ptrace.c | |||
| @@ -99,7 +99,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
| 99 | ret = -EIO; | 99 | ret = -EIO; |
| 100 | if (copied != sizeof(tmp)) | 100 | if (copied != sizeof(tmp)) |
| 101 | break; | 101 | break; |
| 102 | ret = put_user(tmp,(unsigned long *) data); | 102 | ret = put_user(tmp,(unsigned long __user *) data); |
| 103 | break; | 103 | break; |
| 104 | } | 104 | } |
| 105 | 105 | ||
| @@ -128,7 +128,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
| 128 | tmp = !!tsk_used_math(child); | 128 | tmp = !!tsk_used_math(child); |
| 129 | else | 129 | else |
| 130 | tmp = 0; | 130 | tmp = 0; |
| 131 | ret = put_user(tmp, (unsigned long *)data); | 131 | ret = put_user(tmp, (unsigned long __user *)data); |
| 132 | break; | 132 | break; |
| 133 | } | 133 | } |
| 134 | 134 | ||
| @@ -196,7 +196,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
| 196 | 196 | ||
| 197 | case PTRACE_SINGLESTEP: { /* set the trap flag. */ | 197 | case PTRACE_SINGLESTEP: { /* set the trap flag. */ |
| 198 | long pc; | 198 | long pc; |
| 199 | struct pt_regs *dummy = NULL; | 199 | struct pt_regs *regs = NULL; |
| 200 | 200 | ||
| 201 | ret = -EIO; | 201 | ret = -EIO; |
| 202 | if (!valid_signal(data)) | 202 | if (!valid_signal(data)) |
| @@ -207,7 +207,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
| 207 | child->ptrace |= PT_DTRACE; | 207 | child->ptrace |= PT_DTRACE; |
| 208 | } | 208 | } |
| 209 | 209 | ||
| 210 | pc = get_stack_long(child, (long)&dummy->pc); | 210 | pc = get_stack_long(child, (long)®s->pc); |
| 211 | 211 | ||
| 212 | /* Next scheduling will set up UBC */ | 212 | /* Next scheduling will set up UBC */ |
| 213 | if (child->thread.ubc_pc == 0) | 213 | if (child->thread.ubc_pc == 0) |
diff --git a/arch/sh/kernel/setup.c b/arch/sh/kernel/setup.c index c27729135935..de8e6e2f2c87 100644 --- a/arch/sh/kernel/setup.c +++ b/arch/sh/kernel/setup.c | |||
| @@ -23,6 +23,7 @@ | |||
| 23 | #include <linux/kexec.h> | 23 | #include <linux/kexec.h> |
| 24 | #include <asm/uaccess.h> | 24 | #include <asm/uaccess.h> |
| 25 | #include <asm/io.h> | 25 | #include <asm/io.h> |
| 26 | #include <asm/page.h> | ||
| 26 | #include <asm/sections.h> | 27 | #include <asm/sections.h> |
| 27 | #include <asm/irq.h> | 28 | #include <asm/irq.h> |
| 28 | #include <asm/setup.h> | 29 | #include <asm/setup.h> |
| @@ -41,20 +42,19 @@ extern void * __rd_start, * __rd_end; | |||
| 41 | * The bigger value means no problem. | 42 | * The bigger value means no problem. |
| 42 | */ | 43 | */ |
| 43 | struct sh_cpuinfo boot_cpu_data = { CPU_SH_NONE, 10000000, }; | 44 | struct sh_cpuinfo boot_cpu_data = { CPU_SH_NONE, 10000000, }; |
| 45 | |||
| 46 | /* | ||
| 47 | * The machine vector. First entry in .machvec.init, or clobbered by | ||
| 48 | * sh_mv= on the command line, prior to .machvec.init teardown. | ||
| 49 | */ | ||
| 50 | struct sh_machine_vector sh_mv = { .mv_name = "generic", }; | ||
| 51 | |||
| 44 | #ifdef CONFIG_VT | 52 | #ifdef CONFIG_VT |
| 45 | struct screen_info screen_info; | 53 | struct screen_info screen_info; |
| 46 | #endif | 54 | #endif |
| 47 | 55 | ||
| 48 | #if defined(CONFIG_SH_UNKNOWN) | ||
| 49 | struct sh_machine_vector sh_mv; | ||
| 50 | #endif | ||
| 51 | |||
| 52 | extern int root_mountflags; | 56 | extern int root_mountflags; |
| 53 | 57 | ||
| 54 | #define MV_NAME_SIZE 32 | ||
| 55 | |||
| 56 | static struct sh_machine_vector* __init get_mv_byname(const char* name); | ||
| 57 | |||
| 58 | /* | 58 | /* |
| 59 | * This is set up by the setup-routine at boot-time | 59 | * This is set up by the setup-routine at boot-time |
| 60 | */ | 60 | */ |
| @@ -80,131 +80,17 @@ static struct resource data_resource = { .name = "Kernel data", }; | |||
| 80 | 80 | ||
| 81 | unsigned long memory_start, memory_end; | 81 | unsigned long memory_start, memory_end; |
| 82 | 82 | ||
| 83 | static inline void parse_cmdline (char ** cmdline_p, char mv_name[MV_NAME_SIZE], | 83 | static int __init early_parse_mem(char *p) |
| 84 | struct sh_machine_vector** mvp, | ||
| 85 | unsigned long *mv_io_base) | ||
| 86 | { | 84 | { |
| 87 | char c = ' ', *to = command_line, *from = COMMAND_LINE; | 85 | unsigned long size; |
| 88 | int len = 0; | ||
| 89 | |||
| 90 | /* Save unparsed command line copy for /proc/cmdline */ | ||
| 91 | memcpy(boot_command_line, COMMAND_LINE, COMMAND_LINE_SIZE); | ||
| 92 | boot_command_line[COMMAND_LINE_SIZE-1] = '\0'; | ||
| 93 | 86 | ||
| 94 | memory_start = (unsigned long)PAGE_OFFSET+__MEMORY_START; | 87 | memory_start = (unsigned long)PAGE_OFFSET+__MEMORY_START; |
| 95 | memory_end = memory_start + __MEMORY_SIZE; | 88 | size = memparse(p, &p); |
| 96 | 89 | memory_end = memory_start + size; | |
| 97 | for (;;) { | ||
| 98 | /* | ||
| 99 | * "mem=XXX[kKmM]" defines a size of memory. | ||
| 100 | */ | ||
| 101 | if (c == ' ' && !memcmp(from, "mem=", 4)) { | ||
| 102 | if (to != command_line) | ||
| 103 | to--; | ||
| 104 | { | ||
| 105 | unsigned long mem_size; | ||
| 106 | |||
| 107 | mem_size = memparse(from+4, &from); | ||
| 108 | memory_end = memory_start + mem_size; | ||
| 109 | } | ||
| 110 | } | ||
| 111 | |||
| 112 | if (c == ' ' && !memcmp(from, "sh_mv=", 6)) { | ||
| 113 | char* mv_end; | ||
| 114 | char* mv_comma; | ||
| 115 | int mv_len; | ||
| 116 | if (to != command_line) | ||
| 117 | to--; | ||
| 118 | from += 6; | ||
| 119 | mv_end = strchr(from, ' '); | ||
| 120 | if (mv_end == NULL) | ||
| 121 | mv_end = from + strlen(from); | ||
| 122 | |||
| 123 | mv_comma = strchr(from, ','); | ||
| 124 | if ((mv_comma != NULL) && (mv_comma < mv_end)) { | ||
| 125 | int ints[3]; | ||
| 126 | get_options(mv_comma+1, ARRAY_SIZE(ints), ints); | ||
| 127 | *mv_io_base = ints[1]; | ||
| 128 | mv_len = mv_comma - from; | ||
| 129 | } else { | ||
| 130 | mv_len = mv_end - from; | ||
| 131 | } | ||
| 132 | if (mv_len > (MV_NAME_SIZE-1)) | ||
| 133 | mv_len = MV_NAME_SIZE-1; | ||
| 134 | memcpy(mv_name, from, mv_len); | ||
| 135 | mv_name[mv_len] = '\0'; | ||
| 136 | from = mv_end; | ||
| 137 | |||
| 138 | *mvp = get_mv_byname(mv_name); | ||
| 139 | } | ||
| 140 | |||
| 141 | c = *(from++); | ||
| 142 | if (!c) | ||
| 143 | break; | ||
| 144 | if (COMMAND_LINE_SIZE <= ++len) | ||
| 145 | break; | ||
| 146 | *(to++) = c; | ||
| 147 | } | ||
| 148 | *to = '\0'; | ||
| 149 | *cmdline_p = command_line; | ||
| 150 | } | ||
| 151 | |||
| 152 | static int __init sh_mv_setup(char **cmdline_p) | ||
| 153 | { | ||
| 154 | #ifdef CONFIG_SH_UNKNOWN | ||
| 155 | extern struct sh_machine_vector mv_unknown; | ||
| 156 | #endif | ||
| 157 | struct sh_machine_vector *mv = NULL; | ||
| 158 | char mv_name[MV_NAME_SIZE] = ""; | ||
| 159 | unsigned long mv_io_base = 0; | ||
| 160 | |||
| 161 | parse_cmdline(cmdline_p, mv_name, &mv, &mv_io_base); | ||
| 162 | |||
| 163 | #ifdef CONFIG_SH_UNKNOWN | ||
| 164 | if (mv == NULL) { | ||
| 165 | mv = &mv_unknown; | ||
| 166 | if (*mv_name != '\0') { | ||
| 167 | printk("Warning: Unsupported machine %s, using unknown\n", | ||
| 168 | mv_name); | ||
| 169 | } | ||
| 170 | } | ||
| 171 | sh_mv = *mv; | ||
| 172 | #endif | ||
| 173 | |||
| 174 | /* | ||
| 175 | * Manually walk the vec, fill in anything that the board hasn't yet | ||
| 176 | * by hand, wrapping to the generic implementation. | ||
| 177 | */ | ||
| 178 | #define mv_set(elem) do { \ | ||
| 179 | if (!sh_mv.mv_##elem) \ | ||
| 180 | sh_mv.mv_##elem = generic_##elem; \ | ||
| 181 | } while (0) | ||
| 182 | |||
| 183 | mv_set(inb); mv_set(inw); mv_set(inl); | ||
| 184 | mv_set(outb); mv_set(outw); mv_set(outl); | ||
| 185 | |||
| 186 | mv_set(inb_p); mv_set(inw_p); mv_set(inl_p); | ||
| 187 | mv_set(outb_p); mv_set(outw_p); mv_set(outl_p); | ||
| 188 | |||
| 189 | mv_set(insb); mv_set(insw); mv_set(insl); | ||
| 190 | mv_set(outsb); mv_set(outsw); mv_set(outsl); | ||
| 191 | |||
| 192 | mv_set(readb); mv_set(readw); mv_set(readl); | ||
| 193 | mv_set(writeb); mv_set(writew); mv_set(writel); | ||
| 194 | |||
| 195 | mv_set(ioport_map); | ||
| 196 | mv_set(ioport_unmap); | ||
| 197 | mv_set(irq_demux); | ||
| 198 | |||
| 199 | #ifdef CONFIG_SH_UNKNOWN | ||
| 200 | __set_io_port_base(mv_io_base); | ||
| 201 | #endif | ||
| 202 | |||
| 203 | if (!sh_mv.mv_nr_irqs) | ||
| 204 | sh_mv.mv_nr_irqs = NR_IRQS; | ||
| 205 | 90 | ||
| 206 | return 0; | 91 | return 0; |
| 207 | } | 92 | } |
| 93 | early_param("mem", early_parse_mem); | ||
| 208 | 94 | ||
| 209 | /* | 95 | /* |
| 210 | * Register fully available low RAM pages with the bootmem allocator. | 96 | * Register fully available low RAM pages with the bootmem allocator. |
| @@ -230,7 +116,7 @@ static void __init register_bootmem_low_pages(void) | |||
| 230 | free_bootmem(PFN_PHYS(curr_pfn), PFN_PHYS(pages)); | 116 | free_bootmem(PFN_PHYS(curr_pfn), PFN_PHYS(pages)); |
| 231 | } | 117 | } |
| 232 | 118 | ||
| 233 | void __init setup_bootmem_allocator(unsigned long start_pfn) | 119 | void __init setup_bootmem_allocator(unsigned long free_pfn) |
| 234 | { | 120 | { |
| 235 | unsigned long bootmap_size; | 121 | unsigned long bootmap_size; |
| 236 | 122 | ||
| @@ -239,9 +125,10 @@ void __init setup_bootmem_allocator(unsigned long start_pfn) | |||
| 239 | * bootstrap step all allocations (until the page allocator | 125 | * bootstrap step all allocations (until the page allocator |
| 240 | * is intact) must be done via bootmem_alloc(). | 126 | * is intact) must be done via bootmem_alloc(). |
| 241 | */ | 127 | */ |
| 242 | bootmap_size = init_bootmem_node(NODE_DATA(0), start_pfn, | 128 | bootmap_size = init_bootmem_node(NODE_DATA(0), free_pfn, |
| 243 | min_low_pfn, max_low_pfn); | 129 | min_low_pfn, max_low_pfn); |
| 244 | 130 | ||
| 131 | add_active_range(0, min_low_pfn, max_low_pfn); | ||
| 245 | register_bootmem_low_pages(); | 132 | register_bootmem_low_pages(); |
| 246 | 133 | ||
| 247 | node_set_online(0); | 134 | node_set_online(0); |
| @@ -254,7 +141,7 @@ void __init setup_bootmem_allocator(unsigned long start_pfn) | |||
| 254 | * an invalid RAM area. | 141 | * an invalid RAM area. |
| 255 | */ | 142 | */ |
| 256 | reserve_bootmem(__MEMORY_START+PAGE_SIZE, | 143 | reserve_bootmem(__MEMORY_START+PAGE_SIZE, |
| 257 | (PFN_PHYS(start_pfn)+bootmap_size+PAGE_SIZE-1)-__MEMORY_START); | 144 | (PFN_PHYS(free_pfn)+bootmap_size+PAGE_SIZE-1)-__MEMORY_START); |
| 258 | 145 | ||
| 259 | /* | 146 | /* |
| 260 | * reserve physical page 0 - it's a special BIOS page on many boxes, | 147 | * reserve physical page 0 - it's a special BIOS page on many boxes, |
| @@ -262,6 +149,8 @@ void __init setup_bootmem_allocator(unsigned long start_pfn) | |||
| 262 | */ | 149 | */ |
| 263 | reserve_bootmem(__MEMORY_START, PAGE_SIZE); | 150 | reserve_bootmem(__MEMORY_START, PAGE_SIZE); |
| 264 | 151 | ||
| 152 | sparse_memory_present_with_active_regions(0); | ||
| 153 | |||
| 265 | #ifdef CONFIG_BLK_DEV_INITRD | 154 | #ifdef CONFIG_BLK_DEV_INITRD |
| 266 | ROOT_DEV = MKDEV(RAMDISK_MAJOR, 0); | 155 | ROOT_DEV = MKDEV(RAMDISK_MAJOR, 0); |
| 267 | if (&__rd_start != &__rd_end) { | 156 | if (&__rd_start != &__rd_end) { |
| @@ -315,10 +204,6 @@ void __init setup_arch(char **cmdline_p) | |||
| 315 | { | 204 | { |
| 316 | enable_mmu(); | 205 | enable_mmu(); |
| 317 | 206 | ||
| 318 | #ifdef CONFIG_CMDLINE_BOOL | ||
| 319 | strcpy(COMMAND_LINE, CONFIG_CMDLINE); | ||
| 320 | #endif | ||
| 321 | |||
| 322 | ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV); | 207 | ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV); |
| 323 | 208 | ||
| 324 | #ifdef CONFIG_BLK_DEV_RAM | 209 | #ifdef CONFIG_BLK_DEV_RAM |
| @@ -339,9 +224,22 @@ void __init setup_arch(char **cmdline_p) | |||
| 339 | data_resource.start = virt_to_phys(_etext); | 224 | data_resource.start = virt_to_phys(_etext); |
| 340 | data_resource.end = virt_to_phys(_edata)-1; | 225 | data_resource.end = virt_to_phys(_edata)-1; |
| 341 | 226 | ||
| 227 | memory_start = (unsigned long)PAGE_OFFSET+__MEMORY_START; | ||
| 228 | memory_end = memory_start + __MEMORY_SIZE; | ||
| 229 | |||
| 230 | #ifdef CONFIG_CMDLINE_BOOL | ||
| 231 | strlcpy(command_line, CONFIG_CMDLINE, sizeof(command_line)); | ||
| 232 | #else | ||
| 233 | strlcpy(command_line, COMMAND_LINE, sizeof(command_line)); | ||
| 234 | #endif | ||
| 235 | |||
| 236 | /* Save unparsed command line copy for /proc/cmdline */ | ||
| 237 | memcpy(boot_command_line, command_line, COMMAND_LINE_SIZE); | ||
| 238 | *cmdline_p = command_line; | ||
| 239 | |||
| 342 | parse_early_param(); | 240 | parse_early_param(); |
| 343 | 241 | ||
| 344 | sh_mv_setup(cmdline_p); | 242 | sh_mv_setup(); |
| 345 | 243 | ||
| 346 | /* | 244 | /* |
| 347 | * Find the highest page frame number we have available | 245 | * Find the highest page frame number we have available |
| @@ -355,8 +253,9 @@ void __init setup_arch(char **cmdline_p) | |||
| 355 | min_low_pfn = __MEMORY_START >> PAGE_SHIFT; | 253 | min_low_pfn = __MEMORY_START >> PAGE_SHIFT; |
| 356 | 254 | ||
| 357 | nodes_clear(node_online_map); | 255 | nodes_clear(node_online_map); |
| 256 | |||
| 257 | /* Setup bootmem with available RAM */ | ||
| 358 | setup_memory(); | 258 | setup_memory(); |
| 359 | paging_init(); | ||
| 360 | sparse_init(); | 259 | sparse_init(); |
| 361 | 260 | ||
| 362 | #ifdef CONFIG_DUMMY_CONSOLE | 261 | #ifdef CONFIG_DUMMY_CONSOLE |
| @@ -366,46 +265,13 @@ void __init setup_arch(char **cmdline_p) | |||
| 366 | /* Perform the machine specific initialisation */ | 265 | /* Perform the machine specific initialisation */ |
| 367 | if (likely(sh_mv.mv_setup)) | 266 | if (likely(sh_mv.mv_setup)) |
| 368 | sh_mv.mv_setup(cmdline_p); | 267 | sh_mv.mv_setup(cmdline_p); |
| 369 | } | ||
| 370 | |||
| 371 | struct sh_machine_vector* __init get_mv_byname(const char* name) | ||
| 372 | { | ||
| 373 | extern long __machvec_start, __machvec_end; | ||
| 374 | struct sh_machine_vector *all_vecs = | ||
| 375 | (struct sh_machine_vector *)&__machvec_start; | ||
| 376 | |||
| 377 | int i, n = ((unsigned long)&__machvec_end | ||
| 378 | - (unsigned long)&__machvec_start)/ | ||
| 379 | sizeof(struct sh_machine_vector); | ||
| 380 | |||
| 381 | for (i = 0; i < n; ++i) { | ||
| 382 | struct sh_machine_vector *mv = &all_vecs[i]; | ||
| 383 | if (mv == NULL) | ||
| 384 | continue; | ||
| 385 | if (strcasecmp(name, get_system_type()) == 0) { | ||
| 386 | return mv; | ||
| 387 | } | ||
| 388 | } | ||
| 389 | return NULL; | ||
| 390 | } | ||
| 391 | |||
| 392 | static struct cpu cpu[NR_CPUS]; | ||
| 393 | |||
| 394 | static int __init topology_init(void) | ||
| 395 | { | ||
| 396 | int cpu_id; | ||
| 397 | 268 | ||
| 398 | for_each_possible_cpu(cpu_id) | 269 | paging_init(); |
| 399 | register_cpu(&cpu[cpu_id], cpu_id); | ||
| 400 | |||
| 401 | return 0; | ||
| 402 | } | 270 | } |
| 403 | 271 | ||
| 404 | subsys_initcall(topology_init); | ||
| 405 | |||
| 406 | static const char *cpu_name[] = { | 272 | static const char *cpu_name[] = { |
| 407 | [CPU_SH7206] = "SH7206", [CPU_SH7619] = "SH7619", | 273 | [CPU_SH7206] = "SH7206", [CPU_SH7619] = "SH7619", |
| 408 | [CPU_SH7604] = "SH7604", [CPU_SH7300] = "SH7300", | 274 | [CPU_SH7300] = "SH7300", |
| 409 | [CPU_SH7705] = "SH7705", [CPU_SH7706] = "SH7706", | 275 | [CPU_SH7705] = "SH7705", [CPU_SH7706] = "SH7706", |
| 410 | [CPU_SH7707] = "SH7707", [CPU_SH7708] = "SH7708", | 276 | [CPU_SH7707] = "SH7707", [CPU_SH7708] = "SH7708", |
| 411 | [CPU_SH7709] = "SH7709", [CPU_SH7710] = "SH7710", | 277 | [CPU_SH7709] = "SH7709", [CPU_SH7710] = "SH7710", |
| @@ -419,7 +285,7 @@ static const char *cpu_name[] = { | |||
| 419 | [CPU_SH7770] = "SH7770", [CPU_SH7780] = "SH7780", | 285 | [CPU_SH7770] = "SH7770", [CPU_SH7780] = "SH7780", |
| 420 | [CPU_SH7781] = "SH7781", [CPU_SH7343] = "SH7343", | 286 | [CPU_SH7781] = "SH7781", [CPU_SH7343] = "SH7343", |
| 421 | [CPU_SH7785] = "SH7785", [CPU_SH7722] = "SH7722", | 287 | [CPU_SH7785] = "SH7785", [CPU_SH7722] = "SH7722", |
| 422 | [CPU_SH_NONE] = "Unknown" | 288 | [CPU_SHX3] = "SH-X3", [CPU_SH_NONE] = "Unknown" |
| 423 | }; | 289 | }; |
| 424 | 290 | ||
| 425 | const char *get_cpu_subtype(struct sh_cpuinfo *c) | 291 | const char *get_cpu_subtype(struct sh_cpuinfo *c) |
diff --git a/arch/sh/kernel/sh_ksyms.c b/arch/sh/kernel/sh_ksyms.c index c1cfcb9f047c..c968dcf09eee 100644 --- a/arch/sh/kernel/sh_ksyms.c +++ b/arch/sh/kernel/sh_ksyms.c | |||
| @@ -78,6 +78,16 @@ DECLARE_EXPORT(__movstr); | |||
| 78 | DECLARE_EXPORT(__movmem_i4_even); | 78 | DECLARE_EXPORT(__movmem_i4_even); |
| 79 | DECLARE_EXPORT(__movmem_i4_odd); | 79 | DECLARE_EXPORT(__movmem_i4_odd); |
| 80 | DECLARE_EXPORT(__movmemSI12_i4); | 80 | DECLARE_EXPORT(__movmemSI12_i4); |
| 81 | |||
| 82 | #if (__GNUC_MINOR__ == 2 || defined(__GNUC_STM_RELEASE__)) | ||
| 83 | /* | ||
| 84 | * GCC 4.2 emits these for division, as do GCC 4.1.x versions of the ST | ||
| 85 | * compiler which include backported patches. | ||
| 86 | */ | ||
| 87 | DECLARE_EXPORT(__sdivsi3_i4i); | ||
| 88 | DECLARE_EXPORT(__udiv_qrnnd_16); | ||
| 89 | DECLARE_EXPORT(__udivsi3_i4i); | ||
| 90 | #endif | ||
| 81 | #else /* GCC 3.x */ | 91 | #else /* GCC 3.x */ |
| 82 | DECLARE_EXPORT(__movstr_i4_even); | 92 | DECLARE_EXPORT(__movstr_i4_even); |
| 83 | DECLARE_EXPORT(__movstr_i4_odd); | 93 | DECLARE_EXPORT(__movstr_i4_odd); |
diff --git a/arch/sh/kernel/signal.c b/arch/sh/kernel/signal.c index e323e299878b..706d81ccd101 100644 --- a/arch/sh/kernel/signal.c +++ b/arch/sh/kernel/signal.c | |||
| @@ -23,6 +23,7 @@ | |||
| 23 | #include <linux/personality.h> | 23 | #include <linux/personality.h> |
| 24 | #include <linux/binfmts.h> | 24 | #include <linux/binfmts.h> |
| 25 | #include <linux/freezer.h> | 25 | #include <linux/freezer.h> |
| 26 | #include <linux/io.h> | ||
| 26 | #include <asm/system.h> | 27 | #include <asm/system.h> |
| 27 | #include <asm/ucontext.h> | 28 | #include <asm/ucontext.h> |
| 28 | #include <asm/uaccess.h> | 29 | #include <asm/uaccess.h> |
| @@ -261,7 +262,7 @@ asmlinkage int sys_rt_sigreturn(unsigned long r4, unsigned long r5, | |||
| 261 | goto badframe; | 262 | goto badframe; |
| 262 | /* It is more difficult to avoid calling this function than to | 263 | /* It is more difficult to avoid calling this function than to |
| 263 | call it and ignore errors. */ | 264 | call it and ignore errors. */ |
| 264 | do_sigaltstack(&st, NULL, regs->regs[15]); | 265 | do_sigaltstack((const stack_t __user *)&st, NULL, (unsigned long)frame); |
| 265 | 266 | ||
| 266 | return r0; | 267 | return r0; |
| 267 | 268 | ||
diff --git a/arch/sh/kernel/syscalls.S b/arch/sh/kernel/syscalls.S index 7db1c2dc5992..ff5656e60c05 100644 --- a/arch/sh/kernel/syscalls.S +++ b/arch/sh/kernel/syscalls.S | |||
| @@ -308,9 +308,9 @@ ENTRY(sys_call_table) | |||
| 308 | .long sys_utimes | 308 | .long sys_utimes |
| 309 | .long sys_fadvise64_64_wrapper | 309 | .long sys_fadvise64_64_wrapper |
| 310 | .long sys_ni_syscall /* Reserved for vserver */ | 310 | .long sys_ni_syscall /* Reserved for vserver */ |
| 311 | .long sys_ni_syscall /* Reserved for mbind */ | 311 | .long sys_mbind |
| 312 | .long sys_ni_syscall /* 275 - get_mempolicy */ | 312 | .long sys_get_mempolicy /* 275 */ |
| 313 | .long sys_ni_syscall /* set_mempolicy */ | 313 | .long sys_set_mempolicy |
| 314 | .long sys_mq_open | 314 | .long sys_mq_open |
| 315 | .long sys_mq_unlink | 315 | .long sys_mq_unlink |
| 316 | .long sys_mq_timedsend | 316 | .long sys_mq_timedsend |
diff --git a/arch/sh/kernel/timers/timer-tmu.c b/arch/sh/kernel/timers/timer-tmu.c index 2d997e2a5b6c..097ebd49f1bf 100644 --- a/arch/sh/kernel/timers/timer-tmu.c +++ b/arch/sh/kernel/timers/timer-tmu.c | |||
| @@ -30,7 +30,7 @@ | |||
| 30 | 30 | ||
| 31 | static int tmu_timer_start(void) | 31 | static int tmu_timer_start(void) |
| 32 | { | 32 | { |
| 33 | ctrl_outb(ctrl_inb(TMU_TSTR) | 0x3, TMU_TSTR); | 33 | ctrl_outb(ctrl_inb(TMU_012_TSTR) | 0x3, TMU_012_TSTR); |
| 34 | return 0; | 34 | return 0; |
| 35 | } | 35 | } |
| 36 | 36 | ||
| @@ -52,7 +52,7 @@ static void tmu0_timer_set_interval(unsigned long interval, unsigned int reload) | |||
| 52 | 52 | ||
| 53 | static int tmu_timer_stop(void) | 53 | static int tmu_timer_stop(void) |
| 54 | { | 54 | { |
| 55 | ctrl_outb(ctrl_inb(TMU_TSTR) & ~0x3, TMU_TSTR); | 55 | ctrl_outb(ctrl_inb(TMU_012_TSTR) & ~0x3, TMU_012_TSTR); |
| 56 | return 0; | 56 | return 0; |
| 57 | } | 57 | } |
| 58 | 58 | ||
| @@ -174,7 +174,8 @@ static int tmu_timer_init(void) | |||
| 174 | 174 | ||
| 175 | #if !defined(CONFIG_CPU_SUBTYPE_SH7300) && \ | 175 | #if !defined(CONFIG_CPU_SUBTYPE_SH7300) && \ |
| 176 | !defined(CONFIG_CPU_SUBTYPE_SH7760) && \ | 176 | !defined(CONFIG_CPU_SUBTYPE_SH7760) && \ |
| 177 | !defined(CONFIG_CPU_SUBTYPE_SH7785) | 177 | !defined(CONFIG_CPU_SUBTYPE_SH7785) && \ |
| 178 | !defined(CONFIG_CPU_SUBTYPE_SHX3) | ||
| 178 | ctrl_outb(TMU_TOCR_INIT, TMU_TOCR); | 179 | ctrl_outb(TMU_TOCR_INIT, TMU_TOCR); |
| 179 | #endif | 180 | #endif |
| 180 | 181 | ||
diff --git a/arch/sh/kernel/topology.c b/arch/sh/kernel/topology.c new file mode 100644 index 000000000000..9b5844a1bdaa --- /dev/null +++ b/arch/sh/kernel/topology.c | |||
| @@ -0,0 +1,49 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/kernel/topology.c | ||
| 3 | * | ||
| 4 | * Copyright (C) 2007 Paul Mundt | ||
| 5 | * | ||
| 6 | * This file is subject to the terms and conditions of the GNU General Public | ||
| 7 | * License. See the file "COPYING" in the main directory of this archive | ||
| 8 | * for more details. | ||
| 9 | */ | ||
| 10 | #include <linux/cpu.h> | ||
| 11 | #include <linux/cpumask.h> | ||
| 12 | #include <linux/init.h> | ||
| 13 | #include <linux/percpu.h> | ||
| 14 | #include <linux/node.h> | ||
| 15 | #include <linux/nodemask.h> | ||
| 16 | |||
| 17 | static DEFINE_PER_CPU(struct cpu, cpu_devices); | ||
| 18 | |||
| 19 | static int __init topology_init(void) | ||
| 20 | { | ||
| 21 | int i, ret; | ||
| 22 | |||
| 23 | #ifdef CONFIG_NEED_MULTIPLE_NODES | ||
| 24 | for_each_online_node(i) | ||
| 25 | register_one_node(i); | ||
| 26 | #endif | ||
| 27 | |||
| 28 | for_each_present_cpu(i) { | ||
| 29 | ret = register_cpu(&per_cpu(cpu_devices, i), i); | ||
| 30 | if (unlikely(ret)) | ||
| 31 | printk(KERN_WARNING "%s: register_cpu %d failed (%d)\n", | ||
| 32 | __FUNCTION__, i, ret); | ||
| 33 | } | ||
| 34 | |||
| 35 | #if defined(CONFIG_NUMA) && !defined(CONFIG_SMP) | ||
| 36 | /* | ||
| 37 | * In the UP case, make sure the CPU association is still | ||
| 38 | * registered under each node. Without this, sysfs fails | ||
| 39 | * to make the connection between nodes other than node0 | ||
| 40 | * and cpu0. | ||
| 41 | */ | ||
| 42 | for_each_online_node(i) | ||
| 43 | if (i != numa_node_id()) | ||
| 44 | register_cpu_under_node(raw_smp_processor_id(), i); | ||
| 45 | #endif | ||
| 46 | |||
| 47 | return 0; | ||
| 48 | } | ||
| 49 | subsys_initcall(topology_init); | ||
diff --git a/arch/sh/kernel/traps.c b/arch/sh/kernel/traps.c index 09480887076b..05a40f3c30bf 100644 --- a/arch/sh/kernel/traps.c +++ b/arch/sh/kernel/traps.c | |||
| @@ -584,7 +584,7 @@ uspace_segv: | |||
| 584 | info.si_signo = SIGBUS; | 584 | info.si_signo = SIGBUS; |
| 585 | info.si_errno = 0; | 585 | info.si_errno = 0; |
| 586 | info.si_code = si_code; | 586 | info.si_code = si_code; |
| 587 | info.si_addr = (void *) address; | 587 | info.si_addr = (void __user *)address; |
| 588 | force_sig_info(SIGBUS, &info, current); | 588 | force_sig_info(SIGBUS, &info, current); |
| 589 | } else { | 589 | } else { |
| 590 | if (regs->pc & 1) | 590 | if (regs->pc & 1) |
| @@ -617,7 +617,7 @@ uspace_segv: | |||
| 617 | */ | 617 | */ |
| 618 | int is_dsp_inst(struct pt_regs *regs) | 618 | int is_dsp_inst(struct pt_regs *regs) |
| 619 | { | 619 | { |
| 620 | unsigned short inst; | 620 | unsigned short inst = 0; |
| 621 | 621 | ||
| 622 | /* | 622 | /* |
| 623 | * Safe guard if DSP mode is already enabled or we're lacking | 623 | * Safe guard if DSP mode is already enabled or we're lacking |
| @@ -645,7 +645,6 @@ asmlinkage void do_divide_error(unsigned long r4, unsigned long r5, | |||
| 645 | unsigned long r6, unsigned long r7, | 645 | unsigned long r6, unsigned long r7, |
| 646 | struct pt_regs __regs) | 646 | struct pt_regs __regs) |
| 647 | { | 647 | { |
| 648 | struct pt_regs *regs = RELOC_HIDE(&__regs, 0); | ||
| 649 | siginfo_t info; | 648 | siginfo_t info; |
| 650 | 649 | ||
| 651 | switch (r4) { | 650 | switch (r4) { |
diff --git a/arch/sh/kernel/vmlinux.lds.S b/arch/sh/kernel/vmlinux.lds.S index 4c5b57e9c3c1..0696402f446a 100644 --- a/arch/sh/kernel/vmlinux.lds.S +++ b/arch/sh/kernel/vmlinux.lds.S | |||
| @@ -97,18 +97,20 @@ SECTIONS | |||
| 97 | __initramfs_end = .; | 97 | __initramfs_end = .; |
| 98 | #endif | 98 | #endif |
| 99 | 99 | ||
| 100 | . = ALIGN(4); | ||
| 100 | __machvec_start = .; | 101 | __machvec_start = .; |
| 101 | .init.machvec : { *(.init.machvec) } | 102 | .machvec.init : { *(.machvec.init) } |
| 102 | __machvec_end = .; | 103 | __machvec_end = .; |
| 103 | . = ALIGN(PAGE_SIZE); | ||
| 104 | __init_end = .; | ||
| 105 | |||
| 106 | . = ALIGN(4); | ||
| 107 | __bss_start = .; /* BSS */ | ||
| 108 | .bss : { *(.bss) } | ||
| 109 | 104 | ||
| 110 | . = ALIGN(4); | 105 | . = ALIGN(PAGE_SIZE); |
| 111 | _end = . ; | 106 | .bss : { |
| 107 | __init_end = .; | ||
| 108 | __bss_start = .; /* BSS */ | ||
| 109 | *(.bss.page_aligned) | ||
| 110 | *(.bss) | ||
| 111 | . = ALIGN(4); | ||
| 112 | _end = . ; | ||
| 113 | } | ||
| 112 | 114 | ||
| 113 | /* When something in the kernel is NOT compiled as a module, the | 115 | /* When something in the kernel is NOT compiled as a module, the |
| 114 | * module cleanup code and data are put into these segments. Both | 116 | * module cleanup code and data are put into these segments. Both |
diff --git a/arch/sh/lib/div64-generic.c b/arch/sh/lib/div64-generic.c index c02473afd581..4bef3b5d964a 100644 --- a/arch/sh/lib/div64-generic.c +++ b/arch/sh/lib/div64-generic.c | |||
| @@ -4,16 +4,15 @@ | |||
| 4 | 4 | ||
| 5 | #include <linux/types.h> | 5 | #include <linux/types.h> |
| 6 | 6 | ||
| 7 | extern u64 __xdiv64_32(u64 n, u32 d); | 7 | extern uint64_t __xdiv64_32(u64 n, u32 d); |
| 8 | 8 | ||
| 9 | u64 __div64_32(u64 *xp, u32 y) | 9 | uint32_t __div64_32(u64 *xp, u32 y) |
| 10 | { | 10 | { |
| 11 | u64 rem; | 11 | uint32_t rem; |
| 12 | u64 q = __xdiv64_32(*xp, y); | 12 | uint64_t q = __xdiv64_32(*xp, y); |
| 13 | 13 | ||
| 14 | rem = *xp - q * y; | 14 | rem = *xp - q * y; |
| 15 | *xp = q; | 15 | *xp = q; |
| 16 | 16 | ||
| 17 | return rem; | 17 | return rem; |
| 18 | } | 18 | } |
| 19 | |||
diff --git a/arch/sh/lib/div64.S b/arch/sh/lib/div64.S index eefc275d64a7..5ee7334ea64f 100644 --- a/arch/sh/lib/div64.S +++ b/arch/sh/lib/div64.S | |||
| @@ -1,12 +1,12 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * unsigned long long __xdiv64_32(unsigned long long n, unsigned long d); | 2 | * unsigned long __xdiv64_32(unsigned long long n, unsigned long d); |
| 3 | */ | 3 | */ |
| 4 | 4 | ||
| 5 | #include <linux/linkage.h> | 5 | #include <linux/linkage.h> |
| 6 | 6 | ||
| 7 | .text | 7 | .text |
| 8 | ENTRY(__xdiv64_32) | 8 | ENTRY(__xdiv64_32) |
| 9 | #ifdef __LITTLE_ENDIAN__ | 9 | #ifdef CONFIG_CPU_LITTLE_ENDIAN |
| 10 | mov r4, r0 | 10 | mov r4, r0 |
| 11 | mov r5, r1 | 11 | mov r5, r1 |
| 12 | #else | 12 | #else |
| @@ -34,7 +34,7 @@ ENTRY(__xdiv64_32) | |||
| 34 | rotcl r0 | 34 | rotcl r0 |
| 35 | div1 r6, r1 | 35 | div1 r6, r1 |
| 36 | .endr | 36 | .endr |
| 37 | #ifdef __LITTLE_ENDIAN__ | 37 | #ifdef CONFIG_CPU_LITTLE_ENDIAN |
| 38 | mov r2, r1 | 38 | mov r2, r1 |
| 39 | rts | 39 | rts |
| 40 | rotcl r0 | 40 | rotcl r0 |
diff --git a/arch/sh/math-emu/math.c b/arch/sh/math-emu/math.c index a38e1eed9e77..ac2d7abd2567 100644 --- a/arch/sh/math-emu/math.c +++ b/arch/sh/math-emu/math.c | |||
| @@ -507,6 +507,7 @@ static int ieee_fpe_handler(struct pt_regs *regs) | |||
| 507 | unsigned short insn = *(unsigned short *)regs->pc; | 507 | unsigned short insn = *(unsigned short *)regs->pc; |
| 508 | unsigned short finsn; | 508 | unsigned short finsn; |
| 509 | unsigned long nextpc; | 509 | unsigned long nextpc; |
| 510 | siginfo_t info; | ||
| 510 | int nib[4] = { | 511 | int nib[4] = { |
| 511 | (insn >> 12) & 0xf, | 512 | (insn >> 12) & 0xf, |
| 512 | (insn >> 8) & 0xf, | 513 | (insn >> 8) & 0xf, |
| @@ -559,9 +560,11 @@ static int ieee_fpe_handler(struct pt_regs *regs) | |||
| 559 | ~(FPSCR_CAUSE_MASK | FPSCR_FLAG_MASK); | 560 | ~(FPSCR_CAUSE_MASK | FPSCR_FLAG_MASK); |
| 560 | set_tsk_thread_flag(tsk, TIF_USEDFPU); | 561 | set_tsk_thread_flag(tsk, TIF_USEDFPU); |
| 561 | } else { | 562 | } else { |
| 562 | tsk->thread.trap_no = 11; | 563 | info.si_signo = SIGFPE; |
| 563 | tsk->thread.error_code = 0; | 564 | info.si_errno = 0; |
| 564 | force_sig(SIGFPE, tsk); | 565 | info.si_code = FPE_FLTINV; |
| 566 | info.si_addr = (void __user *)regs->pc; | ||
| 567 | force_sig_info(SIGFPE, &info, tsk); | ||
| 565 | } | 568 | } |
| 566 | 569 | ||
| 567 | regs->pc = nextpc; | 570 | regs->pc = nextpc; |
| @@ -576,14 +579,17 @@ asmlinkage void do_fpu_error(unsigned long r4, unsigned long r5, | |||
| 576 | struct pt_regs regs) | 579 | struct pt_regs regs) |
| 577 | { | 580 | { |
| 578 | struct task_struct *tsk = current; | 581 | struct task_struct *tsk = current; |
| 582 | siginfo_t info; | ||
| 579 | 583 | ||
| 580 | if (ieee_fpe_handler (®s)) | 584 | if (ieee_fpe_handler (®s)) |
| 581 | return; | 585 | return; |
| 582 | 586 | ||
| 583 | regs.pc += 2; | 587 | regs.pc += 2; |
| 584 | tsk->thread.trap_no = 11; | 588 | info.si_signo = SIGFPE; |
| 585 | tsk->thread.error_code = 0; | 589 | info.si_errno = 0; |
| 586 | force_sig(SIGFPE, tsk); | 590 | info.si_code = FPE_FLTINV; |
| 591 | info.si_addr = (void __user *)regs.pc; | ||
| 592 | force_sig_info(SIGFPE, &info, tsk); | ||
| 587 | } | 593 | } |
| 588 | 594 | ||
| 589 | /** | 595 | /** |
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 |
diff --git a/arch/sh/mm/Makefile b/arch/sh/mm/Makefile index 3ffd7f68c0a2..d677d7f3afc1 100644 --- a/arch/sh/mm/Makefile +++ b/arch/sh/mm/Makefile | |||
| @@ -8,9 +8,6 @@ obj-$(CONFIG_CPU_SH2) += cache-sh2.o | |||
| 8 | obj-$(CONFIG_CPU_SH3) += cache-sh3.o | 8 | obj-$(CONFIG_CPU_SH3) += cache-sh3.o |
| 9 | obj-$(CONFIG_CPU_SH4) += cache-sh4.o | 9 | obj-$(CONFIG_CPU_SH4) += cache-sh4.o |
| 10 | 10 | ||
| 11 | obj-$(CONFIG_DMA_PAGE_OPS) += pg-dma.o | ||
| 12 | obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o | ||
| 13 | |||
| 14 | mmu-y := fault-nommu.o tlb-nommu.o pg-nommu.o | 11 | mmu-y := fault-nommu.o tlb-nommu.o pg-nommu.o |
| 15 | mmu-$(CONFIG_MMU) := fault.o clear_page.o copy_page.o tlb-flush.o \ | 12 | mmu-$(CONFIG_MMU) := fault.o clear_page.o copy_page.o tlb-flush.o \ |
| 16 | ioremap.o | 13 | ioremap.o |
| @@ -27,5 +24,7 @@ obj-$(CONFIG_CPU_SH4) += tlb-sh4.o pg-sh4.o | |||
| 27 | obj-$(CONFIG_SH7705_CACHE_32KB) += pg-sh7705.o | 24 | obj-$(CONFIG_SH7705_CACHE_32KB) += pg-sh7705.o |
| 28 | endif | 25 | endif |
| 29 | 26 | ||
| 27 | obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o | ||
| 30 | obj-$(CONFIG_SH7705_CACHE_32KB) += cache-sh7705.o | 28 | obj-$(CONFIG_SH7705_CACHE_32KB) += cache-sh7705.o |
| 31 | obj-$(CONFIG_32BIT) += pmb.o | 29 | obj-$(CONFIG_32BIT) += pmb.o |
| 30 | obj-$(CONFIG_NUMA) += numa.o | ||
diff --git a/arch/sh/mm/fault.c b/arch/sh/mm/fault.c index c878faa4ae46..0b3eaf6fbb28 100644 --- a/arch/sh/mm/fault.c +++ b/arch/sh/mm/fault.c | |||
| @@ -32,7 +32,6 @@ asmlinkage void __kprobes do_page_fault(struct pt_regs *regs, | |||
| 32 | struct task_struct *tsk; | 32 | struct task_struct *tsk; |
| 33 | struct mm_struct *mm; | 33 | struct mm_struct *mm; |
| 34 | struct vm_area_struct * vma; | 34 | struct vm_area_struct * vma; |
| 35 | unsigned long page; | ||
| 36 | int si_code; | 35 | int si_code; |
| 37 | siginfo_t info; | 36 | siginfo_t info; |
| 38 | 37 | ||
| @@ -170,24 +169,38 @@ no_context: | |||
| 170 | * terminate things with extreme prejudice. | 169 | * terminate things with extreme prejudice. |
| 171 | * | 170 | * |
| 172 | */ | 171 | */ |
| 173 | if (address < PAGE_SIZE) | 172 | |
| 174 | printk(KERN_ALERT "Unable to handle kernel NULL pointer dereference"); | 173 | bust_spinlocks(1); |
| 175 | else | 174 | |
| 176 | printk(KERN_ALERT "Unable to handle kernel paging request"); | 175 | if (oops_may_print()) { |
| 177 | printk(" at virtual address %08lx\n", address); | 176 | __typeof__(pte_val(__pte(0))) page; |
| 178 | printk(KERN_ALERT "pc = %08lx\n", regs->pc); | 177 | |
| 179 | page = (unsigned long)get_TTB(); | 178 | if (address < PAGE_SIZE) |
| 180 | if (page) { | 179 | printk(KERN_ALERT "Unable to handle kernel NULL " |
| 181 | page = ((unsigned long *) page)[address >> PGDIR_SHIFT]; | 180 | "pointer dereference"); |
| 182 | printk(KERN_ALERT "*pde = %08lx\n", page); | 181 | else |
| 183 | if (page & _PAGE_PRESENT) { | 182 | printk(KERN_ALERT "Unable to handle kernel paging " |
| 184 | page &= PAGE_MASK; | 183 | "request"); |
| 185 | address &= 0x003ff000; | 184 | printk(" at virtual address %08lx\n", address); |
| 186 | page = ((unsigned long *) __va(page))[address >> PAGE_SHIFT]; | 185 | printk(KERN_ALERT "pc = %08lx\n", regs->pc); |
| 187 | printk(KERN_ALERT "*pte = %08lx\n", page); | 186 | page = (unsigned long)get_TTB(); |
| 187 | if (page) { | ||
| 188 | page = ((__typeof__(page) *) __va(page))[address >> | ||
| 189 | PGDIR_SHIFT]; | ||
| 190 | printk(KERN_ALERT "*pde = %08lx\n", page); | ||
| 191 | if (page & _PAGE_PRESENT) { | ||
| 192 | page &= PAGE_MASK; | ||
| 193 | address &= 0x003ff000; | ||
| 194 | page = ((__typeof__(page) *) | ||
| 195 | __va(page))[address >> | ||
| 196 | PAGE_SHIFT]; | ||
| 197 | printk(KERN_ALERT "*pte = %08lx\n", page); | ||
| 198 | } | ||
| 188 | } | 199 | } |
| 189 | } | 200 | } |
| 201 | |||
| 190 | die("Oops", regs, writeaccess); | 202 | die("Oops", regs, writeaccess); |
| 203 | bust_spinlocks(0); | ||
| 191 | do_exit(SIGKILL); | 204 | do_exit(SIGKILL); |
| 192 | 205 | ||
| 193 | /* | 206 | /* |
diff --git a/arch/sh/mm/init.c b/arch/sh/mm/init.c index e0e644ff3204..82b68c789a5f 100644 --- a/arch/sh/mm/init.c +++ b/arch/sh/mm/init.c | |||
| @@ -18,6 +18,7 @@ | |||
| 18 | #include <asm/mmu_context.h> | 18 | #include <asm/mmu_context.h> |
| 19 | #include <asm/tlb.h> | 19 | #include <asm/tlb.h> |
| 20 | #include <asm/cacheflush.h> | 20 | #include <asm/cacheflush.h> |
| 21 | #include <asm/sections.h> | ||
| 21 | #include <asm/cache.h> | 22 | #include <asm/cache.h> |
| 22 | 23 | ||
| 23 | DEFINE_PER_CPU(struct mmu_gather, mmu_gathers); | 24 | DEFINE_PER_CPU(struct mmu_gather, mmu_gathers); |
| @@ -36,14 +37,11 @@ void show_mem(void) | |||
| 36 | show_free_areas(); | 37 | show_free_areas(); |
| 37 | 38 | ||
| 38 | for_each_online_pgdat(pgdat) { | 39 | for_each_online_pgdat(pgdat) { |
| 39 | struct page *page, *end; | 40 | unsigned long flags, i; |
| 40 | unsigned long flags; | ||
| 41 | 41 | ||
| 42 | pgdat_resize_lock(pgdat, &flags); | 42 | pgdat_resize_lock(pgdat, &flags); |
| 43 | page = pgdat->node_mem_map; | 43 | for (i = 0; i < pgdat->node_spanned_pages; i++) { |
| 44 | end = page + pgdat->node_spanned_pages; | 44 | struct page *page = pgdat_page_nr(pgdat, i); |
| 45 | |||
| 46 | do { | ||
| 47 | total++; | 45 | total++; |
| 48 | if (PageReserved(page)) | 46 | if (PageReserved(page)) |
| 49 | reserved++; | 47 | reserved++; |
| @@ -55,9 +53,7 @@ void show_mem(void) | |||
| 55 | free++; | 53 | free++; |
| 56 | else | 54 | else |
| 57 | shared += page_count(page) - 1; | 55 | shared += page_count(page) - 1; |
| 58 | page++; | 56 | } |
| 59 | } while (page < end); | ||
| 60 | |||
| 61 | pgdat_resize_unlock(pgdat, &flags); | 57 | pgdat_resize_unlock(pgdat, &flags); |
| 62 | } | 58 | } |
| 63 | 59 | ||
| @@ -137,16 +133,12 @@ void __set_fixmap(enum fixed_addresses idx, unsigned long phys, pgprot_t prot) | |||
| 137 | } | 133 | } |
| 138 | #endif /* CONFIG_MMU */ | 134 | #endif /* CONFIG_MMU */ |
| 139 | 135 | ||
| 140 | /* References to section boundaries */ | ||
| 141 | |||
| 142 | extern char _text, _etext, _edata, __bss_start, _end; | ||
| 143 | extern char __init_begin, __init_end; | ||
| 144 | |||
| 145 | /* | 136 | /* |
| 146 | * paging_init() sets up the page tables | 137 | * paging_init() sets up the page tables |
| 147 | */ | 138 | */ |
| 148 | void __init paging_init(void) | 139 | void __init paging_init(void) |
| 149 | { | 140 | { |
| 141 | unsigned long max_zone_pfns[MAX_NR_ZONES]; | ||
| 150 | int nid; | 142 | int nid; |
| 151 | 143 | ||
| 152 | /* We don't need to map the kernel through the TLB, as | 144 | /* We don't need to map the kernel through the TLB, as |
| @@ -158,43 +150,39 @@ void __init paging_init(void) | |||
| 158 | * check for a null value. */ | 150 | * check for a null value. */ |
| 159 | set_TTB(swapper_pg_dir); | 151 | set_TTB(swapper_pg_dir); |
| 160 | 152 | ||
| 153 | memset(max_zone_pfns, 0, sizeof(max_zone_pfns)); | ||
| 154 | |||
| 161 | for_each_online_node(nid) { | 155 | for_each_online_node(nid) { |
| 162 | pg_data_t *pgdat = NODE_DATA(nid); | 156 | pg_data_t *pgdat = NODE_DATA(nid); |
| 163 | unsigned long max_zone_pfns[MAX_NR_ZONES]; | ||
| 164 | unsigned long low, start_pfn; | 157 | unsigned long low, start_pfn; |
| 165 | 158 | ||
| 166 | memset(max_zone_pfns, 0, sizeof(max_zone_pfns)); | ||
| 167 | |||
| 168 | start_pfn = pgdat->bdata->node_boot_start >> PAGE_SHIFT; | 159 | start_pfn = pgdat->bdata->node_boot_start >> PAGE_SHIFT; |
| 169 | low = pgdat->bdata->node_low_pfn; | 160 | low = pgdat->bdata->node_low_pfn; |
| 170 | 161 | ||
| 171 | max_zone_pfns[ZONE_NORMAL] = low; | 162 | if (max_zone_pfns[ZONE_NORMAL] < low) |
| 172 | add_active_range(nid, start_pfn, low); | 163 | max_zone_pfns[ZONE_NORMAL] = low; |
| 173 | 164 | ||
| 174 | printk("Node %u: start_pfn = 0x%lx, low = 0x%lx\n", | 165 | printk("Node %u: start_pfn = 0x%lx, low = 0x%lx\n", |
| 175 | nid, start_pfn, low); | 166 | nid, start_pfn, low); |
| 176 | |||
| 177 | free_area_init_nodes(max_zone_pfns); | ||
| 178 | |||
| 179 | printk("Node %u: mem_map starts at %p\n", | ||
| 180 | pgdat->node_id, pgdat->node_mem_map); | ||
| 181 | } | 167 | } |
| 168 | |||
| 169 | free_area_init_nodes(max_zone_pfns); | ||
| 182 | } | 170 | } |
| 183 | 171 | ||
| 184 | static struct kcore_list kcore_mem, kcore_vmalloc; | 172 | static struct kcore_list kcore_mem, kcore_vmalloc; |
| 185 | 173 | ||
| 186 | void __init mem_init(void) | 174 | void __init mem_init(void) |
| 187 | { | 175 | { |
| 188 | int codesize, reservedpages, datasize, initsize; | 176 | int codesize, datasize, initsize; |
| 189 | int nid; | 177 | int nid; |
| 190 | 178 | ||
| 191 | reservedpages = 0; | 179 | num_physpages = 0; |
| 180 | high_memory = NULL; | ||
| 192 | 181 | ||
| 193 | for_each_online_node(nid) { | 182 | for_each_online_node(nid) { |
| 194 | pg_data_t *pgdat = NODE_DATA(nid); | 183 | pg_data_t *pgdat = NODE_DATA(nid); |
| 195 | unsigned long node_pages = 0; | 184 | unsigned long node_pages = 0; |
| 196 | void *node_high_memory; | 185 | void *node_high_memory; |
| 197 | int i; | ||
| 198 | 186 | ||
| 199 | num_physpages += pgdat->node_present_pages; | 187 | num_physpages += pgdat->node_present_pages; |
| 200 | 188 | ||
| @@ -203,13 +191,9 @@ void __init mem_init(void) | |||
| 203 | 191 | ||
| 204 | totalram_pages += node_pages; | 192 | totalram_pages += node_pages; |
| 205 | 193 | ||
| 206 | for (i = 0; i < node_pages; i++) | 194 | node_high_memory = (void *)__va((pgdat->node_start_pfn + |
| 207 | if (PageReserved(pgdat->node_mem_map + i)) | 195 | pgdat->node_spanned_pages) << |
| 208 | reservedpages++; | 196 | PAGE_SHIFT); |
| 209 | |||
| 210 | node_high_memory = (void *)((pgdat->node_start_pfn + | ||
| 211 | pgdat->node_spanned_pages) << | ||
| 212 | PAGE_SHIFT); | ||
| 213 | if (node_high_memory > high_memory) | 197 | if (node_high_memory > high_memory) |
| 214 | high_memory = node_high_memory; | 198 | high_memory = node_high_memory; |
| 215 | } | 199 | } |
| @@ -239,11 +223,10 @@ void __init mem_init(void) | |||
| 239 | VMALLOC_END - VMALLOC_START); | 223 | VMALLOC_END - VMALLOC_START); |
| 240 | 224 | ||
| 241 | printk(KERN_INFO "Memory: %luk/%luk available (%dk kernel code, " | 225 | printk(KERN_INFO "Memory: %luk/%luk available (%dk kernel code, " |
| 242 | "%dk reserved, %dk data, %dk init)\n", | 226 | "%dk data, %dk init)\n", |
| 243 | (unsigned long) nr_free_pages() << (PAGE_SHIFT-10), | 227 | (unsigned long) nr_free_pages() << (PAGE_SHIFT-10), |
| 244 | totalram_pages << (PAGE_SHIFT-10), | 228 | num_physpages << (PAGE_SHIFT-10), |
| 245 | codesize >> 10, | 229 | codesize >> 10, |
| 246 | reservedpages << (PAGE_SHIFT-10), | ||
| 247 | datasize >> 10, | 230 | datasize >> 10, |
| 248 | initsize >> 10); | 231 | initsize >> 10); |
| 249 | 232 | ||
| @@ -264,7 +247,9 @@ void free_initmem(void) | |||
| 264 | free_page(addr); | 247 | free_page(addr); |
| 265 | totalram_pages++; | 248 | totalram_pages++; |
| 266 | } | 249 | } |
| 267 | printk ("Freeing unused kernel memory: %dk freed\n", (&__init_end - &__init_begin) >> 10); | 250 | printk("Freeing unused kernel memory: %ldk freed\n", |
| 251 | ((unsigned long)&__init_end - | ||
| 252 | (unsigned long)&__init_begin) >> 10); | ||
| 268 | } | 253 | } |
| 269 | 254 | ||
| 270 | #ifdef CONFIG_BLK_DEV_INITRD | 255 | #ifdef CONFIG_BLK_DEV_INITRD |
| @@ -277,6 +262,50 @@ void free_initrd_mem(unsigned long start, unsigned long end) | |||
| 277 | free_page(p); | 262 | free_page(p); |
| 278 | totalram_pages++; | 263 | totalram_pages++; |
| 279 | } | 264 | } |
| 280 | printk ("Freeing initrd memory: %ldk freed\n", (end - start) >> 10); | 265 | printk("Freeing initrd memory: %ldk freed\n", (end - start) >> 10); |
| 266 | } | ||
| 267 | #endif | ||
| 268 | |||
| 269 | #ifdef CONFIG_MEMORY_HOTPLUG | ||
| 270 | void online_page(struct page *page) | ||
| 271 | { | ||
| 272 | ClearPageReserved(page); | ||
| 273 | init_page_count(page); | ||
| 274 | __free_page(page); | ||
| 275 | totalram_pages++; | ||
| 276 | num_physpages++; | ||
| 281 | } | 277 | } |
| 278 | |||
| 279 | int arch_add_memory(int nid, u64 start, u64 size) | ||
| 280 | { | ||
| 281 | pg_data_t *pgdat; | ||
| 282 | unsigned long start_pfn = start >> PAGE_SHIFT; | ||
| 283 | unsigned long nr_pages = size >> PAGE_SHIFT; | ||
| 284 | int ret; | ||
| 285 | |||
| 286 | pgdat = NODE_DATA(nid); | ||
| 287 | |||
| 288 | /* We only have ZONE_NORMAL, so this is easy.. */ | ||
| 289 | ret = __add_pages(pgdat->node_zones + ZONE_NORMAL, start_pfn, nr_pages); | ||
| 290 | if (unlikely(ret)) | ||
| 291 | printk("%s: Failed, __add_pages() == %d\n", __FUNCTION__, ret); | ||
| 292 | |||
| 293 | return ret; | ||
| 294 | } | ||
| 295 | EXPORT_SYMBOL_GPL(arch_add_memory); | ||
| 296 | |||
| 297 | int remove_memory(u64 start, u64 size) | ||
| 298 | { | ||
| 299 | return -EINVAL; | ||
| 300 | } | ||
| 301 | EXPORT_SYMBOL_GPL(remove_memory); | ||
| 302 | |||
| 303 | #ifdef CONFIG_NUMA | ||
| 304 | int memory_add_physaddr_to_nid(u64 addr) | ||
| 305 | { | ||
| 306 | /* Node 0 for now.. */ | ||
| 307 | return 0; | ||
| 308 | } | ||
| 309 | EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid); | ||
| 310 | #endif | ||
| 282 | #endif | 311 | #endif |
diff --git a/arch/sh/mm/numa.c b/arch/sh/mm/numa.c new file mode 100644 index 000000000000..8aff065dd307 --- /dev/null +++ b/arch/sh/mm/numa.c | |||
| @@ -0,0 +1,92 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/mm/numa.c - Multiple node support for SH machines | ||
| 3 | * | ||
| 4 | * Copyright (C) 2007 Paul Mundt | ||
| 5 | * | ||
| 6 | * This file is subject to the terms and conditions of the GNU General Public | ||
| 7 | * License. See the file "COPYING" in the main directory of this archive | ||
| 8 | * for more details. | ||
| 9 | */ | ||
| 10 | #include <linux/module.h> | ||
| 11 | #include <linux/bootmem.h> | ||
| 12 | #include <linux/mm.h> | ||
| 13 | #include <linux/numa.h> | ||
| 14 | #include <linux/pfn.h> | ||
| 15 | #include <asm/sections.h> | ||
| 16 | |||
| 17 | static bootmem_data_t plat_node_bdata[MAX_NUMNODES]; | ||
| 18 | struct pglist_data *node_data[MAX_NUMNODES] __read_mostly; | ||
| 19 | EXPORT_SYMBOL_GPL(node_data); | ||
| 20 | |||
| 21 | /* | ||
| 22 | * On SH machines the conventional approach is to stash system RAM | ||
| 23 | * in node 0, and other memory blocks in to node 1 and up, ordered by | ||
| 24 | * latency. Each node's pgdat is node-local at the beginning of the node, | ||
| 25 | * immediately followed by the node mem map. | ||
| 26 | */ | ||
| 27 | void __init setup_memory(void) | ||
| 28 | { | ||
| 29 | unsigned long free_pfn = PFN_UP(__pa(_end)); | ||
| 30 | |||
| 31 | /* | ||
| 32 | * Node 0 sets up its pgdat at the first available pfn, | ||
| 33 | * and bumps it up before setting up the bootmem allocator. | ||
| 34 | */ | ||
| 35 | NODE_DATA(0) = pfn_to_kaddr(free_pfn); | ||
| 36 | memset(NODE_DATA(0), 0, sizeof(struct pglist_data)); | ||
| 37 | free_pfn += PFN_UP(sizeof(struct pglist_data)); | ||
| 38 | NODE_DATA(0)->bdata = &plat_node_bdata[0]; | ||
| 39 | |||
| 40 | /* Set up node 0 */ | ||
| 41 | setup_bootmem_allocator(free_pfn); | ||
| 42 | |||
| 43 | /* Give the platforms a chance to hook up their nodes */ | ||
| 44 | plat_mem_setup(); | ||
| 45 | } | ||
| 46 | |||
| 47 | void __init setup_bootmem_node(int nid, unsigned long start, unsigned long end) | ||
| 48 | { | ||
| 49 | unsigned long bootmap_pages, bootmap_start, bootmap_size; | ||
| 50 | unsigned long start_pfn, free_pfn, end_pfn; | ||
| 51 | |||
| 52 | /* Don't allow bogus node assignment */ | ||
| 53 | BUG_ON(nid > MAX_NUMNODES || nid == 0); | ||
| 54 | |||
| 55 | /* | ||
| 56 | * The free pfn starts at the beginning of the range, and is | ||
| 57 | * advanced as necessary for pgdat and node map allocations. | ||
| 58 | */ | ||
| 59 | free_pfn = start_pfn = start >> PAGE_SHIFT; | ||
| 60 | end_pfn = end >> PAGE_SHIFT; | ||
| 61 | |||
| 62 | add_active_range(nid, start_pfn, end_pfn); | ||
| 63 | |||
| 64 | /* Node-local pgdat */ | ||
| 65 | NODE_DATA(nid) = pfn_to_kaddr(free_pfn); | ||
| 66 | free_pfn += PFN_UP(sizeof(struct pglist_data)); | ||
| 67 | memset(NODE_DATA(nid), 0, sizeof(struct pglist_data)); | ||
| 68 | |||
| 69 | NODE_DATA(nid)->bdata = &plat_node_bdata[nid]; | ||
| 70 | NODE_DATA(nid)->node_start_pfn = start_pfn; | ||
| 71 | NODE_DATA(nid)->node_spanned_pages = end_pfn - start_pfn; | ||
| 72 | |||
| 73 | /* Node-local bootmap */ | ||
| 74 | bootmap_pages = bootmem_bootmap_pages(end_pfn - start_pfn); | ||
| 75 | bootmap_start = (unsigned long)pfn_to_kaddr(free_pfn); | ||
| 76 | bootmap_size = init_bootmem_node(NODE_DATA(nid), free_pfn, start_pfn, | ||
| 77 | end_pfn); | ||
| 78 | |||
| 79 | free_bootmem_with_active_regions(nid, end_pfn); | ||
| 80 | |||
| 81 | /* Reserve the pgdat and bootmap space with the bootmem allocator */ | ||
| 82 | reserve_bootmem_node(NODE_DATA(nid), start_pfn << PAGE_SHIFT, | ||
| 83 | sizeof(struct pglist_data)); | ||
| 84 | reserve_bootmem_node(NODE_DATA(nid), free_pfn << PAGE_SHIFT, | ||
| 85 | bootmap_pages << PAGE_SHIFT); | ||
| 86 | |||
| 87 | /* It's up */ | ||
| 88 | node_set_online(nid); | ||
| 89 | |||
| 90 | /* Kick sparsemem */ | ||
| 91 | sparse_memory_present_with_active_regions(nid); | ||
| 92 | } | ||
diff --git a/arch/sh/mm/pg-dma.c b/arch/sh/mm/pg-dma.c deleted file mode 100644 index bb23679369d6..000000000000 --- a/arch/sh/mm/pg-dma.c +++ /dev/null | |||
| @@ -1,95 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * arch/sh/mm/pg-dma.c | ||
| 3 | * | ||
| 4 | * Fast clear_page()/copy_page() implementation using the SH DMAC | ||
| 5 | * | ||
| 6 | * Copyright (C) 2003 Paul Mundt | ||
| 7 | * | ||
| 8 | * This file is subject to the terms and conditions of the GNU General Public | ||
| 9 | * License. See the file "COPYING" in the main directory of this archive | ||
| 10 | * for more details. | ||
| 11 | */ | ||
| 12 | #include <linux/init.h> | ||
| 13 | #include <linux/kernel.h> | ||
| 14 | #include <linux/module.h> | ||
| 15 | #include <asm/semaphore.h> | ||
| 16 | #include <asm/mmu_context.h> | ||
| 17 | #include <asm/addrspace.h> | ||
| 18 | #include <asm/atomic.h> | ||
| 19 | #include <asm/page.h> | ||
| 20 | #include <asm/dma.h> | ||
| 21 | #include <asm/io.h> | ||
| 22 | |||
| 23 | /* Channel to use for page ops, must be dual-address mode capable. */ | ||
| 24 | static int dma_channel = CONFIG_DMA_PAGE_OPS_CHANNEL; | ||
| 25 | |||
| 26 | static void copy_page_dma(void *to, void *from) | ||
| 27 | { | ||
| 28 | /* | ||
| 29 | * This doesn't seem to get triggered until further along in the | ||
| 30 | * boot process, at which point the DMAC is already initialized. | ||
| 31 | * Fix this in the same fashion as clear_page_dma() in the event | ||
| 32 | * that this crashes due to the DMAC not being initialized. | ||
| 33 | */ | ||
| 34 | |||
| 35 | flush_icache_range((unsigned long)from, PAGE_SIZE); | ||
| 36 | dma_write_page(dma_channel, (unsigned long)from, (unsigned long)to); | ||
| 37 | dma_wait_for_completion(dma_channel); | ||
| 38 | } | ||
| 39 | |||
| 40 | static void clear_page_dma(void *to) | ||
| 41 | { | ||
| 42 | /* | ||
| 43 | * We get invoked quite early on, if the DMAC hasn't been initialized | ||
| 44 | * yet, fall back on the slow manual implementation. | ||
| 45 | */ | ||
| 46 | if (dma_info[dma_channel].chan != dma_channel) { | ||
| 47 | clear_page_slow(to); | ||
| 48 | return; | ||
| 49 | } | ||
| 50 | |||
| 51 | dma_write_page(dma_channel, (unsigned long)empty_zero_page, | ||
| 52 | (unsigned long)to); | ||
| 53 | |||
| 54 | /* | ||
| 55 | * FIXME: Something is a bit racy here, if we poll the counter right | ||
| 56 | * away, we seem to lock. flushing the page from the dcache doesn't | ||
| 57 | * seem to make a difference one way or the other, though either a full | ||
| 58 | * icache or dcache flush does. | ||
| 59 | * | ||
| 60 | * The location of this is important as well, and must happen prior to | ||
| 61 | * the completion loop but after the transfer was initiated. | ||
| 62 | * | ||
| 63 | * Oddly enough, this doesn't appear to be an issue for copy_page().. | ||
| 64 | */ | ||
| 65 | flush_icache_range((unsigned long)to, PAGE_SIZE); | ||
| 66 | |||
| 67 | dma_wait_for_completion(dma_channel); | ||
| 68 | } | ||
| 69 | |||
| 70 | static int __init pg_dma_init(void) | ||
| 71 | { | ||
| 72 | int ret; | ||
| 73 | |||
| 74 | ret = request_dma(dma_channel, "page ops"); | ||
| 75 | if (ret != 0) | ||
| 76 | return ret; | ||
| 77 | |||
| 78 | copy_page = copy_page_dma; | ||
| 79 | clear_page = clear_page_dma; | ||
| 80 | |||
| 81 | return ret; | ||
| 82 | } | ||
| 83 | |||
| 84 | static void __exit pg_dma_exit(void) | ||
| 85 | { | ||
| 86 | free_dma(dma_channel); | ||
| 87 | } | ||
| 88 | |||
| 89 | module_init(pg_dma_init); | ||
| 90 | module_exit(pg_dma_exit); | ||
| 91 | |||
| 92 | MODULE_AUTHOR("Paul Mundt <lethal@linux-sh.org>"); | ||
| 93 | MODULE_DESCRIPTION("Optimized page copy/clear routines using a dual-address mode capable DMAC channel"); | ||
| 94 | MODULE_LICENSE("GPL"); | ||
| 95 | |||
diff --git a/arch/sh/tools/Makefile b/arch/sh/tools/Makefile index 3c370a113291..567516b58acc 100644 --- a/arch/sh/tools/Makefile +++ b/arch/sh/tools/Makefile | |||
| @@ -12,4 +12,5 @@ | |||
| 12 | 12 | ||
| 13 | include/asm-sh/machtypes.h: $(src)/gen-mach-types $(src)/mach-types | 13 | include/asm-sh/machtypes.h: $(src)/gen-mach-types $(src)/mach-types |
| 14 | @echo ' Generating $@' | 14 | @echo ' Generating $@' |
| 15 | $(Q)if [ ! -d include/asm-sh ]; then mkdir -p include/asm-sh; fi | ||
| 15 | $(Q)$(AWK) -f $^ > $@ || { rm -f $@; /bin/false; } | 16 | $(Q)$(AWK) -f $^ > $@ || { rm -f $@; /bin/false; } |
diff --git a/arch/sh/tools/mach-types b/arch/sh/tools/mach-types index fb40f188aff9..4b5e9305092e 100644 --- a/arch/sh/tools/mach-types +++ b/arch/sh/tools/mach-types | |||
| @@ -18,7 +18,6 @@ SE SH_SOLUTION_ENGINE | |||
| 18 | HP6XX SH_HP6XX | 18 | HP6XX SH_HP6XX |
| 19 | HD64461 HD64461 | 19 | HD64461 HD64461 |
| 20 | HD64465 HD64465 | 20 | HD64465 HD64465 |
| 21 | SATURN SH_SATURN | ||
| 22 | DREAMCAST SH_DREAMCAST | 21 | DREAMCAST SH_DREAMCAST |
| 23 | MPC1211 SH_MPC1211 | 22 | MPC1211 SH_MPC1211 |
| 24 | SNAPGEAR SH_SECUREEDGE5410 | 23 | SNAPGEAR SH_SECUREEDGE5410 |
| @@ -34,3 +33,4 @@ R7785RP SH_R7785RP | |||
| 34 | TITAN SH_TITAN | 33 | TITAN SH_TITAN |
| 35 | SHMIN SH_SHMIN | 34 | SHMIN SH_SHMIN |
| 36 | 7710VOIPGW SH_7710VOIPGW | 35 | 7710VOIPGW SH_7710VOIPGW |
| 36 | LBOXRE2 SH_LBOX_RE2 | ||
diff --git a/drivers/serial/sh-sci.c b/drivers/serial/sh-sci.c index 1f89496d530e..672cd1042539 100644 --- a/drivers/serial/sh-sci.c +++ b/drivers/serial/sh-sci.c | |||
| @@ -367,7 +367,9 @@ static void sci_init_pins_scif(struct uart_port *port, unsigned int cflag) | |||
| 367 | } else { | 367 | } else { |
| 368 | #ifdef CONFIG_CPU_SUBTYPE_SH7343 | 368 | #ifdef CONFIG_CPU_SUBTYPE_SH7343 |
| 369 | /* Nothing */ | 369 | /* Nothing */ |
| 370 | #elif defined(CONFIG_CPU_SUBTYPE_SH7780) || defined(CONFIG_CPU_SUBTYPE_SH7785) | 370 | #elif defined(CONFIG_CPU_SUBTYPE_SH7780) || \ |
| 371 | defined(CONFIG_CPU_SUBTYPE_SH7785) || \ | ||
| 372 | defined(CONFIG_CPU_SUBTYPE_SHX3) | ||
| 371 | ctrl_outw(0x0080, SCSPTR0); /* Set RTS = 1 */ | 373 | ctrl_outw(0x0080, SCSPTR0); /* Set RTS = 1 */ |
| 372 | #else | 374 | #else |
| 373 | ctrl_outw(0x0080, SCSPTR2); /* Set RTS = 1 */ | 375 | ctrl_outw(0x0080, SCSPTR2); /* Set RTS = 1 */ |
diff --git a/drivers/serial/sh-sci.h b/drivers/serial/sh-sci.h index fb04fb5f9843..247fb66bf0f4 100644 --- a/drivers/serial/sh-sci.h +++ b/drivers/serial/sh-sci.h | |||
| @@ -53,7 +53,12 @@ | |||
| 53 | # define SCIF_ORER 0x0001 /* overrun error bit */ | 53 | # define SCIF_ORER 0x0001 /* overrun error bit */ |
| 54 | # define SCSCR_INIT(port) 0x3a /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */ | 54 | # define SCSCR_INIT(port) 0x3a /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */ |
| 55 | # define SCIF_ONLY | 55 | # define SCIF_ONLY |
| 56 | #elif defined(CONFIG_CPU_SUBTYPE_SH7750) || defined(CONFIG_CPU_SUBTYPE_SH7751) | 56 | #elif defined(CONFIG_CPU_SUBTYPE_SH7750) || \ |
| 57 | defined(CONFIG_CPU_SUBTYPE_SH7750R) || \ | ||
| 58 | defined(CONFIG_CPU_SUBTYPE_SH7750S) || \ | ||
| 59 | defined(CONFIG_CPU_SUBTYPE_SH7091) || \ | ||
| 60 | defined(CONFIG_CPU_SUBTYPE_SH7751) || \ | ||
| 61 | defined(CONFIG_CPU_SUBTYPE_SH7751R) | ||
| 57 | # define SCSPTR1 0xffe0001c /* 8 bit SCI */ | 62 | # define SCSPTR1 0xffe0001c /* 8 bit SCI */ |
| 58 | # define SCSPTR2 0xFFE80020 /* 16 bit SCIF */ | 63 | # define SCSPTR2 0xFFE80020 /* 16 bit SCIF */ |
| 59 | # define SCIF_ORER 0x0001 /* overrun error bit */ | 64 | # define SCIF_ORER 0x0001 /* overrun error bit */ |
| @@ -73,7 +78,7 @@ | |||
| 73 | # define SCPDR 0xA4050136 /* 16 bit SCIF */ | 78 | # define SCPDR 0xA4050136 /* 16 bit SCIF */ |
| 74 | # define SCSCR_INIT(port) 0x0030 /* TIE=0,RIE=0,TE=1,RE=1 */ | 79 | # define SCSCR_INIT(port) 0x0030 /* TIE=0,RIE=0,TE=1,RE=1 */ |
| 75 | # define SCIF_ONLY | 80 | # define SCIF_ONLY |
| 76 | #elif defined(CONFIG_CPU_SUBTYPE_SH7710) || defined(CONFIG_CPU_SUBTYPE_SH7712) | 81 | #elif defined(CONFIG_CPU_SUBTYPE_SH7710) || defined(CONFIG_CPU_SUBTYPE_SH7712) |
| 77 | # define SCSPTR0 0xA4400000 /* 16 bit SCIF */ | 82 | # define SCSPTR0 0xA4400000 /* 16 bit SCIF */ |
| 78 | # define SCI_NPORTS 2 | 83 | # define SCI_NPORTS 2 |
| 79 | # define SCIF_ORER 0x0001 /* overrun error bit */ | 84 | # define SCIF_ORER 0x0001 /* overrun error bit */ |
| @@ -168,6 +173,14 @@ | |||
| 168 | # define SCIF_ORER 0x0001 /* overrun error bit */ | 173 | # define SCIF_ORER 0x0001 /* overrun error bit */ |
| 169 | # define SCSCR_INIT(port) 0x38 /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */ | 174 | # define SCSCR_INIT(port) 0x38 /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */ |
| 170 | # define SCIF_ONLY | 175 | # define SCIF_ONLY |
| 176 | #elif defined(CONFIG_CPU_SUBTYPE_SHX3) | ||
| 177 | # define SCSPTR0 0xffc30020 /* 16 bit SCIF */ | ||
| 178 | # define SCSPTR1 0xffc40020 /* 16 bit SCIF */ | ||
| 179 | # define SCSPTR2 0xffc50020 /* 16 bit SCIF */ | ||
| 180 | # define SCSPTR3 0xffc60020 /* 16 bit SCIF */ | ||
| 181 | # define SCIF_ORER 0x0001 /* Overrun error bit */ | ||
| 182 | # define SCSCR_INIT(port) 0x38 /* TIE=0,RIE=0,TE=1,RE=1,REIE=1 */ | ||
| 183 | # define SCIF_ONLY | ||
| 171 | #else | 184 | #else |
| 172 | # error CPU subtype not defined | 185 | # error CPU subtype not defined |
| 173 | #endif | 186 | #endif |
| @@ -177,10 +190,15 @@ | |||
| 177 | #define SCI_CTRL_FLAGS_RIE 0x40 /* all */ | 190 | #define SCI_CTRL_FLAGS_RIE 0x40 /* all */ |
| 178 | #define SCI_CTRL_FLAGS_TE 0x20 /* all */ | 191 | #define SCI_CTRL_FLAGS_TE 0x20 /* all */ |
| 179 | #define SCI_CTRL_FLAGS_RE 0x10 /* all */ | 192 | #define SCI_CTRL_FLAGS_RE 0x10 /* all */ |
| 180 | #if defined(CONFIG_CPU_SUBTYPE_SH7750) || \ | 193 | #if defined(CONFIG_CPU_SUBTYPE_SH7750) || \ |
| 181 | defined(CONFIG_CPU_SUBTYPE_SH7751) || \ | 194 | defined(CONFIG_CPU_SUBTYPE_SH7091) || \ |
| 182 | defined(CONFIG_CPU_SUBTYPE_SH7780) || \ | 195 | defined(CONFIG_CPU_SUBTYPE_SH7750R) || \ |
| 183 | defined(CONFIG_CPU_SUBTYPE_SH7785) | 196 | defined(CONFIG_CPU_SUBTYPE_SH7750S) || \ |
| 197 | defined(CONFIG_CPU_SUBTYPE_SH7751) || \ | ||
| 198 | defined(CONFIG_CPU_SUBTYPE_SH7751R) || \ | ||
| 199 | defined(CONFIG_CPU_SUBTYPE_SH7780) || \ | ||
| 200 | defined(CONFIG_CPU_SUBTYPE_SH7785) || \ | ||
| 201 | defined(CONFIG_CPU_SUBTYPE_SHX3) | ||
| 184 | #define SCI_CTRL_FLAGS_REIE 0x08 /* 7750 SCIF */ | 202 | #define SCI_CTRL_FLAGS_REIE 0x08 /* 7750 SCIF */ |
| 185 | #else | 203 | #else |
| 186 | #define SCI_CTRL_FLAGS_REIE 0 | 204 | #define SCI_CTRL_FLAGS_REIE 0 |
| @@ -514,8 +532,12 @@ static inline void set_sh771x_scif_pfc(struct uart_port *port) | |||
| 514 | } | 532 | } |
| 515 | } | 533 | } |
| 516 | 534 | ||
| 517 | #elif defined(CONFIG_CPU_SUBTYPE_SH7750) || \ | 535 | #elif defined(CONFIG_CPU_SUBTYPE_SH7750) || \ |
| 518 | defined(CONFIG_CPU_SUBTYPE_SH7751) || \ | 536 | defined(CONFIG_CPU_SUBTYPE_SH7751) || \ |
| 537 | defined(CONFIG_CPU_SUBTYPE_SH7751R) || \ | ||
| 538 | defined(CONFIG_CPU_SUBTYPE_SH7750R) || \ | ||
| 539 | defined(CONFIG_CPU_SUBTYPE_SH7750S) || \ | ||
| 540 | defined(CONFIG_CPU_SUBTYPE_SH7091) || \ | ||
| 519 | defined(CONFIG_CPU_SUBTYPE_SH4_202) | 541 | defined(CONFIG_CPU_SUBTYPE_SH4_202) |
| 520 | static inline int sci_rxd_in(struct uart_port *port) | 542 | static inline int sci_rxd_in(struct uart_port *port) |
| 521 | { | 543 | { |
| @@ -653,6 +675,18 @@ static inline int sci_rxd_in(struct uart_port *port) | |||
| 653 | return ctrl_inw(SCSPTR2) & 0x0001 ? 1 : 0; /* SCIF */ | 675 | return ctrl_inw(SCSPTR2) & 0x0001 ? 1 : 0; /* SCIF */ |
| 654 | return 1; | 676 | return 1; |
| 655 | } | 677 | } |
| 678 | #elif defined(CONFIG_CPU_SUBTYPE_SHX3) | ||
| 679 | static inline int sci_rxd_in(struct uart_port *port) | ||
| 680 | { | ||
| 681 | if (port->mapbase == 0xffc30000) | ||
| 682 | return ctrl_inw(SCSPTR0) & 0x0001 ? 1 : 0; /* SCIF */ | ||
| 683 | if (port->mapbase == 0xffc40000) | ||
| 684 | return ctrl_inw(SCSPTR1) & 0x0001 ? 1 : 0; /* SCIF */ | ||
| 685 | if (port->mapbase == 0xffc50000) | ||
| 686 | return ctrl_inw(SCSPTR2) & 0x0001 ? 1 : 0; /* SCIF */ | ||
| 687 | if (port->mapbase == 0xffc60000) | ||
| 688 | return ctrl_inw(SCSPTR3) & 0x0001 ? 1 : 0; /* SCIF */ | ||
| 689 | } | ||
| 656 | #endif | 690 | #endif |
| 657 | 691 | ||
| 658 | /* | 692 | /* |
diff --git a/drivers/video/pvr2fb.c b/drivers/video/pvr2fb.c index df2909ae704c..2ba959a83eb0 100644 --- a/drivers/video/pvr2fb.c +++ b/drivers/video/pvr2fb.c | |||
| @@ -115,11 +115,11 @@ enum { VO_PAL, VO_NTSC, VO_VGA }; | |||
| 115 | enum { PAL_ARGB1555, PAL_RGB565, PAL_ARGB4444, PAL_ARGB8888 }; | 115 | enum { PAL_ARGB1555, PAL_RGB565, PAL_ARGB4444, PAL_ARGB8888 }; |
| 116 | 116 | ||
| 117 | struct pvr2_params { unsigned int val; char *name; }; | 117 | struct pvr2_params { unsigned int val; char *name; }; |
| 118 | static struct pvr2_params cables[] __initdata = { | 118 | static struct pvr2_params cables[] __devinitdata = { |
| 119 | { CT_VGA, "VGA" }, { CT_RGB, "RGB" }, { CT_COMPOSITE, "COMPOSITE" }, | 119 | { CT_VGA, "VGA" }, { CT_RGB, "RGB" }, { CT_COMPOSITE, "COMPOSITE" }, |
| 120 | }; | 120 | }; |
| 121 | 121 | ||
| 122 | static struct pvr2_params outputs[] __initdata = { | 122 | static struct pvr2_params outputs[] __devinitdata = { |
| 123 | { VO_PAL, "PAL" }, { VO_NTSC, "NTSC" }, { VO_VGA, "VGA" }, | 123 | { VO_PAL, "PAL" }, { VO_NTSC, "NTSC" }, { VO_VGA, "VGA" }, |
| 124 | }; | 124 | }; |
| 125 | 125 | ||
| @@ -147,16 +147,16 @@ static struct pvr2fb_par { | |||
| 147 | 147 | ||
| 148 | static struct fb_info *fb_info; | 148 | static struct fb_info *fb_info; |
| 149 | 149 | ||
| 150 | static struct fb_fix_screeninfo pvr2_fix __initdata = { | 150 | static struct fb_fix_screeninfo pvr2_fix __devinitdata = { |
| 151 | .id = "NEC PowerVR2", | 151 | .id = "NEC PowerVR2", |
| 152 | .type = FB_TYPE_PACKED_PIXELS, | 152 | .type = FB_TYPE_PACKED_PIXELS, |
| 153 | .visual = FB_VISUAL_TRUECOLOR, | 153 | .visual = FB_VISUAL_TRUECOLOR, |
| 154 | .ypanstep = 1, | 154 | .ypanstep = 1, |
| 155 | .ywrapstep = 1, | 155 | .ywrapstep = 1, |
| 156 | .accel = FB_ACCEL_NONE, | 156 | .accel = FB_ACCEL_NONE, |
| 157 | }; | 157 | }; |
| 158 | 158 | ||
| 159 | static struct fb_var_screeninfo pvr2_var __initdata = { | 159 | static struct fb_var_screeninfo pvr2_var __devinitdata = { |
| 160 | .xres = 640, | 160 | .xres = 640, |
| 161 | .yres = 480, | 161 | .yres = 480, |
| 162 | .xres_virtual = 640, | 162 | .xres_virtual = 640, |
| @@ -195,10 +195,6 @@ static unsigned int shdma = PVR2_CASCADE_CHAN; | |||
| 195 | static unsigned int pvr2dma = ONCHIP_NR_DMA_CHANNELS; | 195 | static unsigned int pvr2dma = ONCHIP_NR_DMA_CHANNELS; |
| 196 | #endif | 196 | #endif |
| 197 | 197 | ||
| 198 | /* Interface used by the world */ | ||
| 199 | |||
| 200 | int pvr2fb_setup(char*); | ||
| 201 | |||
| 202 | static int pvr2fb_setcolreg(unsigned int regno, unsigned int red, unsigned int green, unsigned int blue, | 198 | static int pvr2fb_setcolreg(unsigned int regno, unsigned int red, unsigned int green, unsigned int blue, |
| 203 | unsigned int transp, struct fb_info *info); | 199 | unsigned int transp, struct fb_info *info); |
| 204 | static int pvr2fb_blank(int blank, struct fb_info *info); | 200 | static int pvr2fb_blank(int blank, struct fb_info *info); |
| @@ -227,12 +223,12 @@ static struct fb_ops pvr2fb_ops = { | |||
| 227 | #ifdef CONFIG_SH_DMA | 223 | #ifdef CONFIG_SH_DMA |
| 228 | .fb_write = pvr2fb_write, | 224 | .fb_write = pvr2fb_write, |
| 229 | #endif | 225 | #endif |
| 230 | .fb_fillrect = cfb_fillrect, | 226 | .fb_fillrect = cfb_fillrect, |
| 231 | .fb_copyarea = cfb_copyarea, | 227 | .fb_copyarea = cfb_copyarea, |
| 232 | .fb_imageblit = cfb_imageblit, | 228 | .fb_imageblit = cfb_imageblit, |
| 233 | }; | 229 | }; |
| 234 | 230 | ||
| 235 | static struct fb_videomode pvr2_modedb[] __initdata = { | 231 | static struct fb_videomode pvr2_modedb[] __devinitdata = { |
| 236 | /* | 232 | /* |
| 237 | * Broadcast video modes (PAL and NTSC). I'm unfamiliar with | 233 | * Broadcast video modes (PAL and NTSC). I'm unfamiliar with |
| 238 | * PAL-M and PAL-N, but from what I've read both modes parallel PAL and | 234 | * PAL-M and PAL-N, but from what I've read both modes parallel PAL and |
| @@ -252,7 +248,7 @@ static struct fb_videomode pvr2_modedb[] __initdata = { | |||
| 252 | /* 640x480 @ 60hz (VGA) */ | 248 | /* 640x480 @ 60hz (VGA) */ |
| 253 | "vga_640x480", 60, 640, 480, VGA_CLK, 38, 33, 0, 18, 146, 26, | 249 | "vga_640x480", 60, 640, 480, VGA_CLK, 38, 33, 0, 18, 146, 26, |
| 254 | 0, FB_VMODE_YWRAP | 250 | 0, FB_VMODE_YWRAP |
| 255 | }, | 251 | }, |
| 256 | }; | 252 | }; |
| 257 | 253 | ||
| 258 | #define NUM_TOTAL_MODES ARRAY_SIZE(pvr2_modedb) | 254 | #define NUM_TOTAL_MODES ARRAY_SIZE(pvr2_modedb) |
| @@ -262,7 +258,7 @@ static struct fb_videomode pvr2_modedb[] __initdata = { | |||
| 262 | #define DEFMODE_VGA 2 | 258 | #define DEFMODE_VGA 2 |
| 263 | 259 | ||
| 264 | static int defmode = DEFMODE_NTSC; | 260 | static int defmode = DEFMODE_NTSC; |
| 265 | static char *mode_option __initdata = NULL; | 261 | static char *mode_option __devinitdata = NULL; |
| 266 | 262 | ||
| 267 | static inline void pvr2fb_set_pal_type(unsigned int type) | 263 | static inline void pvr2fb_set_pal_type(unsigned int type) |
| 268 | { | 264 | { |
| @@ -293,7 +289,7 @@ static void set_color_bitfields(struct fb_var_screeninfo *var) | |||
| 293 | { | 289 | { |
| 294 | switch (var->bits_per_pixel) { | 290 | switch (var->bits_per_pixel) { |
| 295 | case 16: /* RGB 565 */ | 291 | case 16: /* RGB 565 */ |
| 296 | pvr2fb_set_pal_type(PAL_RGB565); | 292 | pvr2fb_set_pal_type(PAL_RGB565); |
| 297 | var->red.offset = 11; var->red.length = 5; | 293 | var->red.offset = 11; var->red.length = 5; |
| 298 | var->green.offset = 5; var->green.length = 6; | 294 | var->green.offset = 5; var->green.length = 6; |
| 299 | var->blue.offset = 0; var->blue.length = 5; | 295 | var->blue.offset = 0; var->blue.length = 5; |
| @@ -306,7 +302,7 @@ static void set_color_bitfields(struct fb_var_screeninfo *var) | |||
| 306 | var->transp.offset = 0; var->transp.length = 0; | 302 | var->transp.offset = 0; var->transp.length = 0; |
| 307 | break; | 303 | break; |
| 308 | case 32: /* ARGB 8888 */ | 304 | case 32: /* ARGB 8888 */ |
| 309 | pvr2fb_set_pal_type(PAL_ARGB8888); | 305 | pvr2fb_set_pal_type(PAL_ARGB8888); |
| 310 | var->red.offset = 16; var->red.length = 8; | 306 | var->red.offset = 16; var->red.length = 8; |
| 311 | var->green.offset = 8; var->green.length = 8; | 307 | var->green.offset = 8; var->green.length = 8; |
| 312 | var->blue.offset = 0; var->blue.length = 8; | 308 | var->blue.offset = 0; var->blue.length = 8; |
| @@ -379,13 +375,13 @@ static int pvr2fb_set_par(struct fb_info *info) | |||
| 379 | var->vmode &= FB_VMODE_MASK; | 375 | var->vmode &= FB_VMODE_MASK; |
| 380 | if (var->vmode & FB_VMODE_INTERLACED && video_output != VO_VGA) | 376 | if (var->vmode & FB_VMODE_INTERLACED && video_output != VO_VGA) |
| 381 | par->is_interlaced = 1; | 377 | par->is_interlaced = 1; |
| 382 | /* | 378 | /* |
| 383 | * XXX: Need to be more creative with this (i.e. allow doublecan for | 379 | * XXX: Need to be more creative with this (i.e. allow doublecan for |
| 384 | * PAL/NTSC output). | 380 | * PAL/NTSC output). |
| 385 | */ | 381 | */ |
| 386 | if (var->vmode & FB_VMODE_DOUBLE && video_output == VO_VGA) | 382 | if (var->vmode & FB_VMODE_DOUBLE && video_output == VO_VGA) |
| 387 | par->is_doublescan = 1; | 383 | par->is_doublescan = 1; |
| 388 | 384 | ||
| 389 | par->hsync_total = var->left_margin + var->xres + var->right_margin + | 385 | par->hsync_total = var->left_margin + var->xres + var->right_margin + |
| 390 | var->hsync_len; | 386 | var->hsync_len; |
| 391 | par->vsync_total = var->upper_margin + var->yres + var->lower_margin + | 387 | par->vsync_total = var->upper_margin + var->yres + var->lower_margin + |
| @@ -408,7 +404,7 @@ static int pvr2fb_set_par(struct fb_info *info) | |||
| 408 | } else { | 404 | } else { |
| 409 | /* VGA mode */ | 405 | /* VGA mode */ |
| 410 | /* XXX: What else needs to be checked? */ | 406 | /* XXX: What else needs to be checked? */ |
| 411 | /* | 407 | /* |
| 412 | * XXX: We have a little freedom in VGA modes, what ranges | 408 | * XXX: We have a little freedom in VGA modes, what ranges |
| 413 | * should be here (i.e. hsync/vsync totals, etc.)? | 409 | * should be here (i.e. hsync/vsync totals, etc.)? |
| 414 | */ | 410 | */ |
| @@ -419,8 +415,8 @@ static int pvr2fb_set_par(struct fb_info *info) | |||
| 419 | /* Calculate the remainding offsets */ | 415 | /* Calculate the remainding offsets */ |
| 420 | par->diwstart_h = par->borderstart_h + var->left_margin; | 416 | par->diwstart_h = par->borderstart_h + var->left_margin; |
| 421 | par->diwstart_v = par->borderstart_v + var->upper_margin; | 417 | par->diwstart_v = par->borderstart_v + var->upper_margin; |
| 422 | par->borderstop_h = par->diwstart_h + var->xres + | 418 | par->borderstop_h = par->diwstart_h + var->xres + |
| 423 | var->right_margin; | 419 | var->right_margin; |
| 424 | par->borderstop_v = par->diwstart_v + var->yres + | 420 | par->borderstop_v = par->diwstart_v + var->yres + |
| 425 | var->lower_margin; | 421 | var->lower_margin; |
| 426 | 422 | ||
| @@ -465,12 +461,12 @@ static int pvr2fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) | |||
| 465 | set_color_bitfields(var); | 461 | set_color_bitfields(var); |
| 466 | 462 | ||
| 467 | if (var->vmode & FB_VMODE_YWRAP) { | 463 | if (var->vmode & FB_VMODE_YWRAP) { |
| 468 | if (var->xoffset || var->yoffset < 0 || | 464 | if (var->xoffset || var->yoffset < 0 || |
| 469 | var->yoffset >= var->yres_virtual) { | 465 | var->yoffset >= var->yres_virtual) { |
| 470 | var->xoffset = var->yoffset = 0; | 466 | var->xoffset = var->yoffset = 0; |
| 471 | } else { | 467 | } else { |
| 472 | if (var->xoffset > var->xres_virtual - var->xres || | 468 | if (var->xoffset > var->xres_virtual - var->xres || |
| 473 | var->yoffset > var->yres_virtual - var->yres || | 469 | var->yoffset > var->yres_virtual - var->yres || |
| 474 | var->xoffset < 0 || var->yoffset < 0) | 470 | var->xoffset < 0 || var->yoffset < 0) |
| 475 | var->xoffset = var->yoffset = 0; | 471 | var->xoffset = var->yoffset = 0; |
| 476 | } | 472 | } |
| @@ -478,7 +474,7 @@ static int pvr2fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) | |||
| 478 | var->xoffset = var->yoffset = 0; | 474 | var->xoffset = var->yoffset = 0; |
| 479 | } | 475 | } |
| 480 | 476 | ||
| 481 | /* | 477 | /* |
| 482 | * XXX: Need to be more creative with this (i.e. allow doublecan for | 478 | * XXX: Need to be more creative with this (i.e. allow doublecan for |
| 483 | * PAL/NTSC output). | 479 | * PAL/NTSC output). |
| 484 | */ | 480 | */ |
| @@ -507,7 +503,7 @@ static int pvr2fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) | |||
| 507 | var->vsync_len = par->borderstop_v + | 503 | var->vsync_len = par->borderstop_v + |
| 508 | (par->vsync_total - par->borderstop_v); | 504 | (par->vsync_total - par->borderstop_v); |
| 509 | } | 505 | } |
| 510 | 506 | ||
| 511 | hsync_total = var->left_margin + var->xres + var->right_margin + | 507 | hsync_total = var->left_margin + var->xres + var->right_margin + |
| 512 | var->hsync_len; | 508 | var->hsync_len; |
| 513 | vtotal = var->upper_margin + var->yres + var->lower_margin + | 509 | vtotal = var->upper_margin + var->yres + var->lower_margin + |
| @@ -531,7 +527,7 @@ static int pvr2fb_check_var(struct fb_var_screeninfo *var, struct fb_info *info) | |||
| 531 | } | 527 | } |
| 532 | } | 528 | } |
| 533 | } | 529 | } |
| 534 | 530 | ||
| 535 | /* Check memory sizes */ | 531 | /* Check memory sizes */ |
| 536 | line_length = get_line_length(var->xres_virtual, var->bits_per_pixel); | 532 | line_length = get_line_length(var->xres_virtual, var->bits_per_pixel); |
| 537 | if (line_length * var->yres_virtual > info->fix.smem_len) | 533 | if (line_length * var->yres_virtual > info->fix.smem_len) |
| @@ -552,7 +548,7 @@ static void pvr2_update_display(struct fb_info *info) | |||
| 552 | DISP_DIWADDRS); | 548 | DISP_DIWADDRS); |
| 553 | } | 549 | } |
| 554 | 550 | ||
| 555 | /* | 551 | /* |
| 556 | * Initialize the video mode. Currently, the 16bpp and 24bpp modes aren't | 552 | * Initialize the video mode. Currently, the 16bpp and 24bpp modes aren't |
| 557 | * very stable. It's probably due to the fact that a lot of the 2D video | 553 | * very stable. It's probably due to the fact that a lot of the 2D video |
| 558 | * registers are still undocumented. | 554 | * registers are still undocumented. |
| @@ -592,18 +588,18 @@ static void pvr2_init_display(struct fb_info *info) | |||
| 592 | /* display window start position */ | 588 | /* display window start position */ |
| 593 | fb_writel(par->diwstart_h, DISP_DIWHSTRT); | 589 | fb_writel(par->diwstart_h, DISP_DIWHSTRT); |
| 594 | fb_writel((par->diwstart_v << 16) | par->diwstart_v, DISP_DIWVSTRT); | 590 | fb_writel((par->diwstart_v << 16) | par->diwstart_v, DISP_DIWVSTRT); |
| 595 | 591 | ||
| 596 | /* misc. settings */ | 592 | /* misc. settings */ |
| 597 | fb_writel((0x16 << 16) | par->is_lowres, DISP_DIWCONF); | 593 | fb_writel((0x16 << 16) | par->is_lowres, DISP_DIWCONF); |
| 598 | 594 | ||
| 599 | /* clock doubler (for VGA), scan doubler, display enable */ | 595 | /* clock doubler (for VGA), scan doubler, display enable */ |
| 600 | fb_writel(((video_output == VO_VGA) << 23) | | 596 | fb_writel(((video_output == VO_VGA) << 23) | |
| 601 | (par->is_doublescan << 1) | 1, DISP_DIWMODE); | 597 | (par->is_doublescan << 1) | 1, DISP_DIWMODE); |
| 602 | 598 | ||
| 603 | /* bits per pixel */ | 599 | /* bits per pixel */ |
| 604 | fb_writel(fb_readl(DISP_DIWMODE) | (--bytesperpixel << 2), DISP_DIWMODE); | 600 | fb_writel(fb_readl(DISP_DIWMODE) | (--bytesperpixel << 2), DISP_DIWMODE); |
| 605 | 601 | ||
| 606 | /* video enable, color sync, interlace, | 602 | /* video enable, color sync, interlace, |
| 607 | * hsync and vsync polarity (currently unused) */ | 603 | * hsync and vsync polarity (currently unused) */ |
| 608 | fb_writel(0x100 | ((par->is_interlaced /*|4*/) << 4), DISP_SYNCCONF); | 604 | fb_writel(0x100 | ((par->is_interlaced /*|4*/) << 4), DISP_SYNCCONF); |
| 609 | } | 605 | } |
| @@ -657,7 +653,7 @@ static irqreturn_t pvr2fb_interrupt(int irq, void *dev_id) | |||
| 657 | static int pvr2_init_cable(void) | 653 | static int pvr2_init_cable(void) |
| 658 | { | 654 | { |
| 659 | if (cable_type < 0) { | 655 | if (cable_type < 0) { |
| 660 | fb_writel((fb_readl(PCTRA) & 0xfff0ffff) | 0x000a0000, | 656 | fb_writel((fb_readl(PCTRA) & 0xfff0ffff) | 0x000a0000, |
| 661 | PCTRA); | 657 | PCTRA); |
| 662 | cable_type = (fb_readw(PDTRA) >> 8) & 3; | 658 | cable_type = (fb_readw(PDTRA) >> 8) & 3; |
| 663 | } | 659 | } |
| @@ -687,7 +683,7 @@ static ssize_t pvr2fb_write(struct fb_info *info, const char *buf, | |||
| 687 | pages = kmalloc(nr_pages * sizeof(struct page *), GFP_KERNEL); | 683 | pages = kmalloc(nr_pages * sizeof(struct page *), GFP_KERNEL); |
| 688 | if (!pages) | 684 | if (!pages) |
| 689 | return -ENOMEM; | 685 | return -ENOMEM; |
| 690 | 686 | ||
| 691 | down_read(¤t->mm->mmap_sem); | 687 | down_read(¤t->mm->mmap_sem); |
| 692 | ret = get_user_pages(current, current->mm, (unsigned long)buf, | 688 | ret = get_user_pages(current, current->mm, (unsigned long)buf, |
| 693 | nr_pages, WRITE, 0, pages, NULL); | 689 | nr_pages, WRITE, 0, pages, NULL); |
| @@ -700,7 +696,7 @@ static ssize_t pvr2fb_write(struct fb_info *info, const char *buf, | |||
| 700 | } | 696 | } |
| 701 | 697 | ||
| 702 | dma_configure_channel(shdma, 0x12c1); | 698 | dma_configure_channel(shdma, 0x12c1); |
| 703 | 699 | ||
| 704 | dst = (unsigned long)fb_info->screen_base + *ppos; | 700 | dst = (unsigned long)fb_info->screen_base + *ppos; |
| 705 | start = (unsigned long)page_address(pages[0]); | 701 | start = (unsigned long)page_address(pages[0]); |
| 706 | end = (unsigned long)page_address(pages[nr_pages]); | 702 | end = (unsigned long)page_address(pages[nr_pages]); |
| @@ -744,7 +740,7 @@ out_unmap: | |||
| 744 | kfree(pages); | 740 | kfree(pages); |
| 745 | 741 | ||
| 746 | return ret; | 742 | return ret; |
| 747 | } | 743 | } |
| 748 | #endif /* CONFIG_SH_DMA */ | 744 | #endif /* CONFIG_SH_DMA */ |
| 749 | 745 | ||
| 750 | /** | 746 | /** |
| @@ -765,21 +761,21 @@ out_unmap: | |||
| 765 | * in for flexibility anyways. Who knows, maybe someone has tv-out on a | 761 | * in for flexibility anyways. Who knows, maybe someone has tv-out on a |
| 766 | * PCI-based version of these things ;-) | 762 | * PCI-based version of these things ;-) |
| 767 | */ | 763 | */ |
| 768 | static int __init pvr2fb_common_init(void) | 764 | static int __devinit pvr2fb_common_init(void) |
| 769 | { | 765 | { |
| 770 | struct pvr2fb_par *par = currentpar; | 766 | struct pvr2fb_par *par = currentpar; |
| 771 | unsigned long modememused, rev; | 767 | unsigned long modememused, rev; |
| 772 | 768 | ||
| 773 | fb_info->screen_base = ioremap_nocache(pvr2_fix.smem_start, | 769 | fb_info->screen_base = ioremap_nocache(pvr2_fix.smem_start, |
| 774 | pvr2_fix.smem_len); | 770 | pvr2_fix.smem_len); |
| 775 | 771 | ||
| 776 | if (!fb_info->screen_base) { | 772 | if (!fb_info->screen_base) { |
| 777 | printk(KERN_ERR "pvr2fb: Failed to remap smem space\n"); | 773 | printk(KERN_ERR "pvr2fb: Failed to remap smem space\n"); |
| 778 | goto out_err; | 774 | goto out_err; |
| 779 | } | 775 | } |
| 780 | 776 | ||
| 781 | par->mmio_base = (unsigned long)ioremap_nocache(pvr2_fix.mmio_start, | 777 | par->mmio_base = (unsigned long)ioremap_nocache(pvr2_fix.mmio_start, |
| 782 | pvr2_fix.mmio_len); | 778 | pvr2_fix.mmio_len); |
| 783 | if (!par->mmio_base) { | 779 | if (!par->mmio_base) { |
| 784 | printk(KERN_ERR "pvr2fb: Failed to remap mmio space\n"); | 780 | printk(KERN_ERR "pvr2fb: Failed to remap mmio space\n"); |
| 785 | goto out_err; | 781 | goto out_err; |
| @@ -820,7 +816,7 @@ static int __init pvr2fb_common_init(void) | |||
| 820 | printk("fb%d: %s (rev %ld.%ld) frame buffer device, using %ldk/%ldk of video memory\n", | 816 | printk("fb%d: %s (rev %ld.%ld) frame buffer device, using %ldk/%ldk of video memory\n", |
| 821 | fb_info->node, fb_info->fix.id, (rev >> 4) & 0x0f, rev & 0x0f, | 817 | fb_info->node, fb_info->fix.id, (rev >> 4) & 0x0f, rev & 0x0f, |
| 822 | modememused >> 10, (unsigned long)(fb_info->fix.smem_len >> 10)); | 818 | modememused >> 10, (unsigned long)(fb_info->fix.smem_len >> 10)); |
| 823 | printk("fb%d: Mode %dx%d-%d pitch = %ld cable: %s video output: %s\n", | 819 | printk("fb%d: Mode %dx%d-%d pitch = %ld cable: %s video output: %s\n", |
| 824 | fb_info->node, fb_info->var.xres, fb_info->var.yres, | 820 | fb_info->node, fb_info->var.xres, fb_info->var.yres, |
| 825 | fb_info->var.bits_per_pixel, | 821 | fb_info->var.bits_per_pixel, |
| 826 | get_line_length(fb_info->var.xres, fb_info->var.bits_per_pixel), | 822 | get_line_length(fb_info->var.xres, fb_info->var.bits_per_pixel), |
| @@ -878,8 +874,8 @@ static int __init pvr2fb_dc_init(void) | |||
| 878 | video_output = VO_NTSC; | 874 | video_output = VO_NTSC; |
| 879 | } | 875 | } |
| 880 | } | 876 | } |
| 881 | 877 | ||
| 882 | /* | 878 | /* |
| 883 | * Nothing exciting about the DC PVR2 .. only a measly 8MiB. | 879 | * Nothing exciting about the DC PVR2 .. only a measly 8MiB. |
| 884 | */ | 880 | */ |
| 885 | pvr2_fix.smem_start = 0xa5000000; /* RAM starts here */ | 881 | pvr2_fix.smem_start = 0xa5000000; /* RAM starts here */ |
| @@ -903,7 +899,7 @@ static int __init pvr2fb_dc_init(void) | |||
| 903 | return pvr2fb_common_init(); | 899 | return pvr2fb_common_init(); |
| 904 | } | 900 | } |
| 905 | 901 | ||
| 906 | static void pvr2fb_dc_exit(void) | 902 | static void __exit pvr2fb_dc_exit(void) |
| 907 | { | 903 | { |
| 908 | if (fb_info->screen_base) { | 904 | if (fb_info->screen_base) { |
| 909 | iounmap(fb_info->screen_base); | 905 | iounmap(fb_info->screen_base); |
| @@ -987,13 +983,13 @@ static int __init pvr2fb_pci_init(void) | |||
| 987 | return pci_register_driver(&pvr2fb_pci_driver); | 983 | return pci_register_driver(&pvr2fb_pci_driver); |
| 988 | } | 984 | } |
| 989 | 985 | ||
| 990 | static void pvr2fb_pci_exit(void) | 986 | static void __exit pvr2fb_pci_exit(void) |
| 991 | { | 987 | { |
| 992 | pci_unregister_driver(&pvr2fb_pci_driver); | 988 | pci_unregister_driver(&pvr2fb_pci_driver); |
| 993 | } | 989 | } |
| 994 | #endif /* CONFIG_PCI */ | 990 | #endif /* CONFIG_PCI */ |
| 995 | 991 | ||
| 996 | static int __init pvr2_get_param(const struct pvr2_params *p, const char *s, | 992 | static int __devinit pvr2_get_param(const struct pvr2_params *p, const char *s, |
| 997 | int val, int size) | 993 | int val, int size) |
| 998 | { | 994 | { |
| 999 | int i; | 995 | int i; |
| @@ -1021,7 +1017,7 @@ static int __init pvr2_get_param(const struct pvr2_params *p, const char *s, | |||
| 1021 | */ | 1017 | */ |
| 1022 | 1018 | ||
| 1023 | #ifndef MODULE | 1019 | #ifndef MODULE |
| 1024 | int __init pvr2fb_setup(char *options) | 1020 | static int __init pvr2fb_setup(char *options) |
| 1025 | { | 1021 | { |
| 1026 | char *this_opt; | 1022 | char *this_opt; |
| 1027 | char cable_arg[80]; | 1023 | char cable_arg[80]; |
| @@ -1061,7 +1057,7 @@ static struct pvr2_board { | |||
| 1061 | int (*init)(void); | 1057 | int (*init)(void); |
| 1062 | void (*exit)(void); | 1058 | void (*exit)(void); |
| 1063 | char name[16]; | 1059 | char name[16]; |
| 1064 | } board_list[] = { | 1060 | } board_driver[] = { |
| 1065 | #ifdef CONFIG_SH_DREAMCAST | 1061 | #ifdef CONFIG_SH_DREAMCAST |
| 1066 | { pvr2fb_dc_init, pvr2fb_dc_exit, "Sega DC PVR2" }, | 1062 | { pvr2fb_dc_init, pvr2fb_dc_exit, "Sega DC PVR2" }, |
| 1067 | #endif | 1063 | #endif |
| @@ -1071,7 +1067,7 @@ static struct pvr2_board { | |||
| 1071 | { 0, }, | 1067 | { 0, }, |
| 1072 | }; | 1068 | }; |
| 1073 | 1069 | ||
| 1074 | int __init pvr2fb_init(void) | 1070 | static int __init pvr2fb_init(void) |
| 1075 | { | 1071 | { |
| 1076 | int i, ret = -ENODEV; | 1072 | int i, ret = -ENODEV; |
| 1077 | int size; | 1073 | int size; |
| @@ -1095,8 +1091,8 @@ int __init pvr2fb_init(void) | |||
| 1095 | 1091 | ||
| 1096 | currentpar = (struct pvr2fb_par *)(fb_info + 1); | 1092 | currentpar = (struct pvr2fb_par *)(fb_info + 1); |
| 1097 | 1093 | ||
| 1098 | for (i = 0; i < ARRAY_SIZE(board_list); i++) { | 1094 | for (i = 0; i < ARRAY_SIZE(board_driver); i++) { |
| 1099 | struct pvr2_board *pvr_board = board_list + i; | 1095 | struct pvr2_board *pvr_board = board_driver + i; |
| 1100 | 1096 | ||
| 1101 | if (!pvr_board->init) | 1097 | if (!pvr_board->init) |
| 1102 | continue; | 1098 | continue; |
| @@ -1118,13 +1114,13 @@ static void __exit pvr2fb_exit(void) | |||
| 1118 | { | 1114 | { |
| 1119 | int i; | 1115 | int i; |
| 1120 | 1116 | ||
| 1121 | for (i = 0; i < ARRAY_SIZE(board_list); i++) { | 1117 | for (i = 0; i < ARRAY_SIZE(board_driver); i++) { |
| 1122 | struct pvr2_board *pvr_board = board_list + i; | 1118 | struct pvr2_board *pvr_board = board_driver + i; |
| 1123 | 1119 | ||
| 1124 | if (pvr_board->exit) | 1120 | if (pvr_board->exit) |
| 1125 | pvr_board->exit(); | 1121 | pvr_board->exit(); |
| 1126 | } | 1122 | } |
| 1127 | 1123 | ||
| 1128 | #ifdef CONFIG_SH_STORE_QUEUES | 1124 | #ifdef CONFIG_SH_STORE_QUEUES |
| 1129 | sq_unmap(pvr2fb_map); | 1125 | sq_unmap(pvr2fb_map); |
| 1130 | #endif | 1126 | #endif |
| @@ -1139,4 +1135,3 @@ module_exit(pvr2fb_exit); | |||
| 1139 | MODULE_AUTHOR("Paul Mundt <lethal@linux-sh.org>, M. R. Brown <mrbrown@0xd6.org>"); | 1135 | MODULE_AUTHOR("Paul Mundt <lethal@linux-sh.org>, M. R. Brown <mrbrown@0xd6.org>"); |
| 1140 | MODULE_DESCRIPTION("Framebuffer driver for NEC PowerVR 2 based graphics boards"); | 1136 | MODULE_DESCRIPTION("Framebuffer driver for NEC PowerVR 2 based graphics boards"); |
| 1141 | MODULE_LICENSE("GPL"); | 1137 | MODULE_LICENSE("GPL"); |
| 1142 | |||
diff --git a/fs/Kconfig b/fs/Kconfig index 94b9d861bf9b..ee11f8d94085 100644 --- a/fs/Kconfig +++ b/fs/Kconfig | |||
| @@ -991,7 +991,7 @@ config TMPFS_POSIX_ACL | |||
| 991 | 991 | ||
| 992 | config HUGETLBFS | 992 | config HUGETLBFS |
| 993 | bool "HugeTLB file system support" | 993 | bool "HugeTLB file system support" |
| 994 | depends on X86 || IA64 || PPC64 || SPARC64 || SUPERH || BROKEN | 994 | depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || BROKEN |
| 995 | help | 995 | help |
| 996 | hugetlbfs is a filesystem backing for HugeTLB pages, based on | 996 | hugetlbfs is a filesystem backing for HugeTLB pages, based on |
| 997 | ramfs. For architectures that support it, say Y here and read | 997 | ramfs. For architectures that support it, say Y here and read |
diff --git a/include/asm-sh/bugs.h b/include/asm-sh/bugs.h index 5a117ec43c77..aeee8da9c54f 100644 --- a/include/asm-sh/bugs.h +++ b/include/asm-sh/bugs.h | |||
| @@ -22,7 +22,7 @@ static void __init check_bugs(void) | |||
| 22 | current_cpu_data.loops_per_jiffy = loops_per_jiffy; | 22 | current_cpu_data.loops_per_jiffy = loops_per_jiffy; |
| 23 | 23 | ||
| 24 | switch (current_cpu_data.type) { | 24 | switch (current_cpu_data.type) { |
| 25 | case CPU_SH7604 ... CPU_SH7619: | 25 | case CPU_SH7619: |
| 26 | *p++ = '2'; | 26 | *p++ = '2'; |
| 27 | break; | 27 | break; |
| 28 | case CPU_SH7206: | 28 | case CPU_SH7206: |
| @@ -35,7 +35,7 @@ static void __init check_bugs(void) | |||
| 35 | case CPU_SH7750 ... CPU_SH4_501: | 35 | case CPU_SH7750 ... CPU_SH4_501: |
| 36 | *p++ = '4'; | 36 | *p++ = '4'; |
| 37 | break; | 37 | break; |
| 38 | case CPU_SH7770 ... CPU_SH7785: | 38 | case CPU_SH7770 ... CPU_SHX3: |
| 39 | *p++ = '4'; | 39 | *p++ = '4'; |
| 40 | *p++ = 'a'; | 40 | *p++ = 'a'; |
| 41 | break; | 41 | break; |
diff --git a/include/asm-sh/cache.h b/include/asm-sh/cache.h index 9a3cb6ba9d15..7a18649d1ccb 100644 --- a/include/asm-sh/cache.h +++ b/include/asm-sh/cache.h | |||
| @@ -9,6 +9,7 @@ | |||
| 9 | #define __ASM_SH_CACHE_H | 9 | #define __ASM_SH_CACHE_H |
| 10 | #ifdef __KERNEL__ | 10 | #ifdef __KERNEL__ |
| 11 | 11 | ||
| 12 | #include <linux/init.h> | ||
| 12 | #include <asm/cpu/cache.h> | 13 | #include <asm/cpu/cache.h> |
| 13 | 14 | ||
| 14 | #define SH_CACHE_VALID 1 | 15 | #define SH_CACHE_VALID 1 |
| @@ -48,6 +49,9 @@ struct cache_info { | |||
| 48 | 49 | ||
| 49 | unsigned long flags; | 50 | unsigned long flags; |
| 50 | }; | 51 | }; |
| 52 | |||
| 53 | int __init detect_cpu_and_cache_system(void); | ||
| 54 | |||
| 51 | #endif /* __ASSEMBLY__ */ | 55 | #endif /* __ASSEMBLY__ */ |
| 52 | #endif /* __KERNEL__ */ | 56 | #endif /* __KERNEL__ */ |
| 53 | #endif /* __ASM_SH_CACHE_H */ | 57 | #endif /* __ASM_SH_CACHE_H */ |
diff --git a/include/asm-sh/cpu-sh2/cache.h b/include/asm-sh/cpu-sh2/cache.h index 20b9796842dc..f02ba7a672b2 100644 --- a/include/asm-sh/cpu-sh2/cache.h +++ b/include/asm-sh/cpu-sh2/cache.h | |||
| @@ -12,23 +12,7 @@ | |||
| 12 | 12 | ||
| 13 | #define L1_CACHE_SHIFT 4 | 13 | #define L1_CACHE_SHIFT 4 |
| 14 | 14 | ||
| 15 | #if defined(CONFIG_CPU_SUBTYPE_SH7604) | 15 | #if defined(CONFIG_CPU_SUBTYPE_SH7619) |
| 16 | #define CCR 0xfffffe92 /* Address of Cache Control Register */ | ||
| 17 | |||
| 18 | #define CCR_CACHE_CE 0x01 /* Cache enable */ | ||
| 19 | #define CCR_CACHE_ID 0x02 /* Instruction Replacement disable */ | ||
| 20 | #define CCR_CACHE_OD 0x04 /* Data Replacement disable */ | ||
| 21 | #define CCR_CACHE_TW 0x08 /* Two-way mode */ | ||
| 22 | #define CCR_CACHE_CP 0x10 /* Cache purge */ | ||
| 23 | |||
| 24 | #define CACHE_OC_ADDRESS_ARRAY 0x60000000 | ||
| 25 | |||
| 26 | #define CCR_CACHE_ENABLE CCR_CACHE_CE | ||
| 27 | #define CCR_CACHE_INVALIDATE CCR_CACHE_CP | ||
| 28 | #define CCR_CACHE_ORA CCR_CACHE_TW | ||
| 29 | #define CCR_CACHE_WT 0x00 /* SH-2 is _always_ write-through */ | ||
| 30 | |||
| 31 | #elif defined(CONFIG_CPU_SUBTYPE_SH7619) | ||
| 32 | #define CCR1 0xffffffec | 16 | #define CCR1 0xffffffec |
| 33 | #define CCR CCR1 | 17 | #define CCR CCR1 |
| 34 | 18 | ||
| @@ -49,5 +33,5 @@ | |||
| 49 | #define CCR_CACHE_ENABLE CCR_CACHE_CE | 33 | #define CCR_CACHE_ENABLE CCR_CACHE_CE |
| 50 | #define CCR_CACHE_INVALIDATE CCR_CACHE_CF | 34 | #define CCR_CACHE_INVALIDATE CCR_CACHE_CF |
| 51 | #endif | 35 | #endif |
| 52 | #endif /* __ASM_CPU_SH2_CACHE_H */ | ||
| 53 | 36 | ||
| 37 | #endif /* __ASM_CPU_SH2_CACHE_H */ | ||
diff --git a/include/asm-sh/cpu-sh3/timer.h b/include/asm-sh/cpu-sh3/timer.h index b2394cf76f49..4928b08f9d19 100644 --- a/include/asm-sh/cpu-sh3/timer.h +++ b/include/asm-sh/cpu-sh3/timer.h | |||
| @@ -29,7 +29,7 @@ | |||
| 29 | #endif | 29 | #endif |
| 30 | 30 | ||
| 31 | #if defined(CONFIG_CPU_SUBTYPE_SH7300) || defined(CONFIG_CPU_SUBTYPE_SH7710) | 31 | #if defined(CONFIG_CPU_SUBTYPE_SH7300) || defined(CONFIG_CPU_SUBTYPE_SH7710) |
| 32 | #define TMU_TSTR 0xa412fe92 /* Byte access */ | 32 | #define TMU_012_TSTR 0xa412fe92 /* Byte access */ |
| 33 | 33 | ||
| 34 | #define TMU0_TCOR 0xa412fe94 /* Long access */ | 34 | #define TMU0_TCOR 0xa412fe94 /* Long access */ |
| 35 | #define TMU0_TCNT 0xa412fe98 /* Long access */ | 35 | #define TMU0_TCNT 0xa412fe98 /* Long access */ |
| @@ -44,7 +44,7 @@ | |||
| 44 | #define TMU2_TCR 0xa412feb4 /* Word access */ | 44 | #define TMU2_TCR 0xa412feb4 /* Word access */ |
| 45 | 45 | ||
| 46 | #else | 46 | #else |
| 47 | #define TMU_TSTR 0xfffffe92 /* Byte access */ | 47 | #define TMU_012_TSTR 0xfffffe92 /* Byte access */ |
| 48 | 48 | ||
| 49 | #define TMU0_TCOR 0xfffffe94 /* Long access */ | 49 | #define TMU0_TCOR 0xfffffe94 /* Long access */ |
| 50 | #define TMU0_TCNT 0xfffffe98 /* Long access */ | 50 | #define TMU0_TCNT 0xfffffe98 /* Long access */ |
diff --git a/include/asm-sh/cpu-sh4/freq.h b/include/asm-sh/cpu-sh4/freq.h index 39f41fcd509d..026025b51cea 100644 --- a/include/asm-sh/cpu-sh4/freq.h +++ b/include/asm-sh/cpu-sh4/freq.h | |||
| @@ -22,6 +22,8 @@ | |||
| 22 | #define FRQCR0 0xffc80000 | 22 | #define FRQCR0 0xffc80000 |
| 23 | #define FRQCR1 0xffc80004 | 23 | #define FRQCR1 0xffc80004 |
| 24 | #define FRQMR1 0xffc80014 | 24 | #define FRQMR1 0xffc80014 |
| 25 | #elif defined(CONFIG_CPU_SUBTYPE_SHX3) | ||
| 26 | #define FRQCR 0xffc00014 | ||
| 25 | #else | 27 | #else |
| 26 | #define FRQCR 0xffc00000 | 28 | #define FRQCR 0xffc00000 |
| 27 | #define FRQCR_PSTBY 0x0200 | 29 | #define FRQCR_PSTBY 0x0200 |
diff --git a/include/asm-sh/cpu-sh4/timer.h b/include/asm-sh/cpu-sh4/timer.h index 8a4af126c890..d1e796b96888 100644 --- a/include/asm-sh/cpu-sh4/timer.h +++ b/include/asm-sh/cpu-sh4/timer.h | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * include/asm-sh/cpu-sh4/timer.h | 2 | * include/asm-sh/cpu-sh4/timer.h |
| 3 | * | 3 | * |
| 4 | * Copyright (C) 2004 Lineo Solutions, Inc. | 4 | * Copyright (C) 2004 Lineo Solutions, Inc. |
| 5 | * | 5 | * |
| 6 | * This file is subject to the terms and conditions of the GNU General Public | 6 | * This file is subject to the terms and conditions of the GNU General Public |
| 7 | * License. See the file "COPYING" in the main directory of this archive | 7 | * License. See the file "COPYING" in the main directory of this archive |
| @@ -16,36 +16,45 @@ | |||
| 16 | * SH7750S/SH7750R | 16 | * SH7750S/SH7750R |
| 17 | * SH7751/SH7751R | 17 | * SH7751/SH7751R |
| 18 | * SH7760 | 18 | * SH7760 |
| 19 | * SH-X3 | ||
| 19 | * --------------------------------------------------------------------------- | 20 | * --------------------------------------------------------------------------- |
| 20 | */ | 21 | */ |
| 21 | 22 | #ifdef CONFIG_CPU_SUBTYPE_SHX3 | |
| 22 | #if !defined(CONFIG_CPU_SUBTYPE_SH7760) | 23 | #define TMU_012_BASE 0xffc10000 |
| 23 | #define TMU_TOCR 0xffd80000 /* Byte access */ | 24 | #define TMU_345_BASE 0xffc20000 |
| 25 | #else | ||
| 26 | #define TMU_012_BASE 0xffd80000 | ||
| 27 | #define TMU_345_BASE 0xfe100000 | ||
| 24 | #endif | 28 | #endif |
| 25 | #define TMU_TSTR 0xffd80004 /* Byte access */ | ||
| 26 | 29 | ||
| 27 | #define TMU0_TCOR 0xffd80008 /* Long access */ | 30 | #define TMU_TOCR TMU_012_BASE /* Not supported on all CPUs */ |
| 28 | #define TMU0_TCNT 0xffd8000c /* Long access */ | ||
| 29 | #define TMU0_TCR 0xffd80010 /* Word access */ | ||
| 30 | 31 | ||
| 31 | #define TMU1_TCOR 0xffd80014 /* Long access */ | 32 | #define TMU_012_TSTR (TMU_012_BASE + 0x04) |
| 32 | #define TMU1_TCNT 0xffd80018 /* Long access */ | 33 | #define TMU_345_TSTR (TMU_345_BASE + 0x04) |
| 33 | #define TMU1_TCR 0xffd8001c /* Word access */ | ||
| 34 | 34 | ||
| 35 | #define TMU2_TCOR 0xffd80020 /* Long access */ | 35 | #define TMU0_TCOR (TMU_012_BASE + 0x08) |
| 36 | #define TMU2_TCNT 0xffd80024 /* Long access */ | 36 | #define TMU0_TCNT (TMU_012_BASE + 0x0c) |
| 37 | #define TMU2_TCR 0xffd80028 /* Word access */ | 37 | #define TMU0_TCR (TMU_012_BASE + 0x10) |
| 38 | #define TMU2_TCPR 0xffd8002c /* Long access */ | ||
| 39 | 38 | ||
| 40 | #if !defined(CONFIG_CPU_SUBTYPE_SH7760) | 39 | #define TMU1_TCOR (TMU_012_BASE + 0x14) |
| 41 | #define TMU3_TCOR 0xfe100008 /* Long access */ | 40 | #define TMU1_TCNT (TMU_012_BASE + 0x18) |
| 42 | #define TMU3_TCNT 0xfe10000c /* Long access */ | 41 | #define TMU1_TCR (TMU_012_BASE + 0x1c) |
| 43 | #define TMU3_TCR 0xfe100010 /* Word access */ | ||
| 44 | 42 | ||
| 45 | #define TMU4_TCOR 0xfe100014 /* Long access */ | 43 | #define TMU2_TCOR (TMU_012_BASE + 0x20) |
| 46 | #define TMU4_TCNT 0xfe100018 /* Long access */ | 44 | #define TMU2_TCNT (TMU_012_BASE + 0x24) |
| 47 | #define TMU4_TCR 0xfe10001c /* Word access */ | 45 | #define TMU2_TCR (TMU_012_BASE + 0x28) |
| 48 | #endif | 46 | #define TMU2_TCPR (TMU_012_BASE + 0x2c) |
| 49 | 47 | ||
| 50 | #endif /* __ASM_CPU_SH4_TIMER_H */ | 48 | #define TMU3_TCOR (TMU_345_BASE + 0x08) |
| 49 | #define TMU3_TCNT (TMU_345_BASE + 0x0c) | ||
| 50 | #define TMU3_TCR (TMU_345_BASE + 0x10) | ||
| 51 | 51 | ||
| 52 | #define TMU4_TCOR (TMU_345_BASE + 0x14) | ||
| 53 | #define TMU4_TCNT (TMU_345_BASE + 0x18) | ||
| 54 | #define TMU4_TCR (TMU_345_BASE + 0x1c) | ||
| 55 | |||
| 56 | #define TMU5_TCOR (TMU_345_BASE + 0x20) | ||
| 57 | #define TMU5_TCNT (TMU_345_BASE + 0x24) | ||
| 58 | #define TMU5_TCR (TMU_345_BASE + 0x28) | ||
| 59 | |||
| 60 | #endif /* __ASM_CPU_SH4_TIMER_H */ | ||
diff --git a/include/asm-sh/futex-irq.h b/include/asm-sh/futex-irq.h new file mode 100644 index 000000000000..a9f16a7f9aea --- /dev/null +++ b/include/asm-sh/futex-irq.h | |||
| @@ -0,0 +1,111 @@ | |||
| 1 | #ifndef __ASM_SH_FUTEX_IRQ_H | ||
| 2 | #define __ASM_SH_FUTEX_IRQ_H | ||
| 3 | |||
| 4 | #include <asm/system.h> | ||
| 5 | |||
| 6 | static inline int atomic_futex_op_xchg_set(int oparg, int __user *uaddr, | ||
| 7 | int *oldval) | ||
| 8 | { | ||
| 9 | unsigned long flags; | ||
| 10 | int ret; | ||
| 11 | |||
| 12 | local_irq_save(flags); | ||
| 13 | |||
| 14 | ret = get_user(*oldval, uaddr); | ||
| 15 | if (!ret) | ||
| 16 | ret = put_user(oparg, uaddr); | ||
| 17 | |||
| 18 | local_irq_restore(flags); | ||
| 19 | |||
| 20 | return ret; | ||
| 21 | } | ||
| 22 | |||
| 23 | static inline int atomic_futex_op_xchg_add(int oparg, int __user *uaddr, | ||
| 24 | int *oldval) | ||
| 25 | { | ||
| 26 | unsigned long flags; | ||
| 27 | int ret; | ||
| 28 | |||
| 29 | local_irq_save(flags); | ||
| 30 | |||
| 31 | ret = get_user(*oldval, uaddr); | ||
| 32 | if (!ret) | ||
| 33 | ret = put_user(*oldval + oparg, uaddr); | ||
| 34 | |||
| 35 | local_irq_restore(flags); | ||
| 36 | |||
| 37 | return ret; | ||
| 38 | } | ||
| 39 | |||
| 40 | static inline int atomic_futex_op_xchg_or(int oparg, int __user *uaddr, | ||
| 41 | int *oldval) | ||
| 42 | { | ||
| 43 | unsigned long flags; | ||
| 44 | int ret; | ||
| 45 | |||
| 46 | local_irq_save(flags); | ||
| 47 | |||
| 48 | ret = get_user(*oldval, uaddr); | ||
| 49 | if (!ret) | ||
| 50 | ret = put_user(*oldval | oparg, uaddr); | ||
| 51 | |||
| 52 | local_irq_restore(flags); | ||
| 53 | |||
| 54 | return ret; | ||
| 55 | } | ||
| 56 | |||
| 57 | static inline int atomic_futex_op_xchg_and(int oparg, int __user *uaddr, | ||
| 58 | int *oldval) | ||
| 59 | { | ||
| 60 | unsigned long flags; | ||
| 61 | int ret; | ||
| 62 | |||
| 63 | local_irq_save(flags); | ||
| 64 | |||
| 65 | ret = get_user(*oldval, uaddr); | ||
| 66 | if (!ret) | ||
| 67 | ret = put_user(*oldval & oparg, uaddr); | ||
| 68 | |||
| 69 | local_irq_restore(flags); | ||
| 70 | |||
| 71 | return ret; | ||
| 72 | } | ||
| 73 | |||
| 74 | static inline int atomic_futex_op_xchg_xor(int oparg, int __user *uaddr, | ||
| 75 | int *oldval) | ||
| 76 | { | ||
| 77 | unsigned long flags; | ||
| 78 | int ret; | ||
| 79 | |||
| 80 | local_irq_save(flags); | ||
| 81 | |||
| 82 | ret = get_user(*oldval, uaddr); | ||
| 83 | if (!ret) | ||
| 84 | ret = put_user(*oldval ^ oparg, uaddr); | ||
| 85 | |||
| 86 | local_irq_restore(flags); | ||
| 87 | |||
| 88 | return ret; | ||
| 89 | } | ||
| 90 | |||
| 91 | static inline int atomic_futex_op_cmpxchg_inatomic(int __user *uaddr, | ||
| 92 | int oldval, int newval) | ||
| 93 | { | ||
| 94 | unsigned long flags; | ||
| 95 | int ret, prev = 0; | ||
| 96 | |||
| 97 | local_irq_save(flags); | ||
| 98 | |||
| 99 | ret = get_user(prev, uaddr); | ||
| 100 | if (!ret && oldval == prev) | ||
| 101 | ret = put_user(newval, uaddr); | ||
| 102 | |||
| 103 | local_irq_restore(flags); | ||
| 104 | |||
| 105 | if (ret) | ||
| 106 | return ret; | ||
| 107 | |||
| 108 | return prev; | ||
| 109 | } | ||
| 110 | |||
| 111 | #endif /* __ASM_SH_FUTEX_IRQ_H */ | ||
diff --git a/include/asm-sh/futex.h b/include/asm-sh/futex.h index 6a332a9f099c..74ed3681d33c 100644 --- a/include/asm-sh/futex.h +++ b/include/asm-sh/futex.h | |||
| @@ -1,6 +1,77 @@ | |||
| 1 | #ifndef _ASM_FUTEX_H | 1 | #ifndef __ASM_SH_FUTEX_H |
| 2 | #define _ASM_FUTEX_H | 2 | #define __ASM_SH_FUTEX_H |
| 3 | 3 | ||
| 4 | #include <asm-generic/futex.h> | 4 | #ifdef __KERNEL__ |
| 5 | 5 | ||
| 6 | #endif | 6 | #include <linux/futex.h> |
| 7 | #include <asm/errno.h> | ||
| 8 | #include <asm/uaccess.h> | ||
| 9 | |||
| 10 | /* XXX: UP variants, fix for SH-4A and SMP.. */ | ||
| 11 | #include <asm/futex-irq.h> | ||
| 12 | |||
| 13 | static inline int futex_atomic_op_inuser(int encoded_op, int __user *uaddr) | ||
| 14 | { | ||
| 15 | int op = (encoded_op >> 28) & 7; | ||
| 16 | int cmp = (encoded_op >> 24) & 15; | ||
| 17 | int oparg = (encoded_op << 8) >> 20; | ||
| 18 | int cmparg = (encoded_op << 20) >> 20; | ||
| 19 | int oldval = 0, ret; | ||
| 20 | |||
| 21 | if (encoded_op & (FUTEX_OP_OPARG_SHIFT << 28)) | ||
| 22 | oparg = 1 << oparg; | ||
| 23 | |||
| 24 | if (!access_ok(VERIFY_WRITE, uaddr, sizeof(int))) | ||
| 25 | return -EFAULT; | ||
| 26 | |||
| 27 | pagefault_disable(); | ||
| 28 | |||
| 29 | switch (op) { | ||
| 30 | case FUTEX_OP_SET: | ||
| 31 | ret = atomic_futex_op_xchg_set(oparg, uaddr, &oldval); | ||
| 32 | break; | ||
| 33 | case FUTEX_OP_ADD: | ||
| 34 | ret = atomic_futex_op_xchg_add(oparg, uaddr, &oldval); | ||
| 35 | break; | ||
| 36 | case FUTEX_OP_OR: | ||
| 37 | ret = atomic_futex_op_xchg_or(oparg, uaddr, &oldval); | ||
| 38 | break; | ||
| 39 | case FUTEX_OP_ANDN: | ||
| 40 | ret = atomic_futex_op_xchg_and(~oparg, uaddr, &oldval); | ||
| 41 | break; | ||
| 42 | case FUTEX_OP_XOR: | ||
| 43 | ret = atomic_futex_op_xchg_xor(oparg, uaddr, &oldval); | ||
| 44 | break; | ||
| 45 | default: | ||
| 46 | ret = -ENOSYS; | ||
| 47 | break; | ||
| 48 | } | ||
| 49 | |||
| 50 | pagefault_enable(); | ||
| 51 | |||
| 52 | if (!ret) { | ||
| 53 | switch (cmp) { | ||
| 54 | case FUTEX_OP_CMP_EQ: ret = (oldval == cmparg); break; | ||
| 55 | case FUTEX_OP_CMP_NE: ret = (oldval != cmparg); break; | ||
| 56 | case FUTEX_OP_CMP_LT: ret = (oldval < cmparg); break; | ||
| 57 | case FUTEX_OP_CMP_GE: ret = (oldval >= cmparg); break; | ||
| 58 | case FUTEX_OP_CMP_LE: ret = (oldval <= cmparg); break; | ||
| 59 | case FUTEX_OP_CMP_GT: ret = (oldval > cmparg); break; | ||
| 60 | default: ret = -ENOSYS; | ||
| 61 | } | ||
| 62 | } | ||
| 63 | |||
| 64 | return ret; | ||
| 65 | } | ||
| 66 | |||
| 67 | static inline int | ||
| 68 | futex_atomic_cmpxchg_inatomic(int __user *uaddr, int oldval, int newval) | ||
| 69 | { | ||
| 70 | if (!access_ok(VERIFY_WRITE, uaddr, sizeof(int))) | ||
| 71 | return -EFAULT; | ||
| 72 | |||
| 73 | return atomic_futex_op_cmpxchg_inatomic(uaddr, oldval, newval); | ||
| 74 | } | ||
| 75 | |||
| 76 | #endif /* __KERNEL__ */ | ||
| 77 | #endif /* __ASM_SH_FUTEX_H */ | ||
diff --git a/include/asm-sh/hd64461.h b/include/asm-sh/hd64461.h index 27e5c34e2659..4dd8592ca014 100644 --- a/include/asm-sh/hd64461.h +++ b/include/asm-sh/hd64461.h | |||
| @@ -1,200 +1,241 @@ | |||
| 1 | #ifndef __ASM_SH_HD64461 | 1 | #ifndef __ASM_SH_HD64461 |
| 2 | #define __ASM_SH_HD64461 | 2 | #define __ASM_SH_HD64461 |
| 3 | /* | 3 | /* |
| 4 | * $Id: hd64461.h,v 1.5 2004/03/16 00:07:51 lethal Exp $ | 4 | * Copyright (C) 2007 Kristoffer Ericson <Kristoffer.Ericson@gmail.com> |
| 5 | * Copyright (C) 2004 Paul Mundt | ||
| 5 | * Copyright (C) 2000 YAEGASHI Takeshi | 6 | * Copyright (C) 2000 YAEGASHI Takeshi |
| 6 | * Hitachi HD64461 companion chip support | 7 | * |
| 8 | * Hitachi HD64461 companion chip support | ||
| 9 | * (please note manual reference 0x10000000 = 0xb0000000) | ||
| 7 | */ | 10 | */ |
| 8 | 11 | ||
| 9 | /* Constants for PCMCIA mappings */ | 12 | /* Constants for PCMCIA mappings */ |
| 10 | #define HD64461_PCC_WINDOW 0x01000000 | 13 | #define HD64461_PCC_WINDOW 0x01000000 |
| 11 | 14 | ||
| 12 | #define HD64461_PCC0_BASE 0xb8000000 /* area 6 */ | 15 | /* Area 6 - Slot 0 - memory and/or IO card */ |
| 13 | #define HD64461_PCC0_ATTR (HD64461_PCC0_BASE) | 16 | #define HD64461_PCC0_BASE (CONFIG_HD64461_IOBASE + 0x8000000) |
| 14 | #define HD64461_PCC0_COMM (HD64461_PCC0_BASE+HD64461_PCC_WINDOW) | 17 | #define HD64461_PCC0_ATTR (HD64461_PCC0_BASE) /* 0xb80000000 */ |
| 15 | #define HD64461_PCC0_IO (HD64461_PCC0_BASE+2*HD64461_PCC_WINDOW) | 18 | #define HD64461_PCC0_COMM (HD64461_PCC0_BASE+HD64461_PCC_WINDOW) /* 0xb90000000 */ |
| 16 | 19 | #define HD64461_PCC0_IO (HD64461_PCC0_BASE+2*HD64461_PCC_WINDOW) /* 0xba0000000 */ | |
| 17 | #define HD64461_PCC1_BASE 0xb4000000 /* area 5 */ | 20 | |
| 18 | #define HD64461_PCC1_ATTR (HD64461_PCC1_BASE) | 21 | /* Area 5 - Slot 1 - memory card only */ |
| 19 | #define HD64461_PCC1_COMM (HD64461_PCC1_BASE+HD64461_PCC_WINDOW) | 22 | #define HD64461_PCC1_BASE (CONFIG_HD64461_IOBASE + 0x4000000) |
| 20 | 23 | #define HD64461_PCC1_ATTR (HD64461_PCC1_BASE) /* 0xb4000000 */ | |
| 21 | #define HD64461_STBCR 0x10000 | 24 | #define HD64461_PCC1_COMM (HD64461_PCC1_BASE+HD64461_PCC_WINDOW) /* 0xb5000000 */ |
| 22 | #define HD64461_STBCR_CKIO_STBY 0x2000 | 25 | |
| 23 | #define HD64461_STBCR_SAFECKE_IST 0x1000 | 26 | /* Standby Control Register for HD64461 */ |
| 24 | #define HD64461_STBCR_SLCKE_IST 0x0800 | 27 | #define HD64461_STBCR CONFIG_HD64461_IOBASE |
| 25 | #define HD64461_STBCR_SAFECKE_OST 0x0400 | 28 | #define HD64461_STBCR_CKIO_STBY 0x2000 |
| 26 | #define HD64461_STBCR_SLCKE_OST 0x0200 | 29 | #define HD64461_STBCR_SAFECKE_IST 0x1000 |
| 27 | #define HD64461_STBCR_SMIAST 0x0100 | 30 | #define HD64461_STBCR_SLCKE_IST 0x0800 |
| 28 | #define HD64461_STBCR_SLCDST 0x0080 | 31 | #define HD64461_STBCR_SAFECKE_OST 0x0400 |
| 29 | #define HD64461_STBCR_SPC0ST 0x0040 | 32 | #define HD64461_STBCR_SLCKE_OST 0x0200 |
| 30 | #define HD64461_STBCR_SPC1ST 0x0020 | 33 | #define HD64461_STBCR_SMIAST 0x0100 |
| 31 | #define HD64461_STBCR_SAFEST 0x0010 | 34 | #define HD64461_STBCR_SLCDST 0x0080 |
| 32 | #define HD64461_STBCR_STM0ST 0x0008 | 35 | #define HD64461_STBCR_SPC0ST 0x0040 |
| 33 | #define HD64461_STBCR_STM1ST 0x0004 | 36 | #define HD64461_STBCR_SPC1ST 0x0020 |
| 34 | #define HD64461_STBCR_SIRST 0x0002 | 37 | #define HD64461_STBCR_SAFEST 0x0010 |
| 35 | #define HD64461_STBCR_SURTST 0x0001 | 38 | #define HD64461_STBCR_STM0ST 0x0008 |
| 36 | 39 | #define HD64461_STBCR_STM1ST 0x0004 | |
| 37 | #define HD64461_SYSCR 0x10002 | 40 | #define HD64461_STBCR_SIRST 0x0002 |
| 38 | #define HD64461_SCPUCR 0x10004 | 41 | #define HD64461_STBCR_SURTST 0x0001 |
| 39 | 42 | ||
| 40 | #define HD64461_LCDCBAR 0x11000 | 43 | /* System Configuration Register */ |
| 41 | #define HD64461_LCDCLOR 0x11002 | 44 | #define HD64461_SYSCR (CONFIG_HD64461_IOBASE + 0x02) |
| 42 | #define HD64461_LCDCCR 0x11004 | 45 | |
| 43 | #define HD64461_LCDCCR_STBACK 0x0400 | 46 | /* CPU Data Bus Control Register */ |
| 44 | #define HD64461_LCDCCR_STREQ 0x0100 | 47 | #define HD64461_SCPUCR (CONFIG_HD64461_IOBASE + 0x04) |
| 45 | #define HD64461_LCDCCR_MOFF 0x0080 | 48 | |
| 46 | #define HD64461_LCDCCR_REFSEL 0x0040 | 49 | /* Base Adress Register */ |
| 47 | #define HD64461_LCDCCR_EPON 0x0020 | 50 | #define HD64461_LCDCBAR (CONFIG_HD64461_IOBASE + 0x1000) |
| 48 | #define HD64461_LCDCCR_SPON 0x0010 | 51 | |
| 49 | 52 | /* Line increment adress */ | |
| 50 | #define HD64461_LDR1 0x11010 | 53 | #define HD64461_LCDCLOR (CONFIG_HD64461_IOBASE + 0x1002) |
| 51 | #define HD64461_LDR1_DON 0x01 | 54 | |
| 52 | #define HD64461_LDR1_DINV 0x80 | 55 | /* Controls LCD controller */ |
| 53 | 56 | #define HD64461_LCDCCR (CONFIG_HD64461_IOBASE + 0x1004) | |
| 54 | #define HD64461_LDR2 0x11012 | 57 | |
| 55 | #define HD64461_LDHNCR 0x11014 | 58 | /* LCCDR control bits */ |
| 56 | #define HD64461_LDHNSR 0x11016 | 59 | #define HD64461_LCDCCR_STBACK 0x0400 /* Standby Back */ |
| 57 | #define HD64461_LDVNTR 0x11018 | 60 | #define HD64461_LCDCCR_STREQ 0x0100 /* Standby Request */ |
| 58 | #define HD64461_LDVNDR 0x1101a | 61 | #define HD64461_LCDCCR_MOFF 0x0080 /* Memory Off */ |
| 59 | #define HD64461_LDVSPR 0x1101c | 62 | #define HD64461_LCDCCR_REFSEL 0x0040 /* Refresh Select */ |
| 60 | #define HD64461_LDR3 0x1101e | 63 | #define HD64461_LCDCCR_EPON 0x0020 /* End Power On */ |
| 61 | 64 | #define HD64461_LCDCCR_SPON 0x0010 /* Start Power On */ | |
| 62 | #define HD64461_CPTWAR 0x11030 | 65 | |
| 63 | #define HD64461_CPTWDR 0x11032 | 66 | /* Controls LCD (1) */ |
| 64 | #define HD64461_CPTRAR 0x11034 | 67 | #define HD64461_LDR1 (CONFIG_HD64461_IOBASE + 0x1010) |
| 65 | #define HD64461_CPTRDR 0x11036 | 68 | #define HD64461_LDR1_DON 0x01 /* Display On */ |
| 66 | 69 | #define HD64461_LDR1_DINV 0x80 /* Display Invert */ | |
| 67 | #define HD64461_GRDOR 0x11040 | 70 | |
| 68 | #define HD64461_GRSCR 0x11042 | 71 | /* Controls LCD (2) */ |
| 69 | #define HD64461_GRCFGR 0x11044 | 72 | #define HD64461_LDR2 (CONFIG_HD64461_IOBASE + 0x1012) |
| 70 | #define HD64461_GRCFGR_ACCSTATUS 0x10 | 73 | #define HD64461_LDHNCR (CONFIG_HD64461_IOBASE + 0x1014) /* Number of horizontal characters */ |
| 71 | #define HD64461_GRCFGR_ACCRESET 0x08 | 74 | #define HD64461_LDHNSR (CONFIG_HD64461_IOBASE + 0x1016) /* Specify output start position + width of CL1 */ |
| 72 | #define HD64461_GRCFGR_ACCSTART_BITBLT 0x06 | 75 | #define HD64461_LDVNTR (CONFIG_HD64461_IOBASE + 0x1018) /* Specify total vertical lines */ |
| 73 | #define HD64461_GRCFGR_ACCSTART_LINE 0x04 | 76 | #define HD64461_LDVNDR (CONFIG_HD64461_IOBASE + 0x101a) /* specify number of display vertical lines */ |
| 74 | #define HD64461_GRCFGR_COLORDEPTH16 0x01 | 77 | #define HD64461_LDVSPR (CONFIG_HD64461_IOBASE + 0x101c) /* specify vertical synchronization pos and AC nr */ |
| 75 | 78 | ||
| 76 | #define HD64461_LNSARH 0x11046 | 79 | /* Controls LCD (3) */ |
| 77 | #define HD64461_LNSARL 0x11048 | 80 | #define HD64461_LDR3 (CONFIG_HD64461_IOBASE + 0x101e) |
| 78 | #define HD64461_LNAXLR 0x1104a | 81 | |
| 79 | #define HD64461_LNDGR 0x1104c | 82 | /* Palette Registers */ |
| 80 | #define HD64461_LNAXR 0x1104e | 83 | #define HD64461_CPTWAR (CONFIG_HD64461_IOBASE + 0x1030) /* Color Palette Write Adress Register */ |
| 81 | #define HD64461_LNERTR 0x11050 | 84 | #define HD64461_CPTWDR (CONFIG_HD64461_IOBASE + 0x1032) /* Color Palette Write Data Register */ |
| 82 | #define HD64461_LNMDR 0x11052 | 85 | #define HD64461_CPTRAR (CONFIG_HD64461_IOBASE + 0x1034) /* Color Palette Read Adress Register */ |
| 83 | #define HD64461_BBTSSARH 0x11054 | 86 | #define HD64461_CPTRDR (CONFIG_HD64461_IOBASE + 0x1036) /* Color Palette Read Data Register */ |
| 84 | #define HD64461_BBTSSARL 0x11056 | 87 | |
| 85 | #define HD64461_BBTDSARH 0x11058 | 88 | #define HD64461_GRDOR (CONFIG_HD64461_IOBASE + 0x1040) /* Display Resolution Offset Register */ |
| 86 | #define HD64461_BBTDSARL 0x1105a | 89 | #define HD64461_GRSCR (CONFIG_HD64461_IOBASE + 0x1042) /* Solid Color Register */ |
| 87 | #define HD64461_BBTDWR 0x1105c | 90 | #define HD64461_GRCFGR (CONFIG_HD64461_IOBASE + 0x1044) /* Accelerator Configuration Register */ |
| 88 | #define HD64461_BBTDHR 0x1105e | 91 | |
| 89 | #define HD64461_BBTPARH 0x11060 | 92 | #define HD64461_GRCFGR_ACCSTATUS 0x10 /* Accelerator Status */ |
| 90 | #define HD64461_BBTPARL 0x11062 | 93 | #define HD64461_GRCFGR_ACCRESET 0x08 /* Accelerator Reset */ |
| 91 | #define HD64461_BBTMARH 0x11064 | 94 | #define HD64461_GRCFGR_ACCSTART_BITBLT 0x06 /* Accelerator Start BITBLT */ |
| 92 | #define HD64461_BBTMARL 0x11066 | 95 | #define HD64461_GRCFGR_ACCSTART_LINE 0x04 /* Accelerator Start Line Drawing */ |
| 93 | #define HD64461_BBTROPR 0x11068 | 96 | #define HD64461_GRCFGR_COLORDEPTH16 0x01 /* Sets Colordepth 16 for Accelerator */ |
| 94 | #define HD64461_BBTMDR 0x1106a | 97 | #define HD64461_GRCFGR_COLORDEPTH8 0x01 /* Sets Colordepth 8 for Accelerator */ |
| 98 | |||
| 99 | /* Line Drawing Registers */ | ||
| 100 | #define HD64461_LNSARH (CONFIG_HD64461_IOBASE + 0x1046) /* Line Start Adress Register (H) */ | ||
| 101 | #define HD64461_LNSARL (CONFIG_HD64461_IOBASE + 0x1048) /* Line Start Adress Register (L) */ | ||
| 102 | #define HD64461_LNAXLR (CONFIG_HD64461_IOBASE + 0x104a) /* Axis Pixel Length Register */ | ||
| 103 | #define HD64461_LNDGR (CONFIG_HD64461_IOBASE + 0x104c) /* Diagonal Register */ | ||
| 104 | #define HD64461_LNAXR (CONFIG_HD64461_IOBASE + 0x104e) /* Axial Register */ | ||
| 105 | #define HD64461_LNERTR (CONFIG_HD64461_IOBASE + 0x1050) /* Start Error Term Register */ | ||
| 106 | #define HD64461_LNMDR (CONFIG_HD64461_IOBASE + 0x1052) /* Line Mode Register */ | ||
| 107 | |||
| 108 | /* BitBLT Registers */ | ||
| 109 | #define HD64461_BBTSSARH (CONFIG_HD64461_IOBASE + 0x1054) /* Source Start Adress Register (H) */ | ||
| 110 | #define HD64461_BBTSSARL (CONFIG_HD64461_IOBASE + 0x1056) /* Source Start Adress Register (L) */ | ||
| 111 | #define HD64461_BBTDSARH (CONFIG_HD64461_IOBASE + 0x1058) /* Destination Start Adress Register (H) */ | ||
| 112 | #define HD64461_BBTDSARL (CONFIG_HD64461_IOBASE + 0x105a) /* Destination Start Adress Register (L) */ | ||
| 113 | #define HD64461_BBTDWR (CONFIG_HD64461_IOBASE + 0x105c) /* Destination Block Width Register */ | ||
| 114 | #define HD64461_BBTDHR (CONFIG_HD64461_IOBASE + 0x105e) /* Destination Block Height Register */ | ||
| 115 | #define HD64461_BBTPARH (CONFIG_HD64461_IOBASE + 0x1060) /* Pattern Start Adress Register (H) */ | ||
| 116 | #define HD64461_BBTPARL (CONFIG_HD64461_IOBASE + 0x1062) /* Pattern Start Adress Register (L) */ | ||
| 117 | #define HD64461_BBTMARH (CONFIG_HD64461_IOBASE + 0x1064) /* Mask Start Adress Register (H) */ | ||
| 118 | #define HD64461_BBTMARL (CONFIG_HD64461_IOBASE + 0x1066) /* Mask Start Adress Register (L) */ | ||
| 119 | #define HD64461_BBTROPR (CONFIG_HD64461_IOBASE + 0x1068) /* ROP Register */ | ||
| 120 | #define HD64461_BBTMDR (CONFIG_HD64461_IOBASE + 0x106a) /* BitBLT Mode Register */ | ||
| 95 | 121 | ||
| 96 | /* PC Card Controller Registers */ | 122 | /* PC Card Controller Registers */ |
| 97 | #define HD64461_PCC0ISR 0x12000 /* socket 0 interface status */ | 123 | /* Maps to Physical Area 6 */ |
| 98 | #define HD64461_PCC0GCR 0x12002 /* socket 0 general control */ | 124 | #define HD64461_PCC0ISR (CONFIG_HD64461_IOBASE + 0x2000) /* socket 0 interface status */ |
| 99 | #define HD64461_PCC0CSCR 0x12004 /* socket 0 card status change */ | 125 | #define HD64461_PCC0GCR (CONFIG_HD64461_IOBASE + 0x2002) /* socket 0 general control */ |
| 100 | #define HD64461_PCC0CSCIER 0x12006 /* socket 0 card status change interrupt enable */ | 126 | #define HD64461_PCC0CSCR (CONFIG_HD64461_IOBASE + 0x2004) /* socket 0 card status change */ |
| 101 | #define HD64461_PCC0SCR 0x12008 /* socket 0 software control */ | 127 | #define HD64461_PCC0CSCIER (CONFIG_HD64461_IOBASE + 0x2006) /* socket 0 card status change interrupt enable */ |
| 102 | #define HD64461_PCC1ISR 0x12010 /* socket 1 interface status */ | 128 | #define HD64461_PCC0SCR (CONFIG_HD64461_IOBASE + 0x2008) /* socket 0 software control */ |
| 103 | #define HD64461_PCC1GCR 0x12012 /* socket 1 general control */ | 129 | /* Maps to Physical Area 5 */ |
| 104 | #define HD64461_PCC1CSCR 0x12014 /* socket 1 card status change */ | 130 | #define HD64461_PCC1ISR (CONFIG_HD64461_IOBASE + 0x2010) /* socket 1 interface status */ |
| 105 | #define HD64461_PCC1CSCIER 0x12016 /* socket 1 card status change interrupt enable */ | 131 | #define HD64461_PCC1GCR (CONFIG_HD64461_IOBASE + 0x2012) /* socket 1 general control */ |
| 106 | #define HD64461_PCC1SCR 0x12018 /* socket 1 software control */ | 132 | #define HD64461_PCC1CSCR (CONFIG_HD64461_IOBASE + 0x2014) /* socket 1 card status change */ |
| 133 | #define HD64461_PCC1CSCIER (CONFIG_HD64461_IOBASE + 0x2016) /* socket 1 card status change interrupt enable */ | ||
| 134 | #define HD64461_PCC1SCR (CONFIG_HD64461_IOBASE + 0x2018) /* socket 1 software control */ | ||
| 107 | 135 | ||
| 108 | /* PCC Interface Status Register */ | 136 | /* PCC Interface Status Register */ |
| 109 | #define HD64461_PCCISR_READY 0x80 /* card ready */ | 137 | #define HD64461_PCCISR_READY 0x80 /* card ready */ |
| 110 | #define HD64461_PCCISR_MWP 0x40 /* card write-protected */ | 138 | #define HD64461_PCCISR_MWP 0x40 /* card write-protected */ |
| 111 | #define HD64461_PCCISR_VS2 0x20 /* voltage select pin 2 */ | 139 | #define HD64461_PCCISR_VS2 0x20 /* voltage select pin 2 */ |
| 112 | #define HD64461_PCCISR_VS1 0x10 /* voltage select pin 1 */ | 140 | #define HD64461_PCCISR_VS1 0x10 /* voltage select pin 1 */ |
| 113 | #define HD64461_PCCISR_CD2 0x08 /* card detect 2 */ | 141 | #define HD64461_PCCISR_CD2 0x08 /* card detect 2 */ |
| 114 | #define HD64461_PCCISR_CD1 0x04 /* card detect 1 */ | 142 | #define HD64461_PCCISR_CD1 0x04 /* card detect 1 */ |
| 115 | #define HD64461_PCCISR_BVD2 0x02 /* battery 1 */ | 143 | #define HD64461_PCCISR_BVD2 0x02 /* battery 1 */ |
| 116 | #define HD64461_PCCISR_BVD1 0x01 /* battery 1 */ | 144 | #define HD64461_PCCISR_BVD1 0x01 /* battery 1 */ |
| 117 | 145 | ||
| 118 | #define HD64461_PCCISR_PCD_MASK 0x0c /* card detect */ | 146 | #define HD64461_PCCISR_PCD_MASK 0x0c /* card detect */ |
| 119 | #define HD64461_PCCISR_BVD_MASK 0x03 /* battery voltage */ | 147 | #define HD64461_PCCISR_BVD_MASK 0x03 /* battery voltage */ |
| 120 | #define HD64461_PCCISR_BVD_BATGOOD 0x03 /* battery good */ | 148 | #define HD64461_PCCISR_BVD_BATGOOD 0x03 /* battery good */ |
| 121 | #define HD64461_PCCISR_BVD_BATWARN 0x01 /* battery low warning */ | 149 | #define HD64461_PCCISR_BVD_BATWARN 0x01 /* battery low warning */ |
| 122 | #define HD64461_PCCISR_BVD_BATDEAD1 0x02 /* battery dead */ | 150 | #define HD64461_PCCISR_BVD_BATDEAD1 0x02 /* battery dead */ |
| 123 | #define HD64461_PCCISR_BVD_BATDEAD2 0x00 /* battery dead */ | 151 | #define HD64461_PCCISR_BVD_BATDEAD2 0x00 /* battery dead */ |
| 124 | 152 | ||
| 125 | /* PCC General Control Register */ | 153 | /* PCC General Control Register */ |
| 126 | #define HD64461_PCCGCR_DRVE 0x80 /* output drive */ | 154 | #define HD64461_PCCGCR_DRVE 0x80 /* output drive */ |
| 127 | #define HD64461_PCCGCR_PCCR 0x40 /* PC card reset */ | 155 | #define HD64461_PCCGCR_PCCR 0x40 /* PC card reset */ |
| 128 | #define HD64461_PCCGCR_PCCT 0x20 /* PC card type, 1=IO&mem, 0=mem */ | 156 | #define HD64461_PCCGCR_PCCT 0x20 /* PC card type, 1=IO&mem, 0=mem */ |
| 129 | #define HD64461_PCCGCR_VCC0 0x10 /* voltage control pin VCC0SEL0 */ | 157 | #define HD64461_PCCGCR_VCC0 0x10 /* voltage control pin VCC0SEL0 */ |
| 130 | #define HD64461_PCCGCR_PMMOD 0x08 /* memory mode */ | 158 | #define HD64461_PCCGCR_PMMOD 0x08 /* memory mode */ |
| 131 | #define HD64461_PCCGCR_PA25 0x04 /* pin A25 */ | 159 | #define HD64461_PCCGCR_PA25 0x04 /* pin A25 */ |
| 132 | #define HD64461_PCCGCR_PA24 0x02 /* pin A24 */ | 160 | #define HD64461_PCCGCR_PA24 0x02 /* pin A24 */ |
| 133 | #define HD64461_PCCGCR_REG 0x01 /* pin PCC0REG# */ | 161 | #define HD64461_PCCGCR_REG 0x01 /* pin PCC0REG# */ |
| 134 | 162 | ||
| 135 | /* PCC Card Status Change Register */ | 163 | /* PCC Card Status Change Register */ |
| 136 | #define HD64461_PCCCSCR_SCDI 0x80 /* sw card detect intr */ | 164 | #define HD64461_PCCCSCR_SCDI 0x80 /* sw card detect intr */ |
| 137 | #define HD64461_PCCCSCR_SRV1 0x40 /* reserved */ | 165 | #define HD64461_PCCCSCR_SRV1 0x40 /* reserved */ |
| 138 | #define HD64461_PCCCSCR_IREQ 0x20 /* IREQ intr req */ | 166 | #define HD64461_PCCCSCR_IREQ 0x20 /* IREQ intr req */ |
| 139 | #define HD64461_PCCCSCR_SC 0x10 /* STSCHG (status change) pin */ | 167 | #define HD64461_PCCCSCR_SC 0x10 /* STSCHG (status change) pin */ |
| 140 | #define HD64461_PCCCSCR_CDC 0x08 /* CD (card detect) change */ | 168 | #define HD64461_PCCCSCR_CDC 0x08 /* CD (card detect) change */ |
| 141 | #define HD64461_PCCCSCR_RC 0x04 /* READY change */ | 169 | #define HD64461_PCCCSCR_RC 0x04 /* READY change */ |
| 142 | #define HD64461_PCCCSCR_BW 0x02 /* battery warning change */ | 170 | #define HD64461_PCCCSCR_BW 0x02 /* battery warning change */ |
| 143 | #define HD64461_PCCCSCR_BD 0x01 /* battery dead change */ | 171 | #define HD64461_PCCCSCR_BD 0x01 /* battery dead change */ |
| 144 | 172 | ||
| 145 | /* PCC Card Status Change Interrupt Enable Register */ | 173 | /* PCC Card Status Change Interrupt Enable Register */ |
| 146 | #define HD64461_PCCCSCIER_CRE 0x80 /* change reset enable */ | 174 | #define HD64461_PCCCSCIER_CRE 0x80 /* change reset enable */ |
| 147 | #define HD64461_PCCCSCIER_IREQE_MASK 0x60 /* IREQ enable */ | 175 | #define HD64461_PCCCSCIER_IREQE_MASK 0x60 /* IREQ enable */ |
| 148 | #define HD64461_PCCCSCIER_IREQE_DISABLED 0x00 /* IREQ disabled */ | 176 | #define HD64461_PCCCSCIER_IREQE_DISABLED 0x00 /* IREQ disabled */ |
| 149 | #define HD64461_PCCCSCIER_IREQE_LEVEL 0x20 /* IREQ level-triggered */ | 177 | #define HD64461_PCCCSCIER_IREQE_LEVEL 0x20 /* IREQ level-triggered */ |
| 150 | #define HD64461_PCCCSCIER_IREQE_FALLING 0x40 /* IREQ falling-edge-trig */ | 178 | #define HD64461_PCCCSCIER_IREQE_FALLING 0x40 /* IREQ falling-edge-trig */ |
| 151 | #define HD64461_PCCCSCIER_IREQE_RISING 0x60 /* IREQ rising-edge-trig */ | 179 | #define HD64461_PCCCSCIER_IREQE_RISING 0x60 /* IREQ rising-edge-trig */ |
| 152 | 180 | ||
| 153 | #define HD64461_PCCCSCIER_SCE 0x10 /* status change enable */ | 181 | #define HD64461_PCCCSCIER_SCE 0x10 /* status change enable */ |
| 154 | #define HD64461_PCCCSCIER_CDE 0x08 /* card detect change enable */ | 182 | #define HD64461_PCCCSCIER_CDE 0x08 /* card detect change enable */ |
| 155 | #define HD64461_PCCCSCIER_RE 0x04 /* ready change enable */ | 183 | #define HD64461_PCCCSCIER_RE 0x04 /* ready change enable */ |
| 156 | #define HD64461_PCCCSCIER_BWE 0x02 /* battery warn change enable */ | 184 | #define HD64461_PCCCSCIER_BWE 0x02 /* battery warn change enable */ |
| 157 | #define HD64461_PCCCSCIER_BDE 0x01 /* battery dead change enable*/ | 185 | #define HD64461_PCCCSCIER_BDE 0x01 /* battery dead change enable*/ |
| 158 | 186 | ||
| 159 | /* PCC Software Control Register */ | 187 | /* PCC Software Control Register */ |
| 160 | #define HD64461_PCCSCR_VCC1 0x02 /* voltage control pin 1 */ | 188 | #define HD64461_PCCSCR_VCC1 0x02 /* voltage control pin 1 */ |
| 161 | #define HD64461_PCCSCR_SWP 0x01 /* write protect */ | 189 | #define HD64461_PCCSCR_SWP 0x01 /* write protect */ |
| 162 | 190 | ||
| 163 | #define HD64461_P0OCR 0x1202a | 191 | /* PCC0 Output Pins Control Register */ |
| 164 | #define HD64461_P1OCR 0x1202c | 192 | #define HD64461_P0OCR (CONFIG_HD64461_IOBASE + 0x202a) |
| 165 | #define HD64461_PGCR 0x1202e | 193 | |
| 166 | 194 | /* PCC1 Output Pins Control Register */ | |
| 167 | #define HD64461_GPACR 0x14000 | 195 | #define HD64461_P1OCR (CONFIG_HD64461_IOBASE + 0x202c) |
| 168 | #define HD64461_GPBCR 0x14002 | 196 | |
| 169 | #define HD64461_GPCCR 0x14004 | 197 | /* PC Card General Control Register */ |
| 170 | #define HD64461_GPDCR 0x14006 | 198 | #define HD64461_PGCR (CONFIG_HD64461_IOBASE + 0x202e) |
| 171 | #define HD64461_GPADR 0x14010 | 199 | |
| 172 | #define HD64461_GPBDR 0x14012 | 200 | /* Port Control Registers */ |
| 173 | #define HD64461_GPCDR 0x14014 | 201 | #define HD64461_GPACR (CONFIG_HD64461_IOBASE + 0x4000) /* Port A - Handles IRDA/TIMER */ |
| 174 | #define HD64461_GPDDR 0x14016 | 202 | #define HD64461_GPBCR (CONFIG_HD64461_IOBASE + 0x4002) /* Port B - Handles UART */ |
| 175 | #define HD64461_GPAICR 0x14020 | 203 | #define HD64461_GPCCR (CONFIG_HD64461_IOBASE + 0x4004) /* Port C - Handles PCMCIA 1 */ |
| 176 | #define HD64461_GPBICR 0x14022 | 204 | #define HD64461_GPDCR (CONFIG_HD64461_IOBASE + 0x4006) /* Port D - Handles PCMCIA 1 */ |
| 177 | #define HD64461_GPCICR 0x14024 | 205 | |
| 178 | #define HD64461_GPDICR 0x14026 | 206 | /* Port Control Data Registers */ |
| 179 | #define HD64461_GPAISR 0x14040 | 207 | #define HD64461_GPADR (CONFIG_HD64461_IOBASE + 0x4010) /* A */ |
| 180 | #define HD64461_GPBISR 0x14042 | 208 | #define HD64461_GPBDR (CONFIG_HD64461_IOBASE + 0x4012) /* B */ |
| 181 | #define HD64461_GPCISR 0x14044 | 209 | #define HD64461_GPCDR (CONFIG_HD64461_IOBASE + 0x4014) /* C */ |
| 182 | #define HD64461_GPDISR 0x14046 | 210 | #define HD64461_GPDDR (CONFIG_HD64461_IOBASE + 0x4016) /* D */ |
| 183 | 211 | ||
| 184 | #define HD64461_NIRR 0x15000 | 212 | /* Interrupt Control Registers */ |
| 185 | #define HD64461_NIMR 0x15002 | 213 | #define HD64461_GPAICR (CONFIG_HD64461_IOBASE + 0x4020) /* A */ |
| 186 | 214 | #define HD64461_GPBICR (CONFIG_HD64461_IOBASE + 0x4022) /* B */ | |
| 187 | #define HD64461_IRQBASE OFFCHIP_IRQ_BASE | 215 | #define HD64461_GPCICR (CONFIG_HD64461_IOBASE + 0x4024) /* C */ |
| 188 | #define HD64461_IRQ_NUM 16 | 216 | #define HD64461_GPDICR (CONFIG_HD64461_IOBASE + 0x4026) /* D */ |
| 189 | 217 | ||
| 190 | #define HD64461_IRQ_UART (HD64461_IRQBASE+5) | 218 | /* Interrupt Status Registers */ |
| 191 | #define HD64461_IRQ_IRDA (HD64461_IRQBASE+6) | 219 | #define HD64461_GPAISR (CONFIG_HD64461_IOBASE + 0x4040) /* A */ |
| 192 | #define HD64461_IRQ_TMU1 (HD64461_IRQBASE+9) | 220 | #define HD64461_GPBISR (CONFIG_HD64461_IOBASE + 0x4042) /* B */ |
| 193 | #define HD64461_IRQ_TMU0 (HD64461_IRQBASE+10) | 221 | #define HD64461_GPCISR (CONFIG_HD64461_IOBASE + 0x4044) /* C */ |
| 194 | #define HD64461_IRQ_GPIO (HD64461_IRQBASE+11) | 222 | #define HD64461_GPDISR (CONFIG_HD64461_IOBASE + 0x4046) /* D */ |
| 195 | #define HD64461_IRQ_AFE (HD64461_IRQBASE+12) | 223 | |
| 196 | #define HD64461_IRQ_PCC1 (HD64461_IRQBASE+13) | 224 | /* Interrupt Request Register & Interrupt Mask Register */ |
| 197 | #define HD64461_IRQ_PCC0 (HD64461_IRQBASE+14) | 225 | #define HD64461_NIRR (CONFIG_HD64461_IOBASE + 0x5000) |
| 226 | #define HD64461_NIMR (CONFIG_HD64461_IOBASE + 0x5002) | ||
| 227 | |||
| 228 | #define HD64461_IRQBASE OFFCHIP_IRQ_BASE | ||
| 229 | #define HD64461_IRQ_NUM 16 | ||
| 230 | |||
| 231 | #define HD64461_IRQ_UART (HD64461_IRQBASE+5) | ||
| 232 | #define HD64461_IRQ_IRDA (HD64461_IRQBASE+6) | ||
| 233 | #define HD64461_IRQ_TMU1 (HD64461_IRQBASE+9) | ||
| 234 | #define HD64461_IRQ_TMU0 (HD64461_IRQBASE+10) | ||
| 235 | #define HD64461_IRQ_GPIO (HD64461_IRQBASE+11) | ||
| 236 | #define HD64461_IRQ_AFE (HD64461_IRQBASE+12) | ||
| 237 | #define HD64461_IRQ_PCC1 (HD64461_IRQBASE+13) | ||
| 238 | #define HD64461_IRQ_PCC0 (HD64461_IRQBASE+14) | ||
| 198 | 239 | ||
| 199 | #define __IO_PREFIX hd64461 | 240 | #define __IO_PREFIX hd64461 |
| 200 | #include <asm/io_generic.h> | 241 | #include <asm/io_generic.h> |
diff --git a/include/asm-sh/hw_irq.h b/include/asm-sh/hw_irq.h index 80ee1cda7498..4ca3f765bacc 100644 --- a/include/asm-sh/hw_irq.h +++ b/include/asm-sh/hw_irq.h | |||
| @@ -5,4 +5,46 @@ | |||
| 5 | 5 | ||
| 6 | extern atomic_t irq_err_count; | 6 | extern atomic_t irq_err_count; |
| 7 | 7 | ||
| 8 | struct intc2_data { | ||
| 9 | unsigned short irq; | ||
| 10 | unsigned char ipr_offset, ipr_shift; | ||
| 11 | unsigned char msk_offset, msk_shift; | ||
| 12 | unsigned char priority; | ||
| 13 | }; | ||
| 14 | |||
| 15 | struct intc2_desc { | ||
| 16 | unsigned long prio_base; | ||
| 17 | unsigned long msk_base; | ||
| 18 | unsigned long mskclr_base; | ||
| 19 | struct intc2_data *intc2_data; | ||
| 20 | unsigned int nr_irqs; | ||
| 21 | struct irq_chip chip; | ||
| 22 | }; | ||
| 23 | |||
| 24 | void register_intc2_controller(struct intc2_desc *); | ||
| 25 | void init_IRQ_intc2(void); | ||
| 26 | |||
| 27 | struct ipr_data { | ||
| 28 | unsigned char irq; | ||
| 29 | unsigned char ipr_idx; /* Index for the IPR registered */ | ||
| 30 | unsigned char shift; /* Number of bits to shift the data */ | ||
| 31 | unsigned char priority; /* The priority */ | ||
| 32 | }; | ||
| 33 | |||
| 34 | struct ipr_desc { | ||
| 35 | unsigned long *ipr_offsets; | ||
| 36 | unsigned int nr_offsets; | ||
| 37 | struct ipr_data *ipr_data; | ||
| 38 | unsigned int nr_irqs; | ||
| 39 | struct irq_chip chip; | ||
| 40 | }; | ||
| 41 | |||
| 42 | void register_ipr_controller(struct ipr_desc *); | ||
| 43 | void init_IRQ_ipr(void); | ||
| 44 | |||
| 45 | /* | ||
| 46 | * Enable individual interrupt mode for external IPR IRQs. | ||
| 47 | */ | ||
| 48 | void ipr_irq_enable_irlm(void); | ||
| 49 | |||
| 8 | #endif /* __ASM_SH_HW_IRQ_H */ | 50 | #endif /* __ASM_SH_HW_IRQ_H */ |
diff --git a/include/asm-sh/irq.h b/include/asm-sh/irq.h index e81bf21c801e..c61d902b8bff 100644 --- a/include/asm-sh/irq.h +++ b/include/asm-sh/irq.h | |||
| @@ -31,47 +31,7 @@ extern unsigned short *irq_mask_register; | |||
| 31 | * PINT IRQs | 31 | * PINT IRQs |
| 32 | */ | 32 | */ |
| 33 | void init_IRQ_pint(void); | 33 | void init_IRQ_pint(void); |
| 34 | |||
| 35 | /* | ||
| 36 | * The shift value is now the number of bits to shift, not the number of | ||
| 37 | * bits/4. This is to make it easier to read the value directly from the | ||
| 38 | * datasheets. The IPR address, addr, will be set from ipr_idx via the | ||
| 39 | * map_ipridx_to_addr function. | ||
| 40 | */ | ||
| 41 | struct ipr_data { | ||
| 42 | unsigned int irq; | ||
| 43 | int ipr_idx; /* Index for the IPR registered */ | ||
| 44 | int shift; /* Number of bits to shift the data */ | ||
| 45 | int priority; /* The priority */ | ||
| 46 | unsigned int addr; /* Address of Interrupt Priority Register */ | ||
| 47 | }; | ||
| 48 | |||
| 49 | /* | ||
| 50 | * Given an IPR IDX, map the value to an IPR register address. | ||
| 51 | */ | ||
| 52 | unsigned int map_ipridx_to_addr(int idx); | ||
| 53 | |||
| 54 | /* | ||
| 55 | * Enable individual interrupt mode for external IPR IRQs. | ||
| 56 | */ | ||
| 57 | void ipr_irq_enable_irlm(void); | ||
| 58 | |||
| 59 | /* | ||
| 60 | * Function for "on chip support modules". | ||
| 61 | */ | ||
| 62 | void make_ipr_irq(struct ipr_data *table, unsigned int nr_irqs); | ||
| 63 | void make_imask_irq(unsigned int irq); | 34 | void make_imask_irq(unsigned int irq); |
| 64 | void init_IRQ_ipr(void); | ||
| 65 | |||
| 66 | struct intc2_data { | ||
| 67 | unsigned short irq; | ||
| 68 | unsigned char ipr_offset, ipr_shift; | ||
| 69 | unsigned char msk_offset, msk_shift; | ||
| 70 | unsigned char priority; | ||
| 71 | }; | ||
| 72 | |||
| 73 | void make_intc2_irq(struct intc2_data *, unsigned int nr_irqs); | ||
| 74 | void init_IRQ_intc2(void); | ||
| 75 | 35 | ||
| 76 | static inline int generic_irq_demux(int irq) | 36 | static inline int generic_irq_demux(int irq) |
| 77 | { | 37 | { |
diff --git a/include/asm-sh/machvec.h b/include/asm-sh/machvec.h index 70389b72ffef..088698bacf2f 100644 --- a/include/asm-sh/machvec.h +++ b/include/asm-sh/machvec.h | |||
| @@ -13,7 +13,6 @@ | |||
| 13 | #include <linux/types.h> | 13 | #include <linux/types.h> |
| 14 | #include <linux/time.h> | 14 | #include <linux/time.h> |
| 15 | #include <asm/machtypes.h> | 15 | #include <asm/machtypes.h> |
| 16 | #include <asm/machvec_init.h> | ||
| 17 | 16 | ||
| 18 | struct device; | 17 | struct device; |
| 19 | 18 | ||
| @@ -68,4 +67,7 @@ extern struct sh_machine_vector sh_mv; | |||
| 68 | 67 | ||
| 69 | #define get_system_type() sh_mv.mv_name | 68 | #define get_system_type() sh_mv.mv_name |
| 70 | 69 | ||
| 70 | #define __initmv \ | ||
| 71 | __attribute_used__ __attribute__((__section__ (".machvec.init"))) | ||
| 72 | |||
| 71 | #endif /* _ASM_SH_MACHVEC_H */ | 73 | #endif /* _ASM_SH_MACHVEC_H */ |
diff --git a/include/asm-sh/machvec_init.h b/include/asm-sh/machvec_init.h deleted file mode 100644 index e397798ebd94..000000000000 --- a/include/asm-sh/machvec_init.h +++ /dev/null | |||
| @@ -1,53 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * include/asm-sh/machvec_init.h | ||
| 3 | * | ||
| 4 | * Copyright 2000 Stuart Menefy (stuart.menefy@st.com) | ||
| 5 | * | ||
| 6 | * May be copied or modified under the terms of the GNU General Public | ||
| 7 | * License. See linux/COPYING for more information. | ||
| 8 | * | ||
| 9 | * This file has goodies to help simplify instantiation of machine vectors. | ||
| 10 | */ | ||
| 11 | |||
| 12 | #ifndef __SH_MACHVEC_INIT_H | ||
| 13 | #define __SH_MACHVEC_INIT_H | ||
| 14 | |||
| 15 | |||
| 16 | /* | ||
| 17 | * In a GENERIC kernel, we have lots of these vectors floating about, | ||
| 18 | * all but one of which we want to go away. In a non-GENERIC kernel, | ||
| 19 | * we want only one, ever. | ||
| 20 | * | ||
| 21 | * Accomplish this in the GENERIC kernel by puting all of the vectors | ||
| 22 | * in the .init.data section where they'll go away. We'll copy the | ||
| 23 | * one we want to the real alpha_mv vector in setup_arch. | ||
| 24 | * | ||
| 25 | * Accomplish this in a non-GENERIC kernel by ifdef'ing out all but | ||
| 26 | * one of the vectors, which will not reside in .init.data. We then | ||
| 27 | * alias this one vector to alpha_mv, so no copy is needed. | ||
| 28 | * | ||
| 29 | * Upshot: set __initdata to nothing for non-GENERIC kernels. | ||
| 30 | * | ||
| 31 | * Note we do the same thing for the UNKNOWN kernel, as we need to write | ||
| 32 | * to the machine vector while setting it up. | ||
| 33 | */ | ||
| 34 | |||
| 35 | #if defined(CONFIG_SH_GENERIC) || defined(CONFIG_SH_UNKNOWN) | ||
| 36 | #define __initmv __attribute__((unused,__section__ (".machvec.init"))) | ||
| 37 | #define ALIAS_MV(x) | ||
| 38 | #else | ||
| 39 | #define __initmv | ||
| 40 | |||
| 41 | /* GCC actually has a syntax for defining aliases, but is under some | ||
| 42 | delusion that you shouldn't be able to declare it extern somewhere | ||
| 43 | else beforehand. Fine. We'll do it ourselves. */ | ||
| 44 | #if 0 | ||
| 45 | #define ALIAS_MV(system) \ | ||
| 46 | struct sh_machine_vector sh_mv __attribute__((alias("mv_"#system))); | ||
| 47 | #else | ||
| 48 | #define ALIAS_MV(system) \ | ||
| 49 | asm(".global sh_mv\nsh_mv = mv_"#system ); | ||
| 50 | #endif | ||
| 51 | #endif /* GENERIC */ | ||
| 52 | |||
| 53 | #endif /* __SH_MACHVEC_INIT_H */ | ||
diff --git a/include/asm-sh/mmzone.h b/include/asm-sh/mmzone.h new file mode 100644 index 000000000000..7969f381dff2 --- /dev/null +++ b/include/asm-sh/mmzone.h | |||
| @@ -0,0 +1,46 @@ | |||
| 1 | #ifndef __ASM_SH_MMZONE_H | ||
| 2 | #define __ASM_SH_MMZONE_H | ||
| 3 | |||
| 4 | #ifdef __KERNEL__ | ||
| 5 | |||
| 6 | #ifdef CONFIG_NEED_MULTIPLE_NODES | ||
| 7 | extern struct pglist_data *node_data[]; | ||
| 8 | #define NODE_DATA(nid) (node_data[nid]) | ||
| 9 | |||
| 10 | #define node_start_pfn(nid) (NODE_DATA(nid)->node_start_pfn) | ||
| 11 | #define node_end_pfn(nid) (NODE_DATA(nid)->node_start_pfn + \ | ||
| 12 | NODE_DATA(nid)->node_spanned_pages) | ||
| 13 | |||
| 14 | static inline int pfn_to_nid(unsigned long pfn) | ||
| 15 | { | ||
| 16 | int nid; | ||
| 17 | |||
| 18 | for (nid = 0; nid < MAX_NUMNODES; nid++) | ||
| 19 | if (pfn >= node_start_pfn(nid) && pfn <= node_end_pfn(nid)) | ||
| 20 | break; | ||
| 21 | |||
| 22 | return nid; | ||
| 23 | } | ||
| 24 | |||
| 25 | static inline struct pglist_data *pfn_to_pgdat(unsigned long pfn) | ||
| 26 | { | ||
| 27 | return NODE_DATA(pfn_to_nid(pfn)); | ||
| 28 | } | ||
| 29 | |||
| 30 | /* arch/sh/mm/numa.c */ | ||
| 31 | void __init setup_bootmem_node(int nid, unsigned long start, unsigned long end); | ||
| 32 | #else | ||
| 33 | static inline void | ||
| 34 | setup_bootmem_node(int nid, unsigned long start, unsigned long end) | ||
| 35 | { | ||
| 36 | } | ||
| 37 | #endif /* CONFIG_NEED_MULTIPLE_NODES */ | ||
| 38 | |||
| 39 | /* Platform specific mem init */ | ||
| 40 | void __init plat_mem_setup(void); | ||
| 41 | |||
| 42 | /* arch/sh/kernel/setup.c */ | ||
| 43 | void __init setup_bootmem_allocator(unsigned long start_pfn); | ||
| 44 | |||
| 45 | #endif /* __KERNEL__ */ | ||
| 46 | #endif /* __ASM_SH_MMZONE_H */ | ||
diff --git a/include/asm-sh/page.h b/include/asm-sh/page.h index 7464de4ba07d..6bc9bba10105 100644 --- a/include/asm-sh/page.h +++ b/include/asm-sh/page.h | |||
| @@ -60,6 +60,7 @@ extern void (*copy_page)(void *to, void *from); | |||
| 60 | 60 | ||
| 61 | extern unsigned long shm_align_mask; | 61 | extern unsigned long shm_align_mask; |
| 62 | extern unsigned long max_low_pfn, min_low_pfn; | 62 | extern unsigned long max_low_pfn, min_low_pfn; |
| 63 | extern unsigned long memory_start, memory_end; | ||
| 63 | 64 | ||
| 64 | #ifdef CONFIG_MMU | 65 | #ifdef CONFIG_MMU |
| 65 | extern void clear_page_slow(void *to); | 66 | extern void clear_page_slow(void *to); |
| @@ -134,7 +135,9 @@ typedef struct { unsigned long pgd; } pgd_t; | |||
| 134 | #define PFN_START (__MEMORY_START >> PAGE_SHIFT) | 135 | #define PFN_START (__MEMORY_START >> PAGE_SHIFT) |
| 135 | #define ARCH_PFN_OFFSET (PFN_START) | 136 | #define ARCH_PFN_OFFSET (PFN_START) |
| 136 | #define virt_to_page(kaddr) pfn_to_page(__pa(kaddr) >> PAGE_SHIFT) | 137 | #define virt_to_page(kaddr) pfn_to_page(__pa(kaddr) >> PAGE_SHIFT) |
| 138 | #ifdef CONFIG_FLATMEM | ||
| 137 | #define pfn_valid(pfn) ((pfn) >= min_low_pfn && (pfn) < max_low_pfn) | 139 | #define pfn_valid(pfn) ((pfn) >= min_low_pfn && (pfn) < max_low_pfn) |
| 140 | #endif | ||
| 138 | #define virt_addr_valid(kaddr) pfn_valid(__pa(kaddr) >> PAGE_SHIFT) | 141 | #define virt_addr_valid(kaddr) pfn_valid(__pa(kaddr) >> PAGE_SHIFT) |
| 139 | 142 | ||
| 140 | #define VM_DATA_DEFAULT_FLAGS (VM_READ | VM_WRITE | VM_EXEC | \ | 143 | #define VM_DATA_DEFAULT_FLAGS (VM_READ | VM_WRITE | VM_EXEC | \ |
| @@ -148,5 +151,12 @@ typedef struct { unsigned long pgd; } pgd_t; | |||
| 148 | #define __HAVE_ARCH_GATE_AREA | 151 | #define __HAVE_ARCH_GATE_AREA |
| 149 | #endif | 152 | #endif |
| 150 | 153 | ||
| 154 | /* | ||
| 155 | * Slub defaults to 8-byte alignment, we're only interested in 4. | ||
| 156 | * Slab defaults to BYTES_PER_WORD, which ends up being the same anyways. | ||
| 157 | */ | ||
| 158 | #define ARCH_KMALLOC_MINALIGN 4 | ||
| 159 | #define ARCH_SLAB_MINALIGN 4 | ||
| 160 | |||
| 151 | #endif /* __KERNEL__ */ | 161 | #endif /* __KERNEL__ */ |
| 152 | #endif /* __ASM_SH_PAGE_H */ | 162 | #endif /* __ASM_SH_PAGE_H */ |
diff --git a/include/asm-sh/parport.h b/include/asm-sh/parport.h new file mode 100644 index 000000000000..f67ba60a2acd --- /dev/null +++ b/include/asm-sh/parport.h | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) 1999, 2000 Tim Waugh <tim@cyberelk.demon.co.uk> | ||
| 3 | * | ||
| 4 | * This file should only be included by drivers/parport/parport_pc.c. | ||
| 5 | */ | ||
| 6 | #ifndef __ASM_SH_PARPORT_H | ||
| 7 | #define __ASM_SH_PARPORT_H | ||
| 8 | |||
| 9 | static int __devinit parport_pc_find_isa_ports(int autoirq, int autodma); | ||
| 10 | |||
| 11 | static int __devinit parport_pc_find_nonpci_ports(int autoirq, int autodma) | ||
| 12 | { | ||
| 13 | return parport_pc_find_isa_ports(autoirq, autodma); | ||
| 14 | } | ||
| 15 | |||
| 16 | #endif /* __ASM_SH_PARPORT_H */ | ||
diff --git a/include/asm-sh/processor.h b/include/asm-sh/processor.h index d42f68e724fa..2252e75daa26 100644 --- a/include/asm-sh/processor.h +++ b/include/asm-sh/processor.h | |||
| @@ -36,7 +36,7 @@ | |||
| 36 | */ | 36 | */ |
| 37 | enum cpu_type { | 37 | enum cpu_type { |
| 38 | /* SH-2 types */ | 38 | /* SH-2 types */ |
| 39 | CPU_SH7604, CPU_SH7619, | 39 | CPU_SH7619, |
| 40 | 40 | ||
| 41 | /* SH-2A types */ | 41 | /* SH-2A types */ |
| 42 | CPU_SH7206, | 42 | CPU_SH7206, |
| @@ -52,7 +52,7 @@ enum cpu_type { | |||
| 52 | CPU_SH7760, CPU_ST40RA, CPU_ST40GX1, CPU_SH4_202, CPU_SH4_501, | 52 | CPU_SH7760, CPU_ST40RA, CPU_ST40GX1, CPU_SH4_202, CPU_SH4_501, |
| 53 | 53 | ||
| 54 | /* SH-4A types */ | 54 | /* SH-4A types */ |
| 55 | CPU_SH7770, CPU_SH7780, CPU_SH7781, CPU_SH7785, | 55 | CPU_SH7770, CPU_SH7780, CPU_SH7781, CPU_SH7785, CPU_SHX3, |
| 56 | 56 | ||
| 57 | /* SH4AL-DSP types */ | 57 | /* SH4AL-DSP types */ |
| 58 | CPU_SH73180, CPU_SH7343, CPU_SH7722, | 58 | CPU_SH73180, CPU_SH7343, CPU_SH7722, |
| @@ -228,11 +228,7 @@ static __inline__ void grab_fpu(struct pt_regs *regs) | |||
| 228 | regs->sr &= ~SR_FD; | 228 | regs->sr &= ~SR_FD; |
| 229 | } | 229 | } |
| 230 | 230 | ||
| 231 | #ifdef CONFIG_CPU_SH4 | ||
| 232 | extern void save_fpu(struct task_struct *__tsk, struct pt_regs *regs); | 231 | extern void save_fpu(struct task_struct *__tsk, struct pt_regs *regs); |
| 233 | #else | ||
| 234 | #define save_fpu(tsk) do { } while (0) | ||
| 235 | #endif | ||
| 236 | 232 | ||
| 237 | #define unlazy_fpu(tsk, regs) do { \ | 233 | #define unlazy_fpu(tsk, regs) do { \ |
| 238 | if (test_tsk_thread_flag(tsk, TIF_USEDFPU)) { \ | 234 | if (test_tsk_thread_flag(tsk, TIF_USEDFPU)) { \ |
diff --git a/include/asm-sh/rwsem.h b/include/asm-sh/rwsem.h index 4931ba817d73..1987f3ea7f1b 100644 --- a/include/asm-sh/rwsem.h +++ b/include/asm-sh/rwsem.h | |||
| @@ -1,11 +1,15 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * include/asm-ppc/rwsem.h: R/W semaphores for SH using the stuff | 2 | * include/asm-sh/rwsem.h: R/W semaphores for SH using the stuff |
| 3 | * in lib/rwsem.c. | 3 | * in lib/rwsem.c. |
| 4 | */ | 4 | */ |
| 5 | 5 | ||
| 6 | #ifndef _ASM_SH_RWSEM_H | 6 | #ifndef _ASM_SH_RWSEM_H |
| 7 | #define _ASM_SH_RWSEM_H | 7 | #define _ASM_SH_RWSEM_H |
| 8 | 8 | ||
| 9 | #ifndef _LINUX_RWSEM_H | ||
| 10 | #error "please don't include asm/rwsem.h directly, use linux/rwsem.h instead" | ||
| 11 | #endif | ||
| 12 | |||
| 9 | #ifdef __KERNEL__ | 13 | #ifdef __KERNEL__ |
| 10 | #include <linux/list.h> | 14 | #include <linux/list.h> |
| 11 | #include <linux/spinlock.h> | 15 | #include <linux/spinlock.h> |
diff --git a/include/asm-sh/saturn/io.h b/include/asm-sh/saturn/io.h deleted file mode 100644 index f1b9b5d633f4..000000000000 --- a/include/asm-sh/saturn/io.h +++ /dev/null | |||
| @@ -1,19 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * include/asm-sh/saturn/io.h | ||
| 3 | * | ||
| 4 | * I/O functions for use on the Sega Saturn. | ||
| 5 | * | ||
| 6 | * Copyright (C) 2002 Paul Mundt | ||
| 7 | * | ||
| 8 | * Released under the terms of the GNU GPL v2.0. | ||
| 9 | */ | ||
| 10 | #ifndef __ASM_SH_SATURN_IO_H | ||
| 11 | #define __ASM_SH_SATURN_IO_H | ||
| 12 | |||
| 13 | /* arch/sh/boards/saturn/io.c */ | ||
| 14 | extern unsigned long saturn_isa_port2addr(unsigned long offset); | ||
| 15 | extern void *saturn_ioremap(unsigned long offset, unsigned long size); | ||
| 16 | extern void saturn_iounmap(void *addr); | ||
| 17 | |||
| 18 | #endif /* __ASM_SH_SATURN_IO_H */ | ||
| 19 | |||
diff --git a/include/asm-sh/saturn/smpc.h b/include/asm-sh/saturn/smpc.h deleted file mode 100644 index 5de5c12d6347..000000000000 --- a/include/asm-sh/saturn/smpc.h +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * include/asm-sh/saturn/smpc.h | ||
| 3 | * | ||
| 4 | * System Manager / Peripheral Control definitions. | ||
| 5 | * | ||
| 6 | * Copyright (C) 2002 Paul Mundt | ||
| 7 | * | ||
| 8 | * Released under the terms of the GNU GPL v2.0. | ||
| 9 | */ | ||
| 10 | #ifndef __ASM_SH_SATURN_SMPC_H | ||
| 11 | #define __ASM_SH_SATURN_SMPC_H | ||
| 12 | |||
| 13 | #include <asm/io.h> | ||
| 14 | |||
| 15 | #define SMPC_COMMAND 0x2010001f /* SMPC command register */ | ||
| 16 | #define SMPC_RESULT 0x2010005f /* SMPC result register */ | ||
| 17 | #define SMPC_STATUS 0x20100063 /* SMPC status register */ | ||
| 18 | |||
| 19 | #define SMPC_CMD_MSHON 0x0001 /* Master SH On */ | ||
| 20 | #define SMPC_CMD_SSHON 0x0002 /* Slave SH On */ | ||
| 21 | #define SMPC_CMD_SSHOFF 0x0003 /* Slave SH Off */ | ||
| 22 | #define SMPC_CMD_SNDON 0x0004 /* Sound On */ | ||
| 23 | #define SMPC_CMD_SNDOFF 0x0005 /* Sound Off */ | ||
| 24 | #define SMPC_CMD_CDON 0x0006 /* CD On */ | ||
| 25 | #define SMPC_CMD_CDOFF 0x0007 /* CD Off */ | ||
| 26 | |||
| 27 | static inline void smpc_barrier(void) | ||
| 28 | { | ||
| 29 | while ((ctrl_inb(SMPC_STATUS) & 0x0001) == 0x0001) | ||
| 30 | ; | ||
| 31 | } | ||
| 32 | |||
| 33 | #endif /* __ASM_SH_SATURN_SMPC_H */ | ||
| 34 | |||
diff --git a/include/asm-sh/sections.h b/include/asm-sh/sections.h index 57abd708b236..2a696b8ee4f5 100644 --- a/include/asm-sh/sections.h +++ b/include/asm-sh/sections.h | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | 3 | ||
| 4 | #include <asm-generic/sections.h> | 4 | #include <asm-generic/sections.h> |
| 5 | 5 | ||
| 6 | extern char _end[]; | 6 | extern long __machvec_start, __machvec_end; |
| 7 | 7 | ||
| 8 | #endif /* __ASM_SH_SECTIONS_H */ | 8 | #endif /* __ASM_SH_SECTIONS_H */ |
| 9 | 9 | ||
diff --git a/include/asm-sh/setup.h b/include/asm-sh/setup.h index 1583c6b7bdaa..586a9711a75d 100644 --- a/include/asm-sh/setup.h +++ b/include/asm-sh/setup.h | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | #ifdef __KERNEL__ | 6 | #ifdef __KERNEL__ |
| 7 | 7 | ||
| 8 | int setup_early_printk(char *); | 8 | int setup_early_printk(char *); |
| 9 | void sh_mv_setup(void); | ||
| 9 | 10 | ||
| 10 | #endif /* __KERNEL__ */ | 11 | #endif /* __KERNEL__ */ |
| 11 | 12 | ||
diff --git a/include/asm-sh/sh03/io.h b/include/asm-sh/sh03/io.h index df3b187ef883..4ff1eb900301 100644 --- a/include/asm-sh/sh03/io.h +++ b/include/asm-sh/sh03/io.h | |||
| @@ -14,22 +14,18 @@ | |||
| 14 | #define INTC_IPRD 0xffd00010UL | 14 | #define INTC_IPRD 0xffd00010UL |
| 15 | 15 | ||
| 16 | #define IRL0_IRQ 2 | 16 | #define IRL0_IRQ 2 |
| 17 | #define IRL0_IPR_ADDR INTC_IPRD | ||
| 18 | #define IRL0_IPR_POS 3 | 17 | #define IRL0_IPR_POS 3 |
| 19 | #define IRL0_PRIORITY 13 | 18 | #define IRL0_PRIORITY 13 |
| 20 | 19 | ||
| 21 | #define IRL1_IRQ 5 | 20 | #define IRL1_IRQ 5 |
| 22 | #define IRL1_IPR_ADDR INTC_IPRD | ||
| 23 | #define IRL1_IPR_POS 2 | 21 | #define IRL1_IPR_POS 2 |
| 24 | #define IRL1_PRIORITY 10 | 22 | #define IRL1_PRIORITY 10 |
| 25 | 23 | ||
| 26 | #define IRL2_IRQ 8 | 24 | #define IRL2_IRQ 8 |
| 27 | #define IRL2_IPR_ADDR INTC_IPRD | ||
| 28 | #define IRL2_IPR_POS 1 | 25 | #define IRL2_IPR_POS 1 |
| 29 | #define IRL2_PRIORITY 7 | 26 | #define IRL2_PRIORITY 7 |
| 30 | 27 | ||
| 31 | #define IRL3_IRQ 11 | 28 | #define IRL3_IRQ 11 |
| 32 | #define IRL3_IPR_ADDR INTC_IPRD | ||
| 33 | #define IRL3_IPR_POS 0 | 29 | #define IRL3_IPR_POS 0 |
| 34 | #define IRL3_PRIORITY 4 | 30 | #define IRL3_PRIORITY 4 |
| 35 | 31 | ||
diff --git a/include/asm-sh/smp.h b/include/asm-sh/smp.h index caa7b93f1bce..b99ca786c0c1 100644 --- a/include/asm-sh/smp.h +++ b/include/asm-sh/smp.h | |||
| @@ -39,4 +39,6 @@ extern struct smp_fn_call_struct smp_fn_call; | |||
| 39 | 39 | ||
| 40 | #endif /* CONFIG_SMP */ | 40 | #endif /* CONFIG_SMP */ |
| 41 | 41 | ||
| 42 | #define hard_smp_processor_id() (0) | ||
| 43 | |||
| 42 | #endif /* __ASM_SH_SMP_H */ | 44 | #endif /* __ASM_SH_SMP_H */ |
diff --git a/include/asm-sh/snapgear.h b/include/asm-sh/snapgear.h index 2d712e72c9e5..3554e3a74e99 100644 --- a/include/asm-sh/snapgear.h +++ b/include/asm-sh/snapgear.h | |||
| @@ -20,22 +20,18 @@ | |||
| 20 | */ | 20 | */ |
| 21 | 21 | ||
| 22 | #define IRL0_IRQ 2 | 22 | #define IRL0_IRQ 2 |
| 23 | #define IRL0_IPR_ADDR INTC_IPRD | ||
| 24 | #define IRL0_IPR_POS 3 | 23 | #define IRL0_IPR_POS 3 |
| 25 | #define IRL0_PRIORITY 13 | 24 | #define IRL0_PRIORITY 13 |
| 26 | 25 | ||
| 27 | #define IRL1_IRQ 5 | 26 | #define IRL1_IRQ 5 |
| 28 | #define IRL1_IPR_ADDR INTC_IPRD | ||
| 29 | #define IRL1_IPR_POS 2 | 27 | #define IRL1_IPR_POS 2 |
| 30 | #define IRL1_PRIORITY 10 | 28 | #define IRL1_PRIORITY 10 |
| 31 | 29 | ||
| 32 | #define IRL2_IRQ 8 | 30 | #define IRL2_IRQ 8 |
| 33 | #define IRL2_IPR_ADDR INTC_IPRD | ||
| 34 | #define IRL2_IPR_POS 1 | 31 | #define IRL2_IPR_POS 1 |
| 35 | #define IRL2_PRIORITY 7 | 32 | #define IRL2_PRIORITY 7 |
| 36 | 33 | ||
| 37 | #define IRL3_IRQ 11 | 34 | #define IRL3_IRQ 11 |
| 38 | #define IRL3_IPR_ADDR INTC_IPRD | ||
| 39 | #define IRL3_IPR_POS 0 | 35 | #define IRL3_IPR_POS 0 |
| 40 | #define IRL3_PRIORITY 4 | 36 | #define IRL3_PRIORITY 4 |
| 41 | #endif | 37 | #endif |
diff --git a/include/asm-sh/sparsemem.h b/include/asm-sh/sparsemem.h new file mode 100644 index 000000000000..547a540b6667 --- /dev/null +++ b/include/asm-sh/sparsemem.h | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | #ifndef __ASM_SH_SPARSEMEM_H | ||
| 2 | #define __ASM_SH_SPARSEMEM_H | ||
| 3 | |||
| 4 | #ifdef __KERNEL__ | ||
| 5 | /* | ||
| 6 | * SECTION_SIZE_BITS 2^N: how big each section will be | ||
| 7 | * MAX_PHYSADDR_BITS 2^N: how much physical address space we have | ||
| 8 | * MAX_PHYSMEM_BITS 2^N: how much memory we can have in that space | ||
| 9 | */ | ||
| 10 | #define SECTION_SIZE_BITS 26 | ||
| 11 | #define MAX_PHYSADDR_BITS 32 | ||
| 12 | #define MAX_PHYSMEM_BITS 32 | ||
| 13 | |||
| 14 | #endif | ||
| 15 | |||
| 16 | #endif /* __ASM_SH_SPARSEMEM_H */ | ||
diff --git a/include/asm-sh/system.h b/include/asm-sh/system.h index 82f3e229e621..7c75045ae22b 100644 --- a/include/asm-sh/system.h +++ b/include/asm-sh/system.h | |||
| @@ -8,9 +8,13 @@ | |||
| 8 | 8 | ||
| 9 | #include <linux/irqflags.h> | 9 | #include <linux/irqflags.h> |
| 10 | #include <linux/compiler.h> | 10 | #include <linux/compiler.h> |
| 11 | #include <linux/linkage.h> | ||
| 11 | #include <asm/types.h> | 12 | #include <asm/types.h> |
| 12 | #include <asm/ptrace.h> | 13 | #include <asm/ptrace.h> |
| 13 | 14 | ||
| 15 | struct task_struct *__switch_to(struct task_struct *prev, | ||
| 16 | struct task_struct *next); | ||
| 17 | |||
| 14 | /* | 18 | /* |
| 15 | * switch_to() should switch tasks to task nr n, first | 19 | * switch_to() should switch tasks to task nr n, first |
| 16 | */ | 20 | */ |
| @@ -122,7 +126,7 @@ static inline void sched_cacheflush(void) | |||
| 122 | #define smp_read_barrier_depends() do { } while(0) | 126 | #define smp_read_barrier_depends() do { } while(0) |
| 123 | #endif | 127 | #endif |
| 124 | 128 | ||
| 125 | #define set_mb(var, value) do { xchg(&var, value); } while (0) | 129 | #define set_mb(var, value) do { (void)xchg(&var, value); } while (0) |
| 126 | 130 | ||
| 127 | /* | 131 | /* |
| 128 | * Jump to P2 area. | 132 | * Jump to P2 area. |
| @@ -271,6 +275,16 @@ extern unsigned int instruction_size(unsigned int insn); | |||
| 271 | void disable_hlt(void); | 275 | void disable_hlt(void); |
| 272 | void enable_hlt(void); | 276 | void enable_hlt(void); |
| 273 | 277 | ||
| 278 | void default_idle(void); | ||
| 279 | |||
| 280 | asmlinkage void break_point_trap(void); | ||
| 281 | asmlinkage void debug_trap_handler(unsigned long r4, unsigned long r5, | ||
| 282 | unsigned long r6, unsigned long r7, | ||
| 283 | struct pt_regs __regs); | ||
| 284 | asmlinkage void bug_trap_handler(unsigned long r4, unsigned long r5, | ||
| 285 | unsigned long r6, unsigned long r7, | ||
| 286 | struct pt_regs __regs); | ||
| 287 | |||
| 274 | #define arch_align_stack(x) (x) | 288 | #define arch_align_stack(x) (x) |
| 275 | 289 | ||
| 276 | #endif | 290 | #endif |
diff --git a/include/asm-sh/topology.h b/include/asm-sh/topology.h index cff001c316fe..f402a3b1cfa4 100644 --- a/include/asm-sh/topology.h +++ b/include/asm-sh/topology.h | |||
| @@ -1,6 +1,36 @@ | |||
| 1 | #ifndef _ASM_SH_TOPOLOGY_H | 1 | #ifndef _ASM_SH_TOPOLOGY_H |
| 2 | #define _ASM_SH_TOPOLOGY_H | 2 | #define _ASM_SH_TOPOLOGY_H |
| 3 | 3 | ||
| 4 | #ifdef CONFIG_NUMA | ||
| 5 | |||
| 6 | /* sched_domains SD_NODE_INIT for sh machines */ | ||
| 7 | #define SD_NODE_INIT (struct sched_domain) { \ | ||
| 8 | .span = CPU_MASK_NONE, \ | ||
| 9 | .parent = NULL, \ | ||
| 10 | .child = NULL, \ | ||
| 11 | .groups = NULL, \ | ||
| 12 | .min_interval = 8, \ | ||
| 13 | .max_interval = 32, \ | ||
| 14 | .busy_factor = 32, \ | ||
| 15 | .imbalance_pct = 125, \ | ||
| 16 | .cache_nice_tries = 2, \ | ||
| 17 | .busy_idx = 3, \ | ||
| 18 | .idle_idx = 2, \ | ||
| 19 | .newidle_idx = 0, \ | ||
| 20 | .wake_idx = 1, \ | ||
| 21 | .forkexec_idx = 1, \ | ||
| 22 | .flags = SD_LOAD_BALANCE \ | ||
| 23 | | SD_BALANCE_FORK \ | ||
| 24 | | SD_BALANCE_EXEC \ | ||
| 25 | | SD_SERIALIZE \ | ||
| 26 | | SD_WAKE_BALANCE, \ | ||
| 27 | .last_balance = jiffies, \ | ||
| 28 | .balance_interval = 1, \ | ||
| 29 | .nr_balance_failed = 0, \ | ||
| 30 | } | ||
| 31 | |||
| 32 | #endif | ||
| 33 | |||
| 4 | #include <asm-generic/topology.h> | 34 | #include <asm-generic/topology.h> |
| 5 | 35 | ||
| 6 | #endif /* _ASM_SH_TOPOLOGY_H */ | 36 | #endif /* _ASM_SH_TOPOLOGY_H */ |
diff --git a/include/asm-sh/uaccess.h b/include/asm-sh/uaccess.h index 5c49ed6715f2..f18a1a5c95c0 100644 --- a/include/asm-sh/uaccess.h +++ b/include/asm-sh/uaccess.h | |||
| @@ -61,8 +61,6 @@ static inline void set_fs(mm_segment_t s) | |||
| 61 | */ | 61 | */ |
| 62 | static inline int __access_ok(unsigned long addr, unsigned long size) | 62 | static inline int __access_ok(unsigned long addr, unsigned long size) |
| 63 | { | 63 | { |
| 64 | extern unsigned long memory_start, memory_end; | ||
| 65 | |||
| 66 | return ((addr >= memory_start) && ((addr + size) < memory_end)); | 64 | return ((addr >= memory_start) && ((addr + size) < memory_end)); |
| 67 | } | 65 | } |
| 68 | #else /* CONFIG_MMU */ | 66 | #else /* CONFIG_MMU */ |
| @@ -76,7 +74,7 @@ static inline int __access_ok(unsigned long addr, unsigned long size) | |||
| 76 | * __access_ok: Check if address with size is OK or not. | 74 | * __access_ok: Check if address with size is OK or not. |
| 77 | * | 75 | * |
| 78 | * We do three checks: | 76 | * We do three checks: |
| 79 | * (1) is it user space? | 77 | * (1) is it user space? |
| 80 | * (2) addr + size --> carry? | 78 | * (2) addr + size --> carry? |
| 81 | * (3) addr + size >= 0x80000000 (PAGE_OFFSET) | 79 | * (3) addr + size >= 0x80000000 (PAGE_OFFSET) |
| 82 | * | 80 | * |
| @@ -142,11 +140,12 @@ static inline int access_ok(int type, const void __user *p, unsigned long size) | |||
| 142 | __get_user_nocheck((x),(ptr),sizeof(*(ptr))) | 140 | __get_user_nocheck((x),(ptr),sizeof(*(ptr))) |
| 143 | 141 | ||
| 144 | struct __large_struct { unsigned long buf[100]; }; | 142 | struct __large_struct { unsigned long buf[100]; }; |
| 145 | #define __m(x) (*(struct __large_struct *)(x)) | 143 | #define __m(x) (*(struct __large_struct __user *)(x)) |
| 146 | 144 | ||
| 147 | #define __get_user_size(x,ptr,size,retval) \ | 145 | #define __get_user_size(x,ptr,size,retval) \ |
| 148 | do { \ | 146 | do { \ |
| 149 | retval = 0; \ | 147 | retval = 0; \ |
| 148 | __chk_user_ptr(ptr); \ | ||
| 150 | switch (size) { \ | 149 | switch (size) { \ |
| 151 | case 1: \ | 150 | case 1: \ |
| 152 | __get_user_asm(x, ptr, retval, "b"); \ | 151 | __get_user_asm(x, ptr, retval, "b"); \ |
| @@ -175,6 +174,7 @@ do { \ | |||
| 175 | #define __get_user_check(x,ptr,size) \ | 174 | #define __get_user_check(x,ptr,size) \ |
| 176 | ({ \ | 175 | ({ \ |
| 177 | long __gu_err, __gu_val; \ | 176 | long __gu_err, __gu_val; \ |
| 177 | __chk_user_ptr(ptr); \ | ||
| 178 | switch (size) { \ | 178 | switch (size) { \ |
| 179 | case 1: \ | 179 | case 1: \ |
| 180 | __get_user_1(__gu_val, (ptr), __gu_err); \ | 180 | __get_user_1(__gu_val, (ptr), __gu_err); \ |
| @@ -300,6 +300,7 @@ extern void __get_user_unknown(void); | |||
| 300 | #define __put_user_size(x,ptr,size,retval) \ | 300 | #define __put_user_size(x,ptr,size,retval) \ |
| 301 | do { \ | 301 | do { \ |
| 302 | retval = 0; \ | 302 | retval = 0; \ |
| 303 | __chk_user_ptr(ptr); \ | ||
| 303 | switch (size) { \ | 304 | switch (size) { \ |
| 304 | case 1: \ | 305 | case 1: \ |
| 305 | __put_user_asm(x, ptr, retval, "b"); \ | 306 | __put_user_asm(x, ptr, retval, "b"); \ |
| @@ -328,7 +329,7 @@ do { \ | |||
| 328 | #define __put_user_check(x,ptr,size) \ | 329 | #define __put_user_check(x,ptr,size) \ |
| 329 | ({ \ | 330 | ({ \ |
| 330 | long __pu_err = -EFAULT; \ | 331 | long __pu_err = -EFAULT; \ |
| 331 | __typeof__(*(ptr)) *__pu_addr = (ptr); \ | 332 | __typeof__(*(ptr)) __user *__pu_addr = (ptr); \ |
| 332 | \ | 333 | \ |
| 333 | if (__access_ok((unsigned long)__pu_addr,size)) \ | 334 | if (__access_ok((unsigned long)__pu_addr,size)) \ |
| 334 | __put_user_size((x),__pu_addr,(size),__pu_err); \ | 335 | __put_user_size((x),__pu_addr,(size),__pu_err); \ |
| @@ -406,10 +407,10 @@ __asm__ __volatile__( \ | |||
| 406 | #endif | 407 | #endif |
| 407 | 408 | ||
| 408 | extern void __put_user_unknown(void); | 409 | extern void __put_user_unknown(void); |
| 409 | 410 | ||
| 410 | /* Generic arbitrary sized copy. */ | 411 | /* Generic arbitrary sized copy. */ |
| 411 | /* Return the number of bytes NOT copied */ | 412 | /* Return the number of bytes NOT copied */ |
| 412 | extern __kernel_size_t __copy_user(void *to, const void *from, __kernel_size_t n); | 413 | __kernel_size_t __copy_user(void *to, const void *from, __kernel_size_t n); |
| 413 | 414 | ||
| 414 | #define copy_to_user(to,from,n) ({ \ | 415 | #define copy_to_user(to,from,n) ({ \ |
| 415 | void *__copy_to = (void *) (to); \ | 416 | void *__copy_to = (void *) (to); \ |
| @@ -420,14 +421,6 @@ __copy_res = __copy_user(__copy_to, (void *) (from), __copy_size); \ | |||
| 420 | } else __copy_res = __copy_size; \ | 421 | } else __copy_res = __copy_size; \ |
| 421 | __copy_res; }) | 422 | __copy_res; }) |
| 422 | 423 | ||
| 423 | #define __copy_to_user(to,from,n) \ | ||
| 424 | __copy_user((void *)(to), \ | ||
| 425 | (void *)(from), n) | ||
| 426 | |||
| 427 | #define __copy_to_user_inatomic __copy_to_user | ||
| 428 | #define __copy_from_user_inatomic __copy_from_user | ||
| 429 | |||
| 430 | |||
| 431 | #define copy_from_user(to,from,n) ({ \ | 424 | #define copy_from_user(to,from,n) ({ \ |
| 432 | void *__copy_to = (void *) (to); \ | 425 | void *__copy_to = (void *) (to); \ |
| 433 | void *__copy_from = (void *) (from); \ | 426 | void *__copy_from = (void *) (from); \ |
| @@ -438,9 +431,20 @@ __copy_res = __copy_user(__copy_to, __copy_from, __copy_size); \ | |||
| 438 | } else __copy_res = __copy_size; \ | 431 | } else __copy_res = __copy_size; \ |
| 439 | __copy_res; }) | 432 | __copy_res; }) |
| 440 | 433 | ||
| 441 | #define __copy_from_user(to,from,n) \ | 434 | static __always_inline unsigned long |
| 442 | __copy_user((void *)(to), \ | 435 | __copy_from_user(void *to, const void __user *from, unsigned long n) |
| 443 | (void *)(from), n) | 436 | { |
| 437 | return __copy_user(to, (__force void *)from, n); | ||
| 438 | } | ||
| 439 | |||
| 440 | static __always_inline unsigned long __must_check | ||
| 441 | __copy_to_user(void __user *to, const void *from, unsigned long n) | ||
| 442 | { | ||
| 443 | return __copy_user((__force void *)to, from, n); | ||
| 444 | } | ||
| 445 | |||
| 446 | #define __copy_to_user_inatomic __copy_to_user | ||
| 447 | #define __copy_from_user_inatomic __copy_from_user | ||
| 444 | 448 | ||
| 445 | /* | 449 | /* |
| 446 | * Clear the area and return remaining number of bytes | 450 | * Clear the area and return remaining number of bytes |
diff --git a/include/asm-sh/ubc.h b/include/asm-sh/ubc.h index ae9bbdeefbe1..38d46e01b846 100644 --- a/include/asm-sh/ubc.h +++ b/include/asm-sh/ubc.h | |||
| @@ -51,9 +51,14 @@ | |||
| 51 | #define BRCR_UBDE (1 << 0) | 51 | #define BRCR_UBDE (1 << 0) |
| 52 | 52 | ||
| 53 | #ifndef __ASSEMBLY__ | 53 | #ifndef __ASSEMBLY__ |
| 54 | /* arch/sh/kernel/ubc.S */ | 54 | /* arch/sh/kernel/cpu/ubc.S */ |
| 55 | extern void ubc_wakeup(void); | ||
| 56 | extern void ubc_sleep(void); | 55 | extern void ubc_sleep(void); |
| 56 | |||
| 57 | #ifdef CONFIG_UBC_WAKEUP | ||
| 58 | extern void ubc_wakeup(void); | ||
| 59 | #else | ||
| 60 | #define ubc_wakeup() do { } while (0) | ||
| 61 | #endif | ||
| 57 | #endif | 62 | #endif |
| 58 | 63 | ||
| 59 | #endif /* __KERNEL__ */ | 64 | #endif /* __KERNEL__ */ |
diff --git a/mm/Kconfig b/mm/Kconfig index 40559cfd49f7..086af703da43 100644 --- a/mm/Kconfig +++ b/mm/Kconfig | |||
| @@ -117,7 +117,7 @@ config MEMORY_HOTPLUG | |||
| 117 | bool "Allow for memory hot-add" | 117 | bool "Allow for memory hot-add" |
| 118 | depends on SPARSEMEM || X86_64_ACPI_NUMA | 118 | depends on SPARSEMEM || X86_64_ACPI_NUMA |
| 119 | depends on HOTPLUG && !SOFTWARE_SUSPEND && ARCH_ENABLE_MEMORY_HOTPLUG | 119 | depends on HOTPLUG && !SOFTWARE_SUSPEND && ARCH_ENABLE_MEMORY_HOTPLUG |
| 120 | depends on (IA64 || X86 || PPC64) | 120 | depends on (IA64 || X86 || PPC64 || SUPERH) |
| 121 | 121 | ||
| 122 | comment "Memory hotplug is currently incompatible with Software Suspend" | 122 | comment "Memory hotplug is currently incompatible with Software Suspend" |
| 123 | depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND | 123 | depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND |
