xref: /linux/arch/arm/Kconfig (revision 8fc5ffa063f6551c9e6dd66cab89c46ad41e59c5)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# For a description of the syntax of this configuration file,
31da177e4SLinus Torvalds# see Documentation/kbuild/kconfig-language.txt.
41da177e4SLinus Torvalds#
51da177e4SLinus Torvalds
61da177e4SLinus Torvaldsmainmenu "Linux Kernel Configuration"
71da177e4SLinus Torvalds
81da177e4SLinus Torvaldsconfig ARM
91da177e4SLinus Torvalds	bool
101da177e4SLinus Torvalds	default y
1112b824fbSAlessandro Zummo	select RTC_LIB
121da177e4SLinus Torvalds	help
131da177e4SLinus Torvalds	  The ARM series is a line of low-power-consumption RISC chip designs
14f6c8965aSMartin Michlmayr	  licensed by ARM Ltd and targeted at embedded applications and
151da177e4SLinus Torvalds	  handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
161da177e4SLinus Torvalds	  manufactured, but legacy ARM-based PC hardware remains popular in
171da177e4SLinus Torvalds	  Europe.  There is an ARM Linux project with a web page at
181da177e4SLinus Torvalds	  <http://www.arm.linux.org.uk/>.
191da177e4SLinus Torvalds
201da177e4SLinus Torvaldsconfig MMU
211da177e4SLinus Torvalds	bool
221da177e4SLinus Torvalds	default y
231da177e4SLinus Torvalds
241da177e4SLinus Torvaldsconfig EISA
251da177e4SLinus Torvalds	bool
261da177e4SLinus Torvalds	---help---
271da177e4SLinus Torvalds	  The Extended Industry Standard Architecture (EISA) bus was
281da177e4SLinus Torvalds	  developed as an open alternative to the IBM MicroChannel bus.
291da177e4SLinus Torvalds
301da177e4SLinus Torvalds	  The EISA bus provided some of the features of the IBM MicroChannel
311da177e4SLinus Torvalds	  bus while maintaining backward compatibility with cards made for
321da177e4SLinus Torvalds	  the older ISA bus.  The EISA bus saw limited use between 1988 and
331da177e4SLinus Torvalds	  1995 when it was made obsolete by the PCI bus.
341da177e4SLinus Torvalds
351da177e4SLinus Torvalds	  Say Y here if you are building a kernel for an EISA-based machine.
361da177e4SLinus Torvalds
371da177e4SLinus Torvalds	  Otherwise, say N.
381da177e4SLinus Torvalds
391da177e4SLinus Torvaldsconfig SBUS
401da177e4SLinus Torvalds	bool
411da177e4SLinus Torvalds
421da177e4SLinus Torvaldsconfig MCA
431da177e4SLinus Torvalds	bool
441da177e4SLinus Torvalds	help
451da177e4SLinus Torvalds	  MicroChannel Architecture is found in some IBM PS/2 machines and
461da177e4SLinus Torvalds	  laptops.  It is a bus system similar to PCI or ISA. See
471da177e4SLinus Torvalds	  <file:Documentation/mca.txt> (and especially the web page given
481da177e4SLinus Torvalds	  there) before attempting to build an MCA bus kernel.
491da177e4SLinus Torvalds
501da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
511da177e4SLinus Torvalds	bool
521da177e4SLinus Torvalds	default y
531da177e4SLinus Torvalds
541da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
551da177e4SLinus Torvalds	bool
561da177e4SLinus Torvalds
57b89c3b16SAkinobu Mitaconfig GENERIC_HWEIGHT
58b89c3b16SAkinobu Mita	bool
59b89c3b16SAkinobu Mita	default y
60b89c3b16SAkinobu Mita
611da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY
621da177e4SLinus Torvalds	bool
631da177e4SLinus Torvalds	default y
641da177e4SLinus Torvalds
651da177e4SLinus Torvaldsconfig GENERIC_BUST_SPINLOCK
661da177e4SLinus Torvalds	bool
671da177e4SLinus Torvalds
68a08b6b79Sviro@ZenIV.linux.org.ukconfig ARCH_MAY_HAVE_PC_FDC
69a08b6b79Sviro@ZenIV.linux.org.uk	bool
70a08b6b79Sviro@ZenIV.linux.org.uk
711da177e4SLinus Torvaldsconfig GENERIC_ISA_DMA
721da177e4SLinus Torvalds	bool
731da177e4SLinus Torvalds
741da177e4SLinus Torvaldsconfig FIQ
751da177e4SLinus Torvalds	bool
761da177e4SLinus Torvalds
77034d2f5aSAl Viroconfig ARCH_MTD_XIP
78034d2f5aSAl Viro	bool
79034d2f5aSAl Viro
80c760fc19SHyok S. Choiconfig VECTORS_BASE
81c760fc19SHyok S. Choi	hex
82c760fc19SHyok S. Choi	default 0xffff0000 if MMU
83c760fc19SHyok S. Choi	default DRAM_BASE if REMAP_VECTORS_TO_RAM
84c760fc19SHyok S. Choi	default 0x00000000
85c760fc19SHyok S. Choi	help
86c760fc19SHyok S. Choi	  The base address of exception vectors.
87c760fc19SHyok S. Choi
881da177e4SLinus Torvaldssource "init/Kconfig"
891da177e4SLinus Torvalds
901da177e4SLinus Torvaldsmenu "System Type"
911da177e4SLinus Torvalds
921da177e4SLinus Torvaldschoice
931da177e4SLinus Torvalds	prompt "ARM system type"
946a0e2430SCatalin Marinas	default ARCH_VERSATILE
951da177e4SLinus Torvalds
964af6fee1SDeepak Saxenaconfig ARCH_AAEC2000
974af6fee1SDeepak Saxena	bool "Agilent AAEC-2000 based"
984af6fee1SDeepak Saxena	select ARM_AMBA
994af6fee1SDeepak Saxena	help
1004af6fee1SDeepak Saxena	  This enables support for systems based on the Agilent AAEC-2000
1014af6fee1SDeepak Saxena
1024af6fee1SDeepak Saxenaconfig ARCH_INTEGRATOR
1034af6fee1SDeepak Saxena	bool "ARM Ltd. Integrator family"
1044af6fee1SDeepak Saxena	select ARM_AMBA
1054af6fee1SDeepak Saxena	select ICST525
1064af6fee1SDeepak Saxena	help
1074af6fee1SDeepak Saxena	  Support for ARM's Integrator platform.
1084af6fee1SDeepak Saxena
1094af6fee1SDeepak Saxenaconfig ARCH_REALVIEW
1104af6fee1SDeepak Saxena	bool "ARM Ltd. RealView family"
1114af6fee1SDeepak Saxena	select ARM_AMBA
1124af6fee1SDeepak Saxena	select ICST307
1134af6fee1SDeepak Saxena	help
1144af6fee1SDeepak Saxena	  This enables support for ARM Ltd RealView boards.
1154af6fee1SDeepak Saxena
1164af6fee1SDeepak Saxenaconfig ARCH_VERSATILE
1174af6fee1SDeepak Saxena	bool "ARM Ltd. Versatile family"
1184af6fee1SDeepak Saxena	select ARM_AMBA
1194af6fee1SDeepak Saxena	select ARM_VIC
1204af6fee1SDeepak Saxena	select ICST307
1214af6fee1SDeepak Saxena	help
1224af6fee1SDeepak Saxena	  This enables support for ARM Ltd Versatile board.
1234af6fee1SDeepak Saxena
124*8fc5ffa0SAndrew Victorconfig ARCH_AT91
125*8fc5ffa0SAndrew Victor	bool "Atmel AT91"
1264af6fee1SDeepak Saxena	help
127*8fc5ffa0SAndrew Victor	  This enables support for systems based on the Atmel AT91RM9200
128*8fc5ffa0SAndrew Victor	  and AT91SAM9xxx processors.
1294af6fee1SDeepak Saxena
1301da177e4SLinus Torvaldsconfig ARCH_CLPS7500
1314af6fee1SDeepak Saxena	bool "Cirrus CL-PS7500FE"
1321da177e4SLinus Torvalds	select TIMER_ACORN
133f7e68bbfSRussell King	select ISA
134f999b8bdSMartin Michlmayr	help
135f999b8bdSMartin Michlmayr	  Support for the Cirrus Logic PS7500FE system-on-a-chip.
1361da177e4SLinus Torvalds
1371da177e4SLinus Torvaldsconfig ARCH_CLPS711X
1384af6fee1SDeepak Saxena	bool "Cirrus Logic CLPS711x/EP721x-based"
139f999b8bdSMartin Michlmayr	help
140f999b8bdSMartin Michlmayr	  Support for Cirrus Logic 711x/721x based boards.
1411da177e4SLinus Torvalds
1421da177e4SLinus Torvaldsconfig ARCH_CO285
1431da177e4SLinus Torvalds	bool "Co-EBSA285"
1441da177e4SLinus Torvalds	select FOOTBRIDGE
1451da177e4SLinus Torvalds	select FOOTBRIDGE_ADDIN
146f999b8bdSMartin Michlmayr	help
147f999b8bdSMartin Michlmayr	  Support for Intel's EBSA285 companion chip.
1481da177e4SLinus Torvalds
1491da177e4SLinus Torvaldsconfig ARCH_EBSA110
1501da177e4SLinus Torvalds	bool "EBSA-110"
151f7e68bbfSRussell King	select ISA
1521da177e4SLinus Torvalds	help
1531da177e4SLinus Torvalds	  This is an evaluation board for the StrongARM processor available
154f6c8965aSMartin Michlmayr	  from Digital. It has limited hardware on-board, including an
1551da177e4SLinus Torvalds	  Ethernet interface, two PCMCIA sockets, two serial ports and a
1561da177e4SLinus Torvalds	  parallel port.
1571da177e4SLinus Torvalds
158e7736d47SLennert Buytenhekconfig ARCH_EP93XX
159e7736d47SLennert Buytenhek	bool "EP93xx-based"
160e7736d47SLennert Buytenhek	select ARM_AMBA
161e7736d47SLennert Buytenhek	select ARM_VIC
162e7736d47SLennert Buytenhek	help
163e7736d47SLennert Buytenhek	  This enables support for the Cirrus EP93xx series of CPUs.
164e7736d47SLennert Buytenhek
1651da177e4SLinus Torvaldsconfig ARCH_FOOTBRIDGE
1661da177e4SLinus Torvalds	bool "FootBridge"
1671da177e4SLinus Torvalds	select FOOTBRIDGE
168f999b8bdSMartin Michlmayr	help
169f999b8bdSMartin Michlmayr	  Support for systems based on the DC21285 companion chip
170f999b8bdSMartin Michlmayr	  ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
1711da177e4SLinus Torvalds
1724af6fee1SDeepak Saxenaconfig ARCH_NETX
1734af6fee1SDeepak Saxena	bool "Hilscher NetX based"
1744af6fee1SDeepak Saxena	select ARM_VIC
175f999b8bdSMartin Michlmayr	help
1764af6fee1SDeepak Saxena	  This enables support for systems based on the Hilscher NetX Soc
1774af6fee1SDeepak Saxena
1784af6fee1SDeepak Saxenaconfig ARCH_H720X
1794af6fee1SDeepak Saxena	bool "Hynix HMS720x-based"
1804af6fee1SDeepak Saxena	select ISA_DMA_API
1814af6fee1SDeepak Saxena	help
1824af6fee1SDeepak Saxena	  This enables support for systems based on the Hynix HMS720x
1834af6fee1SDeepak Saxena
1844af6fee1SDeepak Saxenaconfig ARCH_IMX
1854af6fee1SDeepak Saxena	bool "IMX"
1864af6fee1SDeepak Saxena	help
1874af6fee1SDeepak Saxena	  Support for Motorola's i.MX family of processors (MX1, MXL).
1881da177e4SLinus Torvalds
1891da177e4SLinus Torvaldsconfig ARCH_IOP3XX
1901da177e4SLinus Torvalds	bool "IOP3xx-based"
191a4f7e763SRussell King	depends on MMU
192f7e68bbfSRussell King	select PCI
193f999b8bdSMartin Michlmayr	help
194f999b8bdSMartin Michlmayr	  Support for Intel's IOP3XX (XScale) family of processors.
1951da177e4SLinus Torvalds
1961da177e4SLinus Torvaldsconfig ARCH_IXP4XX
1971da177e4SLinus Torvalds	bool "IXP4xx-based"
198a4f7e763SRussell King	depends on MMU
199f999b8bdSMartin Michlmayr	help
200f999b8bdSMartin Michlmayr	  Support for Intel's IXP4XX (XScale) family of processors.
2011da177e4SLinus Torvalds
2021da177e4SLinus Torvaldsconfig ARCH_IXP2000
2031da177e4SLinus Torvalds	bool "IXP2400/2800-based"
204a4f7e763SRussell King	depends on MMU
205f7e68bbfSRussell King	select PCI
206f999b8bdSMartin Michlmayr	help
207f999b8bdSMartin Michlmayr	  Support for Intel's IXP2400/2800 (XScale) family of processors.
2081da177e4SLinus Torvalds
209c4713074SLennert Buytenhekconfig ARCH_IXP23XX
210c4713074SLennert Buytenhek 	bool "IXP23XX-based"
211a4f7e763SRussell King	depends on MMU
212c4713074SLennert Buytenhek 	select PCI
213c4713074SLennert Buytenhek	help
214c4713074SLennert Buytenhek	  Support for Intel's IXP23xx (XScale) family of processors.
215c4713074SLennert Buytenhek
2161da177e4SLinus Torvaldsconfig ARCH_L7200
2171da177e4SLinus Torvalds	bool "LinkUp-L7200"
2181da177e4SLinus Torvalds	select FIQ
2191da177e4SLinus Torvalds	help
2201da177e4SLinus Torvalds	  Say Y here if you intend to run this kernel on a LinkUp Systems
2211da177e4SLinus Torvalds	  L7200 Software Development Board which uses an ARM720T processor.
2221da177e4SLinus Torvalds	  Information on this board can be obtained at:
2231da177e4SLinus Torvalds
2241da177e4SLinus Torvalds	  <http://www.linkupsys.com/>
2251da177e4SLinus Torvalds
2261da177e4SLinus Torvalds	  If you have any questions or comments about the Linux kernel port
2271da177e4SLinus Torvalds	  to this board, send e-mail to <sjhill@cotw.com>.
2281da177e4SLinus Torvalds
2294af6fee1SDeepak Saxenaconfig ARCH_PNX4008
2304af6fee1SDeepak Saxena	bool "Philips Nexperia PNX4008 Mobile"
2314af6fee1SDeepak Saxena	help
2324af6fee1SDeepak Saxena	  This enables support for Philips PNX4008 mobile platform.
2334af6fee1SDeepak Saxena
2341da177e4SLinus Torvaldsconfig ARCH_PXA
2351da177e4SLinus Torvalds	bool "PXA2xx-based"
236a4f7e763SRussell King	depends on MMU
237034d2f5aSAl Viro	select ARCH_MTD_XIP
238f999b8bdSMartin Michlmayr	help
239f999b8bdSMartin Michlmayr	  Support for Intel's PXA2XX processor line.
2401da177e4SLinus Torvalds
2411da177e4SLinus Torvaldsconfig ARCH_RPC
2421da177e4SLinus Torvalds	bool "RiscPC"
2431da177e4SLinus Torvalds	select ARCH_ACORN
2441da177e4SLinus Torvalds	select FIQ
2451da177e4SLinus Torvalds	select TIMER_ACORN
246a08b6b79Sviro@ZenIV.linux.org.uk	select ARCH_MAY_HAVE_PC_FDC
247065909b9SRussell King	select ISA_DMA_API
2481da177e4SLinus Torvalds	help
2491da177e4SLinus Torvalds	  On the Acorn Risc-PC, Linux can support the internal IDE disk and
2501da177e4SLinus Torvalds	  CD-ROM interface, serial and parallel port, and the floppy drive.
2511da177e4SLinus Torvalds
2521da177e4SLinus Torvaldsconfig ARCH_SA1100
2531da177e4SLinus Torvalds	bool "SA1100-based"
254f7e68bbfSRussell King	select ISA
2553cd9e19eSRussell King	select ARCH_DISCONTIGMEM_ENABLE
256034d2f5aSAl Viro	select ARCH_MTD_XIP
257f999b8bdSMartin Michlmayr	help
258f999b8bdSMartin Michlmayr	  Support for StrongARM 11x0 based boards.
2591da177e4SLinus Torvalds
2601da177e4SLinus Torvaldsconfig ARCH_S3C2410
261cd701aa2SBen Dooks	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442"
2621da177e4SLinus Torvalds	help
2631da177e4SLinus Torvalds	  Samsung S3C2410X CPU based systems, such as the Simtec Electronics
2641da177e4SLinus Torvalds	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
265f6c8965aSMartin Michlmayr	  the Samsung SMDK2410 development board (and derivatives).
2661da177e4SLinus Torvalds
2671da177e4SLinus Torvaldsconfig ARCH_SHARK
2681da177e4SLinus Torvalds	bool "Shark"
269f7e68bbfSRussell King	select ISA
270f7e68bbfSRussell King	select ISA_DMA
271f7e68bbfSRussell King	select PCI
272f999b8bdSMartin Michlmayr	help
273f999b8bdSMartin Michlmayr	  Support for the StrongARM based Digital DNARD machine, also known
274f999b8bdSMartin Michlmayr	  as "Shark" (<http://www.shark-linux.de/shark.html>).
2751da177e4SLinus Torvalds
2761da177e4SLinus Torvaldsconfig ARCH_LH7A40X
2771da177e4SLinus Torvalds	bool "Sharp LH7A40X"
2781da177e4SLinus Torvalds	help
2791da177e4SLinus Torvalds	  Say Y here for systems based on one of the Sharp LH7A40X
2801da177e4SLinus Torvalds	  System on a Chip processors.  These CPUs include an ARM922T
2811da177e4SLinus Torvalds	  core with a wide array of integrated devices for
2821da177e4SLinus Torvalds	  hand-held and low-power applications.
2831da177e4SLinus Torvalds
2841da177e4SLinus Torvaldsconfig ARCH_OMAP
2851da177e4SLinus Torvalds	bool "TI OMAP"
286f999b8bdSMartin Michlmayr	help
287f999b8bdSMartin Michlmayr	  Support for TI's OMAP platform (OMAP1 and OMAP2).
2881da177e4SLinus Torvalds
2891da177e4SLinus Torvaldsendchoice
2901da177e4SLinus Torvalds
2911da177e4SLinus Torvaldssource "arch/arm/mach-clps711x/Kconfig"
2921da177e4SLinus Torvalds
293e7736d47SLennert Buytenheksource "arch/arm/mach-ep93xx/Kconfig"
294e7736d47SLennert Buytenhek
2951da177e4SLinus Torvaldssource "arch/arm/mach-footbridge/Kconfig"
2961da177e4SLinus Torvalds
2971da177e4SLinus Torvaldssource "arch/arm/mach-integrator/Kconfig"
2981da177e4SLinus Torvalds
2991da177e4SLinus Torvaldssource "arch/arm/mach-iop3xx/Kconfig"
3001da177e4SLinus Torvalds
3011da177e4SLinus Torvaldssource "arch/arm/mach-ixp4xx/Kconfig"
3021da177e4SLinus Torvalds
3031da177e4SLinus Torvaldssource "arch/arm/mach-ixp2000/Kconfig"
3041da177e4SLinus Torvalds
305c4713074SLennert Buytenheksource "arch/arm/mach-ixp23xx/Kconfig"
306c4713074SLennert Buytenhek
3071da177e4SLinus Torvaldssource "arch/arm/mach-pxa/Kconfig"
3081da177e4SLinus Torvalds
3091da177e4SLinus Torvaldssource "arch/arm/mach-sa1100/Kconfig"
3101da177e4SLinus Torvalds
311d48af15eSTony Lindgrensource "arch/arm/plat-omap/Kconfig"
312d48af15eSTony Lindgren
313d48af15eSTony Lindgrensource "arch/arm/mach-omap1/Kconfig"
3141da177e4SLinus Torvalds
3151dbae815STony Lindgrensource "arch/arm/mach-omap2/Kconfig"
3161dbae815STony Lindgren
3171da177e4SLinus Torvaldssource "arch/arm/mach-s3c2410/Kconfig"
3181da177e4SLinus Torvalds
3191da177e4SLinus Torvaldssource "arch/arm/mach-lh7a40x/Kconfig"
3201da177e4SLinus Torvalds
3211da177e4SLinus Torvaldssource "arch/arm/mach-imx/Kconfig"
3221da177e4SLinus Torvalds
3231da177e4SLinus Torvaldssource "arch/arm/mach-h720x/Kconfig"
3241da177e4SLinus Torvalds
3251da177e4SLinus Torvaldssource "arch/arm/mach-versatile/Kconfig"
3261da177e4SLinus Torvalds
327038c5b60SBellido Nicolassource "arch/arm/mach-aaec2000/Kconfig"
328038c5b60SBellido Nicolas
3298ad68bbfSCatalin Marinassource "arch/arm/mach-realview/Kconfig"
3308ad68bbfSCatalin Marinas
33173a59c1cSSAN Peoplesource "arch/arm/mach-at91rm9200/Kconfig"
33273a59c1cSSAN People
333bb6d8c88SSascha Hauersource "arch/arm/mach-netx/Kconfig"
334bb6d8c88SSascha Hauer
3351da177e4SLinus Torvalds# Definitions to make life easier
3361da177e4SLinus Torvaldsconfig ARCH_ACORN
3371da177e4SLinus Torvalds	bool
3381da177e4SLinus Torvalds
3391da177e4SLinus Torvaldssource arch/arm/mm/Kconfig
3401da177e4SLinus Torvalds
3411da177e4SLinus Torvalds#  bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
3421da177e4SLinus Torvaldsconfig XSCALE_PMU
3431da177e4SLinus Torvalds	bool
3441da177e4SLinus Torvalds	depends on CPU_XSCALE && !XSCALE_PMU_TIMER
3451da177e4SLinus Torvalds	default y
3461da177e4SLinus Torvalds
3473b93e7b0SHyok S. Choiif !MMU
3483b93e7b0SHyok S. Choisource "arch/arm/Kconfig-nommu"
3493b93e7b0SHyok S. Choiendif
3503b93e7b0SHyok S. Choi
3511da177e4SLinus Torvaldsendmenu
3521da177e4SLinus Torvalds
3531da177e4SLinus Torvaldssource "arch/arm/common/Kconfig"
3541da177e4SLinus Torvalds
3551da177e4SLinus Torvaldsconfig FORCE_MAX_ZONEORDER
3561da177e4SLinus Torvalds	int
3571da177e4SLinus Torvalds	depends on SA1111
3581da177e4SLinus Torvalds	default "9"
3591da177e4SLinus Torvalds
3601da177e4SLinus Torvaldsmenu "Bus support"
3611da177e4SLinus Torvalds
3621da177e4SLinus Torvaldsconfig ARM_AMBA
3631da177e4SLinus Torvalds	bool
3641da177e4SLinus Torvalds
3651da177e4SLinus Torvaldsconfig ISA
3661da177e4SLinus Torvalds	bool
3671da177e4SLinus Torvalds	help
3681da177e4SLinus Torvalds	  Find out whether you have ISA slots on your motherboard.  ISA is the
3691da177e4SLinus Torvalds	  name of a bus system, i.e. the way the CPU talks to the other stuff
3701da177e4SLinus Torvalds	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
3711da177e4SLinus Torvalds	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
3721da177e4SLinus Torvalds	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
3731da177e4SLinus Torvalds
374065909b9SRussell King# Select ISA DMA controller support
3751da177e4SLinus Torvaldsconfig ISA_DMA
3761da177e4SLinus Torvalds	bool
377065909b9SRussell King	select ISA_DMA_API
3781da177e4SLinus Torvalds
379065909b9SRussell King# Select ISA DMA interface
3805cae841bSAl Viroconfig ISA_DMA_API
3815cae841bSAl Viro	bool
3825cae841bSAl Viro
3831da177e4SLinus Torvaldsconfig PCI
38468939121SMilan Svoboda	bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX
3851da177e4SLinus Torvalds	help
3861da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
3871da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
3881da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
3891da177e4SLinus Torvalds	  VESA. If you have PCI, say Y, otherwise N.
3901da177e4SLinus Torvalds
3911da177e4SLinus Torvalds	  The PCI-HOWTO, available from
3921da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>, contains valuable
3931da177e4SLinus Torvalds	  information about which PCI hardware does work under Linux and which
3941da177e4SLinus Torvalds	  doesn't.
3951da177e4SLinus Torvalds
3961da177e4SLinus Torvalds# Select the host bridge type
3971da177e4SLinus Torvaldsconfig PCI_HOST_VIA82C505
3981da177e4SLinus Torvalds	bool
3991da177e4SLinus Torvalds	depends on PCI && ARCH_SHARK
4001da177e4SLinus Torvalds	default y
4011da177e4SLinus Torvalds
4021da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
4031da177e4SLinus Torvalds
4041da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
4051da177e4SLinus Torvalds
4061da177e4SLinus Torvaldsendmenu
4071da177e4SLinus Torvalds
4081da177e4SLinus Torvaldsmenu "Kernel Features"
4091da177e4SLinus Torvalds
4101da177e4SLinus Torvaldsconfig SMP
4111da177e4SLinus Torvalds	bool "Symmetric Multi-Processing (EXPERIMENTAL)"
412f6db449cSRussell King	depends on EXPERIMENTAL && REALVIEW_MPCORE
4131da177e4SLinus Torvalds	help
4141da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
4151da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
4161da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
4171da177e4SLinus Torvalds
4181da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
4191da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
4201da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all, single
4211da177e4SLinus Torvalds	  processor machines. On a single processor machine, the kernel will
4221da177e4SLinus Torvalds	  run faster if you say N here.
4231da177e4SLinus Torvalds
42412c62c2eSArthur Othieno	  See also the <file:Documentation/smp.txt>,
42512c62c2eSArthur Othieno	  <file:Documentation/i386/IO-APIC.txt>,
4261da177e4SLinus Torvalds	  <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
4271da177e4SLinus Torvalds	  <http://www.linuxdoc.org/docs.html#howto>.
4281da177e4SLinus Torvalds
4291da177e4SLinus Torvalds	  If you don't know what to do here, say N.
4301da177e4SLinus Torvalds
4311da177e4SLinus Torvaldsconfig NR_CPUS
4321da177e4SLinus Torvalds	int "Maximum number of CPUs (2-32)"
4331da177e4SLinus Torvalds	range 2 32
4341da177e4SLinus Torvalds	depends on SMP
4351da177e4SLinus Torvalds	default "4"
4361da177e4SLinus Torvalds
437a054a811SRussell Kingconfig HOTPLUG_CPU
438a054a811SRussell King	bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
439a054a811SRussell King	depends on SMP && HOTPLUG && EXPERIMENTAL
440a054a811SRussell King	help
441a054a811SRussell King	  Say Y here to experiment with turning CPUs off and on.  CPUs
442a054a811SRussell King	  can be controlled through /sys/devices/system/cpu.
443a054a811SRussell King
44437ee16aeSRussell Kingconfig LOCAL_TIMERS
44537ee16aeSRussell King	bool "Use local timer interrupts"
4462a98beb6SRussell King	depends on SMP && REALVIEW_MPCORE
44737ee16aeSRussell King	default y
44837ee16aeSRussell King	help
44937ee16aeSRussell King	  Enable support for local timers on SMP platforms, rather then the
45037ee16aeSRussell King	  legacy IPI broadcast method.  Local timers allows the system
45137ee16aeSRussell King	  accounting to be spread across the timer interval, preventing a
45237ee16aeSRussell King	  "thundering herd" at every timer tick.
45337ee16aeSRussell King
4541da177e4SLinus Torvaldsconfig PREEMPT
4551da177e4SLinus Torvalds	bool "Preemptible Kernel (EXPERIMENTAL)"
4561da177e4SLinus Torvalds	depends on EXPERIMENTAL
4571da177e4SLinus Torvalds	help
4581da177e4SLinus Torvalds	  This option reduces the latency of the kernel when reacting to
4591da177e4SLinus Torvalds	  real-time or interactive events by allowing a low priority process to
4601da177e4SLinus Torvalds	  be preempted even if it is in kernel mode executing a system call.
4611da177e4SLinus Torvalds	  This allows applications to run more reliably even when the system is
4621da177e4SLinus Torvalds	  under load.
4631da177e4SLinus Torvalds
4641da177e4SLinus Torvalds	  Say Y here if you are building a kernel for a desktop, embedded
4651da177e4SLinus Torvalds	  or real-time system.  Say N if you are unsure.
4661da177e4SLinus Torvalds
4678749af68SRussell Kingconfig NO_IDLE_HZ
4688749af68SRussell King	bool "Dynamic tick timer"
4698749af68SRussell King	help
4708749af68SRussell King	  Select this option if you want to disable continuous timer ticks
4718749af68SRussell King	  and have them programmed to occur as required. This option saves
4728749af68SRussell King	  power as the system can remain in idle state for longer.
4738749af68SRussell King
4748749af68SRussell King	  By default dynamic tick is disabled during the boot, and can be
4758749af68SRussell King	  manually enabled with:
4768749af68SRussell King
4778749af68SRussell King	    echo 1 > /sys/devices/system/timer/timer0/dyn_tick
4788749af68SRussell King
4798749af68SRussell King	  Alternatively, if you want dynamic tick automatically enabled
4808749af68SRussell King	  during boot, pass "dyntick=enable" via the kernel command string.
4818749af68SRussell King
482f2be64b3STony Lindgren	  Please note that dynamic tick may affect the accuracy of
483f2be64b3STony Lindgren	  timekeeping on some platforms depending on the implementation.
484569d2c34SNicolas Pitre	  Currently at least OMAP, PXA2xx and SA11x0 platforms are known
485569d2c34SNicolas Pitre	  to have accurate timekeeping with dynamic tick.
486f2be64b3STony Lindgren
487f8065813SRussell Kingconfig HZ
488f8065813SRussell King	int
489f8065813SRussell King	default 128 if ARCH_L7200
490f8065813SRussell King	default 200 if ARCH_EBSA110 || ARCH_S3C2410
491bfe65704SRussell King	default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
492f8065813SRussell King	default 100
493f8065813SRussell King
494704bdda0SNicolas Pitreconfig AEABI
495704bdda0SNicolas Pitre	bool "Use the ARM EABI to compile the kernel"
496704bdda0SNicolas Pitre	help
497704bdda0SNicolas Pitre	  This option allows for the kernel to be compiled using the latest
498704bdda0SNicolas Pitre	  ARM ABI (aka EABI).  This is only useful if you are using a user
499704bdda0SNicolas Pitre	  space environment that is also compiled with EABI.
500704bdda0SNicolas Pitre
501704bdda0SNicolas Pitre	  Since there are major incompatibilities between the legacy ABI and
502704bdda0SNicolas Pitre	  EABI, especially with regard to structure member alignment, this
503704bdda0SNicolas Pitre	  option also changes the kernel syscall calling convention to
504704bdda0SNicolas Pitre	  disambiguate both ABIs and allow for backward compatibility support
505704bdda0SNicolas Pitre	  (selected with CONFIG_OABI_COMPAT).
506704bdda0SNicolas Pitre
507704bdda0SNicolas Pitre	  To use this you need GCC version 4.0.0 or later.
508704bdda0SNicolas Pitre
5096c90c872SNicolas Pitreconfig OABI_COMPAT
510a73a3ff1SRussell King	bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
51161c484d4SNicolas Pitre	depends on AEABI && EXPERIMENTAL
5126c90c872SNicolas Pitre	default y
5136c90c872SNicolas Pitre	help
5146c90c872SNicolas Pitre	  This option preserves the old syscall interface along with the
5156c90c872SNicolas Pitre	  new (ARM EABI) one. It also provides a compatibility layer to
5166c90c872SNicolas Pitre	  intercept syscalls that have structure arguments which layout
5176c90c872SNicolas Pitre	  in memory differs between the legacy ABI and the new ARM EABI
5186c90c872SNicolas Pitre	  (only for non "thumb" binaries). This option adds a tiny
5196c90c872SNicolas Pitre	  overhead to all syscalls and produces a slightly larger kernel.
5206c90c872SNicolas Pitre	  If you know you'll be using only pure EABI user space then you
5216c90c872SNicolas Pitre	  can say N here. If this option is not selected and you attempt
5226c90c872SNicolas Pitre	  to execute a legacy ABI binary then the result will be
5236c90c872SNicolas Pitre	  UNPREDICTABLE (in fact it can be predicted that it won't work
5246c90c872SNicolas Pitre	  at all). If in doubt say Y.
5256c90c872SNicolas Pitre
5263f22ab27SDave Hansenconfig ARCH_DISCONTIGMEM_ENABLE
5271da177e4SLinus Torvalds	bool
528f7e68bbfSRussell King	default (ARCH_LH7A40X && !LH7A40X_CONTIGMEM)
5291da177e4SLinus Torvalds	help
5301da177e4SLinus Torvalds	  Say Y to support efficient handling of discontiguous physical memory,
5311da177e4SLinus Torvalds	  for architectures which are either NUMA (Non-Uniform Memory Access)
5321da177e4SLinus Torvalds	  or have huge holes in the physical address space for other reasons.
5331da177e4SLinus Torvalds	  See <file:Documentation/vm/numa> for more.
5341da177e4SLinus Torvalds
535c80d79d7SYasunori Gotoconfig NODES_SHIFT
536c80d79d7SYasunori Goto	int
537c80d79d7SYasunori Goto	default "4" if ARCH_LH7A40X
538c80d79d7SYasunori Goto	default "2"
539c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
540c80d79d7SYasunori Goto
5413f22ab27SDave Hansensource "mm/Kconfig"
5423f22ab27SDave Hansen
5431da177e4SLinus Torvaldsconfig LEDS
5441da177e4SLinus Torvalds	bool "Timer and CPU usage LEDs"
5451da177e4SLinus Torvalds	depends on ARCH_CDB89712 || ARCH_CO285 || ARCH_EBSA110 || \
5461da177e4SLinus Torvalds		   ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \
5471da177e4SLinus Torvalds		   ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
5481da177e4SLinus Torvalds		   ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
54973a59c1cSSAN People		   ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
55073a59c1cSSAN People		   ARCH_AT91RM9200
5511da177e4SLinus Torvalds	help
5521da177e4SLinus Torvalds	  If you say Y here, the LEDs on your machine will be used
5531da177e4SLinus Torvalds	  to provide useful information about your current system status.
5541da177e4SLinus Torvalds
5551da177e4SLinus Torvalds	  If you are compiling a kernel for a NetWinder or EBSA-285, you will
5561da177e4SLinus Torvalds	  be able to select which LEDs are active using the options below. If
5571da177e4SLinus Torvalds	  you are compiling a kernel for the EBSA-110 or the LART however, the
5581da177e4SLinus Torvalds	  red LED will simply flash regularly to indicate that the system is
5591da177e4SLinus Torvalds	  still functional. It is safe to say Y here if you have a CATS
5601da177e4SLinus Torvalds	  system, but the driver will do nothing.
5611da177e4SLinus Torvalds
5621da177e4SLinus Torvaldsconfig LEDS_TIMER
5631da177e4SLinus Torvalds	bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
5641da177e4SLinus Torvalds			    MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
5651da177e4SLinus Torvalds	depends on LEDS
5661da177e4SLinus Torvalds	default y if ARCH_EBSA110
5671da177e4SLinus Torvalds	help
5681da177e4SLinus Torvalds	  If you say Y here, one of the system LEDs (the green one on the
5691da177e4SLinus Torvalds	  NetWinder, the amber one on the EBSA285, or the red one on the LART)
5701da177e4SLinus Torvalds	  will flash regularly to indicate that the system is still
5711da177e4SLinus Torvalds	  operational. This is mainly useful to kernel hackers who are
5721da177e4SLinus Torvalds	  debugging unstable kernels.
5731da177e4SLinus Torvalds
5741da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
5751da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
5761da177e4SLinus Torvalds	  will overrule the CPU usage LED.
5771da177e4SLinus Torvalds
5781da177e4SLinus Torvaldsconfig LEDS_CPU
5791da177e4SLinus Torvalds	bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
5801da177e4SLinus Torvalds			!ARCH_OMAP) || MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
5811da177e4SLinus Torvalds	depends on LEDS
5821da177e4SLinus Torvalds	help
5831da177e4SLinus Torvalds	  If you say Y here, the red LED will be used to give a good real
5841da177e4SLinus Torvalds	  time indication of CPU usage, by lighting whenever the idle task
5851da177e4SLinus Torvalds	  is not currently executing.
5861da177e4SLinus Torvalds
5871da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
5881da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
5891da177e4SLinus Torvalds	  will overrule the CPU usage LED.
5901da177e4SLinus Torvalds
5911da177e4SLinus Torvaldsconfig ALIGNMENT_TRAP
5921da177e4SLinus Torvalds	bool
5931da177e4SLinus Torvalds	default y if !ARCH_EBSA110
5941da177e4SLinus Torvalds	help
5951da177e4SLinus Torvalds	  ARM processors can not fetch/store information which is not
5961da177e4SLinus Torvalds	  naturally aligned on the bus, i.e., a 4 byte fetch must start at an
5971da177e4SLinus Torvalds	  address divisible by 4. On 32-bit ARM processors, these non-aligned
5981da177e4SLinus Torvalds	  fetch/store instructions will be emulated in software if you say
5991da177e4SLinus Torvalds	  here, which has a severe performance impact. This is necessary for
6001da177e4SLinus Torvalds	  correct operation of some network protocols. With an IP-only
6011da177e4SLinus Torvalds	  configuration it is safe to say N, otherwise say Y.
6021da177e4SLinus Torvalds
6031da177e4SLinus Torvaldsendmenu
6041da177e4SLinus Torvalds
6051da177e4SLinus Torvaldsmenu "Boot options"
6061da177e4SLinus Torvalds
6071da177e4SLinus Torvalds# Compressed boot loader in ROM.  Yes, we really want to ask about
6081da177e4SLinus Torvalds# TEXT and BSS so we preserve their values in the config files.
6091da177e4SLinus Torvaldsconfig ZBOOT_ROM_TEXT
6101da177e4SLinus Torvalds	hex "Compressed ROM boot loader base address"
6111da177e4SLinus Torvalds	default "0"
6121da177e4SLinus Torvalds	help
6131da177e4SLinus Torvalds	  The physical address at which the ROM-able zImage is to be
6141da177e4SLinus Torvalds	  placed in the target.  Platforms which normally make use of
6151da177e4SLinus Torvalds	  ROM-able zImage formats normally set this to a suitable
6161da177e4SLinus Torvalds	  value in their defconfig file.
6171da177e4SLinus Torvalds
6181da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
6191da177e4SLinus Torvalds
6201da177e4SLinus Torvaldsconfig ZBOOT_ROM_BSS
6211da177e4SLinus Torvalds	hex "Compressed ROM boot loader BSS address"
6221da177e4SLinus Torvalds	default "0"
6231da177e4SLinus Torvalds	help
6241da177e4SLinus Torvalds	  The base address of 64KiB of read/write memory in the target
6251da177e4SLinus Torvalds	  for the ROM-able zImage, which must be available while the
6261da177e4SLinus Torvalds	  decompressor is running.  Platforms which normally make use of
6271da177e4SLinus Torvalds	  ROM-able zImage formats normally set this to a suitable
6281da177e4SLinus Torvalds	  value in their defconfig file.
6291da177e4SLinus Torvalds
6301da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
6311da177e4SLinus Torvalds
6321da177e4SLinus Torvaldsconfig ZBOOT_ROM
6331da177e4SLinus Torvalds	bool "Compressed boot loader in ROM/flash"
6341da177e4SLinus Torvalds	depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
6351da177e4SLinus Torvalds	help
6361da177e4SLinus Torvalds	  Say Y here if you intend to execute your compressed kernel image
6371da177e4SLinus Torvalds	  (zImage) directly from ROM or flash.  If unsure, say N.
6381da177e4SLinus Torvalds
6391da177e4SLinus Torvaldsconfig CMDLINE
6401da177e4SLinus Torvalds	string "Default kernel command string"
6411da177e4SLinus Torvalds	default ""
6421da177e4SLinus Torvalds	help
6431da177e4SLinus Torvalds	  On some architectures (EBSA110 and CATS), there is currently no way
6441da177e4SLinus Torvalds	  for the boot loader to pass arguments to the kernel. For these
6451da177e4SLinus Torvalds	  architectures, you should supply some command-line options at build
6461da177e4SLinus Torvalds	  time by entering them here. As a minimum, you should specify the
6471da177e4SLinus Torvalds	  memory size and the root device (e.g., mem=64M root=/dev/nfs).
6481da177e4SLinus Torvalds
6491da177e4SLinus Torvaldsconfig XIP_KERNEL
6501da177e4SLinus Torvalds	bool "Kernel Execute-In-Place from ROM"
6511da177e4SLinus Torvalds	depends on !ZBOOT_ROM
6521da177e4SLinus Torvalds	help
6531da177e4SLinus Torvalds	  Execute-In-Place allows the kernel to run from non-volatile storage
6541da177e4SLinus Torvalds	  directly addressable by the CPU, such as NOR flash. This saves RAM
6551da177e4SLinus Torvalds	  space since the text section of the kernel is not loaded from flash
6561da177e4SLinus Torvalds	  to RAM.  Read-write sections, such as the data section and stack,
6571da177e4SLinus Torvalds	  are still copied to RAM.  The XIP kernel is not compressed since
6581da177e4SLinus Torvalds	  it has to run directly from flash, so it will take more space to
6591da177e4SLinus Torvalds	  store it.  The flash address used to link the kernel object files,
6601da177e4SLinus Torvalds	  and for storing it, is configuration dependent. Therefore, if you
6611da177e4SLinus Torvalds	  say Y here, you must know the proper physical address where to
6621da177e4SLinus Torvalds	  store the kernel image depending on your own flash memory usage.
6631da177e4SLinus Torvalds
6641da177e4SLinus Torvalds	  Also note that the make target becomes "make xipImage" rather than
6651da177e4SLinus Torvalds	  "make zImage" or "make Image".  The final kernel binary to put in
6661da177e4SLinus Torvalds	  ROM memory will be arch/arm/boot/xipImage.
6671da177e4SLinus Torvalds
6681da177e4SLinus Torvalds	  If unsure, say N.
6691da177e4SLinus Torvalds
6701da177e4SLinus Torvaldsconfig XIP_PHYS_ADDR
6711da177e4SLinus Torvalds	hex "XIP Kernel Physical Location"
6721da177e4SLinus Torvalds	depends on XIP_KERNEL
6731da177e4SLinus Torvalds	default "0x00080000"
6741da177e4SLinus Torvalds	help
6751da177e4SLinus Torvalds	  This is the physical address in your flash memory the kernel will
6761da177e4SLinus Torvalds	  be linked for and stored to.  This address is dependent on your
6771da177e4SLinus Torvalds	  own flash usage.
6781da177e4SLinus Torvalds
6791da177e4SLinus Torvaldsendmenu
6801da177e4SLinus Torvalds
681ec6bced6STony Lindgrenif (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP1)
6821da177e4SLinus Torvalds
6831da177e4SLinus Torvaldsmenu "CPU Frequency scaling"
6841da177e4SLinus Torvalds
6851da177e4SLinus Torvaldssource "drivers/cpufreq/Kconfig"
6861da177e4SLinus Torvalds
6871da177e4SLinus Torvaldsconfig CPU_FREQ_SA1100
6881da177e4SLinus Torvalds	bool
68907c6d48fSVincent Sanders	depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT)
6901da177e4SLinus Torvalds	default y
6911da177e4SLinus Torvalds
6921da177e4SLinus Torvaldsconfig CPU_FREQ_SA1110
6931da177e4SLinus Torvalds	bool
6941da177e4SLinus Torvalds	depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3)
6951da177e4SLinus Torvalds	default y
6961da177e4SLinus Torvalds
6971da177e4SLinus Torvaldsconfig CPU_FREQ_INTEGRATOR
6981da177e4SLinus Torvalds	tristate "CPUfreq driver for ARM Integrator CPUs"
6991da177e4SLinus Torvalds	depends on ARCH_INTEGRATOR && CPU_FREQ
7001da177e4SLinus Torvalds	default y
7011da177e4SLinus Torvalds	help
7021da177e4SLinus Torvalds	  This enables the CPUfreq driver for ARM Integrator CPUs.
7031da177e4SLinus Torvalds
7041da177e4SLinus Torvalds	  For details, take a look at <file:Documentation/cpu-freq>.
7051da177e4SLinus Torvalds
7061da177e4SLinus Torvalds	  If in doubt, say Y.
7071da177e4SLinus Torvalds
7081da177e4SLinus Torvaldsendmenu
7091da177e4SLinus Torvalds
7101da177e4SLinus Torvaldsendif
7111da177e4SLinus Torvalds
7121da177e4SLinus Torvaldsmenu "Floating point emulation"
7131da177e4SLinus Torvalds
7141da177e4SLinus Torvaldscomment "At least one emulation must be selected"
7151da177e4SLinus Torvalds
7161da177e4SLinus Torvaldsconfig FPE_NWFPE
7171da177e4SLinus Torvalds	bool "NWFPE math emulation"
7188993a44cSNicolas Pitre	depends on !AEABI || OABI_COMPAT
7191da177e4SLinus Torvalds	---help---
7201da177e4SLinus Torvalds	  Say Y to include the NWFPE floating point emulator in the kernel.
7211da177e4SLinus Torvalds	  This is necessary to run most binaries. Linux does not currently
7221da177e4SLinus Torvalds	  support floating point hardware so you need to say Y here even if
7231da177e4SLinus Torvalds	  your machine has an FPA or floating point co-processor podule.
7241da177e4SLinus Torvalds
7251da177e4SLinus Torvalds	  You may say N here if you are going to load the Acorn FPEmulator
7261da177e4SLinus Torvalds	  early in the bootup.
7271da177e4SLinus Torvalds
7281da177e4SLinus Torvaldsconfig FPE_NWFPE_XP
7291da177e4SLinus Torvalds	bool "Support extended precision"
730bedf142bSLennert Buytenhek	depends on FPE_NWFPE
7311da177e4SLinus Torvalds	help
7321da177e4SLinus Torvalds	  Say Y to include 80-bit support in the kernel floating-point
7331da177e4SLinus Torvalds	  emulator.  Otherwise, only 32 and 64-bit support is compiled in.
7341da177e4SLinus Torvalds	  Note that gcc does not generate 80-bit operations by default,
7351da177e4SLinus Torvalds	  so in most cases this option only enlarges the size of the
7361da177e4SLinus Torvalds	  floating point emulator without any good reason.
7371da177e4SLinus Torvalds
7381da177e4SLinus Torvalds	  You almost surely want to say N here.
7391da177e4SLinus Torvalds
7401da177e4SLinus Torvaldsconfig FPE_FASTFPE
7411da177e4SLinus Torvalds	bool "FastFPE math emulation (EXPERIMENTAL)"
7428993a44cSNicolas Pitre	depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
7431da177e4SLinus Torvalds	---help---
7441da177e4SLinus Torvalds	  Say Y here to include the FAST floating point emulator in the kernel.
7451da177e4SLinus Torvalds	  This is an experimental much faster emulator which now also has full
7461da177e4SLinus Torvalds	  precision for the mantissa.  It does not support any exceptions.
7471da177e4SLinus Torvalds	  It is very simple, and approximately 3-6 times faster than NWFPE.
7481da177e4SLinus Torvalds
7491da177e4SLinus Torvalds	  It should be sufficient for most programs.  It may be not suitable
7501da177e4SLinus Torvalds	  for scientific calculations, but you have to check this for yourself.
7511da177e4SLinus Torvalds	  If you do not feel you need a faster FP emulation you should better
7521da177e4SLinus Torvalds	  choose NWFPE.
7531da177e4SLinus Torvalds
7541da177e4SLinus Torvaldsconfig VFP
7551da177e4SLinus Torvalds	bool "VFP-format floating point maths"
7561da177e4SLinus Torvalds	depends on CPU_V6 || CPU_ARM926T
7571da177e4SLinus Torvalds	help
7581da177e4SLinus Torvalds	  Say Y to include VFP support code in the kernel. This is needed
7591da177e4SLinus Torvalds	  if your hardware includes a VFP unit.
7601da177e4SLinus Torvalds
7611da177e4SLinus Torvalds	  Please see <file:Documentation/arm/VFP/release-notes.txt> for
7621da177e4SLinus Torvalds	  release notes and additional status information.
7631da177e4SLinus Torvalds
7641da177e4SLinus Torvalds	  Say N if your target does not have VFP hardware.
7651da177e4SLinus Torvalds
7661da177e4SLinus Torvaldsendmenu
7671da177e4SLinus Torvalds
7681da177e4SLinus Torvaldsmenu "Userspace binary formats"
7691da177e4SLinus Torvalds
7701da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
7711da177e4SLinus Torvalds
7721da177e4SLinus Torvaldsconfig ARTHUR
7731da177e4SLinus Torvalds	tristate "RISC OS personality"
774704bdda0SNicolas Pitre	depends on !AEABI
7751da177e4SLinus Torvalds	help
7761da177e4SLinus Torvalds	  Say Y here to include the kernel code necessary if you want to run
7771da177e4SLinus Torvalds	  Acorn RISC OS/Arthur binaries under Linux. This code is still very
7781da177e4SLinus Torvalds	  experimental; if this sounds frightening, say N and sleep in peace.
7791da177e4SLinus Torvalds	  You can also say M here to compile this support as a module (which
7801da177e4SLinus Torvalds	  will be called arthur).
7811da177e4SLinus Torvalds
7821da177e4SLinus Torvaldsendmenu
7831da177e4SLinus Torvalds
7841da177e4SLinus Torvaldsmenu "Power management options"
7851da177e4SLinus Torvalds
786eceab4acSRussell Kingsource "kernel/power/Kconfig"
7871da177e4SLinus Torvalds
7881da177e4SLinus Torvaldsconfig APM
7891da177e4SLinus Torvalds	tristate "Advanced Power Management Emulation"
7901da177e4SLinus Torvalds	---help---
7911da177e4SLinus Torvalds	  APM is a BIOS specification for saving power using several different
7921da177e4SLinus Torvalds	  techniques. This is mostly useful for battery powered laptops with
7931da177e4SLinus Torvalds	  APM compliant BIOSes. If you say Y here, the system time will be
7941da177e4SLinus Torvalds	  reset after a RESUME operation, the /proc/apm device will provide
7951da177e4SLinus Torvalds	  battery status information, and user-space programs will receive
7961da177e4SLinus Torvalds	  notification of APM "events" (e.g. battery status change).
7971da177e4SLinus Torvalds
7981da177e4SLinus Torvalds	  In order to use APM, you will need supporting software. For location
7991da177e4SLinus Torvalds	  and more information, read <file:Documentation/pm.txt> and the
8001da177e4SLinus Torvalds	  Battery Powered Linux mini-HOWTO, available from
8011da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
8021da177e4SLinus Torvalds
8031da177e4SLinus Torvalds	  This driver does not spin down disk drives (see the hdparm(8)
8041da177e4SLinus Torvalds	  manpage ("man 8 hdparm") for that), and it doesn't turn off
8051da177e4SLinus Torvalds	  VESA-compliant "green" monitors.
8061da177e4SLinus Torvalds
8071da177e4SLinus Torvalds	  Generally, if you don't have a battery in your machine, there isn't
8081da177e4SLinus Torvalds	  much point in using this driver and you should say N. If you get
8091da177e4SLinus Torvalds	  random kernel OOPSes or reboots that don't seem to be related to
8101da177e4SLinus Torvalds	  anything, try disabling/enabling this option (or disabling/enabling
8111da177e4SLinus Torvalds	  APM in your BIOS).
8121da177e4SLinus Torvalds
8131da177e4SLinus Torvaldsendmenu
8141da177e4SLinus Torvalds
815d5950b43SSam Ravnborgsource "net/Kconfig"
816d5950b43SSam Ravnborg
8171da177e4SLinus Torvaldsmenu "Device Drivers"
8181da177e4SLinus Torvalds
8191da177e4SLinus Torvaldssource "drivers/base/Kconfig"
8201da177e4SLinus Torvalds
821c35bf4a5SPavel Macheksource "drivers/connector/Kconfig"
822c35bf4a5SPavel Machek
8231da177e4SLinus Torvaldsif ALIGNMENT_TRAP
8241da177e4SLinus Torvaldssource "drivers/mtd/Kconfig"
8251da177e4SLinus Torvaldsendif
8261da177e4SLinus Torvalds
8271da177e4SLinus Torvaldssource "drivers/parport/Kconfig"
8281da177e4SLinus Torvalds
8291da177e4SLinus Torvaldssource "drivers/pnp/Kconfig"
8301da177e4SLinus Torvalds
8311da177e4SLinus Torvaldssource "drivers/block/Kconfig"
8321da177e4SLinus Torvalds
8331da177e4SLinus Torvaldssource "drivers/acorn/block/Kconfig"
8341da177e4SLinus Torvalds
835bb011b8eSDavid Brownellif PCMCIA || ARCH_CLPS7500 || ARCH_IOP3XX || ARCH_IXP4XX \
836bb011b8eSDavid Brownell	|| ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \
837c4713074SLennert Buytenhek	|| ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \
838c4713074SLennert Buytenhek	|| ARCH_IXP23XX
8391da177e4SLinus Torvaldssource "drivers/ide/Kconfig"
8401da177e4SLinus Torvaldsendif
8411da177e4SLinus Torvalds
8421da177e4SLinus Torvaldssource "drivers/scsi/Kconfig"
8431da177e4SLinus Torvalds
8441da177e4SLinus Torvaldssource "drivers/md/Kconfig"
8451da177e4SLinus Torvalds
8461da177e4SLinus Torvaldssource "drivers/message/fusion/Kconfig"
8471da177e4SLinus Torvalds
8481da177e4SLinus Torvaldssource "drivers/ieee1394/Kconfig"
8491da177e4SLinus Torvalds
8501da177e4SLinus Torvaldssource "drivers/message/i2o/Kconfig"
8511da177e4SLinus Torvalds
852d5950b43SSam Ravnborgsource "drivers/net/Kconfig"
8531da177e4SLinus Torvalds
8541da177e4SLinus Torvaldssource "drivers/isdn/Kconfig"
8551da177e4SLinus Torvalds
8561da177e4SLinus Torvalds# input before char - char/joystick depends on it. As does USB.
8571da177e4SLinus Torvalds
8581da177e4SLinus Torvaldssource "drivers/input/Kconfig"
8591da177e4SLinus Torvalds
8601da177e4SLinus Torvaldssource "drivers/char/Kconfig"
8611da177e4SLinus Torvalds
8621da177e4SLinus Torvaldssource "drivers/i2c/Kconfig"
8631da177e4SLinus Torvalds
8648ae12a0dSDavid Brownellsource "drivers/spi/Kconfig"
8658ae12a0dSDavid Brownell
86604916c0eSAlessandro Zummosource "drivers/w1/Kconfig"
86704916c0eSAlessandro Zummo
868ad2f931dSJean Delvaresource "drivers/hwmon/Kconfig"
869ad2f931dSJean Delvare
8701da177e4SLinus Torvalds#source "drivers/l3/Kconfig"
8711da177e4SLinus Torvalds
8721da177e4SLinus Torvaldssource "drivers/misc/Kconfig"
8731da177e4SLinus Torvalds
874a4e137abSRussell Kingsource "drivers/mfd/Kconfig"
875a4e137abSRussell King
876c72a1d60SRichard Purdiesource "drivers/leds/Kconfig"
877c72a1d60SRichard Purdie
8781da177e4SLinus Torvaldssource "drivers/media/Kconfig"
8791da177e4SLinus Torvalds
8801da177e4SLinus Torvaldssource "drivers/video/Kconfig"
8811da177e4SLinus Torvalds
8821da177e4SLinus Torvaldssource "sound/Kconfig"
8831da177e4SLinus Torvalds
8841da177e4SLinus Torvaldssource "drivers/usb/Kconfig"
8851da177e4SLinus Torvalds
8861da177e4SLinus Torvaldssource "drivers/mmc/Kconfig"
8871da177e4SLinus Torvalds
88812b824fbSAlessandro Zummosource "drivers/rtc/Kconfig"
88912b824fbSAlessandro Zummo
8901da177e4SLinus Torvaldsendmenu
8911da177e4SLinus Torvalds
8921da177e4SLinus Torvaldssource "fs/Kconfig"
8931da177e4SLinus Torvalds
8941da177e4SLinus Torvaldssource "arch/arm/oprofile/Kconfig"
8951da177e4SLinus Torvalds
8961da177e4SLinus Torvaldssource "arch/arm/Kconfig.debug"
8971da177e4SLinus Torvalds
8981da177e4SLinus Torvaldssource "security/Kconfig"
8991da177e4SLinus Torvalds
9001da177e4SLinus Torvaldssource "crypto/Kconfig"
9011da177e4SLinus Torvalds
9021da177e4SLinus Torvaldssource "lib/Kconfig"
903