123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588 |
- config 64BIT
- bool "64-bit kernel" if ARCH = "sparc"
- default ARCH = "sparc64"
- help
- SPARC is a family of RISC microprocessors designed and marketed by
- Sun Microsystems, incorporated. They are very widely found in Sun
- workstations and clones.
- Say yes to build a 64-bit kernel - formerly known as sparc64
- Say no to build a 32-bit kernel - formerly known as sparc
- config SPARC
- bool
- default y
- select ARCH_MIGHT_HAVE_PC_PARPORT if SPARC64 && PCI
- select ARCH_MIGHT_HAVE_PC_SERIO
- select OF
- select OF_PROMTREE
- select HAVE_IDE
- select HAVE_OPROFILE
- select HAVE_ARCH_KGDB if !SMP || SPARC64
- select HAVE_ARCH_TRACEHOOK
- select HAVE_EXIT_THREAD
- select SYSCTL_EXCEPTION_TRACE
- select RTC_CLASS
- select RTC_DRV_M48T59
- select RTC_SYSTOHC
- select HAVE_DMA_API_DEBUG
- select HAVE_ARCH_JUMP_LABEL if SPARC64
- select GENERIC_IRQ_SHOW
- select ARCH_WANT_IPC_PARSE_VERSION
- select GENERIC_PCI_IOMAP
- select HAVE_NMI_WATCHDOG if SPARC64
- select HAVE_CBPF_JIT
- select HAVE_DEBUG_BUGVERBOSE
- select GENERIC_SMP_IDLE_THREAD
- select GENERIC_CLOCKEVENTS
- select GENERIC_STRNCPY_FROM_USER
- select GENERIC_STRNLEN_USER
- select MODULES_USE_ELF_RELA
- select ODD_RT_SIGACTION
- select OLD_SIGSUSPEND
- select ARCH_HAS_SG_CHAIN
- select CPU_NO_EFFICIENT_FFS
- select HAVE_ARCH_HARDENED_USERCOPY
- select PROVE_LOCKING_SMALL if PROVE_LOCKING
- config SPARC32
- def_bool !64BIT
- select GENERIC_ATOMIC64
- select CLZ_TAB
- select HAVE_UID16
- select OLD_SIGACTION
- config SPARC64
- def_bool 64BIT
- select HAVE_FUNCTION_TRACER
- select HAVE_FUNCTION_GRAPH_TRACER
- select HAVE_KRETPROBES
- select HAVE_KPROBES
- select HAVE_RCU_TABLE_FREE if SMP
- select HAVE_MEMBLOCK
- select HAVE_MEMBLOCK_NODE_MAP
- select HAVE_ARCH_TRANSPARENT_HUGEPAGE
- select HAVE_DYNAMIC_FTRACE
- select HAVE_FTRACE_MCOUNT_RECORD
- select HAVE_SYSCALL_TRACEPOINTS
- select HAVE_CONTEXT_TRACKING
- select HAVE_DEBUG_KMEMLEAK
- select SPARSE_IRQ
- select RTC_DRV_CMOS
- select RTC_DRV_BQ4802
- select RTC_DRV_SUN4V
- select RTC_DRV_STARFIRE
- select HAVE_PERF_EVENTS
- select PERF_USE_VMALLOC
- select IRQ_PREFLOW_FASTEOI
- select ARCH_HAVE_NMI_SAFE_CMPXCHG
- select HAVE_C_RECORDMCOUNT
- select NO_BOOTMEM
- select HAVE_ARCH_AUDITSYSCALL
- select ARCH_SUPPORTS_ATOMIC_RMW
- select HAVE_NMI
- config ARCH_DEFCONFIG
- string
- default "arch/sparc/configs/sparc32_defconfig" if SPARC32
- default "arch/sparc/configs/sparc64_defconfig" if SPARC64
- config ARCH_PROC_KCORE_TEXT
- def_bool y
- config ARCH_ATU
- bool
- default y if SPARC64
- config ARCH_DMA_ADDR_T_64BIT
- bool
- default y if ARCH_ATU
- config IOMMU_HELPER
- bool
- default y if SPARC64
- config STACKTRACE_SUPPORT
- bool
- default y if SPARC64
- config LOCKDEP_SUPPORT
- bool
- default y if SPARC64
- config ARCH_HIBERNATION_POSSIBLE
- def_bool y if SPARC64
- config AUDIT_ARCH
- bool
- default y
- config HAVE_SETUP_PER_CPU_AREA
- def_bool y if SPARC64
- config NEED_PER_CPU_EMBED_FIRST_CHUNK
- def_bool y if SPARC64
- config NEED_PER_CPU_PAGE_FIRST_CHUNK
- def_bool y if SPARC64
- config MMU
- bool
- default y
- config HIGHMEM
- bool
- default y if SPARC32
- config ZONE_DMA
- bool
- default y if SPARC32
- config NEED_DMA_MAP_STATE
- def_bool y
- config NEED_SG_DMA_LENGTH
- def_bool y
- config GENERIC_ISA_DMA
- bool
- default y if SPARC32
- config ARCH_SUPPORTS_DEBUG_PAGEALLOC
- def_bool y if SPARC64
- config PGTABLE_LEVELS
- default 4 if 64BIT
- default 3
- source "init/Kconfig"
- source "kernel/Kconfig.freezer"
- menu "Processor type and features"
- config SMP
- bool "Symmetric multi-processing support"
- ---help---
- This enables support for systems with more than one CPU. If you have
- a system with only one CPU, say N. If you have a system with more
- than one CPU, say Y.
- If you say N here, the kernel will run on uni- and multiprocessor
- machines, but will use only one CPU of a multiprocessor machine. If
- you say Y here, the kernel will run on many, but not all,
- uniprocessor machines. On a uniprocessor machine, the kernel
- will run faster if you say N here.
- People using multiprocessor machines who say Y here should also say
- Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
- Management" code will be disabled if you say Y here.
- See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
- available at <http://www.tldp.org/docs.html#howto>.
- If you don't know what to do here, say N.
- config NR_CPUS
- int "Maximum number of CPUs"
- depends on SMP
- range 2 32 if SPARC32
- range 2 4096 if SPARC64
- default 32 if SPARC32
- default 4096 if SPARC64
- source kernel/Kconfig.hz
- config RWSEM_GENERIC_SPINLOCK
- bool
- default y if SPARC32
- config RWSEM_XCHGADD_ALGORITHM
- bool
- default y if SPARC64
- config GENERIC_HWEIGHT
- bool
- default y
- config GENERIC_CALIBRATE_DELAY
- bool
- default y
- config ARCH_MAY_HAVE_PC_FDC
- bool
- default y
- config EMULATED_CMPXCHG
- bool
- default y if SPARC32
- help
- Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
- is emulated, and therefore it is not completely atomic.
- # Makefile helpers
- config SPARC32_SMP
- bool
- default y
- depends on SPARC32 && SMP
- config SPARC64_SMP
- bool
- default y
- depends on SPARC64 && SMP
- config EARLYFB
- bool "Support for early boot text console"
- default y
- depends on SPARC64
- help
- Say Y here to enable a faster early framebuffer boot console.
- config SECCOMP
- bool "Enable seccomp to safely compute untrusted bytecode"
- depends on SPARC64 && PROC_FS
- default y
- help
- This kernel feature is useful for number crunching applications
- that may need to compute untrusted bytecode during their
- execution. By using pipes or other transports made available to
- the process as file descriptors supporting the read/write
- syscalls, it's possible to isolate those applications in
- their own address space using seccomp. Once seccomp is
- enabled via /proc/<pid>/seccomp, it cannot be disabled
- and the task is only allowed to execute a few safe syscalls
- defined by each seccomp mode.
- If unsure, say Y. Only embedded should say N here.
- config HOTPLUG_CPU
- bool "Support for hot-pluggable CPUs"
- depends on SPARC64 && SMP
- help
- Say Y here to experiment with turning CPUs off and on. CPUs
- can be controlled through /sys/devices/system/cpu/cpu#.
- Say N if you want to disable CPU hotplug.
- if SPARC64
- source "drivers/cpufreq/Kconfig"
- endif
- config US3_MC
- tristate "UltraSPARC-III Memory Controller driver"
- depends on SPARC64
- default y
- help
- This adds a driver for the UltraSPARC-III memory controller.
- Loading this driver allows exact mnemonic strings to be
- printed in the event of a memory error, so that the faulty DIMM
- on the motherboard can be matched to the error.
- If in doubt, say Y, as this information can be very useful.
- # Global things across all Sun machines.
- config GENERIC_LOCKBREAK
- bool
- default y
- depends on SPARC64 && SMP && PREEMPT
- config NUMA
- bool "NUMA support"
- depends on SPARC64 && SMP
- config NODES_SHIFT
- int
- default "4"
- depends on NEED_MULTIPLE_NODES
- # Some NUMA nodes have memory ranges that span
- # other nodes. Even though a pfn is valid and
- # between a node's start and end pfns, it may not
- # reside on that node. See memmap_init_zone()
- # for details.
- config NODES_SPAN_OTHER_NODES
- def_bool y
- depends on NEED_MULTIPLE_NODES
- config ARCH_SELECT_MEMORY_MODEL
- def_bool y if SPARC64
- config ARCH_SPARSEMEM_ENABLE
- def_bool y if SPARC64
- select SPARSEMEM_VMEMMAP_ENABLE
- config ARCH_SPARSEMEM_DEFAULT
- def_bool y if SPARC64
- config FORCE_MAX_ZONEORDER
- int "Maximum zone order"
- default "13"
- help
- The kernel memory allocator divides physically contiguous memory
- blocks into "zones", where each zone is a power of two number of
- pages. This option selects the largest power of two that the kernel
- keeps in the memory allocator. If you need to allocate very large
- blocks of physically contiguous memory, then you may need to
- increase this value.
- This config option is actually maximum order plus one. For example,
- a value of 13 means that the largest free memory block is 2^12 pages.
- source "mm/Kconfig"
- if SPARC64
- source "kernel/power/Kconfig"
- endif
- config SCHED_SMT
- bool "SMT (Hyperthreading) scheduler support"
- depends on SPARC64 && SMP
- default y
- help
- SMT scheduler support improves the CPU scheduler's decision making
- when dealing with SPARC cpus at a cost of slightly increased overhead
- in some places. If unsure say N here.
- config SCHED_MC
- bool "Multi-core scheduler support"
- depends on SPARC64 && SMP
- default y
- help
- Multi-core scheduler support improves the CPU scheduler's decision
- making when dealing with multi-core CPU chips at a cost of slightly
- increased overhead in some places. If unsure say N here.
- source "kernel/Kconfig.preempt"
- config CMDLINE_BOOL
- bool "Default bootloader kernel arguments"
- depends on SPARC64
- config CMDLINE
- string "Initial kernel command string"
- depends on CMDLINE_BOOL
- default "console=ttyS0,9600 root=/dev/sda1"
- help
- Say Y here if you want to be able to pass default arguments to
- the kernel. This will be overridden by the bootloader, if you
- use one (such as SILO). This is most useful if you want to boot
- a kernel from TFTP, and want default options to be available
- with having them passed on the command line.
- NOTE: This option WILL override the PROM bootargs setting!
- config SUN_PM
- bool
- default y if SPARC32
- help
- Enable power management and CPU standby features on supported
- SPARC platforms.
- config SPARC_LED
- tristate "Sun4m LED driver"
- depends on SPARC32
- help
- This driver toggles the front-panel LED on sun4m systems
- in a user-specifiable manner. Its state can be probed
- by reading /proc/led and its blinking mode can be changed
- via writes to /proc/led
- config SERIAL_CONSOLE
- bool
- depends on SPARC32
- default y
- ---help---
- If you say Y here, it will be possible to use a serial port as the
- system console (the system console is the device which receives all
- kernel messages and warnings and which allows logins in single user
- mode). This could be useful if some terminal or printer is connected
- to that serial port.
- Even if you say Y here, the currently visible virtual console
- (/dev/tty0) will still be used as the system console by default, but
- you can alter that using a kernel command line option such as
- "console=ttyS1". (Try "man bootparam" or see the documentation of
- your boot loader (silo) about how to pass options to the kernel at
- boot time.)
- If you don't have a graphics card installed and you say Y here, the
- kernel will automatically use the first serial line, /dev/ttyS0, as
- system console.
- If unsure, say N.
- config SPARC_LEON
- bool "Sparc Leon processor family"
- depends on SPARC32
- select USB_EHCI_BIG_ENDIAN_MMIO
- select USB_EHCI_BIG_ENDIAN_DESC
- ---help---
- If you say Y here if you are running on a SPARC-LEON processor.
- The LEON processor is a synthesizable VHDL model of the
- SPARC-v8 standard. LEON is part of the GRLIB collection of
- IP cores that are distributed under GPL. GRLIB can be downloaded
- from www.gaisler.com. You can download a sparc-linux cross-compilation
- toolchain at www.gaisler.com.
- if SPARC_LEON
- menu "U-Boot options"
- config UBOOT_LOAD_ADDR
- hex "uImage Load Address"
- default 0x40004000
- ---help---
- U-Boot kernel load address, the address in physical address space
- where u-boot will place the Linux kernel before booting it.
- This address is normally the base address of main memory + 0x4000.
- config UBOOT_FLASH_ADDR
- hex "uImage.o Load Address"
- default 0x00080000
- ---help---
- Optional setting only affecting the uImage.o ELF-image used to
- download the uImage file to the target using a ELF-loader other than
- U-Boot. It may for example be used to download an uImage to FLASH with
- the GRMON utility before even starting u-boot.
- config UBOOT_ENTRY_ADDR
- hex "uImage Entry Address"
- default 0xf0004000
- ---help---
- Do not change this unless you know what you're doing. This is
- hardcoded by the SPARC32 and LEON port.
- This is the virtual address u-boot jumps to when booting the Linux
- Kernel.
- endmenu
- endif
- endmenu
- menu "Bus options (PCI etc.)"
- config SBUS
- bool
- default y
- config SBUSCHAR
- bool
- default y
- config SUN_LDOMS
- bool "Sun Logical Domains support"
- depends on SPARC64
- help
- Say Y here is you want to support virtual devices via
- Logical Domains.
- config PCI
- bool "Support for PCI and PS/2 keyboard/mouse"
- help
- Find out whether your system includes a PCI bus. PCI is the name of
- a bus system, i.e. the way the CPU talks to the other stuff inside
- your box. If you say Y here, the kernel will include drivers and
- infrastructure code to support PCI bus devices.
- CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
- CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
- All of these platforms are extremely obscure, so say N if unsure.
- config PCI_DOMAINS
- def_bool PCI if SPARC64
- config PCI_SYSCALL
- def_bool PCI
- config PCIC_PCI
- bool
- depends on PCI && SPARC32 && !SPARC_LEON
- default y
- config LEON_PCI
- bool
- depends on PCI && SPARC_LEON
- default y
- config SPARC_GRPCI1
- bool "GRPCI Host Bridge Support"
- depends on LEON_PCI
- default y
- help
- Say Y here to include the GRPCI Host Bridge Driver. The GRPCI
- PCI host controller is typically found in GRLIB SPARC32/LEON
- systems. The driver has one property (all_pci_errors) controlled
- from the bootloader that makes the GRPCI to generate interrupts
- on detected PCI Parity and System errors.
- config SPARC_GRPCI2
- bool "GRPCI2 Host Bridge Support"
- depends on LEON_PCI
- default y
- help
- Say Y here to include the GRPCI2 Host Bridge Driver.
- source "drivers/pci/Kconfig"
- source "drivers/pcmcia/Kconfig"
- config SUN_OPENPROMFS
- tristate "Openprom tree appears in /proc/openprom"
- help
- If you say Y, the OpenPROM device tree will be available as a
- virtual file system, which you can mount to /proc/openprom by "mount
- -t openpromfs none /proc/openprom".
- To compile the /proc/openprom support as a module, choose M here: the
- module will be called openpromfs.
- Only choose N if you know in advance that you will not need to modify
- OpenPROM settings on the running system.
- # Makefile helpers
- config SPARC64_PCI
- bool
- default y
- depends on SPARC64 && PCI
- config SPARC64_PCI_MSI
- bool
- default y
- depends on SPARC64_PCI && PCI_MSI
- endmenu
- menu "Executable file formats"
- source "fs/Kconfig.binfmt"
- config COMPAT
- bool
- depends on SPARC64
- default y
- select COMPAT_BINFMT_ELF
- select HAVE_UID16
- select ARCH_WANT_OLD_COMPAT_IPC
- select COMPAT_OLD_SIGACTION
- config SYSVIPC_COMPAT
- bool
- depends on COMPAT && SYSVIPC
- default y
- endmenu
- source "net/Kconfig"
- source "drivers/Kconfig"
- source "drivers/sbus/char/Kconfig"
- source "fs/Kconfig"
- source "arch/sparc/Kconfig.debug"
- source "security/Kconfig"
- source "crypto/Kconfig"
- source "lib/Kconfig"
|