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