Blackfin arch: Initial patch to add earlyprintk support
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / arch / blackfin / Kconfig
blobcc789b988f3a55bea8f745c3b31a20eabdbae3c6
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "uClinux/Blackfin (w/o MMU) Kernel Configuration"
8 config MMU
9         bool
10         default n
12 config FPU
13         bool
14         default n
16 config RWSEM_GENERIC_SPINLOCK
17         bool
18         default y
20 config RWSEM_XCHGADD_ALGORITHM
21         bool
22         default n
24 config BLACKFIN
25         bool
26         default y
28 config ZONE_DMA
29         bool
30         default y
32 config BFIN
33         bool
34         default y
36 config SEMAPHORE_SLEEPERS
37         bool
38         default y
40 config GENERIC_FIND_NEXT_BIT
41         bool
42         default y
44 config GENERIC_HWEIGHT
45         bool
46         default y
48 config GENERIC_HARDIRQS
49         bool
50         default y
52 config GENERIC_IRQ_PROBE
53         bool
54         default y
56 config GENERIC_TIME
57         bool
58         default n
60 config GENERIC_GPIO
61         bool
62         default y
64 config FORCE_MAX_ZONEORDER
65         int
66         default "14"
68 config GENERIC_CALIBRATE_DELAY
69         bool
70         default y
72 config IRQCHIP_DEMUX_GPIO
73         bool
74         depends on (BF53x || BF561 || BF54x)
75         default y
77 source "init/Kconfig"
78 source "kernel/Kconfig.preempt"
80 menu "Blackfin Processor Options"
82 comment "Processor and Board Settings"
84 choice
85         prompt "CPU"
86         default BF533
88 config BF531
89         bool "BF531"
90         help
91           BF531 Processor Support.
93 config BF532
94         bool "BF532"
95         help
96           BF532 Processor Support.
98 config BF533
99         bool "BF533"
100         help
101           BF533 Processor Support.
103 config BF534
104         bool "BF534"
105         help
106           BF534 Processor Support.
108 config BF536
109         bool "BF536"
110         help
111           BF536 Processor Support.
113 config BF537
114         bool "BF537"
115         help
116           BF537 Processor Support.
118 config BF542
119         bool "BF542"
120         help
121           BF542 Processor Support.
123 config BF544
124         bool "BF544"
125         help
126           BF544 Processor Support.
128 config BF548
129         bool "BF548"
130         help
131           BF548 Processor Support.
133 config BF549
134         bool "BF549"
135         help
136           BF549 Processor Support.
138 config BF561
139         bool "BF561"
140         help
141           Not Supported Yet - Work in progress - BF561 Processor Support.
143 endchoice
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
151 config BF_REV_0_0
152         bool "0.0"
153         depends on (BF549)
155 config BF_REV_0_2
156         bool "0.2"
157         depends on (BF537 || BF536 || BF534)
159 config BF_REV_0_3
160         bool "0.3"
161         depends on (BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531)
163 config BF_REV_0_4
164         bool "0.4"
165         depends on (BF561 || BF533 || BF532 || BF531)
167 config BF_REV_0_5
168         bool "0.5"
169         depends on (BF561 || BF533 || BF532 || BF531)
171 config BF_REV_ANY
172         bool "any"
174 config BF_REV_NONE
175         bool "none"
177 endchoice
179 config BF53x
180         bool
181         depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
182         default y
184 config BF54x
185         bool
186         depends on (BF542 || BF544 || BF548 || BF549)
187         default y
189 config BFIN_DUAL_CORE
190         bool
191         depends on (BF561)
192         default y
194 config BFIN_SINGLE_CORE
195         bool
196         depends on !BFIN_DUAL_CORE
197         default y
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.
207 config BFIN533_EZKIT
208         bool "BF533-EZKIT"
209         depends on (BF533 || BF532 || BF531)
210         help
211           BF533-EZKIT-LITE board Support.
213 config  BFIN533_STAMP
214         bool "BF533-STAMP"
215         depends on (BF533 || BF532 || BF531)
216         help
217           BF533-STAMP board Support.
219 config BFIN537_STAMP
220         bool "BF537-STAMP"
221         depends on (BF537 || BF536 || BF534)
222         help
223           BF537-STAMP board Support.
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.
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.
237 config BFIN548_EZKIT
238         bool "BF548-EZKIT"
239         depends on (BF548 || BF549)
240           help
241           BFIN548-EZKIT board Support.
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.
249 config BFIN561_EZKIT
250         bool "BF561-EZKIT"
251         depends on (BF561)
252         help
253           BF561-EZKIT-LITE board Support.
255 config BFIN561_TEPLA
256         bool "BF561-TEPLA"
257         depends on (BF561)
258         help
259          BF561-TEPLA board Support.
261 config PNAV10
262         bool "PNAV 1.0 board"
263         depends on (BF537)
264         help
265           PNAV 1.0 board Support.
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.
274 endchoice
276 config MEM_GENERIC_BOARD
277         bool
278         depends on GENERIC_BOARD
279         default y
281 config MEM_MT48LC64M4A2FB_7E
282         bool
283         depends on (BFIN533_STAMP)
284         default y
286 config MEM_MT48LC16M16A2TG_75
287         bool
288         depends on (BFIN533_EZKIT || BFIN561_EZKIT \
289                 || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM)
290         default y
292 config MEM_MT48LC32M8A2_75
293         bool
294         depends on (BFIN537_STAMP || PNAV10)
295         default y
297 config MEM_MT48LC8M32B2B5_7
298         bool
299         depends on (BFIN561_BLUETECHNIX_CM)
300         default y
302 config BFIN_SHARED_FLASH_ENET
303         bool
304         depends on (BFIN533_STAMP)
305         default y
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"
312 menu "Board customizations"
314 config CMDLINE_BOOL
315         bool "Default bootloader kernel arguments"
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).
326 comment "Clock/PLL Setup"
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.
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.
347 config PLL_BYPASS
348         bool "Bypass PLL"
349         depends on BFIN_KERNEL_CLOCK
350         default n
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.
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)
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)
382 config CCLK_DIV_1
383         bool "1"
385 config CCLK_DIV_2
386         bool "2"
388 config CCLK_DIV_4
389         bool "4"
391 config CCLK_DIV_8
392         bool "8"
393 endchoice
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)
412 # Max & Min Speeds for various Chips
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
432 config MIN_VCO_HZ
433         int
434         default 50000000
436 config MAX_SCLK_HZ
437         int
438         default 133000000
440 config MIN_SCLK_HZ
441         int
442         default 27000000
444 comment "Kernel Timer/Scheduler"
446 source kernel/Kconfig.hz
448 comment "Memory Setup"
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
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
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.
476 config BOOT_LOAD
477         hex "Kernel load address for booting"
478         default "0x1000"
479         range 0x1000 0x20000000
480         help
481           This option allows you to set the load address of the kernel.
482           This can be useful if you are on a board which has a small amount
483           of memory or you wish to reserve some memory at the beginning of
484           the address space.
486           Note that you need to keep this value above 4k (0x1000) as this
487           memory region is used to capture NULL pointer references as well
488           as some core kernel functions.
490 comment "LED Status Indicators"
491         depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
493 config BFIN_ALIVE_LED
494         bool "Enable Board Alive"
495         depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
496         default n
497         help
498           Blink the LEDs you select when the kernel is running.  Helps detect
499           a hung kernel.
501 config BFIN_ALIVE_LED_NUM
502         int "LED"
503         depends on BFIN_ALIVE_LED
504         range 1 3 if BFIN533_STAMP
505         default "3" if BFIN533_STAMP
506         help
507           Select the LED (marked on the board) for you to blink.
509 config BFIN_IDLE_LED
510         bool "Enable System Load/Idle LED"
511         depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
512         default n
513         help
514           Blinks the LED you select when to determine kernel load.
516 config BFIN_IDLE_LED_NUM
517         int "LED"
518         depends on BFIN_IDLE_LED
519         range 1 3 if BFIN533_STAMP
520         default "2" if BFIN533_STAMP
521         help
522           Select the LED (marked on the board) for you to blink.
524 choice
525         prompt "Blackfin Exception Scratch Register"
526         default BFIN_SCRATCH_REG_RETN
527         help
528           Select the resource to reserve for the Exception handler:
529             - RETN: Non-Maskable Interrupt (NMI)
530             - RETE: Exception Return (JTAG/ICE)
531             - CYCLES: Performance counter
533           If you are unsure, please select "RETN".
535 config BFIN_SCRATCH_REG_RETN
536         bool "RETN"
537         help
538           Use the RETN register in the Blackfin exception handler
539           as a stack scratch register.  This means you cannot
540           safely use NMI on the Blackfin while running Linux, but
541           you can debug the system with a JTAG ICE and use the
542           CYCLES performance registers.
544           If you are unsure, please select "RETN".
546 config BFIN_SCRATCH_REG_RETE
547         bool "RETE"
548         help
549           Use the RETE register in the Blackfin exception handler
550           as a stack scratch register.  This means you cannot
551           safely use a JTAG ICE while debugging a Blackfin board,
552           but you can safely use the CYCLES performance registers
553           and the NMI.
555           If you are unsure, please select "RETN".
557 config BFIN_SCRATCH_REG_CYCLES
558         bool "CYCLES"
559         help
560           Use the CYCLES register in the Blackfin exception handler
561           as a stack scratch register.  This means you cannot
562           safely use the CYCLES performance registers on a Blackfin
563           board at anytime, but you can debug the system with a JTAG
564           ICE and use the NMI.
566           If you are unsure, please select "RETN".
568 endchoice
571 # Sorry - but you need to put the hex address here -
574 # Flag Data register
575 config BFIN_ALIVE_LED_PORT
576         hex
577         default 0xFFC00700 if (BFIN533_STAMP)
579 # Peripheral Flag Direction Register
580 config BFIN_ALIVE_LED_DPORT
581         hex
582         default 0xFFC00730 if (BFIN533_STAMP)
584 config BFIN_ALIVE_LED_PIN
585         hex
586         default 0x04 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 1)
587         default 0x08 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 2)
588         default 0x10 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 3)
590 config BFIN_IDLE_LED_PORT
591         hex
592         default 0xFFC00700 if (BFIN533_STAMP)
594 # Peripheral Flag Direction Register
595 config BFIN_IDLE_LED_DPORT
596         hex
597         default 0xFFC00730 if (BFIN533_STAMP)
599 config BFIN_IDLE_LED_PIN
600         hex
601         default 0x04 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 1)
602         default 0x08 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 2)
603         default 0x10 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 3)
605 endmenu
608 menu "Blackfin Kernel Optimizations"
610 comment "Memory Optimizations"
612 config I_ENTRY_L1
613         bool "Locate interrupt entry code in L1 Memory"
614         default y
615         help
616           If enabled interrupt entry code (STORE/RESTORE CONTEXT) is linked
617           into L1 instruction memory.(less latency)
619 config EXCPT_IRQ_SYSC_L1
620         bool "Locate entire ASM lowlevel excepetion / interrupt - Syscall and CPLB handler code in L1 Memory"
621         default y
622         help
623           If enabled entire ASM lowlevel exception and interrupt entry code (STORE/RESTORE CONTEXT) is linked
624           into L1 instruction memory.(less latency)
626 config DO_IRQ_L1
627         bool "Locate frequently called do_irq dispatcher function in L1 Memory"
628         default y
629         help
630           If enabled frequently called do_irq dispatcher function is linked
631           into L1 instruction memory.(less latency)
633 config CORE_TIMER_IRQ_L1
634         bool "Locate frequently called timer_interrupt() function in L1 Memory"
635         default y
636         help
637           If enabled frequently called timer_interrupt() function is linked
638           into L1 instruction memory.(less latency)
640 config IDLE_L1
641         bool "Locate frequently idle function in L1 Memory"
642         default y
643         help
644           If enabled frequently called idle function is linked
645           into L1 instruction memory.(less latency)
647 config SCHEDULE_L1
648         bool "Locate kernel schedule function in L1 Memory"
649         default y
650         help
651           If enabled frequently called kernel schedule is linked
652           into L1 instruction memory.(less latency)
654 config ARITHMETIC_OPS_L1
655         bool "Locate kernel owned arithmetic functions in L1 Memory"
656         default y
657         help
658           If enabled arithmetic functions are linked
659           into L1 instruction memory.(less latency)
661 config ACCESS_OK_L1
662         bool "Locate access_ok function in L1 Memory"
663         default y
664         help
665           If enabled access_ok function is linked
666           into L1 instruction memory.(less latency)
668 config MEMSET_L1
669         bool "Locate memset function in L1 Memory"
670         default y
671         help
672           If enabled memset function is linked
673           into L1 instruction memory.(less latency)
675 config MEMCPY_L1
676         bool "Locate memcpy function in L1 Memory"
677         default y
678         help
679           If enabled memcpy function is linked
680           into L1 instruction memory.(less latency)
682 config SYS_BFIN_SPINLOCK_L1
683         bool "Locate sys_bfin_spinlock function in L1 Memory"
684         default y
685         help
686           If enabled sys_bfin_spinlock function is linked
687           into L1 instruction memory.(less latency)
689 config IP_CHECKSUM_L1
690         bool "Locate IP Checksum function in L1 Memory"
691         default n
692         help
693           If enabled IP Checksum function is linked
694           into L1 instruction memory.(less latency)
696 config CACHELINE_ALIGNED_L1
697         bool "Locate cacheline_aligned data to L1 Data Memory"
698         default y if !BF54x
699         default n if BF54x
700         depends on !BF531
701         help
702           If enabled cacheline_anligned data is linked
703           into L1 data memory.(less latency)
705 config SYSCALL_TAB_L1
706         bool "Locate Syscall Table L1 Data Memory"
707         default n
708         depends on !BF531
709         help
710           If enabled the Syscall LUT is linked
711           into L1 data memory.(less latency)
713 config CPLB_SWITCH_TAB_L1
714         bool "Locate CPLB Switch Tables L1 Data Memory"
715         default n
716         depends on !BF531
717         help
718           If enabled the CPLB Switch Tables are linked
719           into L1 data memory.(less latency)
721 endmenu
724 choice
725         prompt "Kernel executes from"
726         help
727           Choose the memory type that the kernel will be running in.
729 config RAMKERNEL
730         bool "RAM"
731         help
732           The kernel will be resident in RAM when running.
734 config ROMKERNEL
735         bool "ROM"
736         help
737           The kernel will be resident in FLASH/ROM when running.
739 endchoice
741 source "mm/Kconfig"
743 config LARGE_ALLOCS
744         bool "Allow allocating large blocks (> 1MB) of memory"
745         help
746           Allow the slab memory allocator to keep chains for very large
747           memory sizes - upto 32MB. You may need this if your system has
748           a lot of RAM, and you need to able to allocate very large
749           contiguous chunks. If unsure, say N.
751 config BFIN_DMA_5XX
752         bool "Enable DMA Support"
753         depends on (BF533 || BF532 || BF531 || BF537 || BF536 || BF534 || BF561 || BF54x)
754         default y
755         help
756           DMA driver for BF5xx.
758 choice
759         prompt "Uncached SDRAM region"
760         default DMA_UNCACHED_1M
761         depends BFIN_DMA_5XX
762 config DMA_UNCACHED_2M
763         bool "Enable 2M DMA region"
764 config DMA_UNCACHED_1M
765         bool "Enable 1M DMA region"
766 config DMA_UNCACHED_NONE
767         bool "Disable DMA region"
768 endchoice
771 comment "Cache Support"
772 config BFIN_ICACHE
773         bool "Enable ICACHE"
774 config BFIN_DCACHE
775         bool "Enable DCACHE"
776 config BFIN_DCACHE_BANKA
777         bool "Enable only 16k BankA DCACHE - BankB is SRAM"
778         depends on BFIN_DCACHE && !BF531
779         default n
780 config BFIN_ICACHE_LOCK
781         bool "Enable Instruction Cache Locking"
783 choice
784         prompt "Policy"
785         depends on BFIN_DCACHE
786         default BFIN_WB
787 config BFIN_WB
788         bool "Write back"
789         help
790           Write Back Policy:
791             Cached data will be written back to SDRAM only when needed.
792             This can give a nice increase in performance, but beware of
793             broken drivers that do not properly invalidate/flush their
794             cache.
796           Write Through Policy:
797             Cached data will always be written back to SDRAM when the
798             cache is updated.  This is a completely safe setting, but
799             performance is worse than Write Back.
801           If you are unsure of the options and you want to be safe,
802           then go with Write Through.
804 config BFIN_WT
805         bool "Write through"
806         help
807           Write Back Policy:
808             Cached data will be written back to SDRAM only when needed.
809             This can give a nice increase in performance, but beware of
810             broken drivers that do not properly invalidate/flush their
811             cache.
813           Write Through Policy:
814             Cached data will always be written back to SDRAM when the
815             cache is updated.  This is a completely safe setting, but
816             performance is worse than Write Back.
818           If you are unsure of the options and you want to be safe,
819           then go with Write Through.
821 endchoice
823 config L1_MAX_PIECE
824         int "Set the max L1 SRAM pieces"
825         default 16
826         help
827           Set the max memory pieces for the L1 SRAM allocation algorithm.
828           Min value is 16. Max value is 1024.
830 comment "Asynchonous Memory Configuration"
832 menu "EBIU_AMBCTL Global Control"
833 config C_AMCKEN
834         bool "Enable CLKOUT"
835         default y
837 config C_CDPRIO
838         bool "DMA has priority over core for ext. accesses"
839         depends on !BF54x
840         default n
842 config C_B0PEN
843         depends on BF561
844         bool "Bank 0 16 bit packing enable"
845         default y
847 config C_B1PEN
848         depends on BF561
849         bool "Bank 1 16 bit packing enable"
850         default y
852 config C_B2PEN
853         depends on BF561
854         bool "Bank 2 16 bit packing enable"
855         default y
857 config C_B3PEN
858         depends on BF561
859         bool "Bank 3 16 bit packing enable"
860         default n
862 choice
863         prompt"Enable Asynchonous Memory Banks"
864         default C_AMBEN_ALL
866 config C_AMBEN
867         bool "Disable All Banks"
869 config C_AMBEN_B0
870         bool "Enable Bank 0"
872 config C_AMBEN_B0_B1
873         bool "Enable Bank 0 & 1"
875 config C_AMBEN_B0_B1_B2
876         bool "Enable Bank 0 & 1 & 2"
878 config C_AMBEN_ALL
879         bool "Enable All Banks"
880 endchoice
881 endmenu
883 menu "EBIU_AMBCTL Control"
884 config BANK_0
885         hex "Bank 0"
886         default 0x7BB0
888 config BANK_1
889         hex "Bank 1"
890         default 0x7BB0
892 config BANK_2
893         hex "Bank 2"
894         default 0x7BB0
896 config BANK_3
897         hex "Bank 3"
898         default 0x99B3
899 endmenu
901 endmenu
903 #############################################################################
904 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
906 config PCI
907         bool "PCI support"
908         help
909           Support for PCI bus.
911 source "drivers/pci/Kconfig"
913 config HOTPLUG
914         bool "Support for hot-pluggable device"
915           help
916           Say Y here if you want to plug devices into your computer while
917           the system is running, and be able to use them quickly.  In many
918           cases, the devices can likewise be unplugged at any time too.
920           One well known example of this is PCMCIA- or PC-cards, credit-card
921           size devices such as network cards, modems or hard drives which are
922           plugged into slots found on all modern laptop computers.  Another
923           example, used on modern desktops as well as laptops, is USB.
925           Enable HOTPLUG and KMOD, and build a modular kernel.  Get agent
926           software (at <http://linux-hotplug.sourceforge.net/>) and install it.
927           Then your kernel will automatically call out to a user mode "policy
928           agent" (/sbin/hotplug) to load modules and set up software needed
929           to use devices as you hotplug them.
931 source "drivers/pcmcia/Kconfig"
933 source "drivers/pci/hotplug/Kconfig"
935 endmenu
937 menu "Executable file formats"
939 source "fs/Kconfig.binfmt"
941 endmenu
943 menu "Power management options"
944 source "kernel/power/Kconfig"
946 choice
947         prompt "Select PM Wakeup Event Source"
948         default PM_WAKEUP_GPIO_BY_SIC_IWR
949         depends on PM
950         help
951           If you have a GPIO already configured as input with the corresponding PORTx_MASK
952           bit set - "Specify Wakeup Event by SIC_IWR value"
954 config PM_WAKEUP_GPIO_BY_SIC_IWR
955         bool "Specify Wakeup Event by SIC_IWR value"
956 config PM_WAKEUP_BY_GPIO
957         bool "Cause Wakeup Event by GPIO"
958 config PM_WAKEUP_GPIO_API
959         bool "Configure Wakeup Event by PM GPIO API"
961 endchoice
963 config PM_WAKEUP_SIC_IWR
964         hex "Wakeup Events (SIC_IWR)"
965         depends on PM_WAKEUP_GPIO_BY_SIC_IWR
966         default 0x80000000 if (BF537 || BF536 || BF534)
967         default 0x100000 if (BF533 || BF532 || BF531)
969 config PM_WAKEUP_GPIO_NUMBER
970         int "Wakeup GPIO number"
971         range 0 47
972         depends on PM_WAKEUP_BY_GPIO
973         default 2 if BFIN537_STAMP
975 choice
976         prompt "GPIO Polarity"
977         depends on PM_WAKEUP_BY_GPIO
978         default PM_WAKEUP_GPIO_POLAR_H
979 config  PM_WAKEUP_GPIO_POLAR_H
980         bool "Active High"
981 config  PM_WAKEUP_GPIO_POLAR_L
982         bool "Active Low"
983 config  PM_WAKEUP_GPIO_POLAR_EDGE_F
984         bool "Falling EDGE"
985 config  PM_WAKEUP_GPIO_POLAR_EDGE_R
986         bool "Rising EDGE"
987 config  PM_WAKEUP_GPIO_POLAR_EDGE_B
988         bool "Both EDGE"
989 endchoice
991 endmenu
993 if (BF537 || BF533 || BF54x)
995 menu "CPU Frequency scaling"
997 source "drivers/cpufreq/Kconfig"
999 config CPU_FREQ
1000         bool
1001         default n
1002         help
1003           If you want to enable this option, you should select the
1004           DPMC driver from Character Devices.
1005 endmenu
1007 endif
1009 source "net/Kconfig"
1011 source "drivers/Kconfig"
1013 source "fs/Kconfig"
1015 source "arch/blackfin/oprofile/Kconfig"
1017 menu "Kernel hacking"
1019 source "lib/Kconfig.debug"
1021 config DEBUG_HWERR
1022         bool "Hardware error interrupt debugging"
1023         depends on DEBUG_KERNEL
1024         help
1025           When enabled, the hardware error interrupt is never disabled, and
1026           will happen immediately when an error condition occurs.  This comes
1027           at a slight cost in code size, but is necessary if you are getting
1028           hardware error interrupts and need to know where they are coming
1029           from.
1031 config DEBUG_ICACHE_CHECK
1032         bool "Check Instruction cache coherancy"
1033         depends on DEBUG_KERNEL
1034         depends on DEBUG_HWERR
1035         help
1036           Say Y here if you are getting wierd unexplained errors. This will
1037           ensure that icache is what SDRAM says it should be, by doing a
1038           byte wise comparision between SDRAM and instruction cache. This
1039           also relocates the irq_panic() function to L1 memory, (which is
1040           un-cached).
1042 config DEBUG_KERNEL_START
1043         bool "Debug Kernel Startup"
1044         depends on DEBUG_KERNEL
1045         help
1046           Say Y here to put in an mini-execption handler before the kernel
1047           replaces the bootloader exception handler. This will stop kernels
1048           from dieing at startup with no visible error messages.
1050 config DEBUG_SERIAL_EARLY_INIT
1051         bool "Initialize serial driver early"
1052         default n
1053         depends on SERIAL_BFIN
1054         help
1055           Say Y here if you want to get kernel output early when kernel
1056           crashes before the normal console initialization. If this option
1057           is enable, console output will always go to the ttyBF0, no matter
1058           what kernel boot paramters you set.
1060 config DEBUG_HUNT_FOR_ZERO
1061         bool "Catch NULL pointer reads/writes"
1062         default y
1063         help
1064           Say Y here to catch reads/writes to anywhere in the memory range
1065           from 0x0000 - 0x0FFF (the first 4k) of memory.  This is useful in
1066           catching common programming errors such as NULL pointer dereferences.
1068           Misbehaving applications will be killed (generate a SEGV) while the
1069           kernel will trigger a panic.
1071           Enabling this option will take up an extra entry in CPLB table.
1072           Otherwise, there is no extra overhead.
1074 config DEBUG_BFIN_HWTRACE_ON
1075         bool "Turn on Blackfin's Hardware Trace"
1076         default y
1077         help
1078           All Blackfins include a Trace Unit which stores a history of the last
1079           16 changes in program flow taken by the program sequencer. The history
1080           allows the user to recreate the program sequencer’s recent path. This
1081           can be handy when an application dies - we print out the execution
1082           path of how it got to the offending instruction.
1084           By turning this off, you may save a tiny amount of power.
1086 choice
1087         prompt "Omit loop Tracing"
1088         default DEBUG_BFIN_HWTRACE_COMPRESSION_OFF
1089         depends on DEBUG_BFIN_HWTRACE_ON
1090         help
1091           The trace buffer can be configured to omit recording of changes in
1092           program flow that match either the last entry or one of the last
1093           two entries. Omitting one of these entries from the record prevents
1094           the trace buffer from overflowing because of any sort of loop (for, do
1095           while, etc) in the program.
1097           Because zero-overhead Hardware loops are not recorded in the trace buffer,
1098           this feature can be used to prevent trace overflow from loops that
1099           are nested four deep.
1101 config DEBUG_BFIN_HWTRACE_COMPRESSION_OFF
1102         bool "Trace all Loops"
1103         help
1104           The trace buffer records all changes of flow 
1106 config DEBUG_BFIN_HWTRACE_COMPRESSION_ONE
1107         bool "Compress single-level loops"
1108         help
1109           The trace buffer does not record single loops - helpful if trace 
1110           is spinning on a while or do loop.
1112 config DEBUG_BFIN_HWTRACE_COMPRESSION_TWO
1113         bool "Compress two-level loops"
1114         help
1115           The trace buffer does not record loops two levels deep. Helpful if
1116           the trace is spinning in a nested loop
1118 endchoice
1120 config DEBUG_BFIN_HWTRACE_COMPRESSION
1121         int
1122         depends on DEBUG_BFIN_HWTRACE_ON
1123         default 0 if DEBUG_BFIN_HWTRACE_COMPRESSION_OFF
1124         default 1 if DEBUG_BFIN_HWTRACE_COMPRESSION_ONE
1125         default 2 if DEBUG_BFIN_HWTRACE_COMPRESSION_TWO
1128 config DEBUG_BFIN_HWTRACE_EXPAND
1129         bool "Expand Trace Buffer greater than 16 entries"
1130         depends on DEBUG_BFIN_HWTRACE_ON
1131         default n
1132         help
1133           By selecting this option, every time the 16 hardware entries in
1134           the Blackfin's HW Trace buffer are full, the kernel will move them
1135           into a software buffer, for dumping when there is an issue. This 
1136           has a great impact on performance, (an interrupt every 16 change of 
1137           flows) and should normally be turned off, except in those nasty
1138           debugging sessions
1140 config DEBUG_BFIN_HWTRACE_EXPAND_LEN
1141         int "Size of Trace buffer (in power of 2k)"
1142         range 0 4
1143         depends on DEBUG_BFIN_HWTRACE_EXPAND
1144         default 1
1145         help
1146           This sets the size of the software buffer that the trace information
1147           is kept in.
1148           0 for (2^0)  1k, or 256 entries,
1149           1 for (2^1)  2k, or 512 entries,
1150           2 for (2^2)  4k, or 1024 entries,
1151           3 for (2^3)  8k, or 2048 entries,
1152           4 for (2^4) 16k, or 4096 entries
1154 config DEBUG_BFIN_NO_KERN_HWTRACE
1155         bool "Trace user apps (turn off hwtrace in kernel)"
1156         depends on DEBUG_BFIN_HWTRACE_ON
1157         default n
1158         help
1159           Some pieces of the kernel contain a lot of flow changes which can
1160           quickly fill up the hardware trace buffer.  When debugging crashes,
1161           the hardware trace may indicate that the problem lies in kernel
1162           space when in reality an application is buggy.
1164           Say Y here to disable hardware tracing in some known "jumpy" pieces
1165           of code so that the trace buffer will extend further back.
1167 config EARLY_PRINTK
1168         bool "Early printk" 
1169         default n
1170         help
1171           This option enables special console drivers which allow the kernel
1172           to print messages very early in the bootup process.
1174           This is useful for kernel debugging when your machine crashes very
1175           early before the console code is initialized. After enabling this
1176           feature, you must add "earlyprintk=serial,uart0,57600" to the
1177           command line (bootargs). It is safe to say Y here in all cases, as
1178           all of this lives in the init section and is thrown away after the
1179           kernel boots completely.
1181 config DUAL_CORE_TEST_MODULE
1182         tristate "Dual Core Test Module"
1183         depends on (BF561)
1184         default n
1185         help
1186           Say Y here to build-in dual core test module for dual core test.
1188 config CPLB_INFO
1189         bool "Display the CPLB information"
1190         help
1191           Display the CPLB information.
1193 config ACCESS_CHECK
1194         bool "Check the user pointer address"
1195         default y
1196         help
1197           Usually the pointer transfer from user space is checked to see if its
1198           address is in the kernel space.
1200           Say N here to disable that check to improve the performance.
1202 endmenu
1204 source "security/Kconfig"
1206 source "crypto/Kconfig"
1208 source "lib/Kconfig"