summaryrefslogtreecommitdiff
path: root/arch/sparc/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sparc/Kconfig')
-rw-r--r--arch/sparc/Kconfig498
1 files changed, 130 insertions, 368 deletions
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 26ddeedb5166..e594559c8dba 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -4,111 +4,21 @@
mainmenu "Linux/SPARC Kernel Configuration"
-config SPARC
- bool
- default y
- select HAVE_IDE
- select HAVE_OPROFILE
- select HAVE_ARCH_KGDB if !SMP || SPARC64
- select HAVE_ARCH_TRACEHOOK
- select ARCH_WANT_OPTIONAL_GPIOLIB
- select RTC_CLASS
- select RTC_DRV_M48T59
-
-# Identify this as a Sparc32 build
-config SPARC32
- bool
- default y if ARCH = "sparc"
- 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. This port covers the original 32-bit SPARC;
- it is old and stable and usually considered one of the "big three"
- along with the Intel and Alpha ports. The UltraLinux project
- maintains both the SPARC32 and SPARC64 ports; its web page is
- available at <http://www.ultralinux.org/>.
-
-config SPARC64
- bool
- default y if ARCH = "sparc64"
- select HAVE_FUNCTION_TRACER
- select HAVE_KRETPROBES
- select HAVE_KPROBES
- select HAVE_LMB
- select USE_GENERIC_SMP_HELPERS if SMP
- select RTC_DRV_CMOS
- select RTC_DRV_BQ4802
- select RTC_DRV_SUN4V
- select RTC_DRV_STARFIRE
-
-config ARCH_DEFCONFIG
- string
- default "arch/sparc/configs/sparc32_defconfig" if SPARC32
- default "arch/sparc/configs/sparc64_defconfig" if SPARC64
-
-
-
-config 64BIT
- def_bool y if SPARC64
-
-config GENERIC_TIME
- bool
- default y if SPARC64
-
-config GENERIC_CMOS_UPDATE
- bool
- default y if SPARC64
-
-config GENERIC_CLOCKEVENTS
- bool
- default y if SPARC64
-
-config IOMMU_HELPER
- bool
- default y if SPARC64
-
-config QUICKLIST
- bool
- default y if SPARC64
-
-config STACKTRACE_SUPPORT
- bool
- default y if SPARC64
-
-config LOCKDEP_SUPPORT
- bool
- default y if SPARC64
-
-config HAVE_LATENCYTOP_SUPPORT
- bool
- default y if SPARC64
-
-config AUDIT_ARCH
- bool
- default y if SPARC64
-
-config HAVE_SETUP_PER_CPU_AREA
- def_bool y if SPARC64
-
-config GENERIC_HARDIRQS_NO__DO_IRQ
- bool
- def_bool y if SPARC64
-
config MMU
bool
default y
config HIGHMEM
bool
- default y if SPARC32
+ default y
config ZONE_DMA
bool
- default y if SPARC32
+ default y
config GENERIC_ISA_DMA
bool
- default y if SPARC32
+ default y
config GENERIC_GPIO
bool
@@ -121,11 +31,15 @@ config ARCH_NO_VIRT_TO_BUS
config OF
def_bool y
+config HZ
+ int
+ default 100
+
source "init/Kconfig"
source "kernel/Kconfig.freezer"
-menu "Processor type and features"
+menu "General machine setup"
config SMP
bool "Symmetric multi-processing support (does not work on sun4/sun4c)"
@@ -150,258 +64,82 @@ config SMP
If you don't know what to do here, say N.
config NR_CPUS
- int "Maximum number of CPUs"
+ int "Maximum number of CPUs (2-32)"
+ range 2 32
depends on SMP
- range 2 32 if SPARC32
- range 2 1024 if SPARC64
- default 32 if SPARC32
- default 64 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_FIND_NEXT_BIT
- bool
- default y
+ default "32"
-config GENERIC_HWEIGHT
- bool
- default y if !ULTRA_HAS_POPULATION_COUNT
-
-config GENERIC_CALIBRATE_DELAY
+config SPARC
bool
default y
+ select HAVE_IDE
+ select HAVE_OPROFILE
+ select HAVE_ARCH_KGDB if !SMP
+ select HAVE_ARCH_TRACEHOOK
+ select ARCH_WANT_OPTIONAL_GPIOLIB
+ select RTC_CLASS
+ select RTC_DRV_M48T59
-config ARCH_MAY_HAVE_PC_FDC
+# Identify this as a Sparc32 build
+config SPARC32
bool
default y
-
-config ARCH_HAS_ILOG2_U32
- bool
- default n
-
-config ARCH_HAS_ILOG2_U64
- bool
- default n
-
-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.
-
-choice
- prompt "Kernel page size" if SPARC64
- default SPARC64_PAGE_SIZE_8KB
-
-config SPARC64_PAGE_SIZE_8KB
- bool "8KB"
help
- This lets you select the page size of the kernel.
-
- 8KB and 64KB work quite well, since SPARC ELF sections
- provide for up to 64KB alignment.
-
- If you don't know what to do, choose 8KB.
-
-config SPARC64_PAGE_SIZE_64KB
- bool "64KB"
-
-endchoice
+ SPARC is a family of RISC microprocessors designed and marketed by
+ Sun Microsystems, incorporated. They are very widely found in Sun
+ workstations and clones. This port covers the original 32-bit SPARC;
+ it is old and stable and usually considered one of the "big three"
+ along with the Intel and Alpha ports. The UltraLinux project
+ maintains both the SPARC32 and SPARC64 ports; its web page is
+ available at <http://www.ultralinux.org/>.
-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
- select HOTPLUG
+# Global things across all Sun machines.
+config ISA
+ bool
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.
+ ISA is found on Espresso only and is not supported currently.
+ Say N
-config GENERIC_HARDIRQS
+config EISA
bool
- default y if SPARC64
-
-source "kernel/time/Kconfig"
-
-if SPARC64
-source "drivers/cpufreq/Kconfig"
-
-config US3_FREQ
- tristate "UltraSPARC-III CPU Frequency driver"
- depends on CPU_FREQ
- select CPU_FREQ_TABLE
help
- This adds the CPUFreq driver for UltraSPARC-III processors.
-
- For details, take a look at <file:Documentation/cpu-freq>.
-
- If in doubt, say N.
+ EISA is not supported.
+ Say N
-config US2E_FREQ
- tristate "UltraSPARC-IIe CPU Frequency driver"
- depends on CPU_FREQ
- select CPU_FREQ_TABLE
+config MCA
+ bool
help
- This adds the CPUFreq driver for UltraSPARC-IIe processors.
-
- For details, take a look at <file:Documentation/cpu-freq>.
+ MCA is not supported.
+ Say N
- If in doubt, say N.
+config PCMCIA
+ tristate
+ ---help---
+ Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
+ computer. These are credit-card size devices such as network cards,
+ modems or hard drives often used with laptops computers. There are
+ actually two varieties of these cards: the older 16 bit PCMCIA cards
+ and the newer 32 bit CardBus cards. If you want to use CardBus
+ cards, you need to say Y here and also to "CardBus support" below.
-endif
+ To use your PC-cards, you will need supporting software from David
+ Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
+ for location). Please also read the PCMCIA-HOWTO, available from
+ <http://www.tldp.org/docs.html#howto>.
-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.
+ To compile this driver as modules, choose M here: the
+ modules will be called pcmcia_core and ds.
- If in doubt, say Y, as this information can be very useful.
-
-# Global things across all Sun machines.
-config GENERIC_LOCKBREAK
+config SBUS
bool
default y
- depends on SPARC64 && SMP && PREEMPT
-
-choice
- prompt "SPARC64 Huge TLB Page Size"
- depends on SPARC64 && HUGETLB_PAGE
- default HUGETLB_PAGE_SIZE_4MB
-
-config HUGETLB_PAGE_SIZE_4MB
- bool "4MB"
-
-config HUGETLB_PAGE_SIZE_512K
- bool "512K"
-
-config HUGETLB_PAGE_SIZE_64K
- depends on !SPARC64_PAGE_SIZE_64KB
- bool "64K"
-
-endchoice
-
-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_POPULATES_NODE_MAP
- def_bool y if SPARC64
-
-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
-
-source "mm/Kconfig"
-
-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.
-
-if SPARC64
-source "kernel/Kconfig.preempt"
-endif
-
-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
+config SBUSCHAR
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
+ default y
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
@@ -423,75 +161,71 @@ config SERIAL_CONSOLE
If unsure, say N.
-endmenu
+config SUN_AUXIO
+ bool
+ default y
-menu "Bus options (PCI etc.)"
-config ISA
+config SUN_IO
bool
- help
- ISA is found on Espresso only and is not supported currently.
+ default y
-config ISAPNP
+config RWSEM_GENERIC_SPINLOCK
bool
- help
- ISAPNP is not supported
+ default y
-config EISA
+config RWSEM_XCHGADD_ALGORITHM
bool
- help
- EISA is not supported.
-config MCA
+config GENERIC_FIND_NEXT_BIT
bool
- help
- MCA is not supported.
+ default y
-config SBUS
+config GENERIC_HWEIGHT
bool
default y
-config SBUSCHAR
+config GENERIC_CALIBRATE_DELAY
bool
default y
-config SUN_AUXIO
+config ARCH_MAY_HAVE_PC_FDC
bool
default y
-config SUN_IO
+config ARCH_HAS_ILOG2_U32
+ bool
+ default n
+
+config ARCH_HAS_ILOG2_U64
+ bool
+ default n
+
+config EMULATED_CMPXCHG
bool
default y
+ help
+ Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
+ is emulated, and therefore it is not completely atomic.
-config SUN_LDOMS
- bool "Sun Logical Domains support"
- depends on SPARC64
+config SUN_PM
+ bool
+ default y
help
- Say Y here is you want to support virtual devices via
- Logical Domains.
+ Enable power management and CPU standby features on supported
+ SPARC platforms.
config PCI
bool "Support for PCI and PS/2 keyboard/mouse"
- select ARCH_SUPPORTS_MSI if SPARC64
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
source "drivers/pci/Kconfig"
-source "drivers/pcmcia/Kconfig"
-
config SUN_OPENPROMFS
tristate "Openprom tree appears in /proc/openprom"
help
@@ -505,23 +239,17 @@ config SUN_OPENPROMFS
Only choose N if you know in advance that you will not need to modify
OpenPROM settings on the running system.
-
-endmenu
-
-menu "Executable file formats"
+config SPARC_LED
+ tristate "Sun4m LED driver"
+ 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
source "fs/Kconfig.binfmt"
-config COMPAT
- bool
- depends on SPARC64
- default y
- select COMPAT_BINFMT_ELF
-
-config SYSVIPC_COMPAT
- bool
- depends on COMPAT && SYSVIPC
- default y
+source "mm/Kconfig"
endmenu
@@ -531,6 +259,40 @@ source "drivers/Kconfig"
source "drivers/sbus/char/Kconfig"
+# This one must be before the filesystem configs. -DaveM
+
+menu "Unix98 PTY support"
+
+config UNIX98_PTYS
+ bool "Unix98 PTY support"
+ ---help---
+ A pseudo terminal (PTY) is a software device consisting of two
+ halves: a master and a slave. The slave device behaves identical to
+ a physical terminal; the master device is used by a process to
+ read data from and write data to the slave, thereby emulating a
+ terminal. Typical programs for the master side are telnet servers
+ and xterms.
+
+ Linux has traditionally used the BSD-like names /dev/ptyxx for
+ masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
+ has a number of problems. The GNU C library glibc 2.1 and later,
+ however, supports the Unix98 naming standard: in order to acquire a
+ pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
+ terminal is then made available to the process and the pseudo
+ terminal slave can be accessed as /dev/pts/<number>. What was
+ traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
+
+ The entries in /dev/pts/ are created on the fly by a virtual
+ file system; therefore, if you say Y here you should say Y to
+ "/dev/pts file system for Unix98 PTYs" as well.
+
+ If you want to say Y here, you need to have the C library glibc 2.1
+ or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
+ Read the instructions in <file:Documentation/Changes> pertaining to
+ pseudo terminals. It's safe to say N.
+
+endmenu
+
source "fs/Kconfig"
source "arch/sparc/Kconfig.debug"