diff options
Diffstat (limited to 'arch/xtensa/Kconfig')
-rw-r--r-- | arch/xtensa/Kconfig | 184 |
1 files changed, 96 insertions, 88 deletions
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig index 981200830432..fa6dc4dd3b19 100644 --- a/arch/xtensa/Kconfig +++ b/arch/xtensa/Kconfig | |||
@@ -4,16 +4,13 @@ | |||
4 | mainmenu "Linux/Xtensa Kernel Configuration" | 4 | mainmenu "Linux/Xtensa Kernel Configuration" |
5 | 5 | ||
6 | config FRAME_POINTER | 6 | config FRAME_POINTER |
7 | bool | 7 | def_bool n |
8 | default n | ||
9 | 8 | ||
10 | config ZONE_DMA | 9 | config ZONE_DMA |
11 | bool | 10 | def_bool y |
12 | default y | ||
13 | 11 | ||
14 | config XTENSA | 12 | config XTENSA |
15 | bool | 13 | def_bool y |
16 | default y | ||
17 | select HAVE_IDE | 14 | select HAVE_IDE |
18 | help | 15 | help |
19 | Xtensa processors are 32-bit RISC machines designed by Tensilica | 16 | Xtensa processors are 32-bit RISC machines designed by Tensilica |
@@ -24,28 +21,25 @@ config XTENSA | |||
24 | a home page at <http://xtensa.sourceforge.net/>. | 21 | a home page at <http://xtensa.sourceforge.net/>. |
25 | 22 | ||
26 | config RWSEM_XCHGADD_ALGORITHM | 23 | config RWSEM_XCHGADD_ALGORITHM |
27 | bool | 24 | def_bool y |
28 | default y | ||
29 | 25 | ||
30 | config GENERIC_FIND_NEXT_BIT | 26 | config GENERIC_FIND_NEXT_BIT |
31 | bool | 27 | def_bool y |
32 | default y | ||
33 | 28 | ||
34 | config GENERIC_HWEIGHT | 29 | config GENERIC_HWEIGHT |
35 | bool | 30 | def_bool y |
36 | default y | ||
37 | 31 | ||
38 | config GENERIC_HARDIRQS | 32 | config GENERIC_HARDIRQS |
39 | bool | 33 | def_bool y |
40 | default y | 34 | |
35 | config GENERIC_GPIO | ||
36 | def_bool y | ||
41 | 37 | ||
42 | config ARCH_HAS_ILOG2_U32 | 38 | config ARCH_HAS_ILOG2_U32 |
43 | bool | 39 | def_bool n |
44 | default n | ||
45 | 40 | ||
46 | config ARCH_HAS_ILOG2_U64 | 41 | config ARCH_HAS_ILOG2_U64 |
47 | bool | 42 | def_bool n |
48 | default n | ||
49 | 43 | ||
50 | config NO_IOPORT | 44 | config NO_IOPORT |
51 | def_bool y | 45 | def_bool y |
@@ -54,9 +48,18 @@ config HZ | |||
54 | int | 48 | int |
55 | default 100 | 49 | default 100 |
56 | 50 | ||
51 | config GENERIC_TIME | ||
52 | def_bool y | ||
53 | |||
57 | source "init/Kconfig" | 54 | source "init/Kconfig" |
58 | source "kernel/Kconfig.freezer" | 55 | source "kernel/Kconfig.freezer" |
59 | 56 | ||
57 | config MMU | ||
58 | def_bool n | ||
59 | |||
60 | config VARIANT_IRQ_SWITCH | ||
61 | def_bool n | ||
62 | |||
60 | menu "Processor type and features" | 63 | menu "Processor type and features" |
61 | 64 | ||
62 | choice | 65 | choice |
@@ -65,38 +68,41 @@ choice | |||
65 | 68 | ||
66 | config XTENSA_VARIANT_FSF | 69 | config XTENSA_VARIANT_FSF |
67 | bool "fsf - default (not generic) configuration" | 70 | bool "fsf - default (not generic) configuration" |
71 | select MMU | ||
68 | 72 | ||
69 | config XTENSA_VARIANT_DC232B | 73 | config XTENSA_VARIANT_DC232B |
70 | bool "dc232b - Diamond 232L Standard Core Rev.B (LE)" | 74 | bool "dc232b - Diamond 232L Standard Core Rev.B (LE)" |
75 | select MMU | ||
71 | help | 76 | help |
72 | This variant refers to Tensilica's Diamond 232L Standard core Rev.B (LE). | 77 | This variant refers to Tensilica's Diamond 232L Standard core Rev.B (LE). |
73 | endchoice | ||
74 | 78 | ||
75 | config MMU | 79 | config XTENSA_VARIANT_S6000 |
76 | bool | 80 | bool "s6000 - Stretch software configurable processor" |
77 | default y | 81 | select VARIANT_IRQ_SWITCH |
82 | select ARCH_REQUIRE_GPIOLIB | ||
83 | endchoice | ||
78 | 84 | ||
79 | config XTENSA_UNALIGNED_USER | 85 | config XTENSA_UNALIGNED_USER |
80 | bool "Unaligned memory access in use space" | 86 | bool "Unaligned memory access in use space" |
81 | ---help--- | 87 | help |
82 | The Xtensa architecture currently does not handle unaligned | 88 | The Xtensa architecture currently does not handle unaligned |
83 | memory accesses in hardware but through an exception handler. | 89 | memory accesses in hardware but through an exception handler. |
84 | Per default, unaligned memory accesses are disabled in user space. | 90 | Per default, unaligned memory accesses are disabled in user space. |
85 | 91 | ||
86 | Say Y here to enable unaligned memory access in user space. | 92 | Say Y here to enable unaligned memory access in user space. |
87 | 93 | ||
88 | config PREEMPT | 94 | config PREEMPT |
89 | bool "Preemptible Kernel" | 95 | bool "Preemptible Kernel" |
90 | ---help--- | 96 | help |
91 | This option reduces the latency of the kernel when reacting to | 97 | This option reduces the latency of the kernel when reacting to |
92 | real-time or interactive events by allowing a low priority process to | 98 | real-time or interactive events by allowing a low priority process to |
93 | be preempted even if it is in kernel mode executing a system call. | 99 | be preempted even if it is in kernel mode executing a system call. |
94 | Unfortunately the kernel code has some race conditions if both | 100 | Unfortunately the kernel code has some race conditions if both |
95 | CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is | 101 | CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is |
96 | currently disabled if you are building an SMP kernel. | 102 | currently disabled if you are building an SMP kernel. |
97 | 103 | ||
98 | Say Y here if you are building a kernel for a desktop, embedded | 104 | Say Y here if you are building a kernel for a desktop, embedded |
99 | or real-time system. Say N if you are unsure. | 105 | or real-time system. Say N if you are unsure. |
100 | 106 | ||
101 | config MATH_EMULATION | 107 | config MATH_EMULATION |
102 | bool "Math emulation" | 108 | bool "Math emulation" |
@@ -105,6 +111,32 @@ config MATH_EMULATION | |||
105 | 111 | ||
106 | endmenu | 112 | endmenu |
107 | 113 | ||
114 | config XTENSA_CALIBRATE_CCOUNT | ||
115 | def_bool n | ||
116 | help | ||
117 | On some platforms (XT2000, for example), the CPU clock rate can | ||
118 | vary. The frequency can be determined, however, by measuring | ||
119 | against a well known, fixed frequency, such as an UART oscillator. | ||
120 | |||
121 | config SERIAL_CONSOLE | ||
122 | def_bool n | ||
123 | |||
124 | config XTENSA_ISS_NETWORK | ||
125 | def_bool n | ||
126 | |||
127 | menu "Bus options" | ||
128 | |||
129 | config PCI | ||
130 | bool "PCI support" | ||
131 | default y | ||
132 | help | ||
133 | Find out whether you have a PCI motherboard. PCI is the name of a | ||
134 | bus system, i.e. the way the CPU talks to the other stuff inside | ||
135 | your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or | ||
136 | VESA. If you have PCI, say Y, otherwise N. | ||
137 | |||
138 | source "drivers/pci/Kconfig" | ||
139 | |||
108 | menu "Platform options" | 140 | menu "Platform options" |
109 | 141 | ||
110 | choice | 142 | choice |
@@ -113,33 +145,35 @@ choice | |||
113 | 145 | ||
114 | config XTENSA_PLATFORM_ISS | 146 | config XTENSA_PLATFORM_ISS |
115 | bool "ISS" | 147 | bool "ISS" |
148 | select XTENSA_CALIBRATE_CCOUNT | ||
149 | select SERIAL_CONSOLE | ||
150 | select XTENSA_ISS_NETWORK | ||
116 | help | 151 | help |
117 | ISS is an acronym for Tensilica's Instruction Set Simulator. | 152 | ISS is an acronym for Tensilica's Instruction Set Simulator. |
118 | 153 | ||
119 | config XTENSA_PLATFORM_XT2000 | 154 | config XTENSA_PLATFORM_XT2000 |
120 | bool "XT2000" | 155 | bool "XT2000" |
156 | select XTENSA_CALIBRATE_CCOUNT | ||
157 | select PCI | ||
121 | help | 158 | help |
122 | XT2000 is the name of Tensilica's feature-rich emulation platform. | 159 | XT2000 is the name of Tensilica's feature-rich emulation platform. |
123 | This hardware is capable of running a full Linux distribution. | 160 | This hardware is capable of running a full Linux distribution. |
124 | 161 | ||
125 | endchoice | 162 | config XTENSA_PLATFORM_S6105 |
163 | bool "S6105" | ||
164 | select SERIAL_CONSOLE | ||
126 | 165 | ||
166 | endchoice | ||
127 | 167 | ||
128 | config XTENSA_CALIBRATE_CCOUNT | ||
129 | bool "Auto calibration of the CPU clock rate" | ||
130 | ---help--- | ||
131 | On some platforms (XT2000, for example), the CPU clock rate can | ||
132 | vary. The frequency can be determined, however, by measuring | ||
133 | against a well known, fixed frequency, such as an UART oscillator. | ||
134 | 168 | ||
135 | config XTENSA_CPU_CLOCK | 169 | config XTENSA_CPU_CLOCK |
136 | int "CPU clock rate [MHz]" | 170 | int "CPU clock rate [MHz]" |
137 | depends on !XTENSA_CALIBRATE_CCOUNT | 171 | depends on !XTENSA_CALIBRATE_CCOUNT |
138 | default "16" | 172 | default 16 |
139 | 173 | ||
140 | config GENERIC_CALIBRATE_DELAY | 174 | config GENERIC_CALIBRATE_DELAY |
141 | bool "Auto calibration of the BogoMIPS value" | 175 | bool "Auto calibration of the BogoMIPS value" |
142 | ---help--- | 176 | help |
143 | The BogoMIPS value can easily be derived from the CPU frequency. | 177 | The BogoMIPS value can easily be derived from the CPU frequency. |
144 | 178 | ||
145 | config CMDLINE_BOOL | 179 | config CMDLINE_BOOL |
@@ -156,52 +190,27 @@ config CMDLINE | |||
156 | time by entering them here. As a minimum, you should specify the | 190 | time by entering them here. As a minimum, you should specify the |
157 | memory size and the root device (e.g., mem=64M root=/dev/nfs). | 191 | memory size and the root device (e.g., mem=64M root=/dev/nfs). |
158 | 192 | ||
159 | config SERIAL_CONSOLE | ||
160 | bool | ||
161 | depends on XTENSA_PLATFORM_ISS | ||
162 | default y | ||
163 | |||
164 | config XTENSA_ISS_NETWORK | ||
165 | bool | ||
166 | depends on XTENSA_PLATFORM_ISS | ||
167 | default y | ||
168 | |||
169 | source "mm/Kconfig" | 193 | source "mm/Kconfig" |
170 | 194 | ||
171 | endmenu | 195 | endmenu |
172 | 196 | ||
173 | menu "Bus options" | 197 | config HOTPLUG |
174 | 198 | bool "Support for hot-pluggable devices" | |
175 | config PCI | ||
176 | bool "PCI support" if !XTENSA_PLATFORM_ISS | ||
177 | depends on !XTENSA_PLATFORM_ISS | ||
178 | default y | ||
179 | help | 199 | help |
180 | Find out whether you have a PCI motherboard. PCI is the name of a | 200 | Say Y here if you want to plug devices into your computer while |
181 | bus system, i.e. the way the CPU talks to the other stuff inside | 201 | the system is running, and be able to use them quickly. In many |
182 | your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or | 202 | cases, the devices can likewise be unplugged at any time too. |
183 | VESA. If you have PCI, say Y, otherwise N. | ||
184 | 203 | ||
185 | source "drivers/pci/Kconfig" | 204 | One well known example of this is PCMCIA- or PC-cards, credit-card |
205 | size devices such as network cards, modems or hard drives which are | ||
206 | plugged into slots found on all modern laptop computers. Another | ||
207 | example, used on modern desktops as well as laptops, is USB. | ||
186 | 208 | ||
187 | config HOTPLUG | 209 | Enable HOTPLUG and build a modular kernel. Get agent software |
188 | 210 | (from <http://linux-hotplug.sourceforge.net/>) and install it. | |
189 | bool "Support for hot-pluggable devices" | 211 | Then your kernel will automatically call out to a user mode "policy |
190 | ---help--- | 212 | agent" (/sbin/hotplug) to load modules and set up software needed |
191 | Say Y here if you want to plug devices into your computer while | 213 | to use devices as you hotplug them. |
192 | the system is running, and be able to use them quickly. In many | ||
193 | cases, the devices can likewise be unplugged at any time too. | ||
194 | |||
195 | One well known example of this is PCMCIA- or PC-cards, credit-card | ||
196 | size devices such as network cards, modems or hard drives which are | ||
197 | plugged into slots found on all modern laptop computers. Another | ||
198 | example, used on modern desktops as well as laptops, is USB. | ||
199 | |||
200 | Enable HOTPLUG and build a modular kernel. Get agent software | ||
201 | (from <http://linux-hotplug.sourceforge.net/>) and install it. | ||
202 | Then your kernel will automatically call out to a user mode "policy | ||
203 | agent" (/sbin/hotplug) to load modules and set up software needed | ||
204 | to use devices as you hotplug them. | ||
205 | 214 | ||
206 | source "drivers/pcmcia/Kconfig" | 215 | source "drivers/pcmcia/Kconfig" |
207 | 216 | ||
@@ -213,9 +222,8 @@ menu "Executable file formats" | |||
213 | 222 | ||
214 | # only elf supported | 223 | # only elf supported |
215 | config KCORE_ELF | 224 | config KCORE_ELF |
216 | bool | 225 | def_bool y |
217 | depends on PROC_FS | 226 | depends on PROC_FS |
218 | default y | ||
219 | help | 227 | help |
220 | If you enabled support for /proc file system then the file | 228 | If you enabled support for /proc file system then the file |
221 | /proc/kcore will contain the kernel core image in ELF format. This | 229 | /proc/kcore will contain the kernel core image in ELF format. This |
@@ -240,7 +248,7 @@ source "fs/Kconfig" | |||
240 | menu "Xtensa initrd options" | 248 | menu "Xtensa initrd options" |
241 | depends on BLK_DEV_INITRD | 249 | depends on BLK_DEV_INITRD |
242 | 250 | ||
243 | config EMBEDDED_RAMDISK | 251 | config EMBEDDED_RAMDISK |
244 | bool "Embed root filesystem ramdisk into the kernel" | 252 | bool "Embed root filesystem ramdisk into the kernel" |
245 | 253 | ||
246 | config EMBEDDED_RAMDISK_IMAGE | 254 | config EMBEDDED_RAMDISK_IMAGE |