linux/arch/sparc/Kconfig
<<
>>
Prefs
   1config 64BIT
   2        bool "64-bit kernel" if ARCH = "sparc"
   3        default ARCH = "sparc64"
   4        help
   5          SPARC is a family of RISC microprocessors designed and marketed by
   6          Sun Microsystems, incorporated.  They are very widely found in Sun
   7          workstations and clones.
   8
   9          Say yes to build a 64-bit kernel - formerly known as sparc64
  10          Say no to build a 32-bit kernel - formerly known as sparc
  11
  12config SPARC
  13        bool
  14        default y
  15        select ARCH_MIGHT_HAVE_PC_PARPORT if SPARC64 && PCI
  16        select ARCH_MIGHT_HAVE_PC_SERIO
  17        select OF
  18        select OF_PROMTREE
  19        select HAVE_IDE
  20        select HAVE_OPROFILE
  21        select HAVE_ARCH_KGDB if !SMP || SPARC64
  22        select HAVE_ARCH_TRACEHOOK
  23        select SYSCTL_EXCEPTION_TRACE
  24        select ARCH_WANT_OPTIONAL_GPIOLIB
  25        select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
  26        select RTC_CLASS
  27        select RTC_DRV_M48T59
  28        select HAVE_DMA_ATTRS
  29        select HAVE_DMA_API_DEBUG
  30        select HAVE_ARCH_JUMP_LABEL if SPARC64
  31        select GENERIC_IRQ_SHOW
  32        select ARCH_WANT_IPC_PARSE_VERSION
  33        select GENERIC_PCI_IOMAP
  34        select HAVE_NMI_WATCHDOG if SPARC64
  35        select HAVE_BPF_JIT
  36        select HAVE_DEBUG_BUGVERBOSE
  37        select GENERIC_SMP_IDLE_THREAD
  38        select GENERIC_CMOS_UPDATE
  39        select GENERIC_CLOCKEVENTS
  40        select GENERIC_STRNCPY_FROM_USER
  41        select GENERIC_STRNLEN_USER
  42        select MODULES_USE_ELF_RELA
  43        select ODD_RT_SIGACTION
  44        select OLD_SIGSUSPEND
  45        select ARCH_HAS_SG_CHAIN
  46
  47config SPARC32
  48        def_bool !64BIT
  49        select GENERIC_ATOMIC64
  50        select CLZ_TAB
  51        select HAVE_UID16
  52        select OLD_SIGACTION
  53
  54config SPARC64
  55        def_bool 64BIT
  56        select HAVE_FUNCTION_TRACER
  57        select HAVE_FUNCTION_GRAPH_TRACER
  58        select HAVE_FUNCTION_GRAPH_FP_TEST
  59        select HAVE_KRETPROBES
  60        select HAVE_KPROBES
  61        select HAVE_RCU_TABLE_FREE if SMP
  62        select HAVE_MEMBLOCK
  63        select HAVE_MEMBLOCK_NODE_MAP
  64        select HAVE_ARCH_TRANSPARENT_HUGEPAGE
  65        select HAVE_DYNAMIC_FTRACE
  66        select HAVE_FTRACE_MCOUNT_RECORD
  67        select HAVE_SYSCALL_TRACEPOINTS
  68        select HAVE_CONTEXT_TRACKING
  69        select HAVE_DEBUG_KMEMLEAK
  70        select SPARSE_IRQ
  71        select RTC_DRV_CMOS
  72        select RTC_DRV_BQ4802
  73        select RTC_DRV_SUN4V
  74        select RTC_DRV_STARFIRE
  75        select HAVE_PERF_EVENTS
  76        select PERF_USE_VMALLOC
  77        select IRQ_PREFLOW_FASTEOI
  78        select ARCH_HAVE_NMI_SAFE_CMPXCHG
  79        select HAVE_C_RECORDMCOUNT
  80        select NO_BOOTMEM
  81        select HAVE_ARCH_AUDITSYSCALL
  82        select ARCH_SUPPORTS_ATOMIC_RMW
  83
  84config ARCH_DEFCONFIG
  85        string
  86        default "arch/sparc/configs/sparc32_defconfig" if SPARC32
  87        default "arch/sparc/configs/sparc64_defconfig" if SPARC64
  88
  89config IOMMU_HELPER
  90        bool
  91        default y if SPARC64
  92
  93config STACKTRACE_SUPPORT
  94        bool
  95        default y if SPARC64
  96
  97config LOCKDEP_SUPPORT
  98        bool
  99        default y if SPARC64
 100
 101config HAVE_LATENCYTOP_SUPPORT
 102        bool
 103        default y if SPARC64
 104
 105config ARCH_HIBERNATION_POSSIBLE
 106        def_bool y if SPARC64
 107
 108config AUDIT_ARCH
 109        bool
 110        default y
 111
 112config HAVE_SETUP_PER_CPU_AREA
 113        def_bool y if SPARC64
 114
 115config NEED_PER_CPU_EMBED_FIRST_CHUNK
 116        def_bool y if SPARC64
 117
 118config NEED_PER_CPU_PAGE_FIRST_CHUNK
 119        def_bool y if SPARC64
 120
 121config MMU
 122        bool
 123        default y
 124
 125config HIGHMEM
 126        bool
 127        default y if SPARC32
 128
 129config ZONE_DMA
 130        bool
 131        default y if SPARC32
 132
 133config NEED_DMA_MAP_STATE
 134        def_bool y
 135
 136config NEED_SG_DMA_LENGTH
 137        def_bool y
 138
 139config GENERIC_ISA_DMA
 140        bool
 141        default y if SPARC32
 142
 143config ARCH_SUPPORTS_DEBUG_PAGEALLOC
 144        def_bool y if SPARC64
 145
 146source "init/Kconfig"
 147
 148source "kernel/Kconfig.freezer"
 149
 150menu "Processor type and features"
 151
 152config SMP
 153        bool "Symmetric multi-processing support"
 154        ---help---
 155          This enables support for systems with more than one CPU. If you have
 156          a system with only one CPU, say N. If you have a system with more
 157          than one CPU, say Y.
 158
 159          If you say N here, the kernel will run on uni- and multiprocessor
 160          machines, but will use only one CPU of a multiprocessor machine. If
 161          you say Y here, the kernel will run on many, but not all,
 162          uniprocessor machines. On a uniprocessor machine, the kernel
 163          will run faster if you say N here.
 164
 165          People using multiprocessor machines who say Y here should also say
 166          Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
 167          Management" code will be disabled if you say Y here.
 168
 169          See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
 170          available at <http://www.tldp.org/docs.html#howto>.
 171
 172          If you don't know what to do here, say N.
 173
 174config NR_CPUS
 175        int "Maximum number of CPUs"
 176        depends on SMP
 177        range 2 32 if SPARC32
 178        range 2 1024 if SPARC64
 179        default 32 if SPARC32
 180        default 64 if SPARC64
 181
 182source kernel/Kconfig.hz
 183
 184config RWSEM_GENERIC_SPINLOCK
 185        bool
 186        default y if SPARC32
 187
 188config RWSEM_XCHGADD_ALGORITHM
 189        bool
 190        default y if SPARC64
 191
 192config GENERIC_HWEIGHT
 193        bool
 194        default y
 195
 196config GENERIC_CALIBRATE_DELAY
 197        bool
 198        default y
 199
 200config ARCH_MAY_HAVE_PC_FDC
 201        bool
 202        default y
 203
 204config EMULATED_CMPXCHG
 205        bool
 206        default y if SPARC32
 207        help
 208          Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
 209          is emulated, and therefore it is not completely atomic.
 210
 211# Makefile helpers
 212config SPARC32_SMP
 213        bool
 214        default y
 215        depends on SPARC32 && SMP
 216
 217config SPARC64_SMP
 218        bool
 219        default y
 220        depends on SPARC64 && SMP
 221
 222config EARLYFB
 223        bool "Support for early boot text console"
 224        default y
 225        depends on SPARC64
 226        help
 227          Say Y here to enable a faster early framebuffer boot console.
 228
 229config SECCOMP
 230        bool "Enable seccomp to safely compute untrusted bytecode"
 231        depends on SPARC64 && PROC_FS
 232        default y
 233        help
 234          This kernel feature is useful for number crunching applications
 235          that may need to compute untrusted bytecode during their
 236          execution. By using pipes or other transports made available to
 237          the process as file descriptors supporting the read/write
 238          syscalls, it's possible to isolate those applications in
 239          their own address space using seccomp. Once seccomp is
 240          enabled via /proc/<pid>/seccomp, it cannot be disabled
 241          and the task is only allowed to execute a few safe syscalls
 242          defined by each seccomp mode.
 243
 244          If unsure, say Y. Only embedded should say N here.
 245
 246config HOTPLUG_CPU
 247        bool "Support for hot-pluggable CPUs"
 248        depends on SPARC64 && SMP
 249        help
 250          Say Y here to experiment with turning CPUs off and on.  CPUs
 251          can be controlled through /sys/devices/system/cpu/cpu#.
 252          Say N if you want to disable CPU hotplug.
 253
 254if SPARC64
 255source "drivers/cpufreq/Kconfig"
 256endif
 257
 258config US3_MC
 259        tristate "UltraSPARC-III Memory Controller driver"
 260        depends on SPARC64
 261        default y
 262        help
 263          This adds a driver for the UltraSPARC-III memory controller.
 264          Loading this driver allows exact mnemonic strings to be
 265          printed in the event of a memory error, so that the faulty DIMM
 266          on the motherboard can be matched to the error.
 267
 268          If in doubt, say Y, as this information can be very useful.
 269
 270# Global things across all Sun machines.
 271config GENERIC_LOCKBREAK
 272        bool
 273        default y
 274        depends on SPARC64 && SMP && PREEMPT
 275
 276config NUMA
 277        bool "NUMA support"
 278        depends on SPARC64 && SMP
 279
 280config NODES_SHIFT
 281        int
 282        default "4"
 283        depends on NEED_MULTIPLE_NODES
 284
 285# Some NUMA nodes have memory ranges that span
 286# other nodes.  Even though a pfn is valid and
 287# between a node's start and end pfns, it may not
 288# reside on that node.  See memmap_init_zone()
 289# for details.
 290config NODES_SPAN_OTHER_NODES
 291        def_bool y
 292        depends on NEED_MULTIPLE_NODES
 293
 294config ARCH_SELECT_MEMORY_MODEL
 295        def_bool y if SPARC64
 296
 297config ARCH_SPARSEMEM_ENABLE
 298        def_bool y if SPARC64
 299        select SPARSEMEM_VMEMMAP_ENABLE
 300
 301config ARCH_SPARSEMEM_DEFAULT
 302        def_bool y if SPARC64
 303
 304source "mm/Kconfig"
 305
 306if SPARC64
 307source "kernel/power/Kconfig"
 308endif
 309
 310config SCHED_SMT
 311        bool "SMT (Hyperthreading) scheduler support"
 312        depends on SPARC64 && SMP
 313        default y
 314        help
 315          SMT scheduler support improves the CPU scheduler's decision making
 316          when dealing with SPARC cpus at a cost of slightly increased overhead
 317          in some places. If unsure say N here.
 318
 319config SCHED_MC
 320        bool "Multi-core scheduler support"
 321        depends on SPARC64 && SMP
 322        default y
 323        help
 324          Multi-core scheduler support improves the CPU scheduler's decision
 325          making when dealing with multi-core CPU chips at a cost of slightly
 326          increased overhead in some places. If unsure say N here.
 327
 328source "kernel/Kconfig.preempt"
 329
 330config CMDLINE_BOOL
 331        bool "Default bootloader kernel arguments"
 332        depends on SPARC64
 333
 334config CMDLINE
 335        string "Initial kernel command string"
 336        depends on CMDLINE_BOOL
 337        default "console=ttyS0,9600 root=/dev/sda1"
 338        help
 339          Say Y here if you want to be able to pass default arguments to
 340          the kernel. This will be overridden by the bootloader, if you
 341          use one (such as SILO). This is most useful if you want to boot
 342          a kernel from TFTP, and want default options to be available
 343          with having them passed on the command line.
 344
 345          NOTE: This option WILL override the PROM bootargs setting!
 346
 347config SUN_PM
 348        bool
 349        default y if SPARC32
 350        help
 351          Enable power management and CPU standby features on supported
 352          SPARC platforms.
 353
 354config SPARC_LED
 355        tristate "Sun4m LED driver"
 356        depends on SPARC32
 357        help
 358          This driver toggles the front-panel LED on sun4m systems
 359          in a user-specifiable manner.  Its state can be probed
 360          by reading /proc/led and its blinking mode can be changed
 361          via writes to /proc/led
 362
 363config SERIAL_CONSOLE
 364        bool
 365        depends on SPARC32
 366        default y
 367        ---help---
 368          If you say Y here, it will be possible to use a serial port as the
 369          system console (the system console is the device which receives all
 370          kernel messages and warnings and which allows logins in single user
 371          mode). This could be useful if some terminal or printer is connected
 372          to that serial port.
 373
 374          Even if you say Y here, the currently visible virtual console
 375          (/dev/tty0) will still be used as the system console by default, but
 376          you can alter that using a kernel command line option such as
 377          "console=ttyS1". (Try "man bootparam" or see the documentation of
 378          your boot loader (silo) about how to pass options to the kernel at
 379          boot time.)
 380
 381          If you don't have a graphics card installed and you say Y here, the
 382          kernel will automatically use the first serial line, /dev/ttyS0, as
 383          system console.
 384
 385          If unsure, say N.
 386
 387config SPARC_LEON
 388        bool "Sparc Leon processor family"
 389        depends on SPARC32
 390        select USB_EHCI_BIG_ENDIAN_MMIO
 391        select USB_EHCI_BIG_ENDIAN_DESC
 392        ---help---
 393          If you say Y here if you are running on a SPARC-LEON processor.
 394          The LEON processor is a synthesizable VHDL model of the
 395          SPARC-v8 standard. LEON is  part of the GRLIB collection of
 396          IP cores that are distributed under GPL. GRLIB can be downloaded
 397          from www.gaisler.com. You can download a sparc-linux cross-compilation
 398          toolchain at www.gaisler.com.
 399
 400if SPARC_LEON
 401menu "U-Boot options"
 402
 403config UBOOT_LOAD_ADDR
 404        hex "uImage Load Address"
 405        default 0x40004000
 406        ---help---
 407         U-Boot kernel load address, the address in physical address space
 408         where u-boot will place the Linux kernel before booting it.
 409         This address is normally the base address of main memory + 0x4000.
 410
 411config UBOOT_FLASH_ADDR
 412        hex "uImage.o Load Address"
 413        default 0x00080000
 414        ---help---
 415         Optional setting only affecting the uImage.o ELF-image used to
 416         download the uImage file to the target using a ELF-loader other than
 417         U-Boot. It may for example be used to download an uImage to FLASH with
 418         the GRMON utility before even starting u-boot.
 419
 420config UBOOT_ENTRY_ADDR
 421        hex "uImage Entry Address"
 422        default 0xf0004000
 423        ---help---
 424         Do not change this unless you know what you're doing. This is
 425         hardcoded by the SPARC32 and LEON port.
 426
 427         This is the virtual address u-boot jumps to when booting the Linux
 428         Kernel.
 429
 430endmenu
 431endif
 432
 433endmenu
 434
 435menu "Bus options (PCI etc.)"
 436config SBUS
 437        bool
 438        default y
 439
 440config SBUSCHAR
 441        bool
 442        default y
 443
 444config SUN_LDOMS
 445        bool "Sun Logical Domains support"
 446        depends on SPARC64
 447        help
 448          Say Y here is you want to support virtual devices via
 449          Logical Domains.
 450
 451config PCI
 452        bool "Support for PCI and PS/2 keyboard/mouse"
 453        help
 454          Find out whether your system includes a PCI bus. PCI is the name of
 455          a bus system, i.e. the way the CPU talks to the other stuff inside
 456          your box.  If you say Y here, the kernel will include drivers and
 457          infrastructure code to support PCI bus devices.
 458
 459          CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
 460          CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
 461          All of these platforms are extremely obscure, so say N if unsure.
 462
 463config PCI_DOMAINS
 464        def_bool PCI if SPARC64
 465
 466config PCI_SYSCALL
 467        def_bool PCI
 468
 469config PCIC_PCI
 470        bool
 471        depends on PCI && SPARC32 && !SPARC_LEON
 472        default y
 473
 474config LEON_PCI
 475        bool
 476        depends on PCI && SPARC_LEON
 477        default y
 478
 479config SPARC_GRPCI1
 480        bool "GRPCI Host Bridge Support"
 481        depends on LEON_PCI
 482        default y
 483        help
 484          Say Y here to include the GRPCI Host Bridge Driver. The GRPCI
 485          PCI host controller is typically found in GRLIB SPARC32/LEON
 486          systems. The driver has one property (all_pci_errors) controlled
 487          from the bootloader that makes the GRPCI to generate interrupts
 488          on detected PCI Parity and System errors.
 489
 490config SPARC_GRPCI2
 491        bool "GRPCI2 Host Bridge Support"
 492        depends on LEON_PCI
 493        default y
 494        help
 495          Say Y here to include the GRPCI2 Host Bridge Driver.
 496
 497source "drivers/pci/Kconfig"
 498
 499source "drivers/pcmcia/Kconfig"
 500
 501config SUN_OPENPROMFS
 502        tristate "Openprom tree appears in /proc/openprom"
 503        help
 504          If you say Y, the OpenPROM device tree will be available as a
 505          virtual file system, which you can mount to /proc/openprom by "mount
 506          -t openpromfs none /proc/openprom".
 507
 508          To compile the /proc/openprom support as a module, choose M here: the
 509          module will be called openpromfs.
 510
 511          Only choose N if you know in advance that you will not need to modify
 512          OpenPROM settings on the running system.
 513
 514# Makefile helpers
 515config SPARC64_PCI
 516        bool
 517        default y
 518        depends on SPARC64 && PCI
 519
 520config SPARC64_PCI_MSI
 521        bool
 522        default y
 523        depends on SPARC64_PCI && PCI_MSI
 524
 525endmenu
 526
 527menu "Executable file formats"
 528
 529source "fs/Kconfig.binfmt"
 530
 531config COMPAT
 532        bool
 533        depends on SPARC64
 534        default y
 535        select COMPAT_BINFMT_ELF
 536        select HAVE_UID16
 537        select ARCH_WANT_OLD_COMPAT_IPC
 538        select COMPAT_OLD_SIGACTION
 539
 540config SYSVIPC_COMPAT
 541        bool
 542        depends on COMPAT && SYSVIPC
 543        default y
 544
 545config KEYS_COMPAT
 546        def_bool y if COMPAT && KEYS
 547
 548endmenu
 549
 550source "net/Kconfig"
 551
 552source "drivers/Kconfig"
 553
 554source "drivers/sbus/char/Kconfig"
 555
 556source "fs/Kconfig"
 557
 558source "arch/sparc/Kconfig.debug"
 559
 560source "security/Kconfig"
 561
 562source "crypto/Kconfig"
 563
 564source "lib/Kconfig"
 565