1config SUPERH 2 def_bool y 3 select EXPERT 4 select CLKDEV_LOOKUP 5 select HAVE_IDE if HAS_IOPORT 6 select HAVE_MEMBLOCK 7 select HAVE_MEMBLOCK_NODE_MAP 8 select ARCH_DISCARD_MEMBLOCK 9 select HAVE_OPROFILE 10 select HAVE_GENERIC_DMA_COHERENT 11 select HAVE_ARCH_TRACEHOOK 12 select HAVE_DMA_API_DEBUG 13 select HAVE_DMA_ATTRS 14 select HAVE_PERF_EVENTS 15 select HAVE_DEBUG_BUGVERBOSE 16 select ARCH_HAVE_CUSTOM_GPIO_H 17 select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A) 18 select PERF_USE_VMALLOC 19 select HAVE_DEBUG_KMEMLEAK 20 select HAVE_KERNEL_GZIP 21 select HAVE_KERNEL_BZIP2 22 select HAVE_KERNEL_LZMA 23 select HAVE_KERNEL_XZ 24 select HAVE_KERNEL_LZO 25 select HAVE_UID16 26 select ARCH_WANT_IPC_PARSE_VERSION 27 select HAVE_SYSCALL_TRACEPOINTS 28 select HAVE_REGS_AND_STACK_ACCESS_API 29 select HAVE_GENERIC_HARDIRQS 30 select MAY_HAVE_SPARSE_IRQ 31 select IRQ_FORCED_THREADING 32 select RTC_LIB 33 select GENERIC_ATOMIC64 34 select GENERIC_IRQ_SHOW 35 select GENERIC_SMP_IDLE_THREAD 36 select GENERIC_CLOCKEVENTS 37 select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST 38 select GENERIC_STRNCPY_FROM_USER 39 select GENERIC_STRNLEN_USER 40 select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER 41 select MODULES_USE_ELF_RELA 42 select OLD_SIGSUSPEND 43 select OLD_SIGACTION 44 help 45 The SuperH is a RISC processor targeted for use in embedded systems 46 and consumer electronics; it was also used in the Sega Dreamcast 47 gaming console. The SuperH port has a home page at 48 <http://www.linux-sh.org/>. 49 50config SUPERH32 51 def_bool ARCH = "sh" 52 select HAVE_KPROBES 53 select HAVE_KRETPROBES 54 select HAVE_IOREMAP_PROT if MMU && !X2TLB 55 select HAVE_FUNCTION_TRACER 56 select HAVE_FTRACE_MCOUNT_RECORD 57 select HAVE_DYNAMIC_FTRACE 58 select HAVE_FUNCTION_TRACE_MCOUNT_TEST 59 select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE 60 select ARCH_WANT_IPC_PARSE_VERSION 61 select HAVE_FUNCTION_GRAPH_TRACER 62 select HAVE_ARCH_KGDB 63 select HAVE_HW_BREAKPOINT 64 select HAVE_MIXED_BREAKPOINTS_REGS 65 select PERF_EVENTS 66 select ARCH_HIBERNATION_POSSIBLE if MMU 67 select SPARSE_IRQ 68 69config SUPERH64 70 def_bool ARCH = "sh64" 71 select KALLSYMS 72 73config ARCH_DEFCONFIG 74 string 75 default "arch/sh/configs/shx3_defconfig" if SUPERH32 76 default "arch/sh/configs/cayman_defconfig" if SUPERH64 77 78config RWSEM_GENERIC_SPINLOCK 79 def_bool y 80 81config RWSEM_XCHGADD_ALGORITHM 82 bool 83 84config GENERIC_BUG 85 def_bool y 86 depends on BUG && SUPERH32 87 88config GENERIC_CSUM 89 def_bool y 90 depends on SUPERH64 91 92config GENERIC_HWEIGHT 93 def_bool y 94 95config GENERIC_GPIO 96 def_bool n 97 98config GENERIC_CALIBRATE_DELAY 99 bool 100 101config GENERIC_LOCKBREAK 102 def_bool y 103 depends on SMP && PREEMPT 104 105config ARCH_SUSPEND_POSSIBLE 106 def_bool n 107 108config ARCH_HIBERNATION_POSSIBLE 109 def_bool n 110 111config SYS_SUPPORTS_APM_EMULATION 112 bool 113 select ARCH_SUSPEND_POSSIBLE 114 115config SYS_SUPPORTS_HUGETLBFS 116 bool 117 118config SYS_SUPPORTS_SMP 119 bool 120 121config SYS_SUPPORTS_NUMA 122 bool 123 124config SYS_SUPPORTS_PCI 125 bool 126 127config SYS_SUPPORTS_CMT 128 bool 129 130config SYS_SUPPORTS_MTU2 131 bool 132 133config SYS_SUPPORTS_TMU 134 bool 135 136config STACKTRACE_SUPPORT 137 def_bool y 138 139config LOCKDEP_SUPPORT 140 def_bool y 141 142config HAVE_LATENCYTOP_SUPPORT 143 def_bool y 144 145config ARCH_HAS_ILOG2_U32 146 def_bool n 147 148config ARCH_HAS_ILOG2_U64 149 def_bool n 150 151config ARCH_HAS_DEFAULT_IDLE 152 def_bool y 153 154config NO_IOPORT 155 def_bool !PCI 156 depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN && \ 157 !SH_HP6XX && !SH_SOLUTION_ENGINE 158 159config IO_TRAPPED 160 bool 161 162config SWAP_IO_SPACE 163 bool 164 165config DMA_COHERENT 166 bool 167 168config DMA_NONCOHERENT 169 def_bool !DMA_COHERENT 170 171config NEED_DMA_MAP_STATE 172 def_bool DMA_NONCOHERENT 173 174config NEED_SG_DMA_LENGTH 175 def_bool y 176 177source "init/Kconfig" 178 179source "kernel/Kconfig.freezer" 180 181menu "System type" 182 183# 184# Processor families 185# 186config CPU_SH2 187 bool 188 189config CPU_SH2A 190 bool 191 select CPU_SH2 192 select UNCACHED_MAPPING 193 194config CPU_SH3 195 bool 196 select CPU_HAS_INTEVT 197 select CPU_HAS_SR_RB 198 select SYS_SUPPORTS_TMU 199 200config CPU_SH4 201 bool 202 select CPU_HAS_INTEVT 203 select CPU_HAS_SR_RB 204 select CPU_HAS_FPU if !CPU_SH4AL_DSP 205 select SYS_SUPPORTS_TMU 206 select SYS_SUPPORTS_HUGETLBFS if MMU 207 208config CPU_SH4A 209 bool 210 select CPU_SH4 211 212config CPU_SH4AL_DSP 213 bool 214 select CPU_SH4A 215 select CPU_HAS_DSP 216 217config CPU_SH5 218 bool 219 select CPU_HAS_FPU 220 select SYS_SUPPORTS_TMU 221 select SYS_SUPPORTS_HUGETLBFS if MMU 222 223config CPU_SHX2 224 bool 225 226config CPU_SHX3 227 bool 228 select DMA_COHERENT 229 select SYS_SUPPORTS_SMP 230 select SYS_SUPPORTS_NUMA 231 232config ARCH_SHMOBILE 233 bool 234 select ARCH_SUSPEND_POSSIBLE 235 select PM 236 select PM_RUNTIME 237 238config CPU_HAS_PMU 239 depends on CPU_SH4 || CPU_SH4A 240 default y 241 bool 242 243if SUPERH32 244 245choice 246 prompt "Processor sub-type selection" 247 248# 249# Processor subtypes 250# 251 252# SH-2 Processor Support 253 254config CPU_SUBTYPE_SH7619 255 bool "Support SH7619 processor" 256 select CPU_SH2 257 select SYS_SUPPORTS_CMT 258 259# SH-2A Processor Support 260 261config CPU_SUBTYPE_SH7201 262 bool "Support SH7201 processor" 263 select CPU_SH2A 264 select CPU_HAS_FPU 265 select SYS_SUPPORTS_MTU2 266 267config CPU_SUBTYPE_SH7203 268 bool "Support SH7203 processor" 269 select CPU_SH2A 270 select CPU_HAS_FPU 271 select SYS_SUPPORTS_CMT 272 select SYS_SUPPORTS_MTU2 273 select ARCH_WANT_OPTIONAL_GPIOLIB 274 select PINCTRL 275 276config CPU_SUBTYPE_SH7206 277 bool "Support SH7206 processor" 278 select CPU_SH2A 279 select SYS_SUPPORTS_CMT 280 select SYS_SUPPORTS_MTU2 281 282config CPU_SUBTYPE_SH7263 283 bool "Support SH7263 processor" 284 select CPU_SH2A 285 select CPU_HAS_FPU 286 select SYS_SUPPORTS_CMT 287 select SYS_SUPPORTS_MTU2 288 289config CPU_SUBTYPE_SH7264 290 bool "Support SH7264 processor" 291 select CPU_SH2A 292 select CPU_HAS_FPU 293 select SYS_SUPPORTS_CMT 294 select SYS_SUPPORTS_MTU2 295 select PINCTRL 296 297config CPU_SUBTYPE_SH7269 298 bool "Support SH7269 processor" 299 select CPU_SH2A 300 select CPU_HAS_FPU 301 select SYS_SUPPORTS_CMT 302 select SYS_SUPPORTS_MTU2 303 select PINCTRL 304 305config CPU_SUBTYPE_MXG 306 bool "Support MX-G processor" 307 select CPU_SH2A 308 select SYS_SUPPORTS_MTU2 309 help 310 Select MX-G if running on an R8A03022BG part. 311 312# SH-3 Processor Support 313 314config CPU_SUBTYPE_SH7705 315 bool "Support SH7705 processor" 316 select CPU_SH3 317 318config CPU_SUBTYPE_SH7706 319 bool "Support SH7706 processor" 320 select CPU_SH3 321 help 322 Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU. 323 324config CPU_SUBTYPE_SH7707 325 bool "Support SH7707 processor" 326 select CPU_SH3 327 help 328 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU. 329 330config CPU_SUBTYPE_SH7708 331 bool "Support SH7708 processor" 332 select CPU_SH3 333 help 334 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or 335 if you have a 100 Mhz SH-3 HD6417708R CPU. 336 337config CPU_SUBTYPE_SH7709 338 bool "Support SH7709 processor" 339 select CPU_SH3 340 help 341 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. 342 343config CPU_SUBTYPE_SH7710 344 bool "Support SH7710 processor" 345 select CPU_SH3 346 select CPU_HAS_DSP 347 help 348 Select SH7710 if you have a SH3-DSP SH7710 CPU. 349 350config CPU_SUBTYPE_SH7712 351 bool "Support SH7712 processor" 352 select CPU_SH3 353 select CPU_HAS_DSP 354 help 355 Select SH7712 if you have a SH3-DSP SH7712 CPU. 356 357config CPU_SUBTYPE_SH7720 358 bool "Support SH7720 processor" 359 select CPU_SH3 360 select CPU_HAS_DSP 361 select SYS_SUPPORTS_CMT 362 select ARCH_WANT_OPTIONAL_GPIOLIB 363 select USB_ARCH_HAS_OHCI 364 select USB_OHCI_SH if USB_OHCI_HCD 365 select PINCTRL 366 help 367 Select SH7720 if you have a SH3-DSP SH7720 CPU. 368 369config CPU_SUBTYPE_SH7721 370 bool "Support SH7721 processor" 371 select CPU_SH3 372 select CPU_HAS_DSP 373 select SYS_SUPPORTS_CMT 374 select USB_ARCH_HAS_OHCI 375 select USB_OHCI_SH if USB_OHCI_HCD 376 help 377 Select SH7721 if you have a SH3-DSP SH7721 CPU. 378 379# SH-4 Processor Support 380 381config CPU_SUBTYPE_SH7750 382 bool "Support SH7750 processor" 383 select CPU_SH4 384 help 385 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. 386 387config CPU_SUBTYPE_SH7091 388 bool "Support SH7091 processor" 389 select CPU_SH4 390 help 391 Select SH7091 if you have an SH-4 based Sega device (such as 392 the Dreamcast, Naomi, and Naomi 2). 393 394config CPU_SUBTYPE_SH7750R 395 bool "Support SH7750R processor" 396 select CPU_SH4 397 398config CPU_SUBTYPE_SH7750S 399 bool "Support SH7750S processor" 400 select CPU_SH4 401 402config CPU_SUBTYPE_SH7751 403 bool "Support SH7751 processor" 404 select CPU_SH4 405 help 406 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU, 407 or if you have a HD6417751R CPU. 408 409config CPU_SUBTYPE_SH7751R 410 bool "Support SH7751R processor" 411 select CPU_SH4 412 413config CPU_SUBTYPE_SH7760 414 bool "Support SH7760 processor" 415 select CPU_SH4 416 417config CPU_SUBTYPE_SH4_202 418 bool "Support SH4-202 processor" 419 select CPU_SH4 420 421# SH-4A Processor Support 422 423config CPU_SUBTYPE_SH7723 424 bool "Support SH7723 processor" 425 select CPU_SH4A 426 select CPU_SHX2 427 select ARCH_SHMOBILE 428 select ARCH_SPARSEMEM_ENABLE 429 select SYS_SUPPORTS_CMT 430 select ARCH_WANT_OPTIONAL_GPIOLIB 431 select PINCTRL 432 help 433 Select SH7723 if you have an SH-MobileR2 CPU. 434 435config CPU_SUBTYPE_SH7724 436 bool "Support SH7724 processor" 437 select CPU_SH4A 438 select CPU_SHX2 439 select ARCH_SHMOBILE 440 select ARCH_SPARSEMEM_ENABLE 441 select SYS_SUPPORTS_CMT 442 select ARCH_WANT_OPTIONAL_GPIOLIB 443 select PINCTRL 444 help 445 Select SH7724 if you have an SH-MobileR2R CPU. 446 447config CPU_SUBTYPE_SH7734 448 bool "Support SH7734 processor" 449 select CPU_SH4A 450 select CPU_SHX2 451 select ARCH_WANT_OPTIONAL_GPIOLIB 452 select USB_ARCH_HAS_OHCI 453 select USB_ARCH_HAS_EHCI 454 select PINCTRL 455 help 456 Select SH7734 if you have a SH4A SH7734 CPU. 457 458config CPU_SUBTYPE_SH7757 459 bool "Support SH7757 processor" 460 select CPU_SH4A 461 select CPU_SHX2 462 select ARCH_WANT_OPTIONAL_GPIOLIB 463 select USB_ARCH_HAS_OHCI 464 select USB_ARCH_HAS_EHCI 465 select PINCTRL 466 help 467 Select SH7757 if you have a SH4A SH7757 CPU. 468 469config CPU_SUBTYPE_SH7763 470 bool "Support SH7763 processor" 471 select CPU_SH4A 472 select USB_ARCH_HAS_OHCI 473 select USB_OHCI_SH if USB_OHCI_HCD 474 help 475 Select SH7763 if you have a SH4A SH7763(R5S77631) CPU. 476 477config CPU_SUBTYPE_SH7770 478 bool "Support SH7770 processor" 479 select CPU_SH4A 480 481config CPU_SUBTYPE_SH7780 482 bool "Support SH7780 processor" 483 select CPU_SH4A 484 485config CPU_SUBTYPE_SH7785 486 bool "Support SH7785 processor" 487 select CPU_SH4A 488 select CPU_SHX2 489 select ARCH_SPARSEMEM_ENABLE 490 select SYS_SUPPORTS_NUMA 491 select ARCH_WANT_OPTIONAL_GPIOLIB 492 select PINCTRL 493 494config CPU_SUBTYPE_SH7786 495 bool "Support SH7786 processor" 496 select CPU_SH4A 497 select CPU_SHX3 498 select CPU_HAS_PTEAEX 499 select GENERIC_CLOCKEVENTS_BROADCAST if SMP 500 select ARCH_WANT_OPTIONAL_GPIOLIB 501 select USB_ARCH_HAS_OHCI 502 select USB_OHCI_SH if USB_OHCI_HCD 503 select USB_ARCH_HAS_EHCI 504 select USB_EHCI_SH if USB_EHCI_HCD 505 select PINCTRL 506 507config CPU_SUBTYPE_SHX3 508 bool "Support SH-X3 processor" 509 select CPU_SH4A 510 select CPU_SHX3 511 select GENERIC_CLOCKEVENTS_BROADCAST if SMP 512 select ARCH_REQUIRE_GPIOLIB 513 select PINCTRL 514 515# SH4AL-DSP Processor Support 516 517config CPU_SUBTYPE_SH7343 518 bool "Support SH7343 processor" 519 select CPU_SH4AL_DSP 520 select ARCH_SHMOBILE 521 select SYS_SUPPORTS_CMT 522 523config CPU_SUBTYPE_SH7722 524 bool "Support SH7722 processor" 525 select CPU_SH4AL_DSP 526 select CPU_SHX2 527 select ARCH_SHMOBILE 528 select ARCH_SPARSEMEM_ENABLE 529 select SYS_SUPPORTS_NUMA 530 select SYS_SUPPORTS_CMT 531 select ARCH_WANT_OPTIONAL_GPIOLIB 532 select PINCTRL 533 534config CPU_SUBTYPE_SH7366 535 bool "Support SH7366 processor" 536 select CPU_SH4AL_DSP 537 select CPU_SHX2 538 select ARCH_SHMOBILE 539 select ARCH_SPARSEMEM_ENABLE 540 select SYS_SUPPORTS_NUMA 541 select SYS_SUPPORTS_CMT 542 543endchoice 544 545endif 546 547if SUPERH64 548 549choice 550 prompt "Processor sub-type selection" 551 552# SH-5 Processor Support 553 554config CPU_SUBTYPE_SH5_101 555 bool "Support SH5-101 processor" 556 select CPU_SH5 557 558config CPU_SUBTYPE_SH5_103 559 bool "Support SH5-103 processor" 560 select CPU_SH5 561 562endchoice 563 564endif 565 566source "arch/sh/mm/Kconfig" 567 568source "arch/sh/Kconfig.cpu" 569 570source "arch/sh/boards/Kconfig" 571 572menu "Timer and clock configuration" 573 574config SH_TIMER_TMU 575 bool "TMU timer driver" 576 depends on SYS_SUPPORTS_TMU 577 default y 578 help 579 This enables the build of the TMU timer driver. 580 581config SH_TIMER_CMT 582 bool "CMT timer driver" 583 depends on SYS_SUPPORTS_CMT 584 default y 585 help 586 This enables build of the CMT timer driver. 587 588config SH_TIMER_MTU2 589 bool "MTU2 timer driver" 590 depends on SYS_SUPPORTS_MTU2 591 default y 592 help 593 This enables build of the MTU2 timer driver. 594 595config SH_PCLK_FREQ 596 int "Peripheral clock frequency (in Hz)" 597 depends on SH_CLK_CPG_LEGACY 598 default "31250000" if CPU_SUBTYPE_SH7619 599 default "33333333" if CPU_SUBTYPE_SH7770 || \ 600 CPU_SUBTYPE_SH7760 || \ 601 CPU_SUBTYPE_SH7705 || \ 602 CPU_SUBTYPE_SH7203 || \ 603 CPU_SUBTYPE_SH7206 || \ 604 CPU_SUBTYPE_SH7263 || \ 605 CPU_SUBTYPE_MXG 606 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R 607 default "66000000" if CPU_SUBTYPE_SH4_202 608 default "50000000" 609 help 610 This option is used to specify the peripheral clock frequency. 611 This is necessary for determining the reference clock value on 612 platforms lacking an RTC. 613 614config SH_CLK_CPG 615 def_bool y 616 617config SH_CLK_CPG_LEGACY 618 depends on SH_CLK_CPG 619 def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \ 620 !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \ 621 !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \ 622 !CPU_SUBTYPE_SH7269 623 624endmenu 625 626menu "CPU Frequency scaling" 627 628source "drivers/cpufreq/Kconfig" 629 630config SH_CPU_FREQ 631 tristate "SuperH CPU Frequency driver" 632 depends on CPU_FREQ 633 select CPU_FREQ_TABLE 634 help 635 This adds the cpufreq driver for SuperH. Any CPU that supports 636 clock rate rounding through the clock framework can use this 637 driver. While it will make the kernel slightly larger, this is 638 harmless for CPUs that don't support rate rounding. The driver 639 will also generate a notice in the boot log before disabling 640 itself if the CPU in question is not capable of rate rounding. 641 642 For details, take a look at <file:Documentation/cpu-freq>. 643 644 If unsure, say N. 645 646endmenu 647 648source "arch/sh/drivers/Kconfig" 649 650endmenu 651 652menu "Kernel features" 653 654source kernel/Kconfig.hz 655 656config KEXEC 657 bool "kexec system call (EXPERIMENTAL)" 658 depends on SUPERH32 && MMU 659 help 660 kexec is a system call that implements the ability to shutdown your 661 current kernel, and to start another kernel. It is like a reboot 662 but it is independent of the system firmware. And like a reboot 663 you can start any kernel with it, not just Linux. 664 665 The name comes from the similarity to the exec system call. 666 667 It is an ongoing process to be certain the hardware in a machine 668 is properly shutdown, so do not be surprised if this code does not 669 initially work for you. It may help to enable device hotplugging 670 support. As of this writing the exact hardware interface is 671 strongly in flux, so no good recommendation can be made. 672 673config CRASH_DUMP 674 bool "kernel crash dumps (EXPERIMENTAL)" 675 depends on SUPERH32 && BROKEN_ON_SMP 676 help 677 Generate crash dump after being started by kexec. 678 This should be normally only set in special crash dump kernels 679 which are loaded in the main kernel with kexec-tools into 680 a specially reserved region and then later executed after 681 a crash by kdump/kexec. The crash dump kernel must be compiled 682 to a memory address not used by the main kernel using 683 PHYSICAL_START. 684 685 For more details see Documentation/kdump/kdump.txt 686 687config KEXEC_JUMP 688 bool "kexec jump (EXPERIMENTAL)" 689 depends on SUPERH32 && KEXEC && HIBERNATION 690 help 691 Jump between original kernel and kexeced kernel and invoke 692 code via KEXEC 693 694config PHYSICAL_START 695 hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP) 696 default MEMORY_START 697 ---help--- 698 This gives the physical address where the kernel is loaded 699 and is ordinarily the same as MEMORY_START. 700 701 Different values are primarily used in the case of kexec on panic 702 where the fail safe kernel needs to run at a different address 703 than the panic-ed kernel. 704 705config SECCOMP 706 bool "Enable seccomp to safely compute untrusted bytecode" 707 depends on PROC_FS 708 help 709 This kernel feature is useful for number crunching applications 710 that may need to compute untrusted bytecode during their 711 execution. By using pipes or other transports made available to 712 the process as file descriptors supporting the read/write 713 syscalls, it's possible to isolate those applications in 714 their own address space using seccomp. Once seccomp is 715 enabled via prctl, it cannot be disabled and the task is only 716 allowed to execute a few safe syscalls defined by each seccomp 717 mode. 718 719 If unsure, say N. 720 721config CC_STACKPROTECTOR 722 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" 723 depends on SUPERH32 724 help 725 This option turns on the -fstack-protector GCC feature. This 726 feature puts, at the beginning of functions, a canary value on 727 the stack just before the return address, and validates 728 the value just before actually returning. Stack based buffer 729 overflows (that need to overwrite this return address) now also 730 overwrite the canary, which gets detected and the attack is then 731 neutralized via a kernel panic. 732 733 This feature requires gcc version 4.2 or above. 734 735config SMP 736 bool "Symmetric multi-processing support" 737 depends on SYS_SUPPORTS_SMP 738 select USE_GENERIC_SMP_HELPERS 739 ---help--- 740 This enables support for systems with more than one CPU. If you have 741 a system with only one CPU, like most personal computers, say N. If 742 you have a system with more than one CPU, say Y. 743 744 If you say N here, the kernel will run on single and multiprocessor 745 machines, but will use only one CPU of a multiprocessor machine. If 746 you say Y here, the kernel will run on many, but not all, 747 singleprocessor machines. On a singleprocessor machine, the kernel 748 will run faster if you say N here. 749 750 People using multiprocessor machines who say Y here should also say 751 Y to "Enhanced Real Time Clock Support", below. 752 753 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO 754 available at <http://www.tldp.org/docs.html#howto>. 755 756 If you don't know what to do here, say N. 757 758config NR_CPUS 759 int "Maximum number of CPUs (2-32)" 760 range 2 32 761 depends on SMP 762 default "4" if CPU_SUBTYPE_SHX3 763 default "2" 764 help 765 This allows you to specify the maximum number of CPUs which this 766 kernel will support. The maximum supported value is 32 and the 767 minimum value which makes sense is 2. 768 769 This is purely to save memory - each supported CPU adds 770 approximately eight kilobytes to the kernel image. 771 772config HOTPLUG_CPU 773 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 774 depends on SMP && HOTPLUG 775 help 776 Say Y here to experiment with turning CPUs off and on. CPUs 777 can be controlled through /sys/devices/system/cpu. 778 779source "kernel/Kconfig.preempt" 780 781config GUSA 782 def_bool y 783 depends on !SMP && SUPERH32 784 help 785 This enables support for gUSA (general UserSpace Atomicity). 786 This is the default implementation for both UP and non-ll/sc 787 CPUs, and is used by the libc, amongst others. 788 789 For additional information, design information can be found 790 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>. 791 792 This should only be disabled for special cases where alternate 793 atomicity implementations exist. 794 795config GUSA_RB 796 bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)" 797 depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A) 798 help 799 Enabling this option will allow the kernel to implement some 800 atomic operations using a software implementation of load-locked/ 801 store-conditional (LLSC). On machines which do not have hardware 802 LLSC, this should be more efficient than the other alternative of 803 disabling interrupts around the atomic sequence. 804 805config HW_PERF_EVENTS 806 bool "Enable hardware performance counter support for perf events" 807 depends on PERF_EVENTS && CPU_HAS_PMU 808 default y 809 help 810 Enable hardware performance counter support for perf events. If 811 disabled, perf events will use software events only. 812 813source "drivers/sh/Kconfig" 814 815endmenu 816 817menu "Boot options" 818 819config ZERO_PAGE_OFFSET 820 hex 821 default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \ 822 SH_7751_SOLUTION_ENGINE 823 default "0x00004000" if PAGE_SIZE_16KB || SH_SH03 824 default "0x00002000" if PAGE_SIZE_8KB 825 default "0x00001000" 826 help 827 This sets the default offset of zero page. 828 829config BOOT_LINK_OFFSET 830 hex 831 default "0x00210000" if SH_SHMIN 832 default "0x00400000" if SH_CAYMAN 833 default "0x00810000" if SH_7780_SOLUTION_ENGINE 834 default "0x009e0000" if SH_TITAN 835 default "0x01800000" if SH_SDK7780 836 default "0x02000000" if SH_EDOSK7760 837 default "0x00800000" 838 help 839 This option allows you to set the link address offset of the zImage. 840 This can be useful if you are on a board which has a small amount of 841 memory. 842 843config ENTRY_OFFSET 844 hex 845 default "0x00001000" if PAGE_SIZE_4KB 846 default "0x00002000" if PAGE_SIZE_8KB 847 default "0x00004000" if PAGE_SIZE_16KB 848 default "0x00010000" if PAGE_SIZE_64KB 849 default "0x00000000" 850 851config ROMIMAGE_MMCIF 852 bool "Include MMCIF loader in romImage (EXPERIMENTAL)" 853 depends on CPU_SUBTYPE_SH7724 854 help 855 Say Y here to include experimental MMCIF loading code in 856 romImage. With this enabled it is possible to write the romImage 857 kernel image to an MMC card and boot the kernel straight from 858 the reset vector. At reset the processor Mask ROM will load the 859 first part of the romImage which in turn loads the rest the kernel 860 image to RAM using the MMCIF hardware block. 861 862choice 863 prompt "Kernel command line" 864 optional 865 default CMDLINE_OVERWRITE 866 help 867 Setting this option allows the kernel command line arguments 868 to be set. 869 870config CMDLINE_OVERWRITE 871 bool "Overwrite bootloader kernel arguments" 872 help 873 Given string will overwrite any arguments passed in by 874 a bootloader. 875 876config CMDLINE_EXTEND 877 bool "Extend bootloader kernel arguments" 878 help 879 Given string will be concatenated with arguments passed in 880 by a bootloader. 881 882endchoice 883 884config CMDLINE 885 string "Kernel command line arguments string" 886 depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND 887 default "console=ttySC1,115200" 888 889endmenu 890 891menu "Bus options" 892 893config SUPERHYWAY 894 tristate "SuperHyway Bus support" 895 depends on CPU_SUBTYPE_SH4_202 896 897config MAPLE 898 bool "Maple Bus support" 899 depends on SH_DREAMCAST 900 help 901 The Maple Bus is SEGA's serial communication bus for peripherals 902 on the Dreamcast. Without this bus support you won't be able to 903 get your Dreamcast keyboard etc to work, so most users 904 probably want to say 'Y' here, unless you are only using the 905 Dreamcast with a serial line terminal or a remote network 906 connection. 907 908config PCI 909 bool "PCI support" 910 depends on SYS_SUPPORTS_PCI 911 select PCI_DOMAINS 912 select GENERIC_PCI_IOMAP 913 select NO_GENERIC_PCI_IOPORT_MAP 914 help 915 Find out whether you have a PCI motherboard. PCI is the name of a 916 bus system, i.e. the way the CPU talks to the other stuff inside 917 your box. If you have PCI, say Y, otherwise N. 918 919config PCI_DOMAINS 920 bool 921 922source "drivers/pci/pcie/Kconfig" 923 924source "drivers/pci/Kconfig" 925 926source "drivers/pcmcia/Kconfig" 927 928source "drivers/pci/hotplug/Kconfig" 929 930endmenu 931 932menu "Executable file formats" 933 934source "fs/Kconfig.binfmt" 935 936endmenu 937 938menu "Power management options (EXPERIMENTAL)" 939 940source "kernel/power/Kconfig" 941 942source "drivers/cpuidle/Kconfig" 943 944endmenu 945 946source "net/Kconfig" 947 948source "drivers/Kconfig" 949 950source "fs/Kconfig" 951 952source "arch/sh/Kconfig.debug" 953 954source "security/Kconfig" 955 956source "crypto/Kconfig" 957 958source "lib/Kconfig" 959