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