]> bbs.cooldavid.org Git - net-next-2.6.git/blob - arch/blackfin/Kconfig
Blackfin arch: add CONFIG_APP_STACKS_L1 to enable or disable putting kernel stacks...
[net-next-2.6.git] / 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 "Blackfin 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         select HAVE_IDE
28         select HAVE_OPROFILE
29
30 config ZONE_DMA
31         bool
32         default y
33
34 config GENERIC_FIND_NEXT_BIT
35         bool
36         default y
37
38 config GENERIC_HWEIGHT
39         bool
40         default y
41
42 config GENERIC_HARDIRQS
43         bool
44         default y
45
46 config GENERIC_IRQ_PROBE
47         bool
48         default y
49
50 config GENERIC_GPIO
51         bool
52         default y
53
54 config FORCE_MAX_ZONEORDER
55         int
56         default "14"
57
58 config GENERIC_CALIBRATE_DELAY
59         bool
60         default y
61
62 config HARDWARE_PM
63         def_bool y
64         depends on OPROFILE
65
66 source "init/Kconfig"
67 source "kernel/Kconfig.preempt"
68
69 menu "Blackfin Processor Options"
70
71 comment "Processor and Board Settings"
72
73 choice
74         prompt "CPU"
75         default BF533
76
77 config BF522
78         bool "BF522"
79         help
80           BF522 Processor Support.
81
82 config BF523
83         bool "BF523"
84         help
85           BF523 Processor Support.
86
87 config BF524
88         bool "BF524"
89         help
90           BF524 Processor Support.
91
92 config BF525
93         bool "BF525"
94         help
95           BF525 Processor Support.
96
97 config BF526
98         bool "BF526"
99         help
100           BF526 Processor Support.
101
102 config BF527
103         bool "BF527"
104         help
105           BF527 Processor Support.
106
107 config BF531
108         bool "BF531"
109         help
110           BF531 Processor Support.
111
112 config BF532
113         bool "BF532"
114         help
115           BF532 Processor Support.
116
117 config BF533
118         bool "BF533"
119         help
120           BF533 Processor Support.
121
122 config BF534
123         bool "BF534"
124         help
125           BF534 Processor Support.
126
127 config BF536
128         bool "BF536"
129         help
130           BF536 Processor Support.
131
132 config BF537
133         bool "BF537"
134         help
135           BF537 Processor Support.
136
137 config BF542
138         bool "BF542"
139         help
140           BF542 Processor Support.
141
142 config BF544
143         bool "BF544"
144         help
145           BF544 Processor Support.
146
147 config BF547
148         bool "BF547"
149         help
150           BF547 Processor Support.
151
152 config BF548
153         bool "BF548"
154         help
155           BF548 Processor Support.
156
157 config BF549
158         bool "BF549"
159         help
160           BF549 Processor Support.
161
162 config BF561
163         bool "BF561"
164         help
165           Not Supported Yet - Work in progress - BF561 Processor Support.
166
167 endchoice
168
169 choice
170         prompt "Silicon Rev"
171         default BF_REV_0_1 if BF527
172         default BF_REV_0_2 if BF537
173         default BF_REV_0_3 if BF533
174         default BF_REV_0_0 if BF549
175
176 config BF_REV_0_0
177         bool "0.0"
178         depends on (BF52x || BF54x)
179
180 config BF_REV_0_1
181         bool "0.1"
182         depends on (BF52x || BF54x)
183
184 config BF_REV_0_2
185         bool "0.2"
186         depends on (BF537 || BF536 || BF534)
187
188 config BF_REV_0_3
189         bool "0.3"
190         depends on (BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531)
191
192 config BF_REV_0_4
193         bool "0.4"
194         depends on (BF561 || BF533 || BF532 || BF531)
195
196 config BF_REV_0_5
197         bool "0.5"
198         depends on (BF561 || BF533 || BF532 || BF531)
199
200 config BF_REV_ANY
201         bool "any"
202
203 config BF_REV_NONE
204         bool "none"
205
206 endchoice
207
208 config BF52x
209         bool
210         depends on (BF522 || BF523 || BF524 || BF525 || BF526 || BF527)
211         default y
212
213 config BF53x
214         bool
215         depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
216         default y
217
218 config BF54x
219         bool
220         depends on (BF542 || BF544 || BF547 || BF548 || BF549)
221         default y
222
223 config MEM_GENERIC_BOARD
224         bool
225         depends on GENERIC_BOARD
226         default y
227
228 config MEM_MT48LC64M4A2FB_7E
229         bool
230         depends on (BFIN533_STAMP)
231         default y
232
233 config MEM_MT48LC16M16A2TG_75
234         bool
235         depends on (BFIN533_EZKIT || BFIN561_EZKIT \
236                 || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM \
237                 || H8606_HVSISTEMAS || BFIN527_BLUETECHNIX_CM)
238         default y
239
240 config MEM_MT48LC32M8A2_75
241         bool
242         depends on (BFIN537_STAMP || PNAV10)
243         default y
244
245 config MEM_MT48LC8M32B2B5_7
246         bool
247         depends on (BFIN561_BLUETECHNIX_CM)
248         default y
249
250 config MEM_MT48LC32M16A2TG_75
251         bool
252         depends on (BFIN527_EZKIT || BFIN532_IP0X || BLACKSTAMP || BFIN526_EZBRD)
253         default y
254
255 source "arch/blackfin/mach-bf527/Kconfig"
256 source "arch/blackfin/mach-bf533/Kconfig"
257 source "arch/blackfin/mach-bf561/Kconfig"
258 source "arch/blackfin/mach-bf537/Kconfig"
259 source "arch/blackfin/mach-bf548/Kconfig"
260
261 menu "Board customizations"
262
263 config CMDLINE_BOOL
264         bool "Default bootloader kernel arguments"
265
266 config CMDLINE
267         string "Initial kernel command string"
268         depends on CMDLINE_BOOL
269         default "console=ttyBF0,57600"
270         help
271           If you don't have a boot loader capable of passing a command line string
272           to the kernel, you may specify one here. As a minimum, you should specify
273           the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
274
275 config BOOT_LOAD
276         hex "Kernel load address for booting"
277         default "0x1000"
278         range 0x1000 0x20000000
279         help
280           This option allows you to set the load address of the kernel.
281           This can be useful if you are on a board which has a small amount
282           of memory or you wish to reserve some memory at the beginning of
283           the address space.
284
285           Note that you need to keep this value above 4k (0x1000) as this
286           memory region is used to capture NULL pointer references as well
287           as some core kernel functions.
288
289 config ROM_BASE
290         hex "Kernel ROM Base"
291         default "0x20040000"
292         range 0x20000000 0x20400000 if !(BF54x || BF561)
293         range 0x20000000 0x30000000 if (BF54x || BF561)
294         help
295
296 comment "Clock/PLL Setup"
297
298 config CLKIN_HZ
299         int "Frequency of the crystal on the board in Hz"
300         default "11059200" if BFIN533_STAMP
301         default "27000000" if BFIN533_EZKIT
302         default "25000000" if (BFIN537_STAMP || BFIN527_EZKIT || H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD)
303         default "30000000" if BFIN561_EZKIT
304         default "24576000" if PNAV10
305         default "10000000" if BFIN532_IP0X
306         help
307           The frequency of CLKIN crystal oscillator on the board in Hz.
308           Warning: This value should match the crystal on the board. Otherwise,
309           peripherals won't work properly.
310
311 config BFIN_KERNEL_CLOCK
312         bool "Re-program Clocks while Kernel boots?"
313         default n
314         help
315           This option decides if kernel clocks are re-programed from the
316           bootloader settings. If the clocks are not set, the SDRAM settings
317           are also not changed, and the Bootloader does 100% of the hardware
318           configuration.
319
320 config PLL_BYPASS
321         bool "Bypass PLL"
322         depends on BFIN_KERNEL_CLOCK
323         default n
324
325 config CLKIN_HALF
326         bool "Half Clock In"
327         depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
328         default n
329         help
330           If this is set the clock will be divided by 2, before it goes to the PLL.
331
332 config VCO_MULT
333         int "VCO Multiplier"
334         depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
335         range 1 64
336         default "22" if BFIN533_EZKIT
337         default "45" if BFIN533_STAMP
338         default "20" if (BFIN537_STAMP || BFIN527_EZKIT || BFIN548_EZKIT || BFIN548_BLUETECHNIX_CM)
339         default "22" if BFIN533_BLUETECHNIX_CM
340         default "20" if (BFIN537_BLUETECHNIX_CM || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM)
341         default "20" if BFIN561_EZKIT
342         default "16" if (H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD)
343         help
344           This controls the frequency of the on-chip PLL. This can be between 1 and 64.
345           PLL Frequency = (Crystal Frequency) * (this setting)
346
347 choice
348         prompt "Core Clock Divider"
349         depends on BFIN_KERNEL_CLOCK
350         default CCLK_DIV_1
351         help
352           This sets the frequency of the core. It can be 1, 2, 4 or 8
353           Core Frequency = (PLL frequency) / (this setting)
354
355 config CCLK_DIV_1
356         bool "1"
357
358 config CCLK_DIV_2
359         bool "2"
360
361 config CCLK_DIV_4
362         bool "4"
363
364 config CCLK_DIV_8
365         bool "8"
366 endchoice
367
368 config SCLK_DIV
369         int "System Clock Divider"
370         depends on BFIN_KERNEL_CLOCK
371         range 1 15
372         default 5
373         help
374           This sets the frequency of the system clock (including SDRAM or DDR).
375           This can be between 1 and 15
376           System Clock = (PLL frequency) / (this setting)
377
378 config MAX_MEM_SIZE
379         int "Max SDRAM Memory Size in MBytes"
380         depends on !MPU
381         default 512
382         help
383           This is the max memory size that the kernel will create CPLB
384           tables for.  Your system will not be able to handle any more.
385
386 choice
387         prompt "DDR SDRAM Chip Type"
388         depends on BFIN_KERNEL_CLOCK
389         depends on BF54x
390         default MEM_MT46V32M16_5B
391
392 config MEM_MT46V32M16_6T
393         bool "MT46V32M16_6T"
394
395 config MEM_MT46V32M16_5B
396         bool "MT46V32M16_5B"
397 endchoice
398
399 #
400 # Max & Min Speeds for various Chips
401 #
402 config MAX_VCO_HZ
403         int
404         default 600000000 if BF522
405         default 400000000 if BF523
406         default 400000000 if BF524
407         default 600000000 if BF525
408         default 400000000 if BF526
409         default 600000000 if BF527
410         default 400000000 if BF531
411         default 400000000 if BF532
412         default 750000000 if BF533
413         default 500000000 if BF534
414         default 400000000 if BF536
415         default 600000000 if BF537
416         default 533333333 if BF538
417         default 533333333 if BF539
418         default 600000000 if BF542
419         default 533333333 if BF544
420         default 600000000 if BF547
421         default 600000000 if BF548
422         default 533333333 if BF549
423         default 600000000 if BF561
424
425 config MIN_VCO_HZ
426         int
427         default 50000000
428
429 config MAX_SCLK_HZ
430         int
431         default 133333333
432
433 config MIN_SCLK_HZ
434         int
435         default 27000000
436
437 comment "Kernel Timer/Scheduler"
438
439 source kernel/Kconfig.hz
440
441 config GENERIC_TIME
442         bool "Generic time"
443         default y
444
445 config GENERIC_CLOCKEVENTS
446         bool "Generic clock events"
447         depends on GENERIC_TIME
448         default y
449
450 config CYCLES_CLOCKSOURCE
451         bool "Use 'CYCLES' as a clocksource (EXPERIMENTAL)"
452         depends on EXPERIMENTAL
453         depends on GENERIC_CLOCKEVENTS
454         depends on !BFIN_SCRATCH_REG_CYCLES
455         default n
456         help
457           If you say Y here, you will enable support for using the 'cycles'
458           registers as a clock source.  Doing so means you will be unable to
459           safely write to the 'cycles' register during runtime.  You will
460           still be able to read it (such as for performance monitoring), but
461           writing the registers will most likely crash the kernel.
462
463 source kernel/time/Kconfig
464
465 comment "Memory Setup"
466
467 comment "Misc"
468
469 choice
470         prompt "Blackfin Exception Scratch Register"
471         default BFIN_SCRATCH_REG_RETN
472         help
473           Select the resource to reserve for the Exception handler:
474             - RETN: Non-Maskable Interrupt (NMI)
475             - RETE: Exception Return (JTAG/ICE)
476             - CYCLES: Performance counter
477
478           If you are unsure, please select "RETN".
479
480 config BFIN_SCRATCH_REG_RETN
481         bool "RETN"
482         help
483           Use the RETN register in the Blackfin exception handler
484           as a stack scratch register.  This means you cannot
485           safely use NMI on the Blackfin while running Linux, but
486           you can debug the system with a JTAG ICE and use the
487           CYCLES performance registers.
488
489           If you are unsure, please select "RETN".
490
491 config BFIN_SCRATCH_REG_RETE
492         bool "RETE"
493         help
494           Use the RETE register in the Blackfin exception handler
495           as a stack scratch register.  This means you cannot
496           safely use a JTAG ICE while debugging a Blackfin board,
497           but you can safely use the CYCLES performance registers
498           and the NMI.
499
500           If you are unsure, please select "RETN".
501
502 config BFIN_SCRATCH_REG_CYCLES
503         bool "CYCLES"
504         help
505           Use the CYCLES register in the Blackfin exception handler
506           as a stack scratch register.  This means you cannot
507           safely use the CYCLES performance registers on a Blackfin
508           board at anytime, but you can debug the system with a JTAG
509           ICE and use the NMI.
510
511           If you are unsure, please select "RETN".
512
513 endchoice
514
515 endmenu
516
517
518 menu "Blackfin Kernel Optimizations"
519
520 comment "Memory Optimizations"
521
522 config I_ENTRY_L1
523         bool "Locate interrupt entry code in L1 Memory"
524         default y
525         help
526           If enabled, interrupt entry code (STORE/RESTORE CONTEXT) is linked
527           into L1 instruction memory. (less latency)
528
529 config EXCPT_IRQ_SYSC_L1
530         bool "Locate entire ASM lowlevel exception / interrupt - Syscall and CPLB handler code in L1 Memory"
531         default y
532         help
533           If enabled, the entire ASM lowlevel exception and interrupt entry code
534           (STORE/RESTORE CONTEXT) is linked into L1 instruction memory.
535           (less latency)
536
537 config DO_IRQ_L1
538         bool "Locate frequently called do_irq dispatcher function in L1 Memory"
539         default y
540         help
541           If enabled, the frequently called do_irq dispatcher function is linked
542           into L1 instruction memory. (less latency)
543
544 config CORE_TIMER_IRQ_L1
545         bool "Locate frequently called timer_interrupt() function in L1 Memory"
546         default y
547         help
548           If enabled, the frequently called timer_interrupt() function is linked
549           into L1 instruction memory. (less latency)
550
551 config IDLE_L1
552         bool "Locate frequently idle function in L1 Memory"
553         default y
554         help
555           If enabled, the frequently called idle function is linked
556           into L1 instruction memory. (less latency)
557
558 config SCHEDULE_L1
559         bool "Locate kernel schedule function in L1 Memory"
560         default y
561         help
562           If enabled, the frequently called kernel schedule is linked
563           into L1 instruction memory. (less latency)
564
565 config ARITHMETIC_OPS_L1
566         bool "Locate kernel owned arithmetic functions in L1 Memory"
567         default y
568         help
569           If enabled, arithmetic functions are linked
570           into L1 instruction memory. (less latency)
571
572 config ACCESS_OK_L1
573         bool "Locate access_ok function in L1 Memory"
574         default y
575         help
576           If enabled, the access_ok function is linked
577           into L1 instruction memory. (less latency)
578
579 config MEMSET_L1
580         bool "Locate memset function in L1 Memory"
581         default y
582         help
583           If enabled, the memset function is linked
584           into L1 instruction memory. (less latency)
585
586 config MEMCPY_L1
587         bool "Locate memcpy function in L1 Memory"
588         default y
589         help
590           If enabled, the memcpy function is linked
591           into L1 instruction memory. (less latency)
592
593 config SYS_BFIN_SPINLOCK_L1
594         bool "Locate sys_bfin_spinlock function in L1 Memory"
595         default y
596         help
597           If enabled, sys_bfin_spinlock function is linked
598           into L1 instruction memory. (less latency)
599
600 config IP_CHECKSUM_L1
601         bool "Locate IP Checksum function in L1 Memory"
602         default n
603         help
604           If enabled, the IP Checksum function is linked
605           into L1 instruction memory. (less latency)
606
607 config CACHELINE_ALIGNED_L1
608         bool "Locate cacheline_aligned data to L1 Data Memory"
609         default y if !BF54x
610         default n if BF54x
611         depends on !BF531
612         help
613           If enabled, cacheline_anligned data is linked
614           into L1 data memory. (less latency)
615
616 config SYSCALL_TAB_L1
617         bool "Locate Syscall Table L1 Data Memory"
618         default n
619         depends on !BF531
620         help
621           If enabled, the Syscall LUT is linked
622           into L1 data memory. (less latency)
623
624 config CPLB_SWITCH_TAB_L1
625         bool "Locate CPLB Switch Tables L1 Data Memory"
626         default n
627         depends on !BF531
628         help
629           If enabled, the CPLB Switch Tables are linked
630           into L1 data memory. (less latency)
631
632 config APP_STACK_L1
633         bool "Support locating application stack in L1 Scratch Memory"
634         default y
635         help
636           If enabled the application stack can be located in L1
637           scratch memory (less latency).
638
639           Currently only works with FLAT binaries.
640
641 comment "Speed Optimizations"
642 config BFIN_INS_LOWOVERHEAD
643         bool "ins[bwl] low overhead, higher interrupt latency"
644         default y
645         help
646           Reads on the Blackfin are speculative. In Blackfin terms, this means
647           they can be interrupted at any time (even after they have been issued
648           on to the external bus), and re-issued after the interrupt occurs.
649           For memory - this is not a big deal, since memory does not change if
650           it sees a read.
651
652           If a FIFO is sitting on the end of the read, it will see two reads,
653           when the core only sees one since the FIFO receives both the read
654           which is cancelled (and not delivered to the core) and the one which
655           is re-issued (which is delivered to the core).
656
657           To solve this, interrupts are turned off before reads occur to
658           I/O space. This option controls which the overhead/latency of
659           controlling interrupts during this time
660            "n" turns interrupts off every read
661                 (higher overhead, but lower interrupt latency)
662            "y" turns interrupts off every loop
663                 (low overhead, but longer interrupt latency)
664
665           default behavior is to leave this set to on (type "Y"). If you are experiencing
666           interrupt latency issues, it is safe and OK to turn this off.
667
668 endmenu
669
670
671 choice
672         prompt "Kernel executes from"
673         help
674           Choose the memory type that the kernel will be running in.
675
676 config RAMKERNEL
677         bool "RAM"
678         help
679           The kernel will be resident in RAM when running.
680
681 config ROMKERNEL
682         bool "ROM"
683         help
684           The kernel will be resident in FLASH/ROM when running.
685
686 endchoice
687
688 source "mm/Kconfig"
689
690 config BFIN_GPTIMERS
691         tristate "Enable Blackfin General Purpose Timers API"
692         default n
693         help
694           Enable support for the General Purpose Timers API.  If you
695           are unsure, say N.
696
697           To compile this driver as a module, choose M here: the module
698           will be called gptimers.ko.
699
700 config BFIN_DMA_5XX
701         bool "Enable DMA Support"
702         depends on (BF52x || BF53x || BF561 || BF54x)
703         default y
704         help
705           DMA driver for BF5xx.
706
707 choice
708         prompt "Uncached SDRAM region"
709         default DMA_UNCACHED_1M
710         depends on BFIN_DMA_5XX
711 config DMA_UNCACHED_4M
712         bool "Enable 4M DMA region"
713 config DMA_UNCACHED_2M
714         bool "Enable 2M DMA region"
715 config DMA_UNCACHED_1M
716         bool "Enable 1M DMA region"
717 config DMA_UNCACHED_NONE
718         bool "Disable DMA region"
719 endchoice
720
721
722 comment "Cache Support"
723 config BFIN_ICACHE
724         bool "Enable ICACHE"
725 config BFIN_DCACHE
726         bool "Enable DCACHE"
727 config BFIN_DCACHE_BANKA
728         bool "Enable only 16k BankA DCACHE - BankB is SRAM"
729         depends on BFIN_DCACHE && !BF531
730         default n
731 config BFIN_ICACHE_LOCK
732         bool "Enable Instruction Cache Locking"
733
734 choice
735         prompt "Policy"
736         depends on BFIN_DCACHE
737         default BFIN_WB
738 config BFIN_WB
739         bool "Write back"
740         help
741           Write Back Policy:
742             Cached data will be written back to SDRAM only when needed.
743             This can give a nice increase in performance, but beware of
744             broken drivers that do not properly invalidate/flush their
745             cache.
746
747           Write Through Policy:
748             Cached data will always be written back to SDRAM when the
749             cache is updated.  This is a completely safe setting, but
750             performance is worse than Write Back.
751
752           If you are unsure of the options and you want to be safe,
753           then go with Write Through.
754
755 config BFIN_WT
756         bool "Write through"
757         help
758           Write Back Policy:
759             Cached data will be written back to SDRAM only when needed.
760             This can give a nice increase in performance, but beware of
761             broken drivers that do not properly invalidate/flush their
762             cache.
763
764           Write Through Policy:
765             Cached data will always be written back to SDRAM when the
766             cache is updated.  This is a completely safe setting, but
767             performance is worse than Write Back.
768
769           If you are unsure of the options and you want to be safe,
770           then go with Write Through.
771
772 endchoice
773
774 config MPU
775         bool "Enable the memory protection unit (EXPERIMENTAL)"
776         default n
777         help
778           Use the processor's MPU to protect applications from accessing
779           memory they do not own.  This comes at a performance penalty
780           and is recommended only for debugging.
781
782 comment "Asynchonous Memory Configuration"
783
784 menu "EBIU_AMGCTL Global Control"
785 config C_AMCKEN
786         bool "Enable CLKOUT"
787         default y
788
789 config C_CDPRIO
790         bool "DMA has priority over core for ext. accesses"
791         default n
792
793 config C_B0PEN
794         depends on BF561
795         bool "Bank 0 16 bit packing enable"
796         default y
797
798 config C_B1PEN
799         depends on BF561
800         bool "Bank 1 16 bit packing enable"
801         default y
802
803 config C_B2PEN
804         depends on BF561
805         bool "Bank 2 16 bit packing enable"
806         default y
807
808 config C_B3PEN
809         depends on BF561
810         bool "Bank 3 16 bit packing enable"
811         default n
812
813 choice
814         prompt"Enable Asynchonous Memory Banks"
815         default C_AMBEN_ALL
816
817 config C_AMBEN
818         bool "Disable All Banks"
819
820 config C_AMBEN_B0
821         bool "Enable Bank 0"
822
823 config C_AMBEN_B0_B1
824         bool "Enable Bank 0 & 1"
825
826 config C_AMBEN_B0_B1_B2
827         bool "Enable Bank 0 & 1 & 2"
828
829 config C_AMBEN_ALL
830         bool "Enable All Banks"
831 endchoice
832 endmenu
833
834 menu "EBIU_AMBCTL Control"
835 config BANK_0
836         hex "Bank 0"
837         default 0x7BB0
838
839 config BANK_1
840         hex "Bank 1"
841         default 0x7BB0
842         default 0x5558 if BF54x
843
844 config BANK_2
845         hex "Bank 2"
846         default 0x7BB0
847
848 config BANK_3
849         hex "Bank 3"
850         default 0x99B3
851 endmenu
852
853 config EBIU_MBSCTLVAL
854         hex "EBIU Bank Select Control Register"
855         depends on BF54x
856         default 0
857
858 config EBIU_MODEVAL
859         hex "Flash Memory Mode Control Register"
860         depends on BF54x
861         default 1
862
863 config EBIU_FCTLVAL
864         hex "Flash Memory Bank Control Register"
865         depends on BF54x
866         default 6
867 endmenu
868
869 #############################################################################
870 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
871
872 config PCI
873         bool "PCI support"
874         depends on BROKEN
875         help
876           Support for PCI bus.
877
878 source "drivers/pci/Kconfig"
879
880 config HOTPLUG
881         bool "Support for hot-pluggable device"
882           help
883           Say Y here if you want to plug devices into your computer while
884           the system is running, and be able to use them quickly.  In many
885           cases, the devices can likewise be unplugged at any time too.
886
887           One well known example of this is PCMCIA- or PC-cards, credit-card
888           size devices such as network cards, modems or hard drives which are
889           plugged into slots found on all modern laptop computers.  Another
890           example, used on modern desktops as well as laptops, is USB.
891
892           Enable HOTPLUG and build a modular kernel.  Get agent software
893           (from <http://linux-hotplug.sourceforge.net/>) and install it.
894           Then your kernel will automatically call out to a user mode "policy
895           agent" (/sbin/hotplug) to load modules and set up software needed
896           to use devices as you hotplug them.
897
898 source "drivers/pcmcia/Kconfig"
899
900 source "drivers/pci/hotplug/Kconfig"
901
902 endmenu
903
904 menu "Executable file formats"
905
906 source "fs/Kconfig.binfmt"
907
908 endmenu
909
910 menu "Power management options"
911 source "kernel/power/Kconfig"
912
913 config ARCH_SUSPEND_POSSIBLE
914         def_bool y
915         depends on !SMP
916
917 choice
918         prompt "Standby Power Saving Mode"
919         depends on PM
920         default PM_BFIN_SLEEP_DEEPER
921 config  PM_BFIN_SLEEP_DEEPER
922         bool "Sleep Deeper"
923         help
924           Sleep "Deeper" Mode (High Power Savings) - This mode reduces dynamic
925           power dissipation by disabling the clock to the processor core (CCLK).
926           Furthermore, Standby sets the internal power supply voltage (VDDINT)
927           to 0.85 V to provide the greatest power savings, while preserving the
928           processor state.
929           The PLL and system clock (SCLK) continue to operate at a very low
930           frequency of about 3.3 MHz. To preserve data integrity in the SDRAM,
931           the SDRAM is put into Self Refresh Mode. Typically an external event
932           such as GPIO interrupt or RTC activity wakes up the processor.
933           Various Peripherals such as UART, SPORT, PPI may not function as
934           normal during Sleep Deeper, due to the reduced SCLK frequency.
935           When in the sleep mode, system DMA access to L1 memory is not supported.
936
937           If unsure, select "Sleep Deeper".
938
939 config  PM_BFIN_SLEEP
940         bool "Sleep"
941         help
942           Sleep Mode (High Power Savings) - The sleep mode reduces power
943           dissipation by disabling the clock to the processor core (CCLK).
944           The PLL and system clock (SCLK), however, continue to operate in
945           this mode. Typically an external event or RTC activity will wake
946           up the processor. When in the sleep mode, system DMA access to L1
947           memory is not supported.
948
949           If unsure, select "Sleep Deeper".
950 endchoice
951
952 config PM_WAKEUP_BY_GPIO
953         bool "Allow Wakeup from Standby by GPIO"
954
955 config PM_WAKEUP_GPIO_NUMBER
956         int "GPIO number"
957         range 0 47
958         depends on PM_WAKEUP_BY_GPIO
959         default 2 if BFIN537_STAMP
960
961 choice
962         prompt "GPIO Polarity"
963         depends on PM_WAKEUP_BY_GPIO
964         default PM_WAKEUP_GPIO_POLAR_H
965 config  PM_WAKEUP_GPIO_POLAR_H
966         bool "Active High"
967 config  PM_WAKEUP_GPIO_POLAR_L
968         bool "Active Low"
969 config  PM_WAKEUP_GPIO_POLAR_EDGE_F
970         bool "Falling EDGE"
971 config  PM_WAKEUP_GPIO_POLAR_EDGE_R
972         bool "Rising EDGE"
973 config  PM_WAKEUP_GPIO_POLAR_EDGE_B
974         bool "Both EDGE"
975 endchoice
976
977 comment "Possible Suspend Mem / Hibernate Wake-Up Sources"
978         depends on PM
979
980 config PM_BFIN_WAKE_PH6
981         bool "Allow Wake-Up from on-chip PHY or PH6 GP"
982         depends on PM && (BF52x || BF534 || BF536 || BF537)
983         default n
984         help
985           Enable PHY and PH6 GP Wake-Up (Voltage Regulator Power-Up)
986
987 config PM_BFIN_WAKE_GP
988         bool "Allow Wake-Up from GPIOs"
989         depends on PM && BF54x
990         default n
991         help
992           Enable General-Purpose Wake-Up (Voltage Regulator Power-Up)
993 endmenu
994
995 menu "CPU Frequency scaling"
996
997 source "drivers/cpufreq/Kconfig"
998
999 config CPU_VOLTAGE
1000         bool "CPU Voltage scaling"
1001         depends on EXPERIMENTAL 
1002         depends on CPU_FREQ
1003         default n
1004         help
1005           Say Y here if you want CPU voltage scaling according to the CPU frequency.
1006           This option violates the PLL BYPASS recommendation in the Blackfin Processor
1007           manuals. There is a theoretical risk that during VDDINT transitions 
1008           the PLL may unlock.
1009
1010 endmenu
1011
1012 source "net/Kconfig"
1013
1014 source "drivers/Kconfig"
1015
1016 source "fs/Kconfig"
1017
1018 source "arch/blackfin/Kconfig.debug"
1019
1020 source "security/Kconfig"
1021
1022 source "crypto/Kconfig"
1023
1024 source "lib/Kconfig"