blob: a241a0a27de2de0477dfb6e60f0ed3318a2252ec [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
Mike Frysinger1545a112007-12-24 16:54:48 +080088config BF523
89 bool "BF523"
90 help
91 BF523 Processor Support.
92
93config BF524
94 bool "BF524"
95 help
96 BF524 Processor Support.
97
Michael Hennerich59003142007-10-21 16:54:27 +080098config BF525
99 bool "BF525"
100 help
101 BF525 Processor Support.
102
Mike Frysinger1545a112007-12-24 16:54:48 +0800103config BF526
104 bool "BF526"
105 help
106 BF526 Processor Support.
107
Michael Hennerich59003142007-10-21 16:54:27 +0800108config BF527
109 bool "BF527"
110 help
111 BF527 Processor Support.
112
Bryan Wu1394f032007-05-06 14:50:22 -0700113config BF531
114 bool "BF531"
115 help
116 BF531 Processor Support.
117
118config BF532
119 bool "BF532"
120 help
121 BF532 Processor Support.
122
123config BF533
124 bool "BF533"
125 help
126 BF533 Processor Support.
127
128config BF534
129 bool "BF534"
130 help
131 BF534 Processor Support.
132
133config BF536
134 bool "BF536"
135 help
136 BF536 Processor Support.
137
138config BF537
139 bool "BF537"
140 help
141 BF537 Processor Support.
142
Roy Huang24a07a12007-07-12 22:41:45 +0800143config BF542
144 bool "BF542"
145 help
146 BF542 Processor Support.
147
148config BF544
149 bool "BF544"
150 help
151 BF544 Processor Support.
152
Mike Frysinger7c7fd172007-11-15 21:10:21 +0800153config BF547
154 bool "BF547"
155 help
156 BF547 Processor Support.
157
Roy Huang24a07a12007-07-12 22:41:45 +0800158config BF548
159 bool "BF548"
160 help
161 BF548 Processor Support.
162
163config BF549
164 bool "BF549"
165 help
166 BF549 Processor Support.
167
Bryan Wu1394f032007-05-06 14:50:22 -0700168config BF561
169 bool "BF561"
170 help
171 Not Supported Yet - Work in progress - BF561 Processor Support.
172
173endchoice
174
175choice
176 prompt "Silicon Rev"
Michael Hennerich59003142007-10-21 16:54:27 +0800177 default BF_REV_0_1 if BF527
Bryan Wu1394f032007-05-06 14:50:22 -0700178 default BF_REV_0_2 if BF537
179 default BF_REV_0_3 if BF533
Roy Huang24a07a12007-07-12 22:41:45 +0800180 default BF_REV_0_0 if BF549
181
182config BF_REV_0_0
183 bool "0.0"
Mike Frysingerd07f4382007-11-15 15:49:17 +0800184 depends on (BF52x || BF54x)
Michael Hennerich59003142007-10-21 16:54:27 +0800185
186config BF_REV_0_1
Mike Frysingerd07f4382007-11-15 15:49:17 +0800187 bool "0.1"
188 depends on (BF52x || BF54x)
Bryan Wu1394f032007-05-06 14:50:22 -0700189
190config BF_REV_0_2
191 bool "0.2"
192 depends on (BF537 || BF536 || BF534)
193
194config BF_REV_0_3
195 bool "0.3"
196 depends on (BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531)
197
198config BF_REV_0_4
199 bool "0.4"
200 depends on (BF561 || BF533 || BF532 || BF531)
201
202config BF_REV_0_5
203 bool "0.5"
204 depends on (BF561 || BF533 || BF532 || BF531)
205
Jie Zhangde3025f2007-06-25 18:04:12 +0800206config BF_REV_ANY
207 bool "any"
208
209config BF_REV_NONE
210 bool "none"
211
Bryan Wu1394f032007-05-06 14:50:22 -0700212endchoice
213
Michael Hennerich59003142007-10-21 16:54:27 +0800214config BF52x
215 bool
Mike Frysinger1545a112007-12-24 16:54:48 +0800216 depends on (BF522 || BF523 || BF524 || BF525 || BF526 || BF527)
Michael Hennerich59003142007-10-21 16:54:27 +0800217 default y
218
Roy Huang24a07a12007-07-12 22:41:45 +0800219config BF53x
220 bool
221 depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
222 default y
223
224config BF54x
225 bool
Mike Frysinger7c7fd172007-11-15 21:10:21 +0800226 depends on (BF542 || BF544 || BF547 || BF548 || BF549)
Roy Huang24a07a12007-07-12 22:41:45 +0800227 default y
228
Bryan Wu1394f032007-05-06 14:50:22 -0700229config BFIN_DUAL_CORE
230 bool
231 depends on (BF561)
232 default y
233
234config BFIN_SINGLE_CORE
235 bool
236 depends on !BFIN_DUAL_CORE
237 default y
238
Bryan Wu1394f032007-05-06 14:50:22 -0700239config MEM_GENERIC_BOARD
240 bool
241 depends on GENERIC_BOARD
242 default y
243
244config MEM_MT48LC64M4A2FB_7E
245 bool
246 depends on (BFIN533_STAMP)
247 default y
248
249config MEM_MT48LC16M16A2TG_75
250 bool
251 depends on (BFIN533_EZKIT || BFIN561_EZKIT \
Javier Herreroab472a02007-10-29 16:14:44 +0800252 || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM \
253 || H8606_HVSISTEMAS)
Bryan Wu1394f032007-05-06 14:50:22 -0700254 default y
255
256config MEM_MT48LC32M8A2_75
257 bool
258 depends on (BFIN537_STAMP || PNAV10)
259 default y
260
261config MEM_MT48LC8M32B2B5_7
262 bool
263 depends on (BFIN561_BLUETECHNIX_CM)
264 default y
265
Michael Hennerich59003142007-10-21 16:54:27 +0800266config MEM_MT48LC32M16A2TG_75
267 bool
268 depends on (BFIN527_EZKIT)
269 default y
270
Bryan Wu1394f032007-05-06 14:50:22 -0700271config BFIN_SHARED_FLASH_ENET
272 bool
273 depends on (BFIN533_STAMP)
274 default y
275
Michael Hennerich59003142007-10-21 16:54:27 +0800276source "arch/blackfin/mach-bf527/Kconfig"
Bryan Wu1394f032007-05-06 14:50:22 -0700277source "arch/blackfin/mach-bf533/Kconfig"
278source "arch/blackfin/mach-bf561/Kconfig"
279source "arch/blackfin/mach-bf537/Kconfig"
Roy Huang24a07a12007-07-12 22:41:45 +0800280source "arch/blackfin/mach-bf548/Kconfig"
Bryan Wu1394f032007-05-06 14:50:22 -0700281
282menu "Board customizations"
283
284config CMDLINE_BOOL
285 bool "Default bootloader kernel arguments"
286
287config CMDLINE
288 string "Initial kernel command string"
289 depends on CMDLINE_BOOL
290 default "console=ttyBF0,57600"
291 help
292 If you don't have a boot loader capable of passing a command line string
293 to the kernel, you may specify one here. As a minimum, you should specify
294 the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
295
Robin Getzf16295e2007-08-03 18:07:17 +0800296comment "Clock/PLL Setup"
Bryan Wu1394f032007-05-06 14:50:22 -0700297
298config CLKIN_HZ
299 int "Crystal Frequency in Hz"
300 default "11059200" if BFIN533_STAMP
301 default "27000000" if BFIN533_EZKIT
Javier Herreroab472a02007-10-29 16:14:44 +0800302 default "25000000" if (BFIN537_STAMP || BFIN527_EZKIT || H8606_HVSISTEMAS)
Bryan Wu1394f032007-05-06 14:50:22 -0700303 default "30000000" if BFIN561_EZKIT
304 default "24576000" if PNAV10
305 help
306 The frequency of CLKIN crystal oscillator on the board in Hz.
307
Robin Getzf16295e2007-08-03 18:07:17 +0800308config BFIN_KERNEL_CLOCK
309 bool "Re-program Clocks while Kernel boots?"
310 default n
311 help
312 This option decides if kernel clocks are re-programed from the
313 bootloader settings. If the clocks are not set, the SDRAM settings
314 are also not changed, and the Bootloader does 100% of the hardware
315 configuration.
316
317config PLL_BYPASS
Mike Frysingere4e9a7a2007-11-15 20:39:34 +0800318 bool "Bypass PLL"
319 depends on BFIN_KERNEL_CLOCK
320 default n
Robin Getzf16295e2007-08-03 18:07:17 +0800321
322config CLKIN_HALF
323 bool "Half Clock In"
324 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
325 default n
326 help
327 If this is set the clock will be divided by 2, before it goes to the PLL.
328
329config VCO_MULT
330 int "VCO Multiplier"
331 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
332 range 1 64
333 default "22" if BFIN533_EZKIT
334 default "45" if BFIN533_STAMP
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800335 default "20" if (BFIN537_STAMP || BFIN527_EZKIT || BFIN548_EZKIT)
Robin Getzf16295e2007-08-03 18:07:17 +0800336 default "22" if BFIN533_BLUETECHNIX_CM
337 default "20" if BFIN537_BLUETECHNIX_CM
338 default "20" if BFIN561_BLUETECHNIX_CM
339 default "20" if BFIN561_EZKIT
Javier Herreroab472a02007-10-29 16:14:44 +0800340 default "16" if H8606_HVSISTEMAS
Robin Getzf16295e2007-08-03 18:07:17 +0800341 help
342 This controls the frequency of the on-chip PLL. This can be between 1 and 64.
343 PLL Frequency = (Crystal Frequency) * (this setting)
344
345choice
346 prompt "Core Clock Divider"
347 depends on BFIN_KERNEL_CLOCK
348 default CCLK_DIV_1
349 help
350 This sets the frequency of the core. It can be 1, 2, 4 or 8
351 Core Frequency = (PLL frequency) / (this setting)
352
353config CCLK_DIV_1
354 bool "1"
355
356config CCLK_DIV_2
357 bool "2"
358
359config CCLK_DIV_4
360 bool "4"
361
362config CCLK_DIV_8
363 bool "8"
364endchoice
365
366config SCLK_DIV
367 int "System Clock Divider"
368 depends on BFIN_KERNEL_CLOCK
369 range 1 15
370 default 5 if BFIN533_EZKIT
371 default 5 if BFIN533_STAMP
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800372 default 4 if (BFIN537_STAMP || BFIN527_EZKIT || BFIN548_EZKIT)
Robin Getzf16295e2007-08-03 18:07:17 +0800373 default 5 if BFIN533_BLUETECHNIX_CM
374 default 4 if BFIN537_BLUETECHNIX_CM
375 default 4 if BFIN561_BLUETECHNIX_CM
376 default 5 if BFIN561_EZKIT
Javier Herreroab472a02007-10-29 16:14:44 +0800377 default 3 if H8606_HVSISTEMAS
Robin Getzf16295e2007-08-03 18:07:17 +0800378 help
379 This sets the frequency of the system clock (including SDRAM or DDR).
380 This can be between 1 and 15
381 System Clock = (PLL frequency) / (this setting)
382
383#
384# Max & Min Speeds for various Chips
385#
386config MAX_VCO_HZ
387 int
388 default 600000000 if BF522
Mike Frysinger1545a112007-12-24 16:54:48 +0800389 default 400000000 if BF523
390 default 400000000 if BF524
Robin Getzf16295e2007-08-03 18:07:17 +0800391 default 600000000 if BF525
Mike Frysinger1545a112007-12-24 16:54:48 +0800392 default 400000000 if BF526
Robin Getzf16295e2007-08-03 18:07:17 +0800393 default 600000000 if BF527
394 default 400000000 if BF531
395 default 400000000 if BF532
396 default 750000000 if BF533
397 default 500000000 if BF534
398 default 400000000 if BF536
399 default 600000000 if BF537
Robin Getzf72eecb2007-11-21 16:29:20 +0800400 default 533333333 if BF538
401 default 533333333 if BF539
Robin Getzf16295e2007-08-03 18:07:17 +0800402 default 600000000 if BF542
Robin Getzf72eecb2007-11-21 16:29:20 +0800403 default 533333333 if BF544
Mike Frysinger1545a112007-12-24 16:54:48 +0800404 default 600000000 if BF547
405 default 600000000 if BF548
Robin Getzf72eecb2007-11-21 16:29:20 +0800406 default 533333333 if BF549
Robin Getzf16295e2007-08-03 18:07:17 +0800407 default 600000000 if BF561
408
409config MIN_VCO_HZ
410 int
411 default 50000000
412
413config MAX_SCLK_HZ
414 int
Robin Getzf72eecb2007-11-21 16:29:20 +0800415 default 133333333
Robin Getzf16295e2007-08-03 18:07:17 +0800416
417config MIN_SCLK_HZ
418 int
419 default 27000000
420
421comment "Kernel Timer/Scheduler"
422
423source kernel/Kconfig.hz
424
425comment "Memory Setup"
426
Bryan Wu1394f032007-05-06 14:50:22 -0700427config MEM_SIZE
428 int "SDRAM Memory Size in MBytes"
429 default 32 if BFIN533_EZKIT
Michael Hennerich59003142007-10-21 16:54:27 +0800430 default 64 if BFIN527_EZKIT
Bryan Wu1394f032007-05-06 14:50:22 -0700431 default 64 if BFIN537_STAMP
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800432 default 64 if BFIN548_EZKIT
Bryan Wu1394f032007-05-06 14:50:22 -0700433 default 64 if BFIN561_EZKIT
434 default 128 if BFIN533_STAMP
435 default 64 if PNAV10
Javier Herreroab472a02007-10-29 16:14:44 +0800436 default 32 if H8606_HVSISTEMAS
Bryan Wu1394f032007-05-06 14:50:22 -0700437
438config MEM_ADD_WIDTH
439 int "SDRAM Memory Address Width"
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800440 depends on (!BF54x)
Bryan Wu1394f032007-05-06 14:50:22 -0700441 default 9 if BFIN533_EZKIT
442 default 9 if BFIN561_EZKIT
Javier Herreroab472a02007-10-29 16:14:44 +0800443 default 9 if H8606_HVSISTEMAS
Michael Hennerich59003142007-10-21 16:54:27 +0800444 default 10 if BFIN527_EZKIT
Bryan Wu1394f032007-05-06 14:50:22 -0700445 default 10 if BFIN537_STAMP
446 default 11 if BFIN533_STAMP
447 default 10 if PNAV10
448
Sonic Zhang971d5bc2008-01-27 16:32:31 +0800449
450choice
451 prompt "DDR SDRAM Chip Type"
452 depends on BFIN548_EZKIT
453 default MEM_MT46V32M16_5B
454
455config MEM_MT46V32M16_6T
456 bool "MT46V32M16_6T"
457
458config MEM_MT46V32M16_5B
459 bool "MT46V32M16_5B"
460endchoice
461
Bryan Wu1394f032007-05-06 14:50:22 -0700462config ENET_FLASH_PIN
463 int "PF port/pin used for flash and ethernet sharing"
464 depends on (BFIN533_STAMP)
465 default 0
466 help
467 PF port/pin used for flash and ethernet sharing to allow other PF
468 pins to be used on other platforms without having to touch common
469 code.
470 For example: PF0 --> 0,PF1 --> 1,PF2 --> 2, etc.
471
472config BOOT_LOAD
473 hex "Kernel load address for booting"
474 default "0x1000"
Mike Frysinger2d8f1612007-08-05 14:06:16 +0800475 range 0x1000 0x20000000
Bryan Wu1394f032007-05-06 14:50:22 -0700476 help
477 This option allows you to set the load address of the kernel.
478 This can be useful if you are on a board which has a small amount
479 of memory or you wish to reserve some memory at the beginning of
480 the address space.
481
Mike Frysinger2d8f1612007-08-05 14:06:16 +0800482 Note that you need to keep this value above 4k (0x1000) as this
483 memory region is used to capture NULL pointer references as well
484 as some core kernel functions.
Bryan Wu1394f032007-05-06 14:50:22 -0700485
Mike Frysingerf0b5d122007-08-05 17:03:59 +0800486choice
487 prompt "Blackfin Exception Scratch Register"
488 default BFIN_SCRATCH_REG_RETN
489 help
490 Select the resource to reserve for the Exception handler:
491 - RETN: Non-Maskable Interrupt (NMI)
492 - RETE: Exception Return (JTAG/ICE)
493 - CYCLES: Performance counter
494
495 If you are unsure, please select "RETN".
496
497config BFIN_SCRATCH_REG_RETN
498 bool "RETN"
499 help
500 Use the RETN register in the Blackfin exception handler
501 as a stack scratch register. This means you cannot
502 safely use NMI on the Blackfin while running Linux, but
503 you can debug the system with a JTAG ICE and use the
504 CYCLES performance registers.
505
506 If you are unsure, please select "RETN".
507
508config BFIN_SCRATCH_REG_RETE
509 bool "RETE"
510 help
511 Use the RETE register in the Blackfin exception handler
512 as a stack scratch register. This means you cannot
513 safely use a JTAG ICE while debugging a Blackfin board,
514 but you can safely use the CYCLES performance registers
515 and the NMI.
516
517 If you are unsure, please select "RETN".
518
519config BFIN_SCRATCH_REG_CYCLES
520 bool "CYCLES"
521 help
522 Use the CYCLES register in the Blackfin exception handler
523 as a stack scratch register. This means you cannot
524 safely use the CYCLES performance registers on a Blackfin
525 board at anytime, but you can debug the system with a JTAG
526 ICE and use the NMI.
527
528 If you are unsure, please select "RETN".
529
530endchoice
531
Bryan Wu1394f032007-05-06 14:50:22 -0700532endmenu
533
534
535menu "Blackfin Kernel Optimizations"
536
Bryan Wu1394f032007-05-06 14:50:22 -0700537comment "Memory Optimizations"
538
539config I_ENTRY_L1
540 bool "Locate interrupt entry code in L1 Memory"
541 default y
542 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200543 If enabled, interrupt entry code (STORE/RESTORE CONTEXT) is linked
544 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700545
546config EXCPT_IRQ_SYSC_L1
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200547 bool "Locate entire ASM lowlevel exception / interrupt - Syscall and CPLB handler code in L1 Memory"
Bryan Wu1394f032007-05-06 14:50:22 -0700548 default y
549 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200550 If enabled, the entire ASM lowlevel exception and interrupt entry code
551 (STORE/RESTORE CONTEXT) is linked into L1 instruction memory.
552 (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700553
554config DO_IRQ_L1
555 bool "Locate frequently called do_irq dispatcher function in L1 Memory"
556 default y
557 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200558 If enabled, the frequently called do_irq dispatcher function is linked
559 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700560
561config CORE_TIMER_IRQ_L1
562 bool "Locate frequently called timer_interrupt() function in L1 Memory"
563 default y
564 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200565 If enabled, the frequently called timer_interrupt() function is linked
566 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700567
568config IDLE_L1
569 bool "Locate frequently idle function in L1 Memory"
570 default y
571 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200572 If enabled, the frequently called idle function is linked
573 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700574
575config SCHEDULE_L1
576 bool "Locate kernel schedule function in L1 Memory"
577 default y
578 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200579 If enabled, the frequently called kernel schedule is linked
580 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700581
582config ARITHMETIC_OPS_L1
583 bool "Locate kernel owned arithmetic functions in L1 Memory"
584 default y
585 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200586 If enabled, arithmetic functions are linked
587 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700588
589config ACCESS_OK_L1
590 bool "Locate access_ok function in L1 Memory"
591 default y
592 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200593 If enabled, the access_ok function is linked
594 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700595
596config MEMSET_L1
597 bool "Locate memset function in L1 Memory"
598 default y
599 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200600 If enabled, the memset function is linked
601 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700602
603config MEMCPY_L1
604 bool "Locate memcpy function in L1 Memory"
605 default y
606 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200607 If enabled, the memcpy function is linked
608 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700609
610config SYS_BFIN_SPINLOCK_L1
611 bool "Locate sys_bfin_spinlock function in L1 Memory"
612 default y
613 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200614 If enabled, sys_bfin_spinlock function is linked
615 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700616
617config IP_CHECKSUM_L1
618 bool "Locate IP Checksum function in L1 Memory"
619 default n
620 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200621 If enabled, the IP Checksum function is linked
622 into L1 instruction memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700623
624config CACHELINE_ALIGNED_L1
625 bool "Locate cacheline_aligned data to L1 Data Memory"
Michael Hennerich157cc5a2007-07-12 16:20:21 +0800626 default y if !BF54x
627 default n if BF54x
Bryan Wu1394f032007-05-06 14:50:22 -0700628 depends on !BF531
629 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200630 If enabled, cacheline_anligned data is linked
631 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700632
633config SYSCALL_TAB_L1
634 bool "Locate Syscall Table L1 Data Memory"
635 default n
636 depends on !BF531
637 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200638 If enabled, the Syscall LUT is linked
639 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700640
641config CPLB_SWITCH_TAB_L1
642 bool "Locate CPLB Switch Tables L1 Data Memory"
643 default n
644 depends on !BF531
645 help
Matt LaPlante01dd2fb2007-10-20 01:34:40 +0200646 If enabled, the CPLB Switch Tables are linked
647 into L1 data memory. (less latency)
Bryan Wu1394f032007-05-06 14:50:22 -0700648
649endmenu
650
651
652choice
653 prompt "Kernel executes from"
654 help
655 Choose the memory type that the kernel will be running in.
656
657config RAMKERNEL
658 bool "RAM"
659 help
660 The kernel will be resident in RAM when running.
661
662config ROMKERNEL
663 bool "ROM"
664 help
665 The kernel will be resident in FLASH/ROM when running.
666
667endchoice
668
669source "mm/Kconfig"
670
Bryan Wudb0fa202007-07-12 14:55:05 +0800671config LARGE_ALLOCS
672 bool "Allow allocating large blocks (> 1MB) of memory"
673 help
674 Allow the slab memory allocator to keep chains for very large
675 memory sizes - upto 32MB. You may need this if your system has
676 a lot of RAM, and you need to able to allocate very large
677 contiguous chunks. If unsure, say N.
678
Mike Frysinger780431e2007-10-21 23:37:54 +0800679config BFIN_GPTIMERS
680 tristate "Enable Blackfin General Purpose Timers API"
681 default n
682 help
683 Enable support for the General Purpose Timers API. If you
684 are unsure, say N.
685
686 To compile this driver as a module, choose M here: the module
687 will be called gptimers.ko.
688
Bryan Wu1394f032007-05-06 14:50:22 -0700689config BFIN_DMA_5XX
690 bool "Enable DMA Support"
Michael Hennerich59003142007-10-21 16:54:27 +0800691 depends on (BF52x || BF53x || BF561 || BF54x)
Bryan Wu1394f032007-05-06 14:50:22 -0700692 default y
693 help
694 DMA driver for BF5xx.
695
696choice
697 prompt "Uncached SDRAM region"
698 default DMA_UNCACHED_1M
Adrian Bunk247537b2007-09-26 20:02:52 +0200699 depends on BFIN_DMA_5XX
Bryan Wu1394f032007-05-06 14:50:22 -0700700config DMA_UNCACHED_2M
701 bool "Enable 2M DMA region"
702config DMA_UNCACHED_1M
703 bool "Enable 1M DMA region"
704config DMA_UNCACHED_NONE
705 bool "Disable DMA region"
706endchoice
707
708
709comment "Cache Support"
Robin Getz3bebca22007-10-10 23:55:26 +0800710config BFIN_ICACHE
Bryan Wu1394f032007-05-06 14:50:22 -0700711 bool "Enable ICACHE"
Robin Getz3bebca22007-10-10 23:55:26 +0800712config BFIN_DCACHE
Bryan Wu1394f032007-05-06 14:50:22 -0700713 bool "Enable DCACHE"
Robin Getz3bebca22007-10-10 23:55:26 +0800714config BFIN_DCACHE_BANKA
Bryan Wu1394f032007-05-06 14:50:22 -0700715 bool "Enable only 16k BankA DCACHE - BankB is SRAM"
Robin Getz3bebca22007-10-10 23:55:26 +0800716 depends on BFIN_DCACHE && !BF531
Bryan Wu1394f032007-05-06 14:50:22 -0700717 default n
Robin Getz3bebca22007-10-10 23:55:26 +0800718config BFIN_ICACHE_LOCK
719 bool "Enable Instruction Cache Locking"
Bryan Wu1394f032007-05-06 14:50:22 -0700720
721choice
722 prompt "Policy"
Robin Getz3bebca22007-10-10 23:55:26 +0800723 depends on BFIN_DCACHE
724 default BFIN_WB
725config BFIN_WB
Bryan Wu1394f032007-05-06 14:50:22 -0700726 bool "Write back"
727 help
728 Write Back Policy:
729 Cached data will be written back to SDRAM only when needed.
730 This can give a nice increase in performance, but beware of
731 broken drivers that do not properly invalidate/flush their
732 cache.
733
734 Write Through Policy:
735 Cached data will always be written back to SDRAM when the
736 cache is updated. This is a completely safe setting, but
737 performance is worse than Write Back.
738
739 If you are unsure of the options and you want to be safe,
740 then go with Write Through.
741
Robin Getz3bebca22007-10-10 23:55:26 +0800742config BFIN_WT
Bryan Wu1394f032007-05-06 14:50:22 -0700743 bool "Write through"
744 help
745 Write Back Policy:
746 Cached data will be written back to SDRAM only when needed.
747 This can give a nice increase in performance, but beware of
748 broken drivers that do not properly invalidate/flush their
749 cache.
750
751 Write Through Policy:
752 Cached data will always be written back to SDRAM when the
753 cache is updated. This is a completely safe setting, but
754 performance is worse than Write Back.
755
756 If you are unsure of the options and you want to be safe,
757 then go with Write Through.
758
759endchoice
760
761config L1_MAX_PIECE
762 int "Set the max L1 SRAM pieces"
763 default 16
764 help
765 Set the max memory pieces for the L1 SRAM allocation algorithm.
766 Min value is 16. Max value is 1024.
767
Bryan Wu1394f032007-05-06 14:50:22 -0700768comment "Asynchonous Memory Configuration"
769
Mike Frysingerddf416b2007-10-10 18:06:47 +0800770menu "EBIU_AMGCTL Global Control"
Bryan Wu1394f032007-05-06 14:50:22 -0700771config C_AMCKEN
772 bool "Enable CLKOUT"
773 default y
774
775config C_CDPRIO
776 bool "DMA has priority over core for ext. accesses"
Michael Hennerich9be343c2007-07-12 11:58:44 +0800777 depends on !BF54x
Bryan Wu1394f032007-05-06 14:50:22 -0700778 default n
779
780config C_B0PEN
781 depends on BF561
782 bool "Bank 0 16 bit packing enable"
783 default y
784
785config C_B1PEN
786 depends on BF561
787 bool "Bank 1 16 bit packing enable"
788 default y
789
790config C_B2PEN
791 depends on BF561
792 bool "Bank 2 16 bit packing enable"
793 default y
794
795config C_B3PEN
796 depends on BF561
797 bool "Bank 3 16 bit packing enable"
798 default n
799
800choice
801 prompt"Enable Asynchonous Memory Banks"
802 default C_AMBEN_ALL
803
804config C_AMBEN
805 bool "Disable All Banks"
806
807config C_AMBEN_B0
808 bool "Enable Bank 0"
809
810config C_AMBEN_B0_B1
811 bool "Enable Bank 0 & 1"
812
813config C_AMBEN_B0_B1_B2
814 bool "Enable Bank 0 & 1 & 2"
815
816config C_AMBEN_ALL
817 bool "Enable All Banks"
818endchoice
819endmenu
820
821menu "EBIU_AMBCTL Control"
822config BANK_0
823 hex "Bank 0"
824 default 0x7BB0
825
826config BANK_1
827 hex "Bank 1"
828 default 0x7BB0
829
830config BANK_2
831 hex "Bank 2"
832 default 0x7BB0
833
834config BANK_3
835 hex "Bank 3"
836 default 0x99B3
837endmenu
838
Sonic Zhange40540b2007-11-21 23:49:52 +0800839config EBIU_MBSCTLVAL
840 hex "EBIU Bank Select Control Register"
841 depends on BF54x
842 default 0
843
844config EBIU_MODEVAL
845 hex "Flash Memory Mode Control Register"
846 depends on BF54x
847 default 1
848
849config EBIU_FCTLVAL
850 hex "Flash Memory Bank Control Register"
851 depends on BF54x
852 default 6
Bryan Wu1394f032007-05-06 14:50:22 -0700853endmenu
854
855#############################################################################
856menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
857
858config PCI
859 bool "PCI support"
860 help
861 Support for PCI bus.
862
863source "drivers/pci/Kconfig"
864
865config HOTPLUG
866 bool "Support for hot-pluggable device"
867 help
868 Say Y here if you want to plug devices into your computer while
869 the system is running, and be able to use them quickly. In many
870 cases, the devices can likewise be unplugged at any time too.
871
872 One well known example of this is PCMCIA- or PC-cards, credit-card
873 size devices such as network cards, modems or hard drives which are
874 plugged into slots found on all modern laptop computers. Another
875 example, used on modern desktops as well as laptops, is USB.
876
877 Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
878 software (at <http://linux-hotplug.sourceforge.net/>) and install it.
879 Then your kernel will automatically call out to a user mode "policy
880 agent" (/sbin/hotplug) to load modules and set up software needed
881 to use devices as you hotplug them.
882
883source "drivers/pcmcia/Kconfig"
884
885source "drivers/pci/hotplug/Kconfig"
886
887endmenu
888
889menu "Executable file formats"
890
891source "fs/Kconfig.binfmt"
892
893endmenu
894
895menu "Power management options"
896source "kernel/power/Kconfig"
897
898choice
899 prompt "Select PM Wakeup Event Source"
900 default PM_WAKEUP_GPIO_BY_SIC_IWR
901 depends on PM
902 help
903 If you have a GPIO already configured as input with the corresponding PORTx_MASK
904 bit set - "Specify Wakeup Event by SIC_IWR value"
905
906config PM_WAKEUP_GPIO_BY_SIC_IWR
907 bool "Specify Wakeup Event by SIC_IWR value"
908config PM_WAKEUP_BY_GPIO
909 bool "Cause Wakeup Event by GPIO"
910config PM_WAKEUP_GPIO_API
911 bool "Configure Wakeup Event by PM GPIO API"
912
913endchoice
914
915config PM_WAKEUP_SIC_IWR
916 hex "Wakeup Events (SIC_IWR)"
917 depends on PM_WAKEUP_GPIO_BY_SIC_IWR
918 default 0x80000000 if (BF537 || BF536 || BF534)
919 default 0x100000 if (BF533 || BF532 || BF531)
Mike Frysinger1545a112007-12-24 16:54:48 +0800920 default 0x800000 if (BF54x)
921 default 0x800000 if (BF52x)
Bryan Wu1394f032007-05-06 14:50:22 -0700922
923config PM_WAKEUP_GPIO_NUMBER
924 int "Wakeup GPIO number"
925 range 0 47
926 depends on PM_WAKEUP_BY_GPIO
927 default 2 if BFIN537_STAMP
928
929choice
930 prompt "GPIO Polarity"
931 depends on PM_WAKEUP_BY_GPIO
932 default PM_WAKEUP_GPIO_POLAR_H
933config PM_WAKEUP_GPIO_POLAR_H
934 bool "Active High"
935config PM_WAKEUP_GPIO_POLAR_L
936 bool "Active Low"
937config PM_WAKEUP_GPIO_POLAR_EDGE_F
938 bool "Falling EDGE"
939config PM_WAKEUP_GPIO_POLAR_EDGE_R
940 bool "Rising EDGE"
941config PM_WAKEUP_GPIO_POLAR_EDGE_B
942 bool "Both EDGE"
943endchoice
944
945endmenu
946
Roy Huang24a07a12007-07-12 22:41:45 +0800947if (BF537 || BF533 || BF54x)
Bryan Wu1394f032007-05-06 14:50:22 -0700948
949menu "CPU Frequency scaling"
950
951source "drivers/cpufreq/Kconfig"
952
953config CPU_FREQ
954 bool
955 default n
956 help
957 If you want to enable this option, you should select the
958 DPMC driver from Character Devices.
959endmenu
960
961endif
962
963source "net/Kconfig"
964
965source "drivers/Kconfig"
966
967source "fs/Kconfig"
968
Mathieu Desnoyers09caded2007-10-18 23:41:05 -0700969source "kernel/Kconfig.instrumentation"
Bryan Wu1394f032007-05-06 14:50:22 -0700970
Mike Frysinger74ce8322007-11-21 23:50:49 +0800971source "arch/blackfin/Kconfig.debug"
Bryan Wu1394f032007-05-06 14:50:22 -0700972
973source "security/Kconfig"
974
975source "crypto/Kconfig"
976
977source "lib/Kconfig"