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