11 config RWSEM_GENERIC_SPINLOCK
14 config RWSEM_XCHGADD_ALGORITHM
20 select HAVE_ARCH_TRACEHOOK
21 select HAVE_DYNAMIC_FTRACE
22 select HAVE_FTRACE_MCOUNT_RECORD
23 select HAVE_FUNCTION_GRAPH_TRACER
24 select HAVE_FUNCTION_TRACER
25 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
28 select HAVE_KERNEL_GZIP if RAMKERNEL
29 select HAVE_KERNEL_BZIP2 if RAMKERNEL
30 select HAVE_KERNEL_LZMA if RAMKERNEL
31 select HAVE_KERNEL_LZO if RAMKERNEL
33 select HAVE_PERF_EVENTS
34 select ARCH_WANT_OPTIONAL_GPIOLIB
35 select HAVE_GENERIC_HARDIRQS
36 select GENERIC_ATOMIC64
37 select GENERIC_IRQ_PROBE
38 select IRQ_PER_CPU if SMP
39 select HAVE_NMI_WATCHDOG if NMI_WATCHDOG
40 select GENERIC_SMP_IDLE_THREAD
41 select ARCH_USES_GETTIMEOFFSET if !GENERIC_CLOCKEVENTS
56 config FORCE_MAX_ZONEORDER
60 config GENERIC_CALIBRATE_DELAY
63 config LOCKDEP_SUPPORT
66 config STACKTRACE_SUPPORT
69 config TRACE_IRQFLAGS_SUPPORT
74 source "kernel/Kconfig.preempt"
76 source "kernel/Kconfig.freezer"
78 menu "Blackfin Processor Options"
80 comment "Processor and Board Settings"
89 BF512 Processor Support.
94 BF514 Processor Support.
99 BF516 Processor Support.
104 BF518 Processor Support.
109 BF522 Processor Support.
114 BF523 Processor Support.
119 BF524 Processor Support.
124 BF525 Processor Support.
129 BF526 Processor Support.
134 BF527 Processor Support.
139 BF531 Processor Support.
144 BF532 Processor Support.
149 BF533 Processor Support.
154 BF534 Processor Support.
159 BF536 Processor Support.
164 BF537 Processor Support.
169 BF538 Processor Support.
174 BF539 Processor Support.
179 BF542 Processor Support.
184 BF542 Processor Support.
189 BF544 Processor Support.
194 BF544 Processor Support.
199 BF547 Processor Support.
204 BF547 Processor Support.
209 BF548 Processor Support.
214 BF548 Processor Support.
219 BF549 Processor Support.
224 BF549 Processor Support.
229 BF561 Processor Support.
235 BF609 Processor Support.
241 select TICKSOURCE_CORETMR
242 bool "Symmetric multi-processing support"
244 This enables support for systems with more than one CPU,
245 like the dual core BF561. If you have a system with only one
246 CPU, say N. If you have a system with more than one CPU, say Y.
248 If you don't know what to do here, say N.
256 bool "Support for hot-pluggable CPUs"
257 depends on SMP && HOTPLUG
262 default 0 if (BF51x || BF52x || (BF54x && !BF54xM)) || BF60x
263 default 2 if (BF537 || BF536 || BF534)
264 default 3 if (BF561 || BF533 || BF532 || BF531 || BF54xM)
265 default 4 if (BF538 || BF539)
269 default 2 if (BF51x || BF52x || (BF54x && !BF54xM)) || BF60x
270 default 3 if (BF537 || BF536 || BF534 || BF54xM)
271 default 5 if (BF561 || BF538 || BF539)
272 default 6 if (BF533 || BF532 || BF531)
276 default BF_REV_0_0 if (BF51x || BF52x || BF60x)
277 default BF_REV_0_2 if (BF534 || BF536 || BF537 || (BF54x && !BF54xM))
278 default BF_REV_0_3 if (BF531 || BF532 || BF533 || BF54xM || BF561)
282 depends on (BF51x || BF52x || (BF54x && !BF54xM) || BF60x)
286 depends on (BF51x || BF52x || (BF54x && !BF54xM))
290 depends on (BF51x || BF52x || BF537 || BF536 || BF534 || (BF54x && !BF54xM))
294 depends on (BF54xM || BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531)
298 depends on (BF561 || BF533 || BF532 || BF531 || BF538 || BF539)
302 depends on (BF561 || BF533 || BF532 || BF531 || BF538 || BF539)
306 depends on (BF533 || BF532 || BF531)
318 depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
321 config MEM_MT48LC64M4A2FB_7E
323 depends on (BFIN533_STAMP)
326 config MEM_MT48LC16M16A2TG_75
328 depends on (BFIN533_EZKIT || BFIN561_EZKIT \
329 || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM_E \
330 || BFIN537_BLUETECHNIX_CM_U || H8606_HVSISTEMAS \
331 || BFIN527_BLUETECHNIX_CM)
334 config MEM_MT48LC32M8A2_75
336 depends on (BFIN518F_EZBRD || BFIN537_STAMP || PNAV10 || BFIN538_EZKIT)
339 config MEM_MT48LC8M32B2B5_7
341 depends on (BFIN561_BLUETECHNIX_CM)
344 config MEM_MT48LC32M16A2TG_75
346 depends on (BFIN527_EZKIT || BFIN527_EZKIT_V2 || BFIN532_IP0X || BLACKSTAMP || BFIN527_AD7160EVAL)
349 config MEM_MT48H32M16LFCJ_75
351 depends on (BFIN526_EZBRD)
354 source "arch/blackfin/mach-bf518/Kconfig"
355 source "arch/blackfin/mach-bf527/Kconfig"
356 source "arch/blackfin/mach-bf533/Kconfig"
357 source "arch/blackfin/mach-bf561/Kconfig"
358 source "arch/blackfin/mach-bf537/Kconfig"
359 source "arch/blackfin/mach-bf538/Kconfig"
360 source "arch/blackfin/mach-bf548/Kconfig"
361 source "arch/blackfin/mach-bf609/Kconfig"
363 menu "Board customizations"
366 bool "Default bootloader kernel arguments"
369 string "Initial kernel command string"
370 depends on CMDLINE_BOOL
371 default "console=ttyBF0,57600"
373 If you don't have a boot loader capable of passing a command line string
374 to the kernel, you may specify one here. As a minimum, you should specify
375 the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
378 hex "Kernel load address for booting"
380 range 0x1000 0x20000000
382 This option allows you to set the load address of the kernel.
383 This can be useful if you are on a board which has a small amount
384 of memory or you wish to reserve some memory at the beginning of
387 Note that you need to keep this value above 4k (0x1000) as this
388 memory region is used to capture NULL pointer references as well
389 as some core kernel functions.
391 config PHY_RAM_BASE_ADDRESS
392 hex "Physical RAM Base"
395 set BF609 FPGA physical SRAM base address
398 hex "Kernel ROM Base"
401 range 0x20000000 0x20400000 if !(BF54x || BF561)
402 range 0x20000000 0x30000000 if (BF54x || BF561)
404 Make sure your ROM base does not include any file-header
405 information that is prepended to the kernel.
407 For example, the bootable U-Boot format (created with
408 mkimage) has a 64 byte header (0x40). So while the image
409 you write to flash might start at say 0x20080000, you have
410 to add 0x40 to get the kernel's ROM base as it will come
413 comment "Clock/PLL Setup"
416 int "Frequency of the crystal on the board in Hz"
417 default "10000000" if BFIN532_IP0X
418 default "11059200" if BFIN533_STAMP
419 default "24576000" if PNAV10
420 default "25000000" # most people use this
421 default "27000000" if BFIN533_EZKIT
422 default "30000000" if BFIN561_EZKIT
423 default "24000000" if BFIN527_AD7160EVAL
425 The frequency of CLKIN crystal oscillator on the board in Hz.
426 Warning: This value should match the crystal on the board. Otherwise,
427 peripherals won't work properly.
429 config BFIN_KERNEL_CLOCK
430 bool "Re-program Clocks while Kernel boots?"
433 This option decides if kernel clocks are re-programed from the
434 bootloader settings. If the clocks are not set, the SDRAM settings
435 are also not changed, and the Bootloader does 100% of the hardware
440 depends on BFIN_KERNEL_CLOCK && (!BF60x)
445 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
448 If this is set the clock will be divided by 2, before it goes to the PLL.
452 depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS)
454 default "22" if BFIN533_EZKIT
455 default "45" if BFIN533_STAMP
456 default "20" if (BFIN537_STAMP || BFIN527_EZKIT || BFIN527_EZKIT_V2 || BFIN548_EZKIT || BFIN548_BLUETECHNIX_CM || BFIN538_EZKIT)
457 default "22" if BFIN533_BLUETECHNIX_CM
458 default "20" if (BFIN537_BLUETECHNIX_CM_E || BFIN537_BLUETECHNIX_CM_U || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM)
459 default "20" if (BFIN561_EZKIT || BF609)
460 default "16" if (H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD || BFIN518F_EZBRD)
461 default "25" if BFIN527_AD7160EVAL
463 This controls the frequency of the on-chip PLL. This can be between 1 and 64.
464 PLL Frequency = (Crystal Frequency) * (this setting)
467 prompt "Core Clock Divider"
468 depends on BFIN_KERNEL_CLOCK
471 This sets the frequency of the core. It can be 1, 2, 4 or 8
472 Core Frequency = (PLL frequency) / (this setting)
488 int "System Clock Divider"
489 depends on BFIN_KERNEL_CLOCK
493 This sets the frequency of the system clock (including SDRAM or DDR) on
494 !BF60x else it set the clock for system buses and provides the
495 source from which SCLK0 and SCLK1 are derived.
496 This can be between 1 and 15
497 System Clock = (PLL frequency) / (this setting)
500 int "System Clock0 Divider"
501 depends on BFIN_KERNEL_CLOCK && BF60x
505 This sets the frequency of the system clock0 for PVP and all other
506 peripherals not clocked by SCLK1.
507 This can be between 1 and 15
508 System Clock0 = (System Clock) / (this setting)
511 int "System Clock1 Divider"
512 depends on BFIN_KERNEL_CLOCK && BF60x
516 This sets the frequency of the system clock1 (including SPORT, SPI and ACM).
517 This can be between 1 and 15
518 System Clock1 = (System Clock) / (this setting)
521 int "DDR Clock Divider"
522 depends on BFIN_KERNEL_CLOCK && BF60x
526 This sets the frequency of the DDR memory.
527 This can be between 1 and 15
528 DDR Clock = (PLL frequency) / (this setting)
531 prompt "DDR SDRAM Chip Type"
532 depends on BFIN_KERNEL_CLOCK
534 default MEM_MT46V32M16_5B
536 config MEM_MT46V32M16_6T
539 config MEM_MT46V32M16_5B
544 prompt "DDR/SDRAM Timing"
545 depends on BFIN_KERNEL_CLOCK && !BF60x
546 default BFIN_KERNEL_CLOCK_MEMINIT_CALC
548 This option allows you to specify Blackfin SDRAM/DDR Timing parameters
549 The calculated SDRAM timing parameters may not be 100%
550 accurate - This option is therefore marked experimental.
552 config BFIN_KERNEL_CLOCK_MEMINIT_CALC
553 bool "Calculate Timings (EXPERIMENTAL)"
554 depends on EXPERIMENTAL
556 config BFIN_KERNEL_CLOCK_MEMINIT_SPEC
557 bool "Provide accurate Timings based on target SCLK"
559 Please consult the Blackfin Hardware Reference Manuals as well
560 as the memory device datasheet.
561 http://docs.blackfin.uclinux.org/doku.php?id=bfin:sdram
564 menu "Memory Init Control"
565 depends on BFIN_KERNEL_CLOCK_MEMINIT_SPEC
582 config MEM_EBIU_DDRQUE
599 # Max & Min Speeds for various Chips
603 default 400000000 if BF512
604 default 400000000 if BF514
605 default 400000000 if BF516
606 default 400000000 if BF518
607 default 400000000 if BF522
608 default 600000000 if BF523
609 default 400000000 if BF524
610 default 600000000 if BF525
611 default 400000000 if BF526
612 default 600000000 if BF527
613 default 400000000 if BF531
614 default 400000000 if BF532
615 default 750000000 if BF533
616 default 500000000 if BF534
617 default 400000000 if BF536
618 default 600000000 if BF537
619 default 533333333 if BF538
620 default 533333333 if BF539
621 default 600000000 if BF542
622 default 533333333 if BF544
623 default 600000000 if BF547
624 default 600000000 if BF548
625 default 533333333 if BF549
626 default 600000000 if BF561
627 default 800000000 if BF609
635 default 200000000 if BF609
642 comment "Kernel Timer/Scheduler"
644 source kernel/Kconfig.hz
646 config SET_GENERIC_CLOCKEVENTS
647 bool "Generic clock events"
649 select GENERIC_CLOCKEVENTS
651 menu "Clock event device"
652 depends on GENERIC_CLOCKEVENTS
653 config TICKSOURCE_GPTMR0
658 config TICKSOURCE_CORETMR
664 depends on GENERIC_CLOCKEVENTS
665 config CYCLES_CLOCKSOURCE
668 depends on !BFIN_SCRATCH_REG_CYCLES
671 If you say Y here, you will enable support for using the 'cycles'
672 registers as a clock source. Doing so means you will be unable to
673 safely write to the 'cycles' register during runtime. You will
674 still be able to read it (such as for performance monitoring), but
675 writing the registers will most likely crash the kernel.
677 config GPTMR0_CLOCKSOURCE
680 depends on !TICKSOURCE_GPTMR0
686 prompt "Blackfin Exception Scratch Register"
687 default BFIN_SCRATCH_REG_RETN
689 Select the resource to reserve for the Exception handler:
690 - RETN: Non-Maskable Interrupt (NMI)
691 - RETE: Exception Return (JTAG/ICE)
692 - CYCLES: Performance counter
694 If you are unsure, please select "RETN".
696 config BFIN_SCRATCH_REG_RETN
699 Use the RETN register in the Blackfin exception handler
700 as a stack scratch register. This means you cannot
701 safely use NMI on the Blackfin while running Linux, but
702 you can debug the system with a JTAG ICE and use the
703 CYCLES performance registers.
705 If you are unsure, please select "RETN".
707 config BFIN_SCRATCH_REG_RETE
710 Use the RETE register in the Blackfin exception handler
711 as a stack scratch register. This means you cannot
712 safely use a JTAG ICE while debugging a Blackfin board,
713 but you can safely use the CYCLES performance registers
716 If you are unsure, please select "RETN".
718 config BFIN_SCRATCH_REG_CYCLES
721 Use the CYCLES register in the Blackfin exception handler
722 as a stack scratch register. This means you cannot
723 safely use the CYCLES performance registers on a Blackfin
724 board at anytime, but you can debug the system with a JTAG
727 If you are unsure, please select "RETN".
734 menu "Blackfin Kernel Optimizations"
736 comment "Memory Optimizations"
739 bool "Locate interrupt entry code in L1 Memory"
743 If enabled, interrupt entry code (STORE/RESTORE CONTEXT) is linked
744 into L1 instruction memory. (less latency)
746 config EXCPT_IRQ_SYSC_L1
747 bool "Locate entire ASM lowlevel exception / interrupt - Syscall and CPLB handler code in L1 Memory"
751 If enabled, the entire ASM lowlevel exception and interrupt entry code
752 (STORE/RESTORE CONTEXT) is linked into L1 instruction memory.
756 bool "Locate frequently called do_irq dispatcher function in L1 Memory"
760 If enabled, the frequently called do_irq dispatcher function is linked
761 into L1 instruction memory. (less latency)
763 config CORE_TIMER_IRQ_L1
764 bool "Locate frequently called timer_interrupt() function in L1 Memory"
768 If enabled, the frequently called timer_interrupt() function is linked
769 into L1 instruction memory. (less latency)
772 bool "Locate frequently idle function in L1 Memory"
776 If enabled, the frequently called idle function is linked
777 into L1 instruction memory. (less latency)
780 bool "Locate kernel schedule function in L1 Memory"
784 If enabled, the frequently called kernel schedule is linked
785 into L1 instruction memory. (less latency)
787 config ARITHMETIC_OPS_L1
788 bool "Locate kernel owned arithmetic functions in L1 Memory"
792 If enabled, arithmetic functions are linked
793 into L1 instruction memory. (less latency)
796 bool "Locate access_ok function in L1 Memory"
800 If enabled, the access_ok function is linked
801 into L1 instruction memory. (less latency)
804 bool "Locate memset function in L1 Memory"
808 If enabled, the memset function is linked
809 into L1 instruction memory. (less latency)
812 bool "Locate memcpy function in L1 Memory"
816 If enabled, the memcpy function is linked
817 into L1 instruction memory. (less latency)
820 bool "locate strcmp function in L1 Memory"
824 If enabled, the strcmp function is linked
825 into L1 instruction memory (less latency).
828 bool "locate strncmp function in L1 Memory"
832 If enabled, the strncmp function is linked
833 into L1 instruction memory (less latency).
836 bool "locate strcpy function in L1 Memory"
840 If enabled, the strcpy function is linked
841 into L1 instruction memory (less latency).
844 bool "locate strncpy function in L1 Memory"
848 If enabled, the strncpy function is linked
849 into L1 instruction memory (less latency).
851 config SYS_BFIN_SPINLOCK_L1
852 bool "Locate sys_bfin_spinlock function in L1 Memory"
856 If enabled, sys_bfin_spinlock function is linked
857 into L1 instruction memory. (less latency)
859 config IP_CHECKSUM_L1
860 bool "Locate IP Checksum function in L1 Memory"
864 If enabled, the IP Checksum function is linked
865 into L1 instruction memory. (less latency)
867 config CACHELINE_ALIGNED_L1
868 bool "Locate cacheline_aligned data to L1 Data Memory"
871 depends on !SMP && !BF531 && !CRC32
873 If enabled, cacheline_aligned data is linked
874 into L1 data memory. (less latency)
876 config SYSCALL_TAB_L1
877 bool "Locate Syscall Table L1 Data Memory"
879 depends on !SMP && !BF531
881 If enabled, the Syscall LUT is linked
882 into L1 data memory. (less latency)
884 config CPLB_SWITCH_TAB_L1
885 bool "Locate CPLB Switch Tables L1 Data Memory"
887 depends on !SMP && !BF531
889 If enabled, the CPLB Switch Tables are linked
890 into L1 data memory. (less latency)
892 config ICACHE_FLUSH_L1
893 bool "Locate icache flush funcs in L1 Inst Memory"
896 If enabled, the Blackfin icache flushing functions are linked
897 into L1 instruction memory.
899 Note that this might be required to address anomalies, but
900 these functions are pretty small, so it shouldn't be too bad.
901 If you are using a processor affected by an anomaly, the build
902 system will double check for you and prevent it.
904 config DCACHE_FLUSH_L1
905 bool "Locate dcache flush funcs in L1 Inst Memory"
909 If enabled, the Blackfin dcache flushing functions are linked
910 into L1 instruction memory.
913 bool "Support locating application stack in L1 Scratch Memory"
917 If enabled the application stack can be located in L1
918 scratch memory (less latency).
920 Currently only works with FLAT binaries.
922 config EXCEPTION_L1_SCRATCH
923 bool "Locate exception stack in L1 Scratch Memory"
925 depends on !SMP && !APP_STACK_L1
927 Whenever an exception occurs, use the L1 Scratch memory for
928 stack storage. You cannot place the stacks of FLAT binaries
929 in L1 when using this option.
931 If you don't use L1 Scratch, then you should say Y here.
933 comment "Speed Optimizations"
934 config BFIN_INS_LOWOVERHEAD
935 bool "ins[bwl] low overhead, higher interrupt latency"
939 Reads on the Blackfin are speculative. In Blackfin terms, this means
940 they can be interrupted at any time (even after they have been issued
941 on to the external bus), and re-issued after the interrupt occurs.
942 For memory - this is not a big deal, since memory does not change if
945 If a FIFO is sitting on the end of the read, it will see two reads,
946 when the core only sees one since the FIFO receives both the read
947 which is cancelled (and not delivered to the core) and the one which
948 is re-issued (which is delivered to the core).
950 To solve this, interrupts are turned off before reads occur to
951 I/O space. This option controls which the overhead/latency of
952 controlling interrupts during this time
953 "n" turns interrupts off every read
954 (higher overhead, but lower interrupt latency)
955 "y" turns interrupts off every loop
956 (low overhead, but longer interrupt latency)
958 default behavior is to leave this set to on (type "Y"). If you are experiencing
959 interrupt latency issues, it is safe and OK to turn this off.
964 prompt "Kernel executes from"
966 Choose the memory type that the kernel will be running in.
971 The kernel will be resident in RAM when running.
976 The kernel will be resident in FLASH/ROM when running.
980 # Common code uses "ROMKERNEL" or "XIP_KERNEL", so define both
989 tristate "Enable Blackfin General Purpose Timers API"
992 Enable support for the General Purpose Timers API. If you
995 To compile this driver as a module, choose M here: the module
996 will be called gptimers.
999 tristate "Enable PWM API support"
1000 depends on BFIN_GPTIMERS
1002 Enable support for the Pulse Width Modulation framework (as
1003 found in linux/pwm.h).
1005 To compile this driver as a module, choose M here: the module
1009 prompt "Uncached DMA region"
1010 default DMA_UNCACHED_1M
1011 config DMA_UNCACHED_4M
1012 bool "Enable 4M DMA region"
1013 config DMA_UNCACHED_2M
1014 bool "Enable 2M DMA region"
1015 config DMA_UNCACHED_1M
1016 bool "Enable 1M DMA region"
1017 config DMA_UNCACHED_512K
1018 bool "Enable 512K DMA region"
1019 config DMA_UNCACHED_256K
1020 bool "Enable 256K DMA region"
1021 config DMA_UNCACHED_128K
1022 bool "Enable 128K DMA region"
1023 config DMA_UNCACHED_NONE
1024 bool "Disable DMA region"
1028 comment "Cache Support"
1031 bool "Enable ICACHE"
1033 config BFIN_EXTMEM_ICACHEABLE
1034 bool "Enable ICACHE for external memory"
1035 depends on BFIN_ICACHE
1037 config BFIN_L2_ICACHEABLE
1038 bool "Enable ICACHE for L2 SRAM"
1039 depends on BFIN_ICACHE
1040 depends on BF54x || BF561
1044 bool "Enable DCACHE"
1046 config BFIN_DCACHE_BANKA
1047 bool "Enable only 16k BankA DCACHE - BankB is SRAM"
1048 depends on BFIN_DCACHE && !BF531
1050 config BFIN_EXTMEM_DCACHEABLE
1051 bool "Enable DCACHE for external memory"
1052 depends on BFIN_DCACHE
1055 prompt "External memory DCACHE policy"
1056 depends on BFIN_EXTMEM_DCACHEABLE
1057 default BFIN_EXTMEM_WRITEBACK if !SMP
1058 default BFIN_EXTMEM_WRITETHROUGH if SMP
1059 config BFIN_EXTMEM_WRITEBACK
1064 Cached data will be written back to SDRAM only when needed.
1065 This can give a nice increase in performance, but beware of
1066 broken drivers that do not properly invalidate/flush their
1069 Write Through Policy:
1070 Cached data will always be written back to SDRAM when the
1071 cache is updated. This is a completely safe setting, but
1072 performance is worse than Write Back.
1074 If you are unsure of the options and you want to be safe,
1075 then go with Write Through.
1077 config BFIN_EXTMEM_WRITETHROUGH
1078 bool "Write through"
1081 Cached data will be written back to SDRAM only when needed.
1082 This can give a nice increase in performance, but beware of
1083 broken drivers that do not properly invalidate/flush their
1086 Write Through Policy:
1087 Cached data will always be written back to SDRAM when the
1088 cache is updated. This is a completely safe setting, but
1089 performance is worse than Write Back.
1091 If you are unsure of the options and you want to be safe,
1092 then go with Write Through.
1096 config BFIN_L2_DCACHEABLE
1097 bool "Enable DCACHE for L2 SRAM"
1098 depends on BFIN_DCACHE
1099 depends on (BF54x || BF561 || BF60x) && !SMP
1102 prompt "L2 SRAM DCACHE policy"
1103 depends on BFIN_L2_DCACHEABLE
1104 default BFIN_L2_WRITEBACK
1105 config BFIN_L2_WRITEBACK
1108 config BFIN_L2_WRITETHROUGH
1109 bool "Write through"
1113 comment "Memory Protection Unit"
1115 bool "Enable the memory protection unit (EXPERIMENTAL)"
1118 Use the processor's MPU to protect applications from accessing
1119 memory they do not own. This comes at a performance penalty
1120 and is recommended only for debugging.
1122 comment "Asynchronous Memory Configuration"
1124 menu "EBIU_AMGCTL Global Control"
1127 bool "Enable CLKOUT"
1131 bool "DMA has priority over core for ext. accesses"
1136 bool "Bank 0 16 bit packing enable"
1141 bool "Bank 1 16 bit packing enable"
1146 bool "Bank 2 16 bit packing enable"
1151 bool "Bank 3 16 bit packing enable"
1155 prompt "Enable Asynchronous Memory Banks"
1159 bool "Disable All Banks"
1162 bool "Enable Bank 0"
1164 config C_AMBEN_B0_B1
1165 bool "Enable Bank 0 & 1"
1167 config C_AMBEN_B0_B1_B2
1168 bool "Enable Bank 0 & 1 & 2"
1171 bool "Enable All Banks"
1175 menu "EBIU_AMBCTL Control"
1178 hex "Bank 0 (AMBCTL0.L)"
1181 These are the low 16 bits of the EBIU_AMBCTL0 MMR which are
1182 used to control the Asynchronous Memory Bank 0 settings.
1185 hex "Bank 1 (AMBCTL0.H)"
1187 default 0x5558 if BF54x
1189 These are the high 16 bits of the EBIU_AMBCTL0 MMR which are
1190 used to control the Asynchronous Memory Bank 1 settings.
1193 hex "Bank 2 (AMBCTL1.L)"
1196 These are the low 16 bits of the EBIU_AMBCTL1 MMR which are
1197 used to control the Asynchronous Memory Bank 2 settings.
1200 hex "Bank 3 (AMBCTL1.H)"
1203 These are the high 16 bits of the EBIU_AMBCTL1 MMR which are
1204 used to control the Asynchronous Memory Bank 3 settings.
1208 config EBIU_MBSCTLVAL
1209 hex "EBIU Bank Select Control Register"
1214 hex "Flash Memory Mode Control Register"
1219 hex "Flash Memory Bank Control Register"
1224 #############################################################################
1225 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
1231 Support for PCI bus.
1233 source "drivers/pci/Kconfig"
1235 source "drivers/pcmcia/Kconfig"
1237 source "drivers/pci/hotplug/Kconfig"
1241 menu "Executable file formats"
1243 source "fs/Kconfig.binfmt"
1247 menu "Power management options"
1249 source "kernel/power/Kconfig"
1251 config ARCH_SUSPEND_POSSIBLE
1255 prompt "Standby Power Saving Mode"
1256 depends on PM && !BF60x
1257 default PM_BFIN_SLEEP_DEEPER
1258 config PM_BFIN_SLEEP_DEEPER
1261 Sleep "Deeper" Mode (High Power Savings) - This mode reduces dynamic
1262 power dissipation by disabling the clock to the processor core (CCLK).
1263 Furthermore, Standby sets the internal power supply voltage (VDDINT)
1264 to 0.85 V to provide the greatest power savings, while preserving the
1266 The PLL and system clock (SCLK) continue to operate at a very low
1267 frequency of about 3.3 MHz. To preserve data integrity in the SDRAM,
1268 the SDRAM is put into Self Refresh Mode. Typically an external event
1269 such as GPIO interrupt or RTC activity wakes up the processor.
1270 Various Peripherals such as UART, SPORT, PPI may not function as
1271 normal during Sleep Deeper, due to the reduced SCLK frequency.
1272 When in the sleep mode, system DMA access to L1 memory is not supported.
1274 If unsure, select "Sleep Deeper".
1276 config PM_BFIN_SLEEP
1279 Sleep Mode (High Power Savings) - The sleep mode reduces power
1280 dissipation by disabling the clock to the processor core (CCLK).
1281 The PLL and system clock (SCLK), however, continue to operate in
1282 this mode. Typically an external event or RTC activity will wake
1283 up the processor. When in the sleep mode, system DMA access to L1
1284 memory is not supported.
1286 If unsure, select "Sleep Deeper".
1289 comment "Possible Suspend Mem / Hibernate Wake-Up Sources"
1292 config PM_BFIN_WAKE_PH6
1293 bool "Allow Wake-Up from on-chip PHY or PH6 GP"
1294 depends on PM && (BF51x || BF52x || BF534 || BF536 || BF537)
1297 Enable PHY and PH6 GP Wake-Up (Voltage Regulator Power-Up)
1299 config PM_BFIN_WAKE_GP
1300 bool "Allow Wake-Up from GPIOs"
1301 depends on PM && BF54x
1304 Enable General-Purpose Wake-Up (Voltage Regulator Power-Up)
1305 (all processors, except ADSP-BF549). This option sets
1306 the general-purpose wake-up enable (GPWE) control bit to enable
1307 wake-up upon detection of an active low signal on the /GPW (PH7) pin.
1308 On ADSP-BF549 this option enables the same functionality on the
1309 /MRXON pin also PH7.
1311 config PM_BFIN_WAKE_PA15
1312 bool "Allow Wake-Up from PA15"
1313 depends on PM && BF60x
1318 config PM_BFIN_WAKE_PA15_POL
1319 int "Wake-up priority"
1320 depends on PM_BFIN_WAKE_PA15
1323 Wake-Up priority 0(low) 1(high)
1325 config PM_BFIN_WAKE_PB15
1326 bool "Allow Wake-Up from PB15"
1327 depends on PM && BF60x
1332 config PM_BFIN_WAKE_PB15_POL
1333 int "Wake-up priority"
1334 depends on PM_BFIN_WAKE_PB15
1337 Wake-Up priority 0(low) 1(high)
1339 config PM_BFIN_WAKE_PC15
1340 bool "Allow Wake-Up from PC15"
1341 depends on PM && BF60x
1346 config PM_BFIN_WAKE_PC15_POL
1347 int "Wake-up priority"
1348 depends on PM_BFIN_WAKE_PC15
1351 Wake-Up priority 0(low) 1(high)
1353 config PM_BFIN_WAKE_PD06
1354 bool "Allow Wake-Up from PD06(ETH0_PHYINT)"
1355 depends on PM && BF60x
1358 Enable PD06(ETH0_PHYINT) Wake-up
1360 config PM_BFIN_WAKE_PD06_POL
1361 int "Wake-up priority"
1362 depends on PM_BFIN_WAKE_PD06
1365 Wake-Up priority 0(low) 1(high)
1367 config PM_BFIN_WAKE_PE12
1368 bool "Allow Wake-Up from PE12(ETH1_PHYINT, PUSH BUTTON)"
1369 depends on PM && BF60x
1372 Enable PE12(ETH1_PHYINT, PUSH BUTTON) Wake-up
1374 config PM_BFIN_WAKE_PE12_POL
1375 int "Wake-up priority"
1376 depends on PM_BFIN_WAKE_PE12
1379 Wake-Up priority 0(low) 1(high)
1381 config PM_BFIN_WAKE_PG04
1382 bool "Allow Wake-Up from PG04(CAN0_RX)"
1383 depends on PM && BF60x
1386 Enable PG04(CAN0_RX) Wake-up
1388 config PM_BFIN_WAKE_PG04_POL
1389 int "Wake-up priority"
1390 depends on PM_BFIN_WAKE_PG04
1393 Wake-Up priority 0(low) 1(high)
1395 config PM_BFIN_WAKE_PG13
1396 bool "Allow Wake-Up from PG13"
1397 depends on PM && BF60x
1402 config PM_BFIN_WAKE_PG13_POL
1403 int "Wake-up priority"
1404 depends on PM_BFIN_WAKE_PG13
1407 Wake-Up priority 0(low) 1(high)
1409 config PM_BFIN_WAKE_USB
1410 bool "Allow Wake-Up from (USB)"
1411 depends on PM && BF60x
1414 Enable (USB) Wake-up
1416 config PM_BFIN_WAKE_USB_POL
1417 int "Wake-up priority"
1418 depends on PM_BFIN_WAKE_USB
1421 Wake-Up priority 0(low) 1(high)
1425 menu "CPU Frequency scaling"
1427 source "drivers/cpufreq/Kconfig"
1429 config BFIN_CPU_FREQ
1432 select CPU_FREQ_TABLE
1436 bool "CPU Voltage scaling"
1437 depends on EXPERIMENTAL
1441 Say Y here if you want CPU voltage scaling according to the CPU frequency.
1442 This option violates the PLL BYPASS recommendation in the Blackfin Processor
1443 manuals. There is a theoretical risk that during VDDINT transitions
1448 source "net/Kconfig"
1450 source "drivers/Kconfig"
1452 source "drivers/firmware/Kconfig"
1456 source "arch/blackfin/Kconfig.debug"
1458 source "security/Kconfig"
1460 source "crypto/Kconfig"
1462 source "lib/Kconfig"