1# 2# For a description of the syntax of this configuration file, 3# see Documentation/kbuild/kconfig-language.txt. 4# 5 6mainmenu "Linux/SuperH Kernel Configuration" 7 8config SUPERH 9 bool 10 default y 11 select EMBEDDED 12 help 13 The SuperH is a RISC processor targeted for use in embedded systems 14 and consumer electronics; it was also used in the Sega Dreamcast 15 gaming console. The SuperH port has a home page at 16 <http://www.linux-sh.org/>. 17 18config RWSEM_GENERIC_SPINLOCK 19 bool 20 default y 21 22config RWSEM_XCHGADD_ALGORITHM 23 bool 24 25config GENERIC_BUG 26 def_bool y 27 depends on BUG 28 29config GENERIC_FIND_NEXT_BIT 30 bool 31 default y 32 33config GENERIC_HWEIGHT 34 bool 35 default y 36 37config GENERIC_HARDIRQS 38 bool 39 default y 40 41config GENERIC_IRQ_PROBE 42 bool 43 default y 44 45config GENERIC_CALIBRATE_DELAY 46 bool 47 default y 48 49config GENERIC_IOMAP 50 bool 51 52config GENERIC_TIME 53 def_bool n 54 55config SYS_SUPPORTS_APM_EMULATION 56 bool 57 58config ARCH_MAY_HAVE_PC_FDC 59 bool 60 61config STACKTRACE_SUPPORT 62 bool 63 default y 64 65config LOCKDEP_SUPPORT 66 bool 67 default y 68 69config ARCH_HAS_ILOG2_U32 70 bool 71 default n 72 73config ARCH_HAS_ILOG2_U64 74 bool 75 default n 76 77source "init/Kconfig" 78 79menu "System type" 80 81config SOLUTION_ENGINE 82 bool 83 84choice 85 prompt "SuperH system type" 86 default SH_UNKNOWN 87 88config SH_SOLUTION_ENGINE 89 bool "SolutionEngine" 90 select SOLUTION_ENGINE 91 help 92 Select SolutionEngine if configuring for a Hitachi SH7709 93 or SH7750 evaluation board. 94 95config SH_7751_SOLUTION_ENGINE 96 bool "SolutionEngine7751" 97 select SOLUTION_ENGINE 98 select CPU_SUBTYPE_SH7751 99 help 100 Select 7751 SolutionEngine if configuring for a Hitachi SH7751 101 evaluation board. 102 103config SH_7300_SOLUTION_ENGINE 104 bool "SolutionEngine7300" 105 select SOLUTION_ENGINE 106 select CPU_SUBTYPE_SH7300 107 help 108 Select 7300 SolutionEngine if configuring for a Hitachi 109 SH7300(SH-Mobile V) evaluation board. 110 111config SH_7343_SOLUTION_ENGINE 112 bool "SolutionEngine7343" 113 select SOLUTION_ENGINE 114 select CPU_SUBTYPE_SH7343 115 help 116 Select 7343 SolutionEngine if configuring for a Hitachi 117 SH7343 (SH-Mobile 3AS) evaluation board. 118 119config SH_73180_SOLUTION_ENGINE 120 bool "SolutionEngine73180" 121 select SOLUTION_ENGINE 122 select CPU_SUBTYPE_SH73180 123 help 124 Select 73180 SolutionEngine if configuring for a Hitachi 125 SH73180(SH-Mobile 3) evaluation board. 126 127config SH_7751_SYSTEMH 128 bool "SystemH7751R" 129 select CPU_SUBTYPE_SH7751R 130 help 131 Select SystemH if you are configuring for a Renesas SystemH 132 7751R evaluation board. 133 134config SH_HP6XX 135 bool "HP6XX" 136 select SYS_SUPPORTS_APM_EMULATION 137 help 138 Select HP6XX if configuring for a HP jornada HP6xx. 139 More information (hardware only) at 140 <http://www.hp.com/jornada/>. 141 142config SH_SATURN 143 bool "Saturn" 144 select CPU_SUBTYPE_SH7604 145 help 146 Select Saturn if configuring for a SEGA Saturn. 147 148config SH_DREAMCAST 149 bool "Dreamcast" 150 select CPU_SUBTYPE_SH7091 151 help 152 Select Dreamcast if configuring for a SEGA Dreamcast. 153 More information at 154 <http://www.m17n.org/linux-sh/dreamcast/>. There is a 155 Dreamcast project is at <http://linuxdc.sourceforge.net/>. 156 157config SH_MPC1211 158 bool "Interface MPC1211" 159 help 160 CTP/PCI-SH02 is a CPU module computer that is produced 161 by Interface Corporation. 162 More information at <http://www.interface.co.jp> 163 164config SH_SH03 165 bool "Interface CTP/PCI-SH03" 166 help 167 CTP/PCI-SH03 is a CPU module computer that is produced 168 by Interface Corporation. 169 More information at <http://www.interface.co.jp> 170 171config SH_SECUREEDGE5410 172 bool "SecureEdge5410" 173 select CPU_SUBTYPE_SH7751R 174 help 175 Select SecureEdge5410 if configuring for a SnapGear SH board. 176 This includes both the OEM SecureEdge products as well as the 177 SME product line. 178 179config SH_HS7751RVOIP 180 bool "HS7751RVOIP" 181 select CPU_SUBTYPE_SH7751R 182 help 183 Select HS7751RVOIP if configuring for a Renesas Technology 184 Sales VoIP board. 185 186config SH_7710VOIPGW 187 bool "SH7710-VOIP-GW" 188 select CPU_SUBTYPE_SH7710 189 help 190 Select this option to build a kernel for the SH7710 based 191 VOIP GW. 192 193config SH_RTS7751R2D 194 bool "RTS7751R2D" 195 select CPU_SUBTYPE_SH7751R 196 help 197 Select RTS7751R2D if configuring for a Renesas Technology 198 Sales SH-Graphics board. 199 200config SH_HIGHLANDER 201 bool "Highlander" 202 203config SH_EDOSK7705 204 bool "EDOSK7705" 205 select CPU_SUBTYPE_SH7705 206 207config SH_SH4202_MICRODEV 208 bool "SH4-202 MicroDev" 209 select CPU_SUBTYPE_SH4_202 210 help 211 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board 212 with an SH4-202 CPU. 213 214config SH_LANDISK 215 bool "LANDISK" 216 select CPU_SUBTYPE_SH7751R 217 help 218 I-O DATA DEVICE, INC. "LANDISK Series" support. 219 220config SH_TITAN 221 bool "TITAN" 222 select CPU_SUBTYPE_SH7751R 223 help 224 Select Titan if you are configuring for a Nimble Microsystems 225 NetEngine NP51R. 226 227config SH_SHMIN 228 bool "SHMIN" 229 select CPU_SUBTYPE_SH7706 230 help 231 Select SHMIN if configuring for the SHMIN board. 232 233config SH_7206_SOLUTION_ENGINE 234 bool "SolutionEngine7206" 235 select CPU_SUBTYPE_SH7206 236 help 237 Select 7206 SolutionEngine if configuring for a Hitachi SH7206 238 evaluation board. 239 240config SH_7619_SOLUTION_ENGINE 241 bool "SolutionEngine7619" 242 select CPU_SUBTYPE_SH7619 243 help 244 Select 7619 SolutionEngine if configuring for a Hitachi SH7619 245 evaluation board. 246 247config SH_UNKNOWN 248 bool "BareCPU" 249 help 250 "Bare CPU" aka "unknown" means an SH-based system which is not one 251 of the specific ones mentioned above, which means you need to enter 252 all sorts of stuff like CONFIG_MEMORY_START because the config 253 system doesn't already know what it is. You get a machine vector 254 without any platform-specific code in it, so things like the RTC may 255 not work. 256 257 This option is for the early stages of porting to a new machine. 258 259endchoice 260 261source "arch/sh/boards/renesas/hs7751rvoip/Kconfig" 262source "arch/sh/boards/renesas/rts7751r2d/Kconfig" 263source "arch/sh/boards/renesas/r7780rp/Kconfig" 264 265source "arch/sh/mm/Kconfig" 266 267config CF_ENABLER 268 bool "Compact Flash Enabler support" 269 depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03 270 ---help--- 271 Compact Flash is a small, removable mass storage device introduced 272 in 1994 originally as a PCMCIA device. If you say `Y' here, you 273 compile in support for Compact Flash devices directly connected to 274 a SuperH processor. A Compact Flash FAQ is available at 275 <http://www.compactflash.org/faqs/faq.htm>. 276 277 If your board has "Directly Connected" CompactFlash at area 5 or 6, 278 you may want to enable this option. Then, you can use CF as 279 primary IDE drive (only tested for SanDisk). 280 281 If in doubt, select 'N'. 282 283choice 284 prompt "Compact Flash Connection Area" 285 depends on CF_ENABLER 286 default CF_AREA6 287 288config CF_AREA5 289 bool "Area5" 290 help 291 If your board has "Directly Connected" CompactFlash, You should 292 select the area where your CF is connected to. 293 294 - "Area5" if CompactFlash is connected to Area 5 (0x14000000) 295 - "Area6" if it is connected to Area 6 (0x18000000) 296 297 "Area6" will work for most boards. 298 299config CF_AREA6 300 bool "Area6" 301 302endchoice 303 304config CF_BASE_ADDR 305 hex 306 depends on CF_ENABLER 307 default "0xb8000000" if CF_AREA6 308 default "0xb4000000" if CF_AREA5 309 310menu "Processor features" 311 312choice 313 prompt "Endianess selection" 314 default CPU_LITTLE_ENDIAN 315 help 316 Some SuperH machines can be configured for either little or big 317 endian byte order. These modes require different kernels. 318 319config CPU_LITTLE_ENDIAN 320 bool "Little Endian" 321 322config CPU_BIG_ENDIAN 323 bool "Big Endian" 324 325endchoice 326 327config SH_FPU 328 bool "FPU support" 329 depends on !CPU_SH3 330 default y 331 help 332 Selecting this option will enable support for SH processors that 333 have FPU units (ie, SH77xx). 334 335 This option must be set in order to enable the FPU. 336 337config SH_FPU_EMU 338 bool "FPU emulation support" 339 depends on !SH_FPU && EXPERIMENTAL 340 default n 341 help 342 Selecting this option will enable support for software FPU emulation. 343 Most SH-3 users will want to say Y here, whereas most SH-4 users will 344 want to say N. 345 346config SH_DSP 347 bool "DSP support" 348 default y if SH4AL_DSP || !CPU_SH4 349 default n 350 help 351 Selecting this option will enable support for SH processors that 352 have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP). 353 354 This option must be set in order to enable the DSP. 355 356config SH_ADC 357 bool "ADC support" 358 depends on CPU_SH3 359 default y 360 help 361 Selecting this option will allow the Linux kernel to use SH3 on-chip 362 ADC module. 363 364 If unsure, say N. 365 366config SH_STORE_QUEUES 367 bool "Support for Store Queues" 368 depends on CPU_SH4 369 help 370 Selecting this option will enable an in-kernel API for manipulating 371 the store queues integrated in the SH-4 processors. 372 373config SPECULATIVE_EXECUTION 374 bool "Speculative subroutine return" 375 depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL 376 help 377 This enables support for a speculative instruction fetch for 378 subroutine return. There are various pitfalls associated with 379 this, as outlined in the SH7780 hardware manual. 380 381 If unsure, say N. 382 383config CPU_HAS_INTEVT 384 bool 385 386config CPU_HAS_PINT_IRQ 387 bool 388 389config CPU_HAS_MASKREG_IRQ 390 bool 391 392config CPU_HAS_INTC2_IRQ 393 bool 394 395config CPU_HAS_IPR_IRQ 396 bool 397 398config CPU_HAS_SR_RB 399 bool "CPU has SR.RB" 400 depends on CPU_SH3 || CPU_SH4 401 default y 402 help 403 This will enable the use of SR.RB register bank usage. Processors 404 that are lacking this bit must have another method in place for 405 accomplishing what is taken care of by the banked registers. 406 407 See <file:Documentation/sh/register-banks.txt> for further 408 information on SR.RB and register banking in the kernel in general. 409 410config CPU_HAS_PTEA 411 bool 412 413endmenu 414 415menu "Timer and clock configuration" 416 417if !GENERIC_TIME 418 419config SH_TMU 420 bool "TMU timer support" 421 depends on CPU_SH3 || CPU_SH4 422 default y 423 help 424 This enables the use of the TMU as the system timer. 425 426config SH_CMT 427 bool "CMT timer support" 428 depends on CPU_SH2 429 default y 430 help 431 This enables the use of the CMT as the system timer. 432 433config SH_MTU2 434 bool "MTU2 timer support" 435 depends on CPU_SH2A 436 default n 437 help 438 This enables the use of the MTU2 as the system timer. 439 440endif 441 442config SH_TIMER_IRQ 443 int 444 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 445 default "86" if CPU_SUBTYPE_SH7619 446 default "140" if CPU_SUBTYPE_SH7206 447 default "16" 448 449config NO_IDLE_HZ 450 bool "Dynamic tick timer" 451 help 452 Select this option if you want to disable continuous timer ticks 453 and have them programmed to occur as required. This option saves 454 power as the system can remain in idle state for longer. 455 456 By default dynamic tick is disabled during the boot, and can be 457 manually enabled with: 458 459 echo 1 > /sys/devices/system/timer/timer0/dyn_tick 460 461 Alternatively, if you want dynamic tick automatically enabled 462 during boot, pass "dyntick=enable" via the kernel command string. 463 464 Please note that dynamic tick may affect the accuracy of 465 timekeeping on some platforms depending on the implementation. 466 467config SH_PCLK_FREQ 468 int "Peripheral clock frequency (in Hz)" 469 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343 470 default "31250000" if CPU_SUBTYPE_SH7619 471 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \ 472 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \ 473 CPU_SUBTYPE_SH7206 474 default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780 || \ 475 CPU_SUBTYPE_SH7785 476 default "60000000" if CPU_SUBTYPE_SH7751 477 default "66000000" if CPU_SUBTYPE_SH4_202 478 help 479 This option is used to specify the peripheral clock frequency. 480 This is necessary for determining the reference clock value on 481 platforms lacking an RTC. 482 483config SH_CLK_MD 484 int "CPU Mode Pin Setting" 485 default 0 486 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206 487 help 488 MD2 - MD0 pin setting. 489 490endmenu 491 492menu "CPU Frequency scaling" 493 494source "drivers/cpufreq/Kconfig" 495 496config SH_CPU_FREQ 497 tristate "SuperH CPU Frequency driver" 498 depends on CPU_FREQ 499 select CPU_FREQ_TABLE 500 help 501 This adds the cpufreq driver for SuperH. At present, only 502 the SH-4 is supported. 503 504 For details, take a look at <file:Documentation/cpu-freq>. 505 506 If unsure, say N. 507 508endmenu 509 510source "arch/sh/drivers/Kconfig" 511 512endmenu 513 514config ISA_DMA_API 515 bool 516 depends on SH_MPC1211 517 default y 518 519menu "Kernel features" 520 521source kernel/Kconfig.hz 522 523config KEXEC 524 bool "kexec system call (EXPERIMENTAL)" 525 depends on EXPERIMENTAL 526 help 527 kexec is a system call that implements the ability to shutdown your 528 current kernel, and to start another kernel. It is like a reboot 529 but it is independent of the system firmware. And like a reboot 530 you can start any kernel with it, not just Linux. 531 532 The name comes from the similarity to the exec system call. 533 534 It is an ongoing process to be certain the hardware in a machine 535 is properly shutdown, so do not be surprised if this code does not 536 initially work for you. It may help to enable device hotplugging 537 support. As of this writing the exact hardware interface is 538 strongly in flux, so no good recommendation can be made. 539 540config SMP 541 bool "Symmetric multi-processing support" 542 ---help--- 543 This enables support for systems with more than one CPU. If you have 544 a system with only one CPU, like most personal computers, say N. If 545 you have a system with more than one CPU, say Y. 546 547 If you say N here, the kernel will run on single and multiprocessor 548 machines, but will use only one CPU of a multiprocessor machine. If 549 you say Y here, the kernel will run on many, but not all, 550 singleprocessor machines. On a singleprocessor machine, the kernel 551 will run faster if you say N here. 552 553 People using multiprocessor machines who say Y here should also say 554 Y to "Enhanced Real Time Clock Support", below. 555 556 See also the <file:Documentation/smp.txt>, 557 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available 558 at <http://www.tldp.org/docs.html#howto>. 559 560 If you don't know what to do here, say N. 561 562config NR_CPUS 563 int "Maximum number of CPUs (2-32)" 564 range 2 32 565 depends on SMP 566 default "2" 567 help 568 This allows you to specify the maximum number of CPUs which this 569 kernel will support. The maximum supported value is 32 and the 570 minimum value which makes sense is 2. 571 572 This is purely to save memory - each supported CPU adds 573 approximately eight kilobytes to the kernel image. 574 575source "kernel/Kconfig.preempt" 576 577config NODES_SHIFT 578 int 579 default "1" 580 depends on NEED_MULTIPLE_NODES 581 582endmenu 583 584menu "Boot options" 585 586config ZERO_PAGE_OFFSET 587 hex "Zero page offset" 588 default "0x00004000" if SH_MPC1211 || SH_SH03 589 default "0x00010000" if PAGE_SIZE_64KB 590 default "0x00002000" if PAGE_SIZE_8KB 591 default "0x00001000" 592 help 593 This sets the default offset of zero page. 594 595config BOOT_LINK_OFFSET 596 hex "Link address offset for booting" 597 default "0x00800000" 598 help 599 This option allows you to set the link address offset of the zImage. 600 This can be useful if you are on a board which has a small amount of 601 memory. 602 603config UBC_WAKEUP 604 bool "Wakeup UBC on startup" 605 help 606 Selecting this option will wakeup the User Break Controller (UBC) on 607 startup. Although the UBC is left in an awake state when the processor 608 comes up, some boot loaders misbehave by putting the UBC to sleep in a 609 power saving state, which causes issues with things like ptrace(). 610 611 If unsure, say N. 612 613config CMDLINE_BOOL 614 bool "Default bootloader kernel arguments" 615 616config CMDLINE 617 string "Initial kernel command string" 618 depends on CMDLINE_BOOL 619 default "console=ttySC1,115200" 620 621endmenu 622 623menu "Bus options" 624 625# Even on SuperH devices which don't have an ISA bus, 626# this variable helps the PCMCIA modules handle 627# IRQ requesting properly -- Greg Banks. 628# 629# Though we're generally not interested in it when 630# we're not using PCMCIA, so we make it dependent on 631# PCMCIA outright. -- PFM. 632config ISA 633 bool 634 default y if PCMCIA 635 help 636 Find out whether you have ISA slots on your motherboard. ISA is the 637 name of a bus system, i.e. the way the CPU talks to the other stuff 638 inside your box. Other bus systems are PCI, EISA, MicroChannel 639 (MCA) or VESA. ISA is an older system, now being displaced by PCI; 640 newer boards don't support it. If you have ISA, say Y, otherwise N. 641 642config EISA 643 bool 644 ---help--- 645 The Extended Industry Standard Architecture (EISA) bus was 646 developed as an open alternative to the IBM MicroChannel bus. 647 648 The EISA bus provided some of the features of the IBM MicroChannel 649 bus while maintaining backward compatibility with cards made for 650 the older ISA bus. The EISA bus saw limited use between 1988 and 651 1995 when it was made obsolete by the PCI bus. 652 653 Say Y here if you are building a kernel for an EISA-based machine. 654 655 Otherwise, say N. 656 657config MCA 658 bool 659 help 660 MicroChannel Architecture is found in some IBM PS/2 machines and 661 laptops. It is a bus system similar to PCI or ISA. See 662 <file:Documentation/mca.txt> (and especially the web page given 663 there) before attempting to build an MCA bus kernel. 664 665config SBUS 666 bool 667 668config SUPERHYWAY 669 tristate "SuperHyway Bus support" 670 depends on CPU_SUBTYPE_SH4_202 671 672source "arch/sh/drivers/pci/Kconfig" 673 674source "drivers/pci/Kconfig" 675 676source "drivers/pcmcia/Kconfig" 677 678source "drivers/pci/hotplug/Kconfig" 679 680endmenu 681 682menu "Executable file formats" 683 684source "fs/Kconfig.binfmt" 685 686endmenu 687 688menu "Power management options (EXPERIMENTAL)" 689depends on EXPERIMENTAL 690 691source kernel/power/Kconfig 692 693endmenu 694 695source "net/Kconfig" 696 697source "drivers/Kconfig" 698 699source "fs/Kconfig" 700 701source "arch/sh/oprofile/Kconfig" 702 703source "arch/sh/Kconfig.debug" 704 705source "security/Kconfig" 706 707source "crypto/Kconfig" 708 709source "lib/Kconfig" 710