blob: 1364dcaccc18d2cc95e16de5cebd43f489227f3a [file] [log] [blame]
Bryan Wu1394f032007-05-06 14:50:22 -07001#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5
Mike Frysinger53f8a252007-11-15 15:48:01 +08006mainmenu "Blackfin Kernel Configuration"
Bryan Wu1394f032007-05-06 14:50:22 -07007
8config MMU
9 bool
10 default n
11
12config FPU
13 bool
14 default n
15
16config RWSEM_GENERIC_SPINLOCK
17 bool
18 default y
19
20config RWSEM_XCHGADD_ALGORITHM
21 bool
22 default n
23
24config BLACKFIN
25 bool
26 default y
27
Aubrey Lie3defff2007-05-21 18:09:11 +080028config ZONE_DMA
29 bool
30 default y
31
Bryan Wu1394f032007-05-06 14:50:22 -070032config SEMAPHORE_SLEEPERS
33 bool
34 default y
35
36config GENERIC_FIND_NEXT_BIT
37 bool
38 default y
39
40config GENERIC_HWEIGHT
41 bool
42 default y
43
44config GENERIC_HARDIRQS
45 bool
46 default y
47
48config GENERIC_IRQ_PROBE
Mike Frysingere4e9a7a2007-11-15 20:39:34 +080049 bool
Bryan Wu1394f032007-05-06 14:50:22 -070050 default y
51
52config GENERIC_TIME
53 bool
54 default n
55
Michael Hennerichb2d15832007-07-24 15:46:36 +080056config GENERIC_GPIO
Bryan Wu1394f032007-05-06 14:50:22 -070057 bool
58 default y
59
60config FORCE_MAX_ZONEORDER
61 int
62 default "14"
63
64config GENERIC_CALIBRATE_DELAY
65 bool
66 default y
67
Mathieu Desnoyers7d2284b2008-01-15 12:42:02 -050068config HARDWARE_PM
69 def_bool y
70 depends on OPROFILE
71
Bryan Wu1394f032007-05-06 14:50:22 -070072source "init/Kconfig"
73source "kernel/Kconfig.preempt"
74
75menu "Blackfin Processor Options"
76
77comment "Processor and Board Settings"
78
79choice
80 prompt "CPU"
81 default BF533
82
Michael Hennerich59003142007-10-21 16:54:27 +080083config BF522
84 bool "BF522"
85 help
86 BF522 Processor Support.
87
88config BF525
89 bool "BF525"
90 help
91 BF525 Processor Support.
92
93config BF527
94 bool "BF527"
95 help
96 BF527 Processor Support.
97
Bryan Wu1394f032007-05-06 14:50:22 -070098config BF531
99 bool "BF531"
100 help
101 BF531 Processor Support.
102
103config BF532
104 bool "BF532"
105 help
106 BF532 Processor Support.
107
108config BF533
109 bool "BF533"
110 help
111 BF533 Processor Support.
112
113config BF534
114 bool "BF534"
115 help
116 BF534 Processor Support.
117
118config BF536
119 bool "BF536"
120 help
121 BF536 Processor Support.
122
123config BF537
124 bool "BF537"
125 help
126 BF537 Processor Support.
127
Roy Huang24a07a12007-07-12 22:41:45 +0800128config BF542
129 bool "BF542"
130 help
131 BF542 Processor Support.
132
133config BF544
134 bool "BF544"
135 help
136 BF544 Processor Support.
137
Mike Frysinger7c7fd172007-11-15 21:10:21 +0800138config BF547
139 bool "BF547"
140 help
141 BF547 Processor Support.
142
Roy Huang24a07a12007-07-12 22:41:45 +0800143config BF548
144 bool "BF548"
145 help
146 BF548 Processor Support.
147
148config BF549
149 bool "BF549"
150 help
151 BF549 Processor Support.
152
Bryan Wu1394f032007-05-06 14:50:22 -0700153config BF561
154 bool "BF561"
155 help
156 Not Supported Yet - Work in progress - BF561 Processor Support.
157
158endchoice
159
160choice
161 prompt "Silicon Rev"
Michael Hennerich59003142007-10-21 16:54:27 +0800162 default BF_REV_0_1 if BF527
Bryan Wu1394f032007-05-06 14:50:22 -0700163 default BF_REV_0_2 if BF537
164 default BF_REV_0_3 if BF533
Roy Huang24a07a12007-07-12 22:41:45 +0800165 default BF_REV_0_0 if BF549
166
167config BF_REV_0_0
168 bool "0.0"
Mike Frysingerd07f4382007-11-15 15:49:17 +0800169 depends on (BF52x || BF54x)
Michael Hennerich59003142007-10-21 16:54:27 +0800170
171config BF_REV_0_1
Mike Frysingerd07f4382007-11-15 15:49:17 +0800172 bool "0.1"
173 depends on (BF52x || BF54x)
Bryan Wu1394f032007-05-06 14:50:22 -0700174
175config BF_REV_0_2
176 bool "0.2"
177 depends on (BF537 || BF536 || BF534)
178
179config BF_REV_0_3
180 bool "0.3"
181 depends on (BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531)
182
183config BF_REV_0_4
184 bool "0.4"
185 depends on (BF561 || BF533 || BF532 || BF531)
186
187config BF_REV_0_5
188 bool "0.5"
189 depends on (BF561 || BF533 || BF532 || BF531)
190
Jie Zhangde3025f2007-06-25 18:04:12 +0800191config BF_REV_ANY
192 bool "any"
193
194config BF_REV_NONE
195 bool "none"
196
Bryan Wu1394f032007-05-06 14:50:22 -0700197endchoice
198
Michael Hennerich59003142007-10-21 16:54:27 +0800199config BF52x
200 bool
201 depends on (BF522 || BF525 || BF527)
202 default y
203
Roy Huang24a07a12007-07-12 22:41:45 +0800204config BF53x
205 bool
206 depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
207 default y
208
209config BF54x
210 bool
Mike Frysinger7c7fd172007-11-15 21:10:21 +0800211 depends on (BF542 || BF544 || BF547 || BF548 || BF549)
Roy Huang24a07a12007-07-12 22:41:45 +0800212 default y
213
Bryan Wu1394f032007-05-06 14:50:22 -0700214config BFIN_DUAL_CORE
215 bool
216 depends on (BF561)
217 default y
218
219config BFIN_SINGLE_CORE
220 bool
221 depends on !BFIN_DUAL_CORE
222 default y
223
Bryan Wu1394f032007-05-06 14:50:22 -0700224config MEM_GENERIC_BOARD
225 bool
226 depends on GENERIC_BOARD
227 default y
228
229config MEM_MT48LC64M4A2FB_7E
230 bool
231 depends on (BFIN533_STAMP)
232 default y
233
234config MEM_MT48LC16M16A2TG_75
235 bool
236 depends on (BFIN533_EZKIT || BFIN561_EZKIT \
Javier Herreroab472a02007-10-29 16:14:44 +0800237 || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM \
238 || H8606_HVSISTEMAS)
Bryan Wu1394f032007-05-06 14:50:22 -0700239 default y
240
241config MEM_MT48LC32M8A2_75
242 bool
243 depends on (BFIN537_STAMP || PNAV10)
244 default y
245
246config MEM_MT48LC8M32B2B5_7
247 bool
248 depends on (BFIN561_BLUETECHNIX_CM)
249 default y
250
Michael Hennerich59003142007-10-21 16:54:27 +0800251config MEM_MT48LC32M16A2TG_75
252 bool
253 depends on (BFIN527_EZKIT)
254 default y
255
Bryan Wu1394f032007-05-06 14:50:22 -0700256config BFIN_SHARED_FLASH_ENET
257 bool
258 depends on (BFIN533_STAMP)
259 default y
260
Michael Hennerich59003142007-10-21 16:54:27 +0800261source "arch/blackfin/mach-bf527/Kconfig"
Bryan Wu1394f032007-05-06 14:50:22 -0700262source "arch/blackfin/mach-bf533/Kconfig"
263source "arch/blackfin/mach-bf561/Kconfig"
264source "arch/blackfin/mach-bf537/Kconfig"
Roy Huang24a07a12007-07-12 22:41:45 +0800265source "arch/blackfin/mach-bf548/Kconfig"
Bryan Wu1394f032007-05-06 14:50:22 -0700266
267menu "Board customizations"
268
269config CMDLINE_BOOL
270 bool "Default bootloader kernel arguments"
271
272config CMDLINE
273 string "Initial kernel command string"
274 depends on CMDLINE_BOOL
275 default "console=ttyBF0,57600"
276 help
277 If you don't have a boot loader capable of passing a command line string
278 to the kernel, you may specify one here. As a minimum, you should specify
279 the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
280
Robin Getzf16295e2007-08-03 18:07:17 +0800281comment "Clock/PLL Setup"
Bryan Wu1394f032007-05-06 14:50:22 -0700282
283config CLKIN_HZ
284 int "Crystal Frequency in Hz"
285 default "11059200" if BFIN533_STAMP
286 default "27000000" if BFIN533_EZKIT
Javier Herreroab472a02007-10-29 16:14:44 +0800287 default "25000000" if (BFIN537_STAMP || BFIN527_EZKIT || H8606_HVSISTEMAS)
Bryan Wu1394f032007-05-06 14:50:22 -0700288 default "30000000" if BFIN561_EZKIT
289 default "24576000" if PNAV10
290 help
291 The frequency of CLKIN crystal oscillator on the board in Hz.
292
Robin Getzf16295e2007-08-03 18:07:17 +0800293config BFIN_KERNEL_CLOCK
294 bool "Re-program Clocks while Kernel boots?"
295 default n
296 help
297 This option decides if kernel clocks are re-programed from the
298 bootloader settings. If the clocks are not set, the SDRAM settings
299 are also not changed, and the Bootloader does 100% of the hardware
300 configuration.
301
302config PLL_BYPASS
Mike Frysingere4e9a7a2007-11-15 20:39:34 +0800303 bool "Bypass PLL"
304 depends on BFIN_KERNEL_CLOCK
305 default n
Robin Getzf16295e2007-08-03 18:07:17 +0800306
307config CLKIN_HALF
308 bool "Half Clock In"
309 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
310 default n
311 help
312 If this is set the clock will be divided by 2, before it goes to the PLL.
313
314config VCO_MULT
315 int "VCO Multiplier"
316 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
317 range 1 64
318 default "22" if BFIN533_EZKIT
319 default "45" if BFIN533_STAMP
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800320 default "20" if (BFIN537_STAMP || BFIN527_EZKIT || BFIN548_EZKIT)
Robin Getzf16295e2007-08-03 18:07:17 +0800321 default "22" if BFIN533_BLUETECHNIX_CM
322 default "20" if BFIN537_BLUETECHNIX_CM
323 default "20" if BFIN561_BLUETECHNIX_CM
324 default "20" if BFIN561_EZKIT
Javier Herreroab472a02007-10-29 16:14:44 +0800325 default "16" if H8606_HVSISTEMAS
Robin Getzf16295e2007-08-03 18:07:17 +0800326 help
327 This controls the frequency of the on-chip PLL. This can be between 1 and 64.
328 PLL Frequency = (Crystal Frequency) * (this setting)
329
330choice
331 prompt "Core Clock Divider"
332 depends on BFIN_KERNEL_CLOCK
333 default CCLK_DIV_1
334 help
335 This sets the frequency of the core. It can be 1, 2, 4 or 8
336 Core Frequency = (PLL frequency) / (this setting)
337
338config CCLK_DIV_1
339 bool "1"
340
341config CCLK_DIV_2
342 bool "2"
343
344config CCLK_DIV_4
345 bool "4"
346
347config CCLK_DIV_8
348 bool "8"
349endchoice
350
351config SCLK_DIV
352 int "System Clock Divider"
353 depends on BFIN_KERNEL_CLOCK
354 range 1 15
355 default 5 if BFIN533_EZKIT
356 default 5 if BFIN533_STAMP
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800357 default 4 if (BFIN537_STAMP || BFIN527_EZKIT || BFIN548_EZKIT)
Robin Getzf16295e2007-08-03 18:07:17 +0800358 default 5 if BFIN533_BLUETECHNIX_CM
359 default 4 if BFIN537_BLUETECHNIX_CM
360 default 4 if BFIN561_BLUETECHNIX_CM
361 default 5 if BFIN561_EZKIT
Javier Herreroab472a02007-10-29 16:14:44 +0800362 default 3 if H8606_HVSISTEMAS
Robin Getzf16295e2007-08-03 18:07:17 +0800363 help
364 This sets the frequency of the system clock (including SDRAM or DDR).
365 This can be between 1 and 15
366 System Clock = (PLL frequency) / (this setting)
367
368#
369# Max & Min Speeds for various Chips
370#
371config MAX_VCO_HZ
372 int
373 default 600000000 if BF522
374 default 600000000 if BF525
375 default 600000000 if BF527
376 default 400000000 if BF531
377 default 400000000 if BF532
378 default 750000000 if BF533
379 default 500000000 if BF534
380 default 400000000 if BF536
381 default 600000000 if BF537
Robin Getzf72eecb2007-11-21 16:29:20 +0800382 default 533333333 if BF538
383 default 533333333 if BF539
Robin Getzf16295e2007-08-03 18:07:17 +0800384 default 600000000 if BF542
Robin Getzf72eecb2007-11-21 16:29:20 +0800385 default 533333333 if BF544
386 default 533333333 if BF549
Robin Getzf16295e2007-08-03 18:07:17 +0800387 default 600000000 if BF561
388
389config MIN_VCO_HZ
390 int
391 default 50000000
392
393config MAX_SCLK_HZ
394 int
Robin Getzf72eecb2007-11-21 16:29:20 +0800395 default 133333333
Robin Getzf16295e2007-08-03 18:07:17 +0800396
397config MIN_SCLK_HZ
398 int
399 default 27000000
400
401comment "Kernel Timer/Scheduler"
402
403source kernel/Kconfig.hz
404
405comment "Memory Setup"
406
Bryan Wu1394f032007-05-06 14:50:22 -0700407config MEM_SIZE
408 int "SDRAM Memory Size in MBytes"
409 default 32 if BFIN533_EZKIT
Michael Hennerich59003142007-10-21 16:54:27 +0800410 default 64 if BFIN527_EZKIT
Bryan Wu1394f032007-05-06 14:50:22 -0700411 default 64 if BFIN537_STAMP
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800412 default 64 if BFIN548_EZKIT
Bryan Wu1394f032007-05-06 14:50:22 -0700413 default 64 if BFIN561_EZKIT
414 default 128 if BFIN533_STAMP
415 default 64 if PNAV10
Javier Herreroab472a02007-10-29 16:14:44 +0800416 default 32 if H8606_HVSISTEMAS
Bryan Wu1394f032007-05-06 14:50:22 -0700417
418config MEM_ADD_WIDTH
419 int "SDRAM Memory Address Width"
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800420 depends on (!BF54x)
Bryan Wu1394f032007-05-06 14:50:22 -0700421 default 9 if BFIN533_EZKIT
422 default 9 if BFIN561_EZKIT
Javier Herreroab472a02007-10-29 16:14:44 +0800423 default 9 if H8606_HVSISTEMAS
Michael Hennerich59003142007-10-21 16:54:27 +0800424 default 10 if BFIN527_EZKIT
Bryan Wu1394f032007-05-06 14:50:22 -0700425 default 10 if BFIN537_STAMP
426 default 11 if BFIN533_STAMP
427 default 10 if PNAV10
428
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800429
430choice
431 prompt "DDR SDRAM Chip Type"
432 depends on BFIN548_EZKIT
433 default MEM_MT46V32M16_5B
434
435config MEM_MT46V32M16_6T
436 bool "MT46V32M16_6T"
437
438config MEM_MT46V32M16_5B
439 bool "MT46V32M16_5B"
440endchoice
441
Bryan Wu1394f032007-05-06 14:50:22 -0700442config ENET_FLASH_PIN
443 int "PF port/pin used for flash and ethernet sharing"
444 depends on (BFIN533_STAMP)
445 default 0
446 help
447 PF port/pin used for flash and ethernet sharing to allow other PF
448 pins to be used on other platforms without having to touch common
449 code.
450 For example: PF0 --> 0,PF1 --> 1,PF2 --> 2, etc.
451
452config BOOT_LOAD
453 hex "Kernel load address for booting"
454 default "0x1000"
Mike Frysinger2d8f1612007-08-05 14:06:16 +0800455 range 0x1000 0x20000000
Bryan Wu1394f032007-05-06 14:50:22 -0700456 help
457 This option allows you to set the load address of the kernel.
458 This can be useful if you are on a board which has a small amount
459 of memory or you wish to reserve some memory at the beginning of
460 the address space.
461
Mike Frysinger2d8f1612007-08-05 14:06:16 +0800462 Note that you need to keep this value above 4k (0x1000) as this
463 memory region is used to capture NULL pointer references as well
464 as some core kernel functions.
Bryan Wu1394f032007-05-06 14:50:22 -0700465
466comment "LED Status Indicators"
467 depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
468
469config BFIN_ALIVE_LED
470 bool "Enable Board Alive"
471 depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
472 default n
473 help
474 Blink the LEDs you select when the kernel is running. Helps detect
475 a hung kernel.
476
477config BFIN_ALIVE_LED_NUM
478 int "LED"
479 depends on BFIN_ALIVE_LED
480 range 1 3 if BFIN533_STAMP
481 default "3" if BFIN533_STAMP
482 help
483 Select the LED (marked on the board) for you to blink.
484
485config BFIN_IDLE_LED
486 bool "Enable System Load/Idle LED"
487 depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
488 default n
489 help
490 Blinks the LED you select when to determine kernel load.
491
492config BFIN_IDLE_LED_NUM
493 int "LED"
494 depends on BFIN_IDLE_LED
495 range 1 3 if BFIN533_STAMP
496 default "2" if BFIN533_STAMP
497 help
498 Select the LED (marked on the board) for you to blink.
499
Mike Frysingerf0b5d122007-08-05 17:03:59 +0800500choice
501 prompt "Blackfin Exception Scratch Register"
502 default BFIN_SCRATCH_REG_RETN
503 help
504 Select the resource to reserve for the Exception handler:
505 - RETN: Non-Maskable Interrupt (NMI)
506 - RETE: Exception Return (JTAG/ICE)
507 - CYCLES: Performance counter
508
509 If you are unsure, please select "RETN".
510
511config BFIN_SCRATCH_REG_RETN
512 bool "RETN"
513 help
514 Use the RETN register in the Blackfin exception handler
515 as a stack scratch register. This means you cannot
516 safely use NMI on the Blackfin while running Linux, but
517 you can debug the system with a JTAG ICE and use the
518 CYCLES performance registers.
519
520 If you are unsure, please select "RETN".
521
522config BFIN_SCRATCH_REG_RETE
523 bool "RETE"
524 help
525 Use the RETE register in the Blackfin exception handler
526 as a stack scratch register. This means you cannot
527 safely use a JTAG ICE while debugging a Blackfin board,
528 but you can safely use the CYCLES performance registers
529 and the NMI.
530
531 If you are unsure, please select "RETN".
532
533config BFIN_SCRATCH_REG_CYCLES
534 bool "CYCLES"
535 help
536 Use the CYCLES register in the Blackfin exception handler
537 as a stack scratch register. This means you cannot
538 safely use the CYCLES performance registers on a Blackfin
539 board at anytime, but you can debug the system with a JTAG
540 ICE and use the NMI.
541
542 If you are unsure, please select "RETN".
543
544endchoice
545
Bryan Wu1394f032007-05-06 14:50:22 -0700546#
547# Sorry - but you need to put the hex address here -
548#
549
550# Flag Data register
551config BFIN_ALIVE_LED_PORT
552 hex
553 default 0xFFC00700 if (BFIN533_STAMP)
554
555# Peripheral Flag Direction Register
556config BFIN_ALIVE_LED_DPORT
557 hex
558 default 0xFFC00730 if (BFIN533_STAMP)
559
560config BFIN_ALIVE_LED_PIN
561 hex
562 default 0x04 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 1)
563 default 0x08 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 2)
564 default 0x10 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 3)
565
566config BFIN_IDLE_LED_PORT
567 hex
568 default 0xFFC00700 if (BFIN533_STAMP)
569
570# Peripheral Flag Direction Register
571config BFIN_IDLE_LED_DPORT
572 hex
573 default 0xFFC00730 if (BFIN533_STAMP)
574
575config BFIN_IDLE_LED_PIN
576 hex
577 default 0x04 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 1)
578 default 0x08 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 2)
579 default 0x10 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 3)
580
Bryan Wu1394f032007-05-06 14:50:22 -0700581endmenu
582
583
584menu "Blackfin Kernel Optimizations"
585
Bryan Wu1394f032007-05-06 14:50:22 -0700586comment "Memory Optimizations"
587
588config I_ENTRY_L1
589 bool "Locate interrupt entry code in L1 Memory"
590 default y
591 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200592 If enabled, interrupt entry code (STORE/RESTORE CONTEXT) is linked
593 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700594
595config EXCPT_IRQ_SYSC_L1
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200596 bool "Locate entire ASM lowlevel exception / interrupt - Syscall and CPLB handler code in L1 Memory"
Bryan Wu1394f032007-05-06 14:50:22 -0700597 default y
598 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200599 If enabled, the entire ASM lowlevel exception and interrupt entry code
600 (STORE/RESTORE CONTEXT) is linked into L1 instruction memory.
601 (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700602
603config DO_IRQ_L1
604 bool "Locate frequently called do_irq dispatcher function in L1 Memory"
605 default y
606 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200607 If enabled, the frequently called do_irq dispatcher function is linked
608 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700609
610config CORE_TIMER_IRQ_L1
611 bool "Locate frequently called timer_interrupt() function in L1 Memory"
612 default y
613 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200614 If enabled, the frequently called timer_interrupt() function is linked
615 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700616
617config IDLE_L1
618 bool "Locate frequently idle function in L1 Memory"
619 default y
620 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200621 If enabled, the frequently called idle function is linked
622 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700623
624config SCHEDULE_L1
625 bool "Locate kernel schedule function in L1 Memory"
626 default y
627 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200628 If enabled, the frequently called kernel schedule is linked
629 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700630
631config ARITHMETIC_OPS_L1
632 bool "Locate kernel owned arithmetic functions in L1 Memory"
633 default y
634 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200635 If enabled, arithmetic functions are linked
636 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700637
638config ACCESS_OK_L1
639 bool "Locate access_ok function in L1 Memory"
640 default y
641 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200642 If enabled, the access_ok function is linked
643 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700644
645config MEMSET_L1
646 bool "Locate memset function in L1 Memory"
647 default y
648 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200649 If enabled, the memset function is linked
650 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700651
652config MEMCPY_L1
653 bool "Locate memcpy function in L1 Memory"
654 default y
655 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200656 If enabled, the memcpy function is linked
657 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700658
659config SYS_BFIN_SPINLOCK_L1
660 bool "Locate sys_bfin_spinlock function in L1 Memory"
661 default y
662 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200663 If enabled, sys_bfin_spinlock function is linked
664 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700665
666config IP_CHECKSUM_L1
667 bool "Locate IP Checksum function in L1 Memory"
668 default n
669 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200670 If enabled, the IP Checksum function is linked
671 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700672
673config CACHELINE_ALIGNED_L1
674 bool "Locate cacheline_aligned data to L1 Data Memory"
Michael Hennerich157cc5a2007-07-12 16:20:21 +0800675 default y if !BF54x
676 default n if BF54x
Bryan Wu1394f032007-05-06 14:50:22 -0700677 depends on !BF531
678 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200679 If enabled, cacheline_anligned data is linked
680 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700681
682config SYSCALL_TAB_L1
683 bool "Locate Syscall Table L1 Data Memory"
684 default n
685 depends on !BF531
686 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200687 If enabled, the Syscall LUT is linked
688 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700689
690config CPLB_SWITCH_TAB_L1
691 bool "Locate CPLB Switch Tables L1 Data Memory"
692 default n
693 depends on !BF531
694 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200695 If enabled, the CPLB Switch Tables are linked
696 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700697
698endmenu
699
700
701choice
702 prompt "Kernel executes from"
703 help
704 Choose the memory type that the kernel will be running in.
705
706config RAMKERNEL
707 bool "RAM"
708 help
709 The kernel will be resident in RAM when running.
710
711config ROMKERNEL
712 bool "ROM"
713 help
714 The kernel will be resident in FLASH/ROM when running.
715
716endchoice
717
718source "mm/Kconfig"
719
Bryan Wudb0fa202007-07-12 14:55:05 +0800720config LARGE_ALLOCS
721 bool "Allow allocating large blocks (> 1MB) of memory"
722 help
723 Allow the slab memory allocator to keep chains for very large
724 memory sizes - upto 32MB. You may need this if your system has
725 a lot of RAM, and you need to able to allocate very large
726 contiguous chunks. If unsure, say N.
727
Mike Frysinger780431e2007-10-21 23:37:54 +0800728config BFIN_GPTIMERS
729 tristate "Enable Blackfin General Purpose Timers API"
730 default n
731 help
732 Enable support for the General Purpose Timers API. If you
733 are unsure, say N.
734
735 To compile this driver as a module, choose M here: the module
736 will be called gptimers.ko.
737
Bryan Wu1394f032007-05-06 14:50:22 -0700738config BFIN_DMA_5XX
739 bool "Enable DMA Support"
Michael Hennerich59003142007-10-21 16:54:27 +0800740 depends on (BF52x || BF53x || BF561 || BF54x)
Bryan Wu1394f032007-05-06 14:50:22 -0700741 default y
742 help
743 DMA driver for BF5xx.
744
745choice
746 prompt "Uncached SDRAM region"
747 default DMA_UNCACHED_1M
Adrian Bunk247537b2007-09-26 20:02:52 +0200748 depends on BFIN_DMA_5XX
Bryan Wu1394f032007-05-06 14:50:22 -0700749config DMA_UNCACHED_2M
750 bool "Enable 2M DMA region"
751config DMA_UNCACHED_1M
752 bool "Enable 1M DMA region"
753config DMA_UNCACHED_NONE
754 bool "Disable DMA region"
755endchoice
756
757
758comment "Cache Support"
Robin Getz3bebca22007-10-10 23:55:26 +0800759config BFIN_ICACHE
Bryan Wu1394f032007-05-06 14:50:22 -0700760 bool "Enable ICACHE"
Robin Getz3bebca22007-10-10 23:55:26 +0800761config BFIN_DCACHE
Bryan Wu1394f032007-05-06 14:50:22 -0700762 bool "Enable DCACHE"
Robin Getz3bebca22007-10-10 23:55:26 +0800763config BFIN_DCACHE_BANKA
Bryan Wu1394f032007-05-06 14:50:22 -0700764 bool "Enable only 16k BankA DCACHE - BankB is SRAM"
Robin Getz3bebca22007-10-10 23:55:26 +0800765 depends on BFIN_DCACHE && !BF531
Bryan Wu1394f032007-05-06 14:50:22 -0700766 default n
Robin Getz3bebca22007-10-10 23:55:26 +0800767config BFIN_ICACHE_LOCK
768 bool "Enable Instruction Cache Locking"
Bryan Wu1394f032007-05-06 14:50:22 -0700769
770choice
771 prompt "Policy"
Robin Getz3bebca22007-10-10 23:55:26 +0800772 depends on BFIN_DCACHE
773 default BFIN_WB
774config BFIN_WB
Bryan Wu1394f032007-05-06 14:50:22 -0700775 bool "Write back"
776 help
777 Write Back Policy:
778 Cached data will be written back to SDRAM only when needed.
779 This can give a nice increase in performance, but beware of
780 broken drivers that do not properly invalidate/flush their
781 cache.
782
783 Write Through Policy:
784 Cached data will always be written back to SDRAM when the
785 cache is updated. This is a completely safe setting, but
786 performance is worse than Write Back.
787
788 If you are unsure of the options and you want to be safe,
789 then go with Write Through.
790
Robin Getz3bebca22007-10-10 23:55:26 +0800791config BFIN_WT
Bryan Wu1394f032007-05-06 14:50:22 -0700792 bool "Write through"
793 help
794 Write Back Policy:
795 Cached data will be written back to SDRAM only when needed.
796 This can give a nice increase in performance, but beware of
797 broken drivers that do not properly invalidate/flush their
798 cache.
799
800 Write Through Policy:
801 Cached data will always be written back to SDRAM when the
802 cache is updated. This is a completely safe setting, but
803 performance is worse than Write Back.
804
805 If you are unsure of the options and you want to be safe,
806 then go with Write Through.
807
808endchoice
809
810config L1_MAX_PIECE
811 int "Set the max L1 SRAM pieces"
812 default 16
813 help
814 Set the max memory pieces for the L1 SRAM allocation algorithm.
815 Min value is 16. Max value is 1024.
816
Bryan Wu1394f032007-05-06 14:50:22 -0700817comment "Asynchonous Memory Configuration"
818
Mike Frysingerddf416b2007-10-10 18:06:47 +0800819menu "EBIU_AMGCTL Global Control"
Bryan Wu1394f032007-05-06 14:50:22 -0700820config C_AMCKEN
821 bool "Enable CLKOUT"
822 default y
823
824config C_CDPRIO
825 bool "DMA has priority over core for ext. accesses"
Michael Hennerich9be343c2007-07-12 11:58:44 +0800826 depends on !BF54x
Bryan Wu1394f032007-05-06 14:50:22 -0700827 default n
828
829config C_B0PEN
830 depends on BF561
831 bool "Bank 0 16 bit packing enable"
832 default y
833
834config C_B1PEN
835 depends on BF561
836 bool "Bank 1 16 bit packing enable"
837 default y
838
839config C_B2PEN
840 depends on BF561
841 bool "Bank 2 16 bit packing enable"
842 default y
843
844config C_B3PEN
845 depends on BF561
846 bool "Bank 3 16 bit packing enable"
847 default n
848
849choice
850 prompt"Enable Asynchonous Memory Banks"
851 default C_AMBEN_ALL
852
853config C_AMBEN
854 bool "Disable All Banks"
855
856config C_AMBEN_B0
857 bool "Enable Bank 0"
858
859config C_AMBEN_B0_B1
860 bool "Enable Bank 0 & 1"
861
862config C_AMBEN_B0_B1_B2
863 bool "Enable Bank 0 & 1 & 2"
864
865config C_AMBEN_ALL
866 bool "Enable All Banks"
867endchoice
868endmenu
869
870menu "EBIU_AMBCTL Control"
871config BANK_0
872 hex "Bank 0"
873 default 0x7BB0
874
875config BANK_1
876 hex "Bank 1"
877 default 0x7BB0
878
879config BANK_2
880 hex "Bank 2"
881 default 0x7BB0
882
883config BANK_3
884 hex "Bank 3"
885 default 0x99B3
886endmenu
887
Sonic Zhange40540b2007-11-21 23:49:52 +0800888config EBIU_MBSCTLVAL
889 hex "EBIU Bank Select Control Register"
890 depends on BF54x
891 default 0
892
893config EBIU_MODEVAL
894 hex "Flash Memory Mode Control Register"
895 depends on BF54x
896 default 1
897
898config EBIU_FCTLVAL
899 hex "Flash Memory Bank Control Register"
900 depends on BF54x
901 default 6
Bryan Wu1394f032007-05-06 14:50:22 -0700902endmenu
903
904#############################################################################
905menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
906
907config PCI
908 bool "PCI support"
909 help
910 Support for PCI bus.
911
912source "drivers/pci/Kconfig"
913
914config HOTPLUG
915 bool "Support for hot-pluggable device"
916 help
917 Say Y here if you want to plug devices into your computer while
918 the system is running, and be able to use them quickly. In many
919 cases, the devices can likewise be unplugged at any time too.
920
921 One well known example of this is PCMCIA- or PC-cards, credit-card
922 size devices such as network cards, modems or hard drives which are
923 plugged into slots found on all modern laptop computers. Another
924 example, used on modern desktops as well as laptops, is USB.
925
926 Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
927 software (at <http://linux-hotplug.sourceforge.net/>) and install it.
928 Then your kernel will automatically call out to a user mode "policy
929 agent" (/sbin/hotplug) to load modules and set up software needed
930 to use devices as you hotplug them.
931
932source "drivers/pcmcia/Kconfig"
933
934source "drivers/pci/hotplug/Kconfig"
935
936endmenu
937
938menu "Executable file formats"
939
940source "fs/Kconfig.binfmt"
941
942endmenu
943
944menu "Power management options"
945source "kernel/power/Kconfig"
946
947choice
948 prompt "Select PM Wakeup Event Source"
949 default PM_WAKEUP_GPIO_BY_SIC_IWR
950 depends on PM
951 help
952 If you have a GPIO already configured as input with the corresponding PORTx_MASK
953 bit set - "Specify Wakeup Event by SIC_IWR value"
954
955config PM_WAKEUP_GPIO_BY_SIC_IWR
956 bool "Specify Wakeup Event by SIC_IWR value"
957config PM_WAKEUP_BY_GPIO
958 bool "Cause Wakeup Event by GPIO"
959config PM_WAKEUP_GPIO_API
960 bool "Configure Wakeup Event by PM GPIO API"
961
962endchoice
963
964config PM_WAKEUP_SIC_IWR
965 hex "Wakeup Events (SIC_IWR)"
966 depends on PM_WAKEUP_GPIO_BY_SIC_IWR
967 default 0x80000000 if (BF537 || BF536 || BF534)
968 default 0x100000 if (BF533 || BF532 || BF531)
Sonic Zhangfb5f0042007-12-23 23:02:13 +0800969 default 0x800000 if (BF549 || BF548 || BF547 || BF542)
970 default 0x800000 if (BF527 || BF524 || BF522)
Bryan Wu1394f032007-05-06 14:50:22 -0700971
972config PM_WAKEUP_GPIO_NUMBER
973 int "Wakeup GPIO number"
974 range 0 47
975 depends on PM_WAKEUP_BY_GPIO
976 default 2 if BFIN537_STAMP
977
978choice
979 prompt "GPIO Polarity"
980 depends on PM_WAKEUP_BY_GPIO
981 default PM_WAKEUP_GPIO_POLAR_H
982config PM_WAKEUP_GPIO_POLAR_H
983 bool "Active High"
984config PM_WAKEUP_GPIO_POLAR_L
985 bool "Active Low"
986config PM_WAKEUP_GPIO_POLAR_EDGE_F
987 bool "Falling EDGE"
988config PM_WAKEUP_GPIO_POLAR_EDGE_R
989 bool "Rising EDGE"
990config PM_WAKEUP_GPIO_POLAR_EDGE_B
991 bool "Both EDGE"
992endchoice
993
994endmenu
995
Roy Huang24a07a12007-07-12 22:41:45 +0800996if (BF537 || BF533 || BF54x)
Bryan Wu1394f032007-05-06 14:50:22 -0700997
998menu "CPU Frequency scaling"
999
1000source "drivers/cpufreq/Kconfig"
1001
1002config CPU_FREQ
1003 bool
1004 default n
1005 help
1006 If you want to enable this option, you should select the
1007 DPMC driver from Character Devices.
1008endmenu
1009
1010endif
1011
1012source "net/Kconfig"
1013
1014source "drivers/Kconfig"
1015
1016source "fs/Kconfig"
1017
Mathieu Desnoyers09caded2007-10-18 23:41:05 -07001018source "kernel/Kconfig.instrumentation"
Bryan Wu1394f032007-05-06 14:50:22 -07001019
Mike Frysinger74ce8322007-11-21 23:50:49 +08001020source "arch/blackfin/Kconfig.debug"
Bryan Wu1394f032007-05-06 14:50:22 -07001021
1022source "security/Kconfig"
1023
1024source "crypto/Kconfig"
1025
1026source "lib/Kconfig"