Kconfig 6.6 KB
Newer Older
1 2 3 4 5 6 7 8 9
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/config-language.txt.

mainmenu "Linux/Xtensa Kernel Configuration"

config FRAME_POINTER
	bool
	default n

10 11 12 13
config ZONE_DMA
	bool
	default y

14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
config XTENSA
	bool
	default y
	help
	  Xtensa processors are 32-bit RISC machines designed by Tensilica
	  primarily for embedded systems.  These processors are both
	  configurable and extensible.  The Linux port to the Xtensa
	  architecture supports all processor configurations and extensions,
	  with reasonable minimum requirements.  The Xtensa Linux project has
	  a home page at <http://xtensa.sourceforge.net/>.

config RWSEM_XCHGADD_ALGORITHM
	bool
	default y

29 30 31 32 33 34 35 36
config GENERIC_FIND_NEXT_BIT
	bool
	default y

config GENERIC_HWEIGHT
	bool
	default y

37 38 39 40
config GENERIC_HARDIRQS
	bool
	default y

41 42 43 44 45 46 47 48
config ARCH_HAS_ILOG2_U32
	bool
	default n

config ARCH_HAS_ILOG2_U64
	bool
	default n

49 50 51 52 53 54
source "init/Kconfig"

menu "Processor type and features"

choice
	prompt "Xtensa Processor Configuration"
55
	default XTENSA_VARIANT_FSF
56

57 58
config XTENSA_VARIANT_FSF
	bool "fsf"
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
endchoice

config MMU
	bool
	default y

config XTENSA_UNALIGNED_USER
	bool "Unaligned memory access in use space"
	---help---
	   The Xtensa architecture currently does not handle unaligned
	   memory accesses in hardware but through an exception handler.
	   Per default, unaligned memory accesses are disabled in user space.

	   Say Y here to enable unaligned memory access in user space.

config PREEMPT
	bool "Preemptible Kernel"
	---help---
           This option reduces the latency of the kernel when reacting to
           real-time or interactive events by allowing a low priority process to
           be preempted even if it is in kernel mode executing a system call.
           Unfortunately the kernel code has some race conditions if both
           CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is
           currently disabled if you are building an SMP kernel.

           Say Y here if you are building a kernel for a desktop, embedded
           or real-time system.  Say N if you are unsure.

config MATH_EMULATION
	bool "Math emulation"
	help
	Can we use information of configuration file?

config HIGHMEM
	bool "High memory support"

endmenu

menu "Platform options"

choice
	prompt "Xtensa System Type"
	default XTENSA_PLATFORM_ISS

config XTENSA_PLATFORM_ISS
	bool "ISS"
	help
	  ISS is an acronym for Tensilica's Instruction Set Simulator.

config XTENSA_PLATFORM_XT2000
	bool "XT2000"
	help
	  XT2000 is the name of Tensilica's feature-rich emulation platform.
	  This hardware is capable of running a full Linux distribution.

endchoice


config XTENSA_CALIBRATE_CCOUNT
	bool "Auto calibration of the CPU clock rate"
	---help---
	  On some platforms (XT2000, for example), the CPU clock rate can
	  vary.  The frequency can be determined, however, by measuring
	  against a well known, fixed frequency, such as an UART oscillator.

config XTENSA_CPU_CLOCK
	int "CPU clock rate [MHz]"
	depends on !XTENSA_CALIBRATE_CCOUNT
	default "16"

config GENERIC_CALIBRATE_DELAY
	bool "Auto calibration of the BogoMIPS value"
	---help---
132
	  The BogoMIPS value can easily be derived from the CPU frequency.
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157

config CMDLINE_BOOL
	bool "Default bootloader kernel arguments"

config CMDLINE
	string "Initial kernel command string"
	depends on CMDLINE_BOOL
	default "console=ttyS0,38400 root=/dev/ram"
	help
	  On some architectures (EBSA110 and CATS), there is currently no way
	  for the boot loader to pass arguments to the kernel. For these
	  architectures, you should supply some command-line options at build
	  time by entering them here. As a minimum, you should specify the
	  memory size and the root device (e.g., mem=64M root=/dev/nfs).

config SERIAL_CONSOLE
	bool
	depends on XTENSA_PLATFORM_ISS
	default y

config XTENSA_ISS_NETWORK
	bool
	depends on XTENSA_PLATFORM_ISS
	default y

158 159
source "mm/Kconfig"

160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
endmenu

menu "Bus options"

config PCI
	bool "PCI support" if !XTENSA_PLATFORM_ISS
	depends on !XTENSA_PLATFORM_ISS
	default y
	help
	  Find out whether you have a PCI motherboard. PCI is the name of a
	  bus system, i.e. the way the CPU talks to the other stuff inside
	  your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
	  VESA. If you have PCI, say Y, otherwise N.

	  The PCI-HOWTO, available from
	  <http://www.linuxdoc.org/docs.html#howto>, contains valuable
	  information about which PCI hardware does work under Linux and which
	  doesn't

source "drivers/pci/Kconfig"

config HOTPLUG

	bool "Support for hot-pluggable devices"
	---help---
	Say Y here if you want to plug devices into your computer while
	the system is running, and be able to use them quickly.  In many
	cases, the devices can likewise be unplugged at any time too.

	One well known example of this is PCMCIA- or PC-cards, credit-card
	size devices such as network cards, modems or hard drives which are
	plugged into slots found on all modern laptop computers.  Another
	example, used on modern desktops as well as laptops, is USB.

	Enable HOTPLUG and KMOD, and build a modular kernel.  Get agent
	software (at <http://linux-hotplug.sourceforge.net/>) and install it.
	Then your kernel will automatically call out to a user mode "policy
	agent" (/sbin/hotplug) to load modules and set up software needed
	to use devices as you hotplug them.

source "drivers/pcmcia/Kconfig"

source "drivers/pci/hotplug/Kconfig"

endmenu

M
Matt LaPlante 已提交
206
menu "Executable file formats"
207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227

# only elf supported
config KCORE_ELF
        bool
        depends on PROC_FS
        default y
        help
          If you enabled support for /proc file system then the file
          /proc/kcore will contain the kernel core image in ELF format. This
          can be used in gdb:

          $ cd /usr/src/linux ; gdb vmlinux /proc/kcore

          This is especially useful if you have compiled the kernel with the
          "-g" option to preserve debugging information. It is mainly used
	  for examining kernel data structures on the live kernel.

source "fs/Kconfig.binfmt"

endmenu

228 229
source "net/Kconfig"

230 231 232 233 234 235 236 237 238 239 240
source "drivers/Kconfig"

source "fs/Kconfig"

menu "Xtensa initrd options"
	depends on BLK_DEV_INITRD

	config EMBEDDED_RAMDISK
	bool "Embed root filesystem ramdisk into the kernel"

config EMBEDDED_RAMDISK_IMAGE
M
Matt LaPlante 已提交
241
	string "Filename of gzipped ramdisk image"
242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259
	depends on EMBEDDED_RAMDISK
	default "ramdisk.gz"
	help
	  This is the filename of the ramdisk image to be built into the
	  kernel.  Relative pathnames are relative to arch/xtensa/boot/ramdisk/.
	  The ramdisk image is not part of the kernel distribution; you must
	  provide one yourself.
endmenu

source "arch/xtensa/Kconfig.debug"

source "security/Kconfig"

source "crypto/Kconfig"

source "lib/Kconfig"