mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-23 01:40:30 +00:00
f0d1b0b30d
This facility provides three entry points: ilog2() Log base 2 of unsigned long ilog2_u32() Log base 2 of u32 ilog2_u64() Log base 2 of u64 These facilities can either be used inside functions on dynamic data: int do_something(long q) { ...; y = ilog2(x) ...; } Or can be used to statically initialise global variables with constant values: unsigned n = ilog2(27); When performing static initialisation, the compiler will report "error: initializer element is not constant" if asked to take a log of zero or of something not reducible to a constant. They treat negative numbers as unsigned. When not dealing with a constant, they fall back to using fls() which permits them to use arch-specific log calculation instructions - such as BSR on x86/x86_64 or SCAN on FRV - if available. [akpm@osdl.org: MMC fix] Signed-off-by: David Howells <dhowells@redhat.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Herbert Xu <herbert@gondor.apana.org.au> Cc: David Howells <dhowells@redhat.com> Cc: Wojtek Kaniewski <wojtekka@toxygen.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
314 lines
8.6 KiB
Plaintext
314 lines
8.6 KiB
Plaintext
# $Id: config.in,v 1.113 2002/01/24 22:14:44 davem Exp $
|
|
# For a description of the syntax of this configuration file,
|
|
# see Documentation/kbuild/kconfig-language.txt.
|
|
#
|
|
|
|
mainmenu "Linux/SPARC Kernel Configuration"
|
|
|
|
config MMU
|
|
bool
|
|
default y
|
|
|
|
config HIGHMEM
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_ISA_DMA
|
|
bool
|
|
default y
|
|
|
|
source "init/Kconfig"
|
|
|
|
menu "General machine setup"
|
|
|
|
config SMP
|
|
bool "Symmetric multi-processing support (does not work on sun4/sun4c)"
|
|
---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 single 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,
|
|
singleprocessor machines. On a singleprocessor 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 the <file:Documentation/smp.txt>,
|
|
<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 (2-32)"
|
|
range 2 32
|
|
depends on SMP
|
|
default "32"
|
|
|
|
config SPARC
|
|
bool
|
|
default y
|
|
|
|
# Identify this as a Sparc32 build
|
|
config SPARC32
|
|
bool
|
|
default y
|
|
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/>.
|
|
|
|
# Global things across all Sun machines.
|
|
config ISA
|
|
bool
|
|
help
|
|
ISA is found on Espresso only and is not supported currently.
|
|
Say N
|
|
|
|
config EISA
|
|
bool
|
|
help
|
|
EISA is not supported.
|
|
Say N
|
|
|
|
config MCA
|
|
bool
|
|
help
|
|
MCA is not supported.
|
|
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.
|
|
|
|
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>.
|
|
|
|
To compile this driver as modules, choose M here: the
|
|
modules will be called pcmcia_core and ds.
|
|
|
|
config SBUS
|
|
bool
|
|
default y
|
|
|
|
config SBUSCHAR
|
|
bool
|
|
default y
|
|
|
|
config SERIAL_CONSOLE
|
|
bool
|
|
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 SUN_AUXIO
|
|
bool
|
|
default y
|
|
|
|
config SUN_IO
|
|
bool
|
|
default y
|
|
|
|
config RWSEM_GENERIC_SPINLOCK
|
|
bool
|
|
default y
|
|
|
|
config RWSEM_XCHGADD_ALGORITHM
|
|
bool
|
|
|
|
config GENERIC_FIND_NEXT_BIT
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_HWEIGHT
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_CALIBRATE_DELAY
|
|
bool
|
|
default y
|
|
|
|
config ARCH_MAY_HAVE_PC_FDC
|
|
bool
|
|
default y
|
|
|
|
config ARCH_HAS_ILOG2_U32
|
|
bool
|
|
default n
|
|
|
|
config ARCH_HAS_ILOG2_U64
|
|
bool
|
|
default n
|
|
|
|
config SUN_PM
|
|
bool
|
|
default y
|
|
help
|
|
Enable power management and CPU standby features on supported
|
|
SPARC platforms.
|
|
|
|
config SUN4
|
|
bool "Support for SUN4 machines (disables SUN4[CDM] support)"
|
|
depends on !SMP
|
|
default n
|
|
help
|
|
Say Y here if, and only if, your machine is a sun4. Note that
|
|
a kernel compiled with this option will run only on sun4.
|
|
(And the current version will probably work only on sun4/330.)
|
|
|
|
if !SUN4
|
|
|
|
config PCI
|
|
bool "Support for PCI and PS/2 keyboard/mouse"
|
|
help
|
|
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.
|
|
|
|
source "drivers/pci/Kconfig"
|
|
|
|
endif
|
|
|
|
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.
|
|
|
|
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 SUNOS_EMUL
|
|
bool "SunOS binary emulation"
|
|
help
|
|
This allows you to run most SunOS binaries. If you want to do this,
|
|
say Y here and place appropriate files in /usr/gnemul/sunos. See
|
|
<http://www.ultralinux.org/faq.html> for more information. If you
|
|
want to run SunOS binaries on an Ultra you must also say Y to
|
|
"Kernel support for 32-bit a.out binaries" above.
|
|
|
|
source "mm/Kconfig"
|
|
|
|
endmenu
|
|
|
|
source "net/Kconfig"
|
|
|
|
source "drivers/Kconfig"
|
|
|
|
if !SUN4
|
|
source "drivers/sbus/char/Kconfig"
|
|
endif
|
|
|
|
# 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.
|
|
|
|
config UNIX98_PTY_COUNT
|
|
int "Maximum number of Unix98 PTYs in use (0-2048)"
|
|
depends on UNIX98_PTYS
|
|
default "256"
|
|
help
|
|
The maximum number of Unix98 PTYs that can be used at any one time.
|
|
The default is 256, and should be enough for desktop systems. Server
|
|
machines which support incoming telnet/rlogin/ssh connections and/or
|
|
serve several X terminals may want to increase this: every incoming
|
|
connection and every xterm uses up one PTY.
|
|
|
|
When not in use, each additional set of 256 PTYs occupy
|
|
approximately 8 KB of kernel memory on 32-bit architectures.
|
|
|
|
endmenu
|
|
|
|
source "fs/Kconfig"
|
|
|
|
menu "Instrumentation Support"
|
|
depends on EXPERIMENTAL
|
|
|
|
source "arch/sparc/oprofile/Kconfig"
|
|
|
|
endmenu
|
|
|
|
source "arch/sparc/Kconfig.debug"
|
|
|
|
source "security/Kconfig"
|
|
|
|
source "crypto/Kconfig"
|
|
|
|
source "lib/Kconfig"
|