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