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