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 "CPU has SR.RB" 186 depends on CPU_SH3 || CPU_SH4 187 default y 188 help 189 This will enable the use of SR.RB register bank usage. Processors 190 that are lacking this bit must have another method in place for 191 accomplishing what is taken care of by the banked registers. 192 193 See <file:Documentation/sh/register-banks.txt> for further 194 information on SR.RB and register banking in the kernel in general. 195 196config CPU_HAS_PTEA 197 bool 198 199config CPU_HAS_DSP 200 bool 201 202config CPU_HAS_FPU 203 bool 204 205endmenu 206 207menu "Board support" 208 209config SOLUTION_ENGINE 210 bool 211 212config SH_SOLUTION_ENGINE 213 bool "SolutionEngine" 214 select SOLUTION_ENGINE 215 select CPU_HAS_IPR_IRQ 216 depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750 217 help 218 Select SolutionEngine if configuring for a Hitachi SH7709 219 or SH7750 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 295 <http://www.m17n.org/linux-sh/dreamcast/>. There is a 296 Dreamcast project is at <http://linuxdc.sourceforge.net/>. 297 298config SH_MPC1211 299 bool "Interface MPC1211" 300 depends on CPU_SUBTYPE_SH7751 && BROKEN 301 help 302 CTP/PCI-SH02 is a CPU module computer that is produced 303 by Interface Corporation. 304 More information at <http://www.interface.co.jp> 305 306config SH_SH03 307 bool "Interface CTP/PCI-SH03" 308 depends on CPU_SUBTYPE_SH7751 309 select CPU_HAS_IPR_IRQ 310 select SYS_SUPPORTS_PCI 311 help 312 CTP/PCI-SH03 is a CPU module computer that is produced 313 by Interface Corporation. 314 More information at <http://www.interface.co.jp> 315 316config SH_SECUREEDGE5410 317 bool "SecureEdge5410" 318 depends on CPU_SUBTYPE_SH7751R 319 select CPU_HAS_IPR_IRQ 320 select SYS_SUPPORTS_PCI 321 help 322 Select SecureEdge5410 if configuring for a SnapGear SH board. 323 This includes both the OEM SecureEdge products as well as the 324 SME product line. 325 326config SH_HS7751RVOIP 327 bool "HS7751RVOIP" 328 depends on CPU_SUBTYPE_SH7751R 329 help 330 Select HS7751RVOIP if configuring for a Renesas Technology 331 Sales VoIP board. 332 333config SH_7710VOIPGW 334 bool "SH7710-VOIP-GW" 335 depends on CPU_SUBTYPE_SH7710 336 help 337 Select this option to build a kernel for the SH7710 based 338 VOIP GW. 339 340config SH_RTS7751R2D 341 bool "RTS7751R2D" 342 depends on CPU_SUBTYPE_SH7751R 343 select SYS_SUPPORTS_PCI 344 help 345 Select RTS7751R2D if configuring for a Renesas Technology 346 Sales SH-Graphics board. 347 348config SH_HIGHLANDER 349 bool "Highlander" 350 depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 351 select SYS_SUPPORTS_PCI 352 353config SH_EDOSK7705 354 bool "EDOSK7705" 355 depends on CPU_SUBTYPE_SH7705 356 357config SH_SH4202_MICRODEV 358 bool "SH4-202 MicroDev" 359 depends on CPU_SUBTYPE_SH4_202 360 help 361 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board 362 with an SH4-202 CPU. 363 364config SH_LANDISK 365 bool "LANDISK" 366 depends on CPU_SUBTYPE_SH7751R 367 select SYS_SUPPORTS_PCI 368 help 369 I-O DATA DEVICE, INC. "LANDISK Series" support. 370 371config SH_TITAN 372 bool "TITAN" 373 depends on CPU_SUBTYPE_SH7751R 374 select CPU_HAS_IPR_IRQ 375 select SYS_SUPPORTS_PCI 376 help 377 Select Titan if you are configuring for a Nimble Microsystems 378 NetEngine NP51R. 379 380config SH_SHMIN 381 bool "SHMIN" 382 depends on CPU_SUBTYPE_SH7706 383 select CPU_HAS_IPR_IRQ 384 help 385 Select SHMIN if configuring for the SHMIN board. 386 387config SH_LBOX_RE2 388 bool "L-BOX RE2" 389 depends on CPU_SUBTYPE_SH7751R 390 select SYS_SUPPORTS_PCI 391 help 392 Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2. 393 394config SH_X3PROTO 395 bool "SH-X3 Prototype board" 396 depends on CPU_SUBTYPE_SHX3 397 398config SH_MAGIC_PANEL_R2 399 bool "Magic Panel R2" 400 depends on CPU_SUBTYPE_SH7720 401 help 402 Select Magic Panel R2 if configuring for Magic Panel R2. 403 404endmenu 405 406source "arch/sh/boards/renesas/hs7751rvoip/Kconfig" 407source "arch/sh/boards/renesas/rts7751r2d/Kconfig" 408source "arch/sh/boards/renesas/r7780rp/Kconfig" 409source "arch/sh/boards/magicpanelr2/Kconfig" 410 411menu "Timer and clock configuration" 412 413config SH_TMU 414 bool "TMU timer support" 415 depends on CPU_SH3 || CPU_SH4 416 select GENERIC_TIME 417 select GENERIC_CLOCKEVENTS 418 default y 419 help 420 This enables the use of the TMU as the system timer. 421 422config SH_CMT 423 bool "CMT timer support" 424 depends on CPU_SH2 425 default y 426 help 427 This enables the use of the CMT as the system timer. 428 429config SH_MTU2 430 bool "MTU2 timer support" 431 depends on CPU_SH2A 432 default n 433 help 434 This enables the use of the MTU2 as the system timer. 435 436config SH_TIMER_IRQ 437 int 438 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 439 default "86" if CPU_SUBTYPE_SH7619 440 default "140" if CPU_SUBTYPE_SH7206 441 default "16" 442 443config SH_PCLK_FREQ 444 int "Peripheral clock frequency (in Hz)" 445 default "27000000" if CPU_SUBTYPE_SH7343 446 default "31250000" if CPU_SUBTYPE_SH7619 447 default "32000000" if CPU_SUBTYPE_SH7722 448 default "33333333" if CPU_SUBTYPE_SH7770 || \ 449 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \ 450 CPU_SUBTYPE_SH7206 451 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R 452 default "66000000" if CPU_SUBTYPE_SH4_202 453 default "50000000" 454 help 455 This option is used to specify the peripheral clock frequency. 456 This is necessary for determining the reference clock value on 457 platforms lacking an RTC. 458 459config SH_CLK_MD 460 int "CPU Mode Pin Setting" 461 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206 462 default 6 if CPU_SUBTYPE_SH7206 463 default 5 if CPU_SUBTYPE_SH7619 464 default 0 465 help 466 MD2 - MD0 pin setting. 467 468source "kernel/time/Kconfig" 469 470endmenu 471 472menu "CPU Frequency scaling" 473 474source "drivers/cpufreq/Kconfig" 475 476config SH_CPU_FREQ 477 tristate "SuperH CPU Frequency driver" 478 depends on CPU_FREQ 479 select CPU_FREQ_TABLE 480 help 481 This adds the cpufreq driver for SuperH. At present, only 482 the SH-4 is supported. 483 484 For details, take a look at <file:Documentation/cpu-freq>. 485 486 If unsure, say N. 487 488endmenu 489 490source "arch/sh/drivers/Kconfig" 491 492endmenu 493 494config ISA_DMA_API 495 bool 496 depends on SH_MPC1211 497 default y 498 499menu "Kernel features" 500 501source kernel/Kconfig.hz 502 503config KEXEC 504 bool "kexec system call (EXPERIMENTAL)" 505 depends on EXPERIMENTAL 506 help 507 kexec is a system call that implements the ability to shutdown your 508 current kernel, and to start another kernel. It is like a reboot 509 but it is independent of the system firmware. And like a reboot 510 you can start any kernel with it, not just Linux. 511 512 The name comes from the similarity to the exec system call. 513 514 It is an ongoing process to be certain the hardware in a machine 515 is properly shutdown, so do not be surprised if this code does not 516 initially work for you. It may help to enable device hotplugging 517 support. As of this writing the exact hardware interface is 518 strongly in flux, so no good recommendation can be made. 519 520config CRASH_DUMP 521 bool "kernel crash dumps (EXPERIMENTAL)" 522 depends on EXPERIMENTAL 523 help 524 Generate crash dump after being started by kexec. 525 This should be normally only set in special crash dump kernels 526 which are loaded in the main kernel with kexec-tools into 527 a specially reserved region and then later executed after 528 a crash by kdump/kexec. The crash dump kernel must be compiled 529 to a memory address not used by the main kernel using 530 MEMORY_START. 531 532 For more details see Documentation/kdump/kdump.txt 533 534config SMP 535 bool "Symmetric multi-processing support" 536 depends on SYS_SUPPORTS_SMP 537 ---help--- 538 This enables support for systems with more than one CPU. If you have 539 a system with only one CPU, like most personal computers, say N. If 540 you have a system with more than one CPU, say Y. 541 542 If you say N here, the kernel will run on single and multiprocessor 543 machines, but will use only one CPU of a multiprocessor machine. If 544 you say Y here, the kernel will run on many, but not all, 545 singleprocessor machines. On a singleprocessor machine, the kernel 546 will run faster if you say N here. 547 548 People using multiprocessor machines who say Y here should also say 549 Y to "Enhanced Real Time Clock Support", below. 550 551 See also the <file:Documentation/smp.txt>, 552 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available 553 at <http://www.tldp.org/docs.html#howto>. 554 555 If you don't know what to do here, say N. 556 557config NR_CPUS 558 int "Maximum number of CPUs (2-32)" 559 range 2 32 560 depends on SMP 561 default "4" if CPU_SHX3 562 default "2" 563 help 564 This allows you to specify the maximum number of CPUs which this 565 kernel will support. The maximum supported value is 32 and the 566 minimum value which makes sense is 2. 567 568 This is purely to save memory - each supported CPU adds 569 approximately eight kilobytes to the kernel image. 570 571source "kernel/Kconfig.preempt" 572 573config GUSA 574 def_bool y 575 depends on !SMP 576 help 577 This enables support for gUSA (general UserSpace Atomicity). 578 This is the default implementation for both UP and non-ll/sc 579 CPUs, and is used by the libc, amongst others. 580 581 For additional information, design information can be found 582 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>. 583 584 This should only be disabled for special cases where alternate 585 atomicity implementations exist. 586 587endmenu 588 589menu "Boot options" 590 591config ZERO_PAGE_OFFSET 592 hex "Zero page offset" 593 default "0x00004000" if SH_MPC1211 || SH_SH03 594 default "0x00010000" if PAGE_SIZE_64KB 595 default "0x00002000" if PAGE_SIZE_8KB 596 default "0x00001000" 597 help 598 This sets the default offset of zero page. 599 600config BOOT_LINK_OFFSET 601 hex "Link address offset for booting" 602 default "0x00800000" 603 help 604 This option allows you to set the link address offset of the zImage. 605 This can be useful if you are on a board which has a small amount of 606 memory. 607 608config UBC_WAKEUP 609 bool "Wakeup UBC on startup" 610 depends on CPU_SH4 611 help 612 Selecting this option will wakeup the User Break Controller (UBC) on 613 startup. Although the UBC is left in an awake state when the processor 614 comes up, some boot loaders misbehave by putting the UBC to sleep in a 615 power saving state, which causes issues with things like ptrace(). 616 617 If unsure, say N. 618 619config CMDLINE_BOOL 620 bool "Default bootloader kernel arguments" 621 622config CMDLINE 623 string "Initial kernel command string" 624 depends on CMDLINE_BOOL 625 default "console=ttySC1,115200" 626 627endmenu 628 629menu "Bus options" 630 631# Even on SuperH devices which don't have an ISA bus, 632# this variable helps the PCMCIA modules handle 633# IRQ requesting properly -- Greg Banks. 634# 635# Though we're generally not interested in it when 636# we're not using PCMCIA, so we make it dependent on 637# PCMCIA outright. -- PFM. 638config ISA 639 def_bool y 640 depends on PCMCIA && HD6446X_SERIES 641 help 642 Find out whether you have ISA slots on your motherboard. ISA is the 643 name of a bus system, i.e. the way the CPU talks to the other stuff 644 inside your box. Other bus systems are PCI, EISA, MicroChannel 645 (MCA) or VESA. ISA is an older system, now being displaced by PCI; 646 newer boards don't support it. If you have ISA, say Y, otherwise N. 647 648config EISA 649 bool 650 ---help--- 651 The Extended Industry Standard Architecture (EISA) bus was 652 developed as an open alternative to the IBM MicroChannel bus. 653 654 The EISA bus provided some of the features of the IBM MicroChannel 655 bus while maintaining backward compatibility with cards made for 656 the older ISA bus. The EISA bus saw limited use between 1988 and 657 1995 when it was made obsolete by the PCI bus. 658 659 Say Y here if you are building a kernel for an EISA-based machine. 660 661 Otherwise, say N. 662 663config MCA 664 bool 665 help 666 MicroChannel Architecture is found in some IBM PS/2 machines and 667 laptops. It is a bus system similar to PCI or ISA. See 668 <file:Documentation/mca.txt> (and especially the web page given 669 there) before attempting to build an MCA bus kernel. 670 671config SBUS 672 bool 673 674config SUPERHYWAY 675 tristate "SuperHyway Bus support" 676 depends on CPU_SUBTYPE_SH4_202 677 678config MAPLE 679 bool "Maple Bus support" 680 depends on SH_DREAMCAST 681 help 682 The Maple Bus is SEGA's serial communication bus for peripherals 683 on the Dreamcast. Without this bus support you won't be able to 684 get your Dreamcast keyboard etc to work, so most users 685 probably want to say 'Y' here, unless you are only using the 686 Dreamcast with a serial line terminal or a remote network 687 connection. 688 689config CF_ENABLER 690 bool "Compact Flash Enabler support" 691 depends on SOLUTION_ENGINE || SH_SH03 692 ---help--- 693 Compact Flash is a small, removable mass storage device introduced 694 in 1994 originally as a PCMCIA device. If you say `Y' here, you 695 compile in support for Compact Flash devices directly connected to 696 a SuperH processor. A Compact Flash FAQ is available at 697 <http://www.compactflash.org/faqs/faq.htm>. 698 699 If your board has "Directly Connected" CompactFlash at area 5 or 6, 700 you may want to enable this option. Then, you can use CF as 701 primary IDE drive (only tested for SanDisk). 702 703 If in doubt, select 'N'. 704 705choice 706 prompt "Compact Flash Connection Area" 707 depends on CF_ENABLER 708 default CF_AREA6 709 710config CF_AREA5 711 bool "Area5" 712 help 713 If your board has "Directly Connected" CompactFlash, You should 714 select the area where your CF is connected to. 715 716 - "Area5" if CompactFlash is connected to Area 5 (0x14000000) 717 - "Area6" if it is connected to Area 6 (0x18000000) 718 719 "Area6" will work for most boards. 720 721config CF_AREA6 722 bool "Area6" 723 724endchoice 725 726config CF_BASE_ADDR 727 hex 728 depends on CF_ENABLER 729 default "0xb8000000" if CF_AREA6 730 default "0xb4000000" if CF_AREA5 731 732source "arch/sh/drivers/pci/Kconfig" 733 734source "drivers/pci/Kconfig" 735 736source "drivers/pcmcia/Kconfig" 737 738source "drivers/pci/hotplug/Kconfig" 739 740endmenu 741 742menu "Executable file formats" 743 744source "fs/Kconfig.binfmt" 745 746endmenu 747 748menu "Power management options (EXPERIMENTAL)" 749depends on EXPERIMENTAL && SYS_SUPPORTS_PM 750 751source kernel/power/Kconfig 752 753endmenu 754 755source "net/Kconfig" 756 757source "drivers/Kconfig" 758 759source "fs/Kconfig" 760 761source "kernel/Kconfig.instrumentation" 762 763source "arch/sh/Kconfig.debug" 764 765source "security/Kconfig" 766 767source "crypto/Kconfig" 768 769source "lib/Kconfig" 770