Blackfin arch: Fix CCLK and SCLK checks
[safe/jmp/linux-2.6] / arch / blackfin / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 mainmenu "uClinux/Blackfin (w/o MMU) Kernel Configuration"
7
8 config MMU
9         bool
10         default n
11
12 config FPU
13         bool
14         default n
15
16 config RWSEM_GENERIC_SPINLOCK
17         bool
18         default y
19
20 config RWSEM_XCHGADD_ALGORITHM
21         bool
22         default n
23
24 config BLACKFIN
25         bool
26         default y
27
28 config ZONE_DMA
29         bool
30         default y
31
32 config BFIN
33         bool
34         default y
35
36 config SEMAPHORE_SLEEPERS
37         bool
38         default y
39
40 config GENERIC_FIND_NEXT_BIT
41         bool
42         default y
43
44 config GENERIC_HWEIGHT
45         bool
46         default y
47
48 config GENERIC_HARDIRQS
49         bool
50         default y
51
52 config GENERIC_IRQ_PROBE
53         bool
54         default y
55
56 config GENERIC_TIME
57         bool
58         default n
59
60 config GENERIC_GPIO
61         bool
62         default y
63
64 config FORCE_MAX_ZONEORDER
65         int
66         default "14"
67
68 config GENERIC_CALIBRATE_DELAY
69         bool
70         default y
71
72 config IRQCHIP_DEMUX_GPIO
73         bool
74         depends on (BF53x || BF561 || BF54x)
75         default y
76
77 source "init/Kconfig"
78 source "kernel/Kconfig.preempt"
79
80 menu "Blackfin Processor Options"
81
82 comment "Processor and Board Settings"
83
84 choice
85         prompt "CPU"
86         default BF533
87
88 config BF531
89         bool "BF531"
90         help
91           BF531 Processor Support.
92
93 config BF532
94         bool "BF532"
95         help
96           BF532 Processor Support.
97
98 config BF533
99         bool "BF533"
100         help
101           BF533 Processor Support.
102
103 config BF534
104         bool "BF534"
105         help
106           BF534 Processor Support.
107
108 config BF536
109         bool "BF536"
110         help
111           BF536 Processor Support.
112
113 config BF537
114         bool "BF537"
115         help
116           BF537 Processor Support.
117
118 config BF542
119         bool "BF542"
120         help
121           BF542 Processor Support.
122
123 config BF544
124         bool "BF544"
125         help
126           BF544 Processor Support.
127
128 config BF548
129         bool "BF548"
130         help
131           BF548 Processor Support.
132
133 config BF549
134         bool "BF549"
135         help
136           BF549 Processor Support.
137
138 config BF561
139         bool "BF561"
140         help
141           Not Supported Yet - Work in progress - BF561 Processor Support.
142
143 endchoice
144
145 choice
146         prompt "Silicon Rev"
147         default BF_REV_0_2 if BF537
148         default BF_REV_0_3 if BF533
149         default BF_REV_0_0 if BF549
150
151 config BF_REV_0_0
152         bool "0.0"
153         depends on (BF549)
154
155 config BF_REV_0_2
156         bool "0.2"
157         depends on (BF537 || BF536 || BF534)
158
159 config BF_REV_0_3
160         bool "0.3"
161         depends on (BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531)
162
163 config BF_REV_0_4
164         bool "0.4"
165         depends on (BF561 || BF533 || BF532 || BF531)
166
167 config BF_REV_0_5
168         bool "0.5"
169         depends on (BF561 || BF533 || BF532 || BF531)
170
171 config BF_REV_ANY
172         bool "any"
173
174 config BF_REV_NONE
175         bool "none"
176
177 endchoice
178
179 config BF53x
180         bool
181         depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
182         default y
183
184 config BF54x
185         bool
186         depends on (BF542 || BF544 || BF548 || BF549)
187         default y
188
189 config BFIN_DUAL_CORE
190         bool
191         depends on (BF561)
192         default y
193
194 config BFIN_SINGLE_CORE
195         bool
196         depends on !BFIN_DUAL_CORE
197         default y
198
199 choice
200         prompt "System type"
201         default BFIN533_STAMP
202         help
203           Do NOT change the board here.  Please use the top level
204           configuration to ensure that all the other settings are
205           correct.
206
207 config BFIN533_EZKIT
208         bool "BF533-EZKIT"
209         depends on (BF533 || BF532 || BF531)
210         help
211           BF533-EZKIT-LITE board Support.
212
213 config  BFIN533_STAMP
214         bool "BF533-STAMP"
215         depends on (BF533 || BF532 || BF531)
216         help
217           BF533-STAMP board Support.
218
219 config BFIN537_STAMP
220         bool "BF537-STAMP"
221         depends on (BF537 || BF536 || BF534)
222         help
223           BF537-STAMP board Support.
224
225 config BFIN533_BLUETECHNIX_CM
226         bool "Bluetechnix CM-BF533"
227         depends on (BF533)
228         help
229           CM-BF533 support for EVAL- and DEV-Board.
230
231 config BFIN537_BLUETECHNIX_CM
232         bool "Bluetechnix CM-BF537"
233         depends on (BF537)
234         help
235           CM-BF537 support for EVAL- and DEV-Board.
236
237 config BFIN548_EZKIT
238         bool "BF548-EZKIT"
239         depends on (BF548 || BF549)
240           help
241           BFIN548-EZKIT board Support.
242
243 config BFIN561_BLUETECHNIX_CM
244         bool "Bluetechnix CM-BF561"
245         depends on (BF561)
246         help
247           CM-BF561 support for EVAL- and DEV-Board.
248
249 config BFIN561_EZKIT
250         bool "BF561-EZKIT"
251         depends on (BF561)
252         help
253           BF561-EZKIT-LITE board Support.
254
255 config BFIN561_TEPLA
256         bool "BF561-TEPLA"
257         depends on (BF561)
258         help
259          BF561-TEPLA board Support.
260
261 config PNAV10
262         bool "PNAV 1.0 board"
263         depends on (BF537)
264         help
265           PNAV 1.0 board Support.
266
267 config GENERIC_BOARD
268         bool "Custom"
269         depends on (BF537 || BF536 \
270                 || BF534 || BF561 || BF535 || BF533 || BF532 || BF531)
271         help
272           GENERIC or Custom board Support.
273
274 endchoice
275
276 config MEM_GENERIC_BOARD
277         bool
278         depends on GENERIC_BOARD
279         default y
280
281 config MEM_MT48LC64M4A2FB_7E
282         bool
283         depends on (BFIN533_STAMP)
284         default y
285
286 config MEM_MT48LC16M16A2TG_75
287         bool
288         depends on (BFIN533_EZKIT || BFIN561_EZKIT \
289                 || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM)
290         default y
291
292 config MEM_MT48LC32M8A2_75
293         bool
294         depends on (BFIN537_STAMP || PNAV10)
295         default y
296
297 config MEM_MT48LC8M32B2B5_7
298         bool
299         depends on (BFIN561_BLUETECHNIX_CM)
300         default y
301
302 config BFIN_SHARED_FLASH_ENET
303         bool
304         depends on (BFIN533_STAMP)
305         default y
306
307 source "arch/blackfin/mach-bf533/Kconfig"
308 source "arch/blackfin/mach-bf561/Kconfig"
309 source "arch/blackfin/mach-bf537/Kconfig"
310 source "arch/blackfin/mach-bf548/Kconfig"
311
312 menu "Board customizations"
313
314 config CMDLINE_BOOL
315         bool "Default bootloader kernel arguments"
316
317 config CMDLINE
318         string "Initial kernel command string"
319         depends on CMDLINE_BOOL
320         default "console=ttyBF0,57600"
321         help
322           If you don't have a boot loader capable of passing a command line string
323           to the kernel, you may specify one here. As a minimum, you should specify
324           the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
325
326 comment "Clock/PLL Setup"
327
328 config CLKIN_HZ
329         int "Crystal Frequency in Hz"
330         default "11059200" if BFIN533_STAMP
331         default "27000000" if BFIN533_EZKIT
332         default "25000000" if BFIN537_STAMP
333         default "30000000" if BFIN561_EZKIT
334         default "24576000" if PNAV10
335         help
336           The frequency of CLKIN crystal oscillator on the board in Hz.
337
338 config BFIN_KERNEL_CLOCK
339         bool "Re-program Clocks while Kernel boots?"
340         default n
341         help
342           This option decides if kernel clocks are re-programed from the
343           bootloader settings. If the clocks are not set, the SDRAM settings
344           are also not changed, and the Bootloader does 100% of the hardware
345           configuration.
346
347 config PLL_BYPASS
348         bool "Bypass PLL"
349         depends on BFIN_KERNEL_CLOCK
350         default n
351
352 config CLKIN_HALF
353         bool "Half Clock In"
354         depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
355         default n
356         help
357           If this is set the clock will be divided by 2, before it goes to the PLL.
358
359 config VCO_MULT
360         int "VCO Multiplier"
361         depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
362         range 1 64
363         default "22" if BFIN533_EZKIT
364         default "45" if BFIN533_STAMP
365         default "20" if BFIN537_STAMP
366         default "22" if BFIN533_BLUETECHNIX_CM
367         default "20" if BFIN537_BLUETECHNIX_CM
368         default "20" if BFIN561_BLUETECHNIX_CM
369         default "20" if BFIN561_EZKIT
370         help
371           This controls the frequency of the on-chip PLL. This can be between 1 and 64.
372           PLL Frequency = (Crystal Frequency) * (this setting)
373
374 choice
375         prompt "Core Clock Divider"
376         depends on BFIN_KERNEL_CLOCK
377         default CCLK_DIV_1
378         help
379           This sets the frequency of the core. It can be 1, 2, 4 or 8
380           Core Frequency = (PLL frequency) / (this setting)
381
382 config CCLK_DIV_1
383         bool "1"
384
385 config CCLK_DIV_2
386         bool "2"
387
388 config CCLK_DIV_4
389         bool "4"
390
391 config CCLK_DIV_8
392         bool "8"
393 endchoice
394
395 config SCLK_DIV
396         int "System Clock Divider"
397         depends on BFIN_KERNEL_CLOCK
398         range 1 15
399         default 5 if BFIN533_EZKIT
400         default 5 if BFIN533_STAMP
401         default 4 if BFIN537_STAMP
402         default 5 if BFIN533_BLUETECHNIX_CM
403         default 4 if BFIN537_BLUETECHNIX_CM
404         default 4 if BFIN561_BLUETECHNIX_CM
405         default 5 if BFIN561_EZKIT
406         help
407           This sets the frequency of the system clock (including SDRAM or DDR).
408           This can be between 1 and 15
409           System Clock = (PLL frequency) / (this setting)
410
411 #
412 # Max & Min Speeds for various Chips
413 #
414 config MAX_VCO_HZ
415         int
416         default 600000000 if BF522
417         default 600000000 if BF525
418         default 600000000 if BF527
419         default 400000000 if BF531
420         default 400000000 if BF532
421         default 750000000 if BF533
422         default 500000000 if BF534
423         default 400000000 if BF536
424         default 600000000 if BF537
425         default 533000000 if BF538
426         default 533000000 if BF539
427         default 600000000 if BF542
428         default 533000000 if BF544
429         default 533000000 if BF549
430         default 600000000 if BF561
431
432 config MIN_VCO_HZ
433         int
434         default 50000000
435
436 config MAX_SCLK_HZ
437         int
438         default 133000000
439
440 config MIN_SCLK_HZ
441         int
442         default 27000000
443
444 comment "Kernel Timer/Scheduler"
445
446 source kernel/Kconfig.hz
447
448 comment "Memory Setup"
449
450 config MEM_SIZE
451         int "SDRAM Memory Size in MBytes"
452         default  32 if BFIN533_EZKIT
453         default  64 if BFIN537_STAMP
454         default  64 if BFIN561_EZKIT
455         default 128 if BFIN533_STAMP
456         default  64 if PNAV10
457
458 config MEM_ADD_WIDTH
459         int "SDRAM Memory Address Width"
460         default  9 if BFIN533_EZKIT
461         default  9 if BFIN561_EZKIT
462         default 10 if BFIN537_STAMP
463         default 11 if BFIN533_STAMP
464         default 10 if PNAV10
465
466 config ENET_FLASH_PIN
467         int "PF port/pin used for flash and ethernet sharing"
468         depends on (BFIN533_STAMP)
469         default  0
470         help
471           PF port/pin used for flash and ethernet sharing to allow other PF
472           pins to be used on other platforms without having to touch common
473           code.
474           For example: PF0 --> 0,PF1 --> 1,PF2 --> 2, etc.
475
476 config BOOT_LOAD
477         hex "Kernel load address for booting"
478         default "0x1000"
479         help
480           This option allows you to set the load address of the kernel.
481           This can be useful if you are on a board which has a small amount
482           of memory or you wish to reserve some memory at the beginning of
483           the address space.
484
485           Note that you generally want to keep this value at or above 4k
486           (0x1000) as this will allow the kernel to capture NULL pointer
487           references.
488
489 comment "LED Status Indicators"
490         depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
491
492 config BFIN_ALIVE_LED
493         bool "Enable Board Alive"
494         depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
495         default n
496         help
497           Blink the LEDs you select when the kernel is running.  Helps detect
498           a hung kernel.
499
500 config BFIN_ALIVE_LED_NUM
501         int "LED"
502         depends on BFIN_ALIVE_LED
503         range 1 3 if BFIN533_STAMP
504         default "3" if BFIN533_STAMP
505         help
506           Select the LED (marked on the board) for you to blink.
507
508 config BFIN_IDLE_LED
509         bool "Enable System Load/Idle LED"
510         depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
511         default n
512         help
513           Blinks the LED you select when to determine kernel load.
514
515 config BFIN_IDLE_LED_NUM
516         int "LED"
517         depends on BFIN_IDLE_LED
518         range 1 3 if BFIN533_STAMP
519         default "2" if BFIN533_STAMP
520         help
521           Select the LED (marked on the board) for you to blink.
522
523 #
524 # Sorry - but you need to put the hex address here -
525 #
526
527 # Flag Data register
528 config BFIN_ALIVE_LED_PORT
529         hex
530         default 0xFFC00700 if (BFIN533_STAMP)
531
532 # Peripheral Flag Direction Register
533 config BFIN_ALIVE_LED_DPORT
534         hex
535         default 0xFFC00730 if (BFIN533_STAMP)
536
537 config BFIN_ALIVE_LED_PIN
538         hex
539         default 0x04 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 1)
540         default 0x08 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 2)
541         default 0x10 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 3)
542
543 config BFIN_IDLE_LED_PORT
544         hex
545         default 0xFFC00700 if (BFIN533_STAMP)
546
547 # Peripheral Flag Direction Register
548 config BFIN_IDLE_LED_DPORT
549         hex
550         default 0xFFC00730 if (BFIN533_STAMP)
551
552 config BFIN_IDLE_LED_PIN
553         hex
554         default 0x04 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 1)
555         default 0x08 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 2)
556         default 0x10 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 3)
557
558 endmenu
559
560
561 menu "Blackfin Kernel Optimizations"
562
563 comment "Memory Optimizations"
564
565 config I_ENTRY_L1
566         bool "Locate interrupt entry code in L1 Memory"
567         default y
568         help
569           If enabled interrupt entry code (STORE/RESTORE CONTEXT) is linked
570           into L1 instruction memory.(less latency)
571
572 config EXCPT_IRQ_SYSC_L1
573         bool "Locate entire ASM lowlevel excepetion / interrupt - Syscall and CPLB handler code in L1 Memory"
574         default y
575         help
576           If enabled entire ASM lowlevel exception and interrupt entry code (STORE/RESTORE CONTEXT) is linked
577           into L1 instruction memory.(less latency)
578
579 config DO_IRQ_L1
580         bool "Locate frequently called do_irq dispatcher function in L1 Memory"
581         default y
582         help
583           If enabled frequently called do_irq dispatcher function is linked
584           into L1 instruction memory.(less latency)
585
586 config CORE_TIMER_IRQ_L1
587         bool "Locate frequently called timer_interrupt() function in L1 Memory"
588         default y
589         help
590           If enabled frequently called timer_interrupt() function is linked
591           into L1 instruction memory.(less latency)
592
593 config IDLE_L1
594         bool "Locate frequently idle function in L1 Memory"
595         default y
596         help
597           If enabled frequently called idle function is linked
598           into L1 instruction memory.(less latency)
599
600 config SCHEDULE_L1
601         bool "Locate kernel schedule function in L1 Memory"
602         default y
603         help
604           If enabled frequently called kernel schedule is linked
605           into L1 instruction memory.(less latency)
606
607 config ARITHMETIC_OPS_L1
608         bool "Locate kernel owned arithmetic functions in L1 Memory"
609         default y
610         help
611           If enabled arithmetic functions are linked
612           into L1 instruction memory.(less latency)
613
614 config ACCESS_OK_L1
615         bool "Locate access_ok function in L1 Memory"
616         default y
617         help
618           If enabled access_ok function is linked
619           into L1 instruction memory.(less latency)
620
621 config MEMSET_L1
622         bool "Locate memset function in L1 Memory"
623         default y
624         help
625           If enabled memset function is linked
626           into L1 instruction memory.(less latency)
627
628 config MEMCPY_L1
629         bool "Locate memcpy function in L1 Memory"
630         default y
631         help
632           If enabled memcpy function is linked
633           into L1 instruction memory.(less latency)
634
635 config SYS_BFIN_SPINLOCK_L1
636         bool "Locate sys_bfin_spinlock function in L1 Memory"
637         default y
638         help
639           If enabled sys_bfin_spinlock function is linked
640           into L1 instruction memory.(less latency)
641
642 config IP_CHECKSUM_L1
643         bool "Locate IP Checksum function in L1 Memory"
644         default n
645         help
646           If enabled IP Checksum function is linked
647           into L1 instruction memory.(less latency)
648
649 config CACHELINE_ALIGNED_L1
650         bool "Locate cacheline_aligned data to L1 Data Memory"
651         default y if !BF54x
652         default n if BF54x
653         depends on !BF531
654         help
655           If enabled cacheline_anligned data is linked
656           into L1 data memory.(less latency)
657
658 config SYSCALL_TAB_L1
659         bool "Locate Syscall Table L1 Data Memory"
660         default n
661         depends on !BF531
662         help
663           If enabled the Syscall LUT is linked
664           into L1 data memory.(less latency)
665
666 config CPLB_SWITCH_TAB_L1
667         bool "Locate CPLB Switch Tables L1 Data Memory"
668         default n
669         depends on !BF531
670         help
671           If enabled the CPLB Switch Tables are linked
672           into L1 data memory.(less latency)
673
674 endmenu
675
676
677 choice
678         prompt "Kernel executes from"
679         help
680           Choose the memory type that the kernel will be running in.
681
682 config RAMKERNEL
683         bool "RAM"
684         help
685           The kernel will be resident in RAM when running.
686
687 config ROMKERNEL
688         bool "ROM"
689         help
690           The kernel will be resident in FLASH/ROM when running.
691
692 endchoice
693
694 source "mm/Kconfig"
695
696 config LARGE_ALLOCS
697         bool "Allow allocating large blocks (> 1MB) of memory"
698         help
699           Allow the slab memory allocator to keep chains for very large
700           memory sizes - upto 32MB. You may need this if your system has
701           a lot of RAM, and you need to able to allocate very large
702           contiguous chunks. If unsure, say N.
703
704 config BFIN_DMA_5XX
705         bool "Enable DMA Support"
706         depends on (BF533 || BF532 || BF531 || BF537 || BF536 || BF534 || BF561 || BF54x)
707         default y
708         help
709           DMA driver for BF5xx.
710
711 choice
712         prompt "Uncached SDRAM region"
713         default DMA_UNCACHED_1M
714         depends BFIN_DMA_5XX
715 config DMA_UNCACHED_2M
716         bool "Enable 2M DMA region"
717 config DMA_UNCACHED_1M
718         bool "Enable 1M DMA region"
719 config DMA_UNCACHED_NONE
720         bool "Disable DMA region"
721 endchoice
722
723
724 comment "Cache Support"
725 config BLKFIN_CACHE
726         bool "Enable ICACHE"
727 config BLKFIN_DCACHE
728         bool "Enable DCACHE"
729 config BLKFIN_DCACHE_BANKA
730         bool "Enable only 16k BankA DCACHE - BankB is SRAM"
731         depends on BLKFIN_DCACHE && !BF531
732         default n
733 config BLKFIN_CACHE_LOCK
734         bool "Enable Cache Locking"
735
736 choice
737         prompt "Policy"
738         depends on BLKFIN_DCACHE
739         default BLKFIN_WB
740 config BLKFIN_WB
741         bool "Write back"
742         help
743           Write Back Policy:
744             Cached data will be written back to SDRAM only when needed.
745             This can give a nice increase in performance, but beware of
746             broken drivers that do not properly invalidate/flush their
747             cache.
748
749           Write Through Policy:
750             Cached data will always be written back to SDRAM when the
751             cache is updated.  This is a completely safe setting, but
752             performance is worse than Write Back.
753
754           If you are unsure of the options and you want to be safe,
755           then go with Write Through.
756
757 config BLKFIN_WT
758         bool "Write through"
759         help
760           Write Back Policy:
761             Cached data will be written back to SDRAM only when needed.
762             This can give a nice increase in performance, but beware of
763             broken drivers that do not properly invalidate/flush their
764             cache.
765
766           Write Through Policy:
767             Cached data will always be written back to SDRAM when the
768             cache is updated.  This is a completely safe setting, but
769             performance is worse than Write Back.
770
771           If you are unsure of the options and you want to be safe,
772           then go with Write Through.
773
774 endchoice
775
776 config L1_MAX_PIECE
777         int "Set the max L1 SRAM pieces"
778         default 16
779         help
780           Set the max memory pieces for the L1 SRAM allocation algorithm.
781           Min value is 16. Max value is 1024.
782
783 comment "Asynchonous Memory Configuration"
784
785 menu "EBIU_AMBCTL Global Control"
786 config C_AMCKEN
787         bool "Enable CLKOUT"
788         default y
789
790 config C_CDPRIO
791         bool "DMA has priority over core for ext. accesses"
792         depends on !BF54x
793         default n
794
795 config C_B0PEN
796         depends on BF561
797         bool "Bank 0 16 bit packing enable"
798         default y
799
800 config C_B1PEN
801         depends on BF561
802         bool "Bank 1 16 bit packing enable"
803         default y
804
805 config C_B2PEN
806         depends on BF561
807         bool "Bank 2 16 bit packing enable"
808         default y
809
810 config C_B3PEN
811         depends on BF561
812         bool "Bank 3 16 bit packing enable"
813         default n
814
815 choice
816         prompt"Enable Asynchonous Memory Banks"
817         default C_AMBEN_ALL
818
819 config C_AMBEN
820         bool "Disable All Banks"
821
822 config C_AMBEN_B0
823         bool "Enable Bank 0"
824
825 config C_AMBEN_B0_B1
826         bool "Enable Bank 0 & 1"
827
828 config C_AMBEN_B0_B1_B2
829         bool "Enable Bank 0 & 1 & 2"
830
831 config C_AMBEN_ALL
832         bool "Enable All Banks"
833 endchoice
834 endmenu
835
836 menu "EBIU_AMBCTL Control"
837 config BANK_0
838         hex "Bank 0"
839         default 0x7BB0
840
841 config BANK_1
842         hex "Bank 1"
843         default 0x7BB0
844
845 config BANK_2
846         hex "Bank 2"
847         default 0x7BB0
848
849 config BANK_3
850         hex "Bank 3"
851         default 0x99B3
852 endmenu
853
854 endmenu
855
856 #############################################################################
857 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
858
859 config PCI
860         bool "PCI support"
861         help
862           Support for PCI bus.
863
864 source "drivers/pci/Kconfig"
865
866 config HOTPLUG
867         bool "Support for hot-pluggable device"
868           help
869           Say Y here if you want to plug devices into your computer while
870           the system is running, and be able to use them quickly.  In many
871           cases, the devices can likewise be unplugged at any time too.
872
873           One well known example of this is PCMCIA- or PC-cards, credit-card
874           size devices such as network cards, modems or hard drives which are
875           plugged into slots found on all modern laptop computers.  Another
876           example, used on modern desktops as well as laptops, is USB.
877
878           Enable HOTPLUG and KMOD, and build a modular kernel.  Get agent
879           software (at <http://linux-hotplug.sourceforge.net/>) and install it.
880           Then your kernel will automatically call out to a user mode "policy
881           agent" (/sbin/hotplug) to load modules and set up software needed
882           to use devices as you hotplug them.
883
884 source "drivers/pcmcia/Kconfig"
885
886 source "drivers/pci/hotplug/Kconfig"
887
888 endmenu
889
890 menu "Executable file formats"
891
892 source "fs/Kconfig.binfmt"
893
894 endmenu
895
896 menu "Power management options"
897 source "kernel/power/Kconfig"
898
899 choice
900         prompt "Select PM Wakeup Event Source"
901         default PM_WAKEUP_GPIO_BY_SIC_IWR
902         depends on PM
903         help
904           If you have a GPIO already configured as input with the corresponding PORTx_MASK
905           bit set - "Specify Wakeup Event by SIC_IWR value"
906
907 config PM_WAKEUP_GPIO_BY_SIC_IWR
908         bool "Specify Wakeup Event by SIC_IWR value"
909 config PM_WAKEUP_BY_GPIO
910         bool "Cause Wakeup Event by GPIO"
911 config PM_WAKEUP_GPIO_API
912         bool "Configure Wakeup Event by PM GPIO API"
913
914 endchoice
915
916 config PM_WAKEUP_SIC_IWR
917         hex "Wakeup Events (SIC_IWR)"
918         depends on PM_WAKEUP_GPIO_BY_SIC_IWR
919         default 0x80000000 if (BF537 || BF536 || BF534)
920         default 0x100000 if (BF533 || BF532 || BF531)
921
922 config PM_WAKEUP_GPIO_NUMBER
923         int "Wakeup GPIO number"
924         range 0 47
925         depends on PM_WAKEUP_BY_GPIO
926         default 2 if BFIN537_STAMP
927
928 choice
929         prompt "GPIO Polarity"
930         depends on PM_WAKEUP_BY_GPIO
931         default PM_WAKEUP_GPIO_POLAR_H
932 config  PM_WAKEUP_GPIO_POLAR_H
933         bool "Active High"
934 config  PM_WAKEUP_GPIO_POLAR_L
935         bool "Active Low"
936 config  PM_WAKEUP_GPIO_POLAR_EDGE_F
937         bool "Falling EDGE"
938 config  PM_WAKEUP_GPIO_POLAR_EDGE_R
939         bool "Rising EDGE"
940 config  PM_WAKEUP_GPIO_POLAR_EDGE_B
941         bool "Both EDGE"
942 endchoice
943
944 endmenu
945
946 if (BF537 || BF533 || BF54x)
947
948 menu "CPU Frequency scaling"
949
950 source "drivers/cpufreq/Kconfig"
951
952 config CPU_FREQ
953         bool
954         default n
955         help
956           If you want to enable this option, you should select the
957           DPMC driver from Character Devices.
958 endmenu
959
960 endif
961
962 source "net/Kconfig"
963
964 source "drivers/Kconfig"
965
966 source "fs/Kconfig"
967
968 source "arch/blackfin/oprofile/Kconfig"
969
970 menu "Kernel hacking"
971
972 source "lib/Kconfig.debug"
973
974 config DEBUG_HWERR
975         bool "Hardware error interrupt debugging"
976         depends on DEBUG_KERNEL
977         help
978           When enabled, the hardware error interrupt is never disabled, and
979           will happen immediately when an error condition occurs.  This comes
980           at a slight cost in code size, but is necessary if you are getting
981           hardware error interrupts and need to know where they are coming
982           from.
983
984 config DEBUG_ICACHE_CHECK
985         bool "Check Instruction cache coherancy"
986         depends on DEBUG_KERNEL
987         depends on DEBUG_HWERR
988         help
989           Say Y here if you are getting wierd unexplained errors. This will
990           ensure that icache is what SDRAM says it should be, by doing a
991           byte wise comparision between SDRAM and instruction cache. This
992           also relocates the irq_panic() function to L1 memory, (which is
993           un-cached).
994
995 config DEBUG_KERNEL_START
996         bool "Debug Kernel Startup"
997         depends on DEBUG_KERNEL
998         help
999           Say Y here to put in an mini-execption handler before the kernel
1000           replaces the bootloader exception handler. This will stop kernels
1001           from dieing at startup with no visible error messages.
1002
1003 config DEBUG_SERIAL_EARLY_INIT
1004         bool "Initialize serial driver early"
1005         default n
1006         depends on SERIAL_BFIN
1007         help
1008           Say Y here if you want to get kernel output early when kernel
1009           crashes before the normal console initialization. If this option
1010           is enable, console output will always go to the ttyBF0, no matter
1011           what kernel boot paramters you set.
1012
1013 config DEBUG_HUNT_FOR_ZERO
1014         bool "Catch NULL pointer reads/writes"
1015         default y
1016         help
1017           Say Y here to catch reads/writes to anywhere in the memory range
1018           from 0x0000 - 0x0FFF (the first 4k) of memory.  This is useful in
1019           catching common programming errors such as NULL pointer dereferences.
1020
1021           Misbehaving applications will be killed (generate a SEGV) while the
1022           kernel will trigger a panic.
1023
1024           Enabling this option will take up an extra entry in CPLB table.
1025           Otherwise, there is no extra overhead.
1026
1027 config DEBUG_BFIN_NO_KERN_HWTRACE
1028         bool "Trace user apps (turn off hwtrace in kernel)"
1029         default n
1030         help
1031           Some pieces of the kernel contain a lot of flow changes which can
1032           quickly fill up the hardware trace buffer.  When debugging crashes,
1033           the hardware trace may indicate that the problem lies in kernel
1034           space when in reality an application is buggy.
1035
1036           Say Y here to disable hardware tracing in some known "jumpy" pieces
1037           of code so that the trace buffer will extend further back.
1038
1039 config DUAL_CORE_TEST_MODULE
1040         tristate "Dual Core Test Module"
1041         depends on (BF561)
1042         default n
1043         help
1044           Say Y here to build-in dual core test module for dual core test.
1045
1046 config CPLB_INFO
1047         bool "Display the CPLB information"
1048         help
1049           Display the CPLB information.
1050
1051 config ACCESS_CHECK
1052         bool "Check the user pointer address"
1053         default y
1054         help
1055           Usually the pointer transfer from user space is checked to see if its
1056           address is in the kernel space.
1057
1058           Say N here to disable that check to improve the performance.
1059
1060 endmenu
1061
1062 source "security/Kconfig"
1063
1064 source "crypto/Kconfig"
1065
1066 source "lib/Kconfig"