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