aboutsummaryrefslogtreecommitdiffstats
path: root/arch/frv/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/frv/Kconfig')
-rw-r--r--arch/frv/Kconfig357
1 files changed, 357 insertions, 0 deletions
diff --git a/arch/frv/Kconfig b/arch/frv/Kconfig
new file mode 100644
index 000000000000..2b19372767eb
--- /dev/null
+++ b/arch/frv/Kconfig
@@ -0,0 +1,357 @@
1#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5config FRV
6 bool
7 default y
8
9config UID16
10 bool
11 default y
12
13config RWSEM_GENERIC_SPINLOCK
14 bool
15 default y
16
17config RWSEM_XCHGADD_ALGORITHM
18 bool
19
20config GENERIC_FIND_NEXT_BIT
21 bool
22 default y
23
24config GENERIC_CALIBRATE_DELAY
25 bool
26 default n
27
28config GENERIC_HARDIRQS
29 bool
30 default n
31
32mainmenu "Fujitsu FR-V Kernel Configuration"
33
34source "init/Kconfig"
35
36
37menu "Fujitsu FR-V system setup"
38
39config MMU
40 bool "MMU support"
41 help
42 This options switches on and off support for the FR-V MMU
43 (effectively switching between vmlinux and uClinux). Not all FR-V
44 CPUs support this. Currently only the FR451 has a sufficiently
45 featured MMU.
46
47config FRV_OUTOFLINE_ATOMIC_OPS
48 bool "Out-of-line the FRV atomic operations"
49 default n
50 help
51 Setting this option causes the FR-V atomic operations to be mostly
52 implemented out-of-line.
53
54 See Documentation/fujitsu/frv/atomic-ops.txt for more information.
55
56config HIGHMEM
57 bool "High memory support"
58 depends on MMU
59 default y
60 help
61 If you wish to use more than 256MB of memory with your MMU based
62 system, you will need to select this option. The kernel can only see
63 the memory between 0xC0000000 and 0xD0000000 directly... everything
64 else must be kmapped.
65
66 The arch is, however, capable of supporting up to 3GB of SDRAM.
67
68config HIGHPTE
69 bool "Allocate page tables in highmem"
70 depends on HIGHMEM
71 default y
72 help
73 The VM uses one page of memory for each page table. For systems
74 with a lot of RAM, this can be wasteful of precious low memory.
75 Setting this option will put user-space page tables in high memory.
76
77choice
78 prompt "uClinux kernel load address"
79 depends on !MMU
80 default UCPAGE_OFFSET_C0000000
81 help
82 This option sets the base address for the uClinux kernel. The kernel
83 will rearrange the SDRAM layout to start at this address, and move
84 itself to start there. It must be greater than 0, and it must be
85 sufficiently less than 0xE0000000 that the SDRAM does not intersect
86 the I/O region.
87
88 The base address must also be aligned such that the SDRAM controller
89 can decode it. For instance, a 512MB SDRAM bank must be 512MB aligned.
90
91config UCPAGE_OFFSET_20000000
92 bool "0x20000000"
93
94config UCPAGE_OFFSET_40000000
95 bool "0x40000000"
96
97config UCPAGE_OFFSET_60000000
98 bool "0x60000000"
99
100config UCPAGE_OFFSET_80000000
101 bool "0x80000000"
102
103config UCPAGE_OFFSET_A0000000
104 bool "0xA0000000"
105
106config UCPAGE_OFFSET_C0000000
107 bool "0xC0000000 (Recommended)"
108
109endchoice
110
111config PROTECT_KERNEL
112 bool "Protect core kernel against userspace"
113 depends on !MMU
114 default y
115 help
116 Selecting this option causes the uClinux kernel to change the
117 permittivity of DAMPR register covering the core kernel image to
118 prevent userspace accessing the underlying memory directly.
119
120choice
121 prompt "CPU Caching mode"
122 default FRV_DEFL_CACHE_WBACK
123 help
124 This option determines the default caching mode for the kernel.
125
126 Write-Back caching mode involves the all reads and writes causing
127 the affected cacheline to be read into the cache first before being
128 operated upon. Memory is not then updated by a write until the cache
129 is filled and a cacheline needs to be displaced from the cache to
130 make room. Only at that point is it written back.
131
132 Write-Behind caching is similar to Write-Back caching, except that a
133 write won't fetch a cacheline into the cache if there isn't already
134 one there; it will write directly to memory instead.
135
136 Write-Through caching only fetches cachelines from memory on a
137 read. Writes always get written directly to memory. If the affected
138 cacheline is also in cache, it will be updated too.
139
140 The final option is to turn of caching entirely.
141
142 Note that not all CPUs support Write-Behind caching. If the CPU on
143 which the kernel is running doesn't, it'll fall back to Write-Back
144 caching.
145
146config FRV_DEFL_CACHE_WBACK
147 bool "Write-Back"
148
149config FRV_DEFL_CACHE_WBEHIND
150 bool "Write-Behind"
151
152config FRV_DEFL_CACHE_WTHRU
153 bool "Write-Through"
154
155config FRV_DEFL_CACHE_DISABLED
156 bool "Disabled"
157
158endchoice
159
160menu "CPU core support"
161
162config CPU_FR401
163 bool "Include FR401 core support"
164 depends on !MMU
165 default y
166 help
167 This enables support for the FR401, FR401A and FR403 CPUs
168
169config CPU_FR405
170 bool "Include FR405 core support"
171 depends on !MMU
172 default y
173 help
174 This enables support for the FR405 CPU
175
176config CPU_FR451
177 bool "Include FR451 core support"
178 default y
179 help
180 This enables support for the FR451 CPU
181
182config CPU_FR451_COMPILE
183 bool "Specifically compile for FR451 core"
184 depends on CPU_FR451 && !CPU_FR401 && !CPU_FR405 && !CPU_FR551
185 default y
186 help
187 This causes appropriate flags to be passed to the compiler to
188 optimise for the FR451 CPU
189
190config CPU_FR551
191 bool "Include FR551 core support"
192 depends on !MMU
193 default y
194 help
195 This enables support for the FR555 CPU
196
197config CPU_FR551_COMPILE
198 bool "Specifically compile for FR551 core"
199 depends on CPU_FR551 && !CPU_FR401 && !CPU_FR405 && !CPU_FR451
200 default y
201 help
202 This causes appropriate flags to be passed to the compiler to
203 optimise for the FR555 CPU
204
205config FRV_L1_CACHE_SHIFT
206 int
207 default "5" if CPU_FR401 || CPU_FR405 || CPU_FR451
208 default "6" if CPU_FR551
209
210endmenu
211
212choice
213 prompt "System support"
214 default MB93091_VDK
215
216config MB93091_VDK
217 bool "MB93091 CPU board with or without motherboard"
218
219config MB93093_PDK
220 bool "MB93093 PDK unit"
221
222endchoice
223
224if MB93091_VDK
225choice
226 prompt "Motherboard support"
227 default MB93090_MB00
228
229config MB93090_MB00
230 bool "Use the MB93090-MB00 motherboard"
231 help
232 Select this option if the MB93091 CPU board is going to be used with
233 a MB93090-MB00 VDK motherboard
234
235config MB93091_NO_MB
236 bool "Use standalone"
237 help
238 Select this option if the MB93091 CPU board is going to be used
239 without a motherboard
240
241endchoice
242endif
243
244choice
245 prompt "GP-Relative data support"
246 default GPREL_DATA_8
247 help
248 This option controls what data, if any, should be placed in the GP
249 relative data sections. Using this means that the compiler can
250 generate accesses to the data using GR16-relative addressing which
251 is faster than absolute instructions and saves space (2 instructions
252 per access).
253
254 However, the GPREL region is limited in size because the immediate
255 value used in the load and store instructions is limited to a 12-bit
256 signed number.
257
258 So if the linker starts complaining that accesses to GPREL data are
259 out of range, try changing this option from the default.
260
261 Note that modules will always be compiled with this feature disabled
262 as the module data will not be in range of the GP base address.
263
264config GPREL_DATA_8
265 bool "Put data objects of up to 8 bytes into GP-REL"
266
267config GPREL_DATA_4
268 bool "Put data objects of up to 4 bytes into GP-REL"
269
270config GPREL_DATA_NONE
271 bool "Don't use GP-REL"
272
273endchoice
274
275config PCI
276 bool "Use PCI"
277 depends on MB93090_MB00
278 default y
279 help
280 Some FR-V systems (such as the MB93090-MB00 VDK) have PCI
281 onboard. If you have one of these boards and you wish to use the PCI
282 facilities, say Y here.
283
284 The PCI-HOWTO, available from
285 <http://www.tldp.org/docs.html#howto>, contains valuable
286 information about which PCI hardware does work under Linux and which
287 doesn't.
288
289config RESERVE_DMA_COHERENT
290 bool "Reserve DMA coherent memory"
291 depends on PCI && !MMU
292 default y
293 help
294 Many PCI drivers require access to uncached memory for DMA device
295 communications (such as is done with some Ethernet buffer rings). If
296 a fully featured MMU is available, this can be done through page
297 table settings, but if not, a region has to be set aside and marked
298 with a special DAMPR register.
299
300 Setting this option causes uClinux to set aside a portion of the
301 available memory for use in this manner. The memory will then be
302 unavailable for normal kernel use.
303
304source "drivers/pci/Kconfig"
305
306config PCMCIA
307 tristate "Use PCMCIA"
308 help
309 Say Y here if you want to attach PCMCIA- or PC-cards to your FR-V
310 board. These are credit-card size devices such as network cards,
311 modems or hard drives often used with laptops computers. There are
312 actually two varieties of these cards: the older 16 bit PCMCIA cards
313 and the newer 32 bit CardBus cards. If you want to use CardBus
314 cards, you need to say Y here and also to "CardBus support" below.
315
316 To use your PC-cards, you will need supporting software from David
317 Hinds pcmcia-cs package (see the file <file:Documentation/Changes>
318 for location). Please also read the PCMCIA-HOWTO, available from
319 <http://www.tldp.org/docs.html#howto>.
320
321 To compile this driver as modules, choose M here: the
322 modules will be called pcmcia_core and ds.
323
324#config MATH_EMULATION
325# bool "Math emulation support (EXPERIMENTAL)"
326# depends on EXPERIMENTAL
327# help
328# At some point in the future, this will cause floating-point math
329# instructions to be emulated by the kernel on machines that lack a
330# floating-point math coprocessor. Thrill-seekers and chronically
331# sleep-deprived psychotic hacker types can say Y now, everyone else
332# should probably wait a while.
333
334menu "Power management options"
335source kernel/power/Kconfig
336endmenu
337
338endmenu
339
340
341menu "Executable formats"
342
343source "fs/Kconfig.binfmt"
344
345endmenu
346
347source "drivers/Kconfig"
348
349source "fs/Kconfig"
350
351source "arch/frv/Kconfig.debug"
352
353source "security/Kconfig"
354
355source "crypto/Kconfig"
356
357source "lib/Kconfig"