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