KVM: MMU: Fix setting the accessed bit on non-speculative sptes
[safe/jmp/linux-2.6] / arch / blackfin / Kconfig
index a7a6e0c..8102c79 100644 (file)
@@ -3,7 +3,7 @@
 # see Documentation/kbuild/kconfig-language.txt.
 #
 
 # see Documentation/kbuild/kconfig-language.txt.
 #
 
-mainmenu "uClinux/Blackfin (w/o MMU) Kernel Configuration"
+mainmenu "Blackfin Kernel Configuration"
 
 config MMU
        bool
 
 config MMU
        bool
@@ -24,19 +24,13 @@ config RWSEM_XCHGADD_ALGORITHM
 config BLACKFIN
        bool
        default y
 config BLACKFIN
        bool
        default y
+       select HAVE_IDE
+       select HAVE_OPROFILE
 
 config ZONE_DMA
        bool
        default y
 
 
 config ZONE_DMA
        bool
        default y
 
-config BFIN
-       bool
-       default y
-
-config SEMAPHORE_SLEEPERS
-       bool
-       default y
-
 config GENERIC_FIND_NEXT_BIT
        bool
        default y
 config GENERIC_FIND_NEXT_BIT
        bool
        default y
@@ -50,12 +44,8 @@ config GENERIC_HARDIRQS
        default y
 
 config GENERIC_IRQ_PROBE
        default y
 
 config GENERIC_IRQ_PROBE
-        bool
-       default y
-
-config GENERIC_TIME
        bool
        bool
-       default n
+       default y
 
 config GENERIC_GPIO
        bool
 
 config GENERIC_GPIO
        bool
@@ -69,10 +59,9 @@ config GENERIC_CALIBRATE_DELAY
        bool
        default y
 
        bool
        default y
 
-config IRQCHIP_DEMUX_GPIO
-       bool
-       depends on (BF53x || BF561 || BF54x)
-       default y
+config HARDWARE_PM
+       def_bool y
+       depends on OPROFILE
 
 source "init/Kconfig"
 source "kernel/Kconfig.preempt"
 
 source "init/Kconfig"
 source "kernel/Kconfig.preempt"
@@ -85,6 +74,36 @@ choice
        prompt "CPU"
        default BF533
 
        prompt "CPU"
        default BF533
 
+config BF522
+       bool "BF522"
+       help
+         BF522 Processor Support.
+
+config BF523
+       bool "BF523"
+       help
+         BF523 Processor Support.
+
+config BF524
+       bool "BF524"
+       help
+         BF524 Processor Support.
+
+config BF525
+       bool "BF525"
+       help
+         BF525 Processor Support.
+
+config BF526
+       bool "BF526"
+       help
+         BF526 Processor Support.
+
+config BF527
+       bool "BF527"
+       help
+         BF527 Processor Support.
+
 config BF531
        bool "BF531"
        help
 config BF531
        bool "BF531"
        help
@@ -125,6 +144,11 @@ config BF544
        help
          BF544 Processor Support.
 
        help
          BF544 Processor Support.
 
+config BF547
+       bool "BF547"
+       help
+         BF547 Processor Support.
+
 config BF548
        bool "BF548"
        help
 config BF548
        bool "BF548"
        help
@@ -138,23 +162,40 @@ config BF549
 config BF561
        bool "BF561"
        help
 config BF561
        bool "BF561"
        help
-         Not Supported Yet - Work in progress - BF561 Processor Support.
+         BF561 Processor Support.
 
 endchoice
 
 
 endchoice
 
+config BF_REV_MIN
+       int
+       default 0 if (BF52x || BF54x)
+       default 2 if (BF537 || BF536 || BF534)
+       default 3 if (BF561 ||BF533 || BF532 || BF531)
+
+config BF_REV_MAX
+       int
+       default 2 if (BF52x || BF54x)
+       default 3 if (BF537 || BF536 || BF534)
+       default 5 if (BF561)
+       default 6 if (BF533 || BF532 || BF531)
+
 choice
        prompt "Silicon Rev"
 choice
        prompt "Silicon Rev"
-       default BF_REV_0_2 if BF537
-       default BF_REV_0_3 if BF533
-       default BF_REV_0_0 if BF549
+       default BF_REV_0_1 if (BF52x || BF54x)
+       default BF_REV_0_2 if (BF534 || BF536 || BF537)
+       default BF_REV_0_3 if (BF531 || BF532 || BF533 || BF561)
 
 config BF_REV_0_0
        bool "0.0"
 
 config BF_REV_0_0
        bool "0.0"
-       depends on (BF549)
+       depends on (BF52x || BF54x)
+
+config BF_REV_0_1
+       bool "0.1"
+       depends on (BF52x || BF54x)
 
 config BF_REV_0_2
        bool "0.2"
 
 config BF_REV_0_2
        bool "0.2"
-       depends on (BF537 || BF536 || BF534)
+       depends on (BF52x || BF537 || BF536 || BF534 || BF54x)
 
 config BF_REV_0_3
        bool "0.3"
 
 config BF_REV_0_3
        bool "0.3"
@@ -168,6 +209,10 @@ config BF_REV_0_5
        bool "0.5"
        depends on (BF561 || BF533 || BF532 || BF531)
 
        bool "0.5"
        depends on (BF561 || BF533 || BF532 || BF531)
 
+config BF_REV_0_6
+       bool "0.6"
+       depends on (BF533 || BF532 || BF531)
+
 config BF_REV_ANY
        bool "any"
 
 config BF_REV_ANY
        bool "any"
 
@@ -176,103 +221,21 @@ config BF_REV_NONE
 
 endchoice
 
 
 endchoice
 
-config BF53x
-       bool
-       depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
-       default y
-
-config BF54x
+config BF52x
        bool
        bool
-       depends on (BF542 || BF544 || BF548 || BF549)
+       depends on (BF522 || BF523 || BF524 || BF525 || BF526 || BF527)
        default y
 
        default y
 
-config BFIN_DUAL_CORE
+config BF53x
        bool
        bool
-       depends on (BF561)
+       depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537)
        default y
 
        default y
 
-config BFIN_SINGLE_CORE
+config BF54x
        bool
        bool
-       depends on !BFIN_DUAL_CORE
+       depends on (BF542 || BF544 || BF547 || BF548 || BF549)
        default y
 
        default y
 
-choice
-       prompt "System type"
-       default BFIN533_STAMP
-       help
-         Do NOT change the board here.  Please use the top level
-         configuration to ensure that all the other settings are
-         correct.
-
-config BFIN533_EZKIT
-       bool "BF533-EZKIT"
-       depends on (BF533 || BF532 || BF531)
-       help
-         BF533-EZKIT-LITE board Support.
-
-config  BFIN533_STAMP
-       bool "BF533-STAMP"
-       depends on (BF533 || BF532 || BF531)
-       help
-         BF533-STAMP board Support.
-
-config BFIN537_STAMP
-       bool "BF537-STAMP"
-       depends on (BF537 || BF536 || BF534)
-       help
-         BF537-STAMP board Support.
-
-config BFIN533_BLUETECHNIX_CM
-       bool "Bluetechnix CM-BF533"
-       depends on (BF533)
-       help
-         CM-BF533 support for EVAL- and DEV-Board.
-
-config BFIN537_BLUETECHNIX_CM
-       bool "Bluetechnix CM-BF537"
-       depends on (BF537)
-       help
-         CM-BF537 support for EVAL- and DEV-Board.
-
-config BFIN548_EZKIT
-       bool "BF548-EZKIT"
-       depends on (BF548 || BF549)
-         help
-         BFIN548-EZKIT board Support.
-
-config BFIN561_BLUETECHNIX_CM
-       bool "Bluetechnix CM-BF561"
-       depends on (BF561)
-       help
-         CM-BF561 support for EVAL- and DEV-Board.
-
-config BFIN561_EZKIT
-       bool "BF561-EZKIT"
-       depends on (BF561)
-       help
-         BF561-EZKIT-LITE board Support.
-
-config BFIN561_TEPLA
-       bool "BF561-TEPLA"
-       depends on (BF561)
-       help
-        BF561-TEPLA board Support.
-
-config PNAV10
-       bool "PNAV 1.0 board"
-       depends on (BF537)
-       help
-         PNAV 1.0 board Support.
-
-config GENERIC_BOARD
-       bool "Custom"
-       depends on (BF537 || BF536 \
-               || BF534 || BF561 || BF535 || BF533 || BF532 || BF531)
-       help
-         GENERIC or Custom board Support.
-
-endchoice
-
 config MEM_GENERIC_BOARD
        bool
        depends on GENERIC_BOARD
 config MEM_GENERIC_BOARD
        bool
        depends on GENERIC_BOARD
@@ -286,7 +249,8 @@ config MEM_MT48LC64M4A2FB_7E
 config MEM_MT48LC16M16A2TG_75
        bool
        depends on (BFIN533_EZKIT || BFIN561_EZKIT \
 config MEM_MT48LC16M16A2TG_75
        bool
        depends on (BFIN533_EZKIT || BFIN561_EZKIT \
-               || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM)
+               || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM \
+               || H8606_HVSISTEMAS || BFIN527_BLUETECHNIX_CM)
        default y
 
 config MEM_MT48LC32M8A2_75
        default y
 
 config MEM_MT48LC32M8A2_75
@@ -299,11 +263,12 @@ config MEM_MT48LC8M32B2B5_7
        depends on (BFIN561_BLUETECHNIX_CM)
        default y
 
        depends on (BFIN561_BLUETECHNIX_CM)
        default y
 
-config BFIN_SHARED_FLASH_ENET
+config MEM_MT48LC32M16A2TG_75
        bool
        bool
-       depends on (BFIN533_STAMP)
+       depends on (BFIN527_EZKIT || BFIN532_IP0X || BLACKSTAMP || BFIN526_EZBRD)
        default y
 
        default y
 
+source "arch/blackfin/mach-bf527/Kconfig"
 source "arch/blackfin/mach-bf533/Kconfig"
 source "arch/blackfin/mach-bf561/Kconfig"
 source "arch/blackfin/mach-bf537/Kconfig"
 source "arch/blackfin/mach-bf533/Kconfig"
 source "arch/blackfin/mach-bf561/Kconfig"
 source "arch/blackfin/mach-bf537/Kconfig"
@@ -323,17 +288,41 @@ config CMDLINE
          to the kernel, you may specify one here. As a minimum, you should specify
          the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
 
          to the kernel, you may specify one here. As a minimum, you should specify
          the memory size and the root device (e.g., mem=8M, root=/dev/nfs).
 
+config BOOT_LOAD
+       hex "Kernel load address for booting"
+       default "0x1000"
+       range 0x1000 0x20000000
+       help
+         This option allows you to set the load address of the kernel.
+         This can be useful if you are on a board which has a small amount
+         of memory or you wish to reserve some memory at the beginning of
+         the address space.
+
+         Note that you need to keep this value above 4k (0x1000) as this
+         memory region is used to capture NULL pointer references as well
+         as some core kernel functions.
+
+config ROM_BASE
+       hex "Kernel ROM Base"
+       default "0x20040000"
+       range 0x20000000 0x20400000 if !(BF54x || BF561)
+       range 0x20000000 0x30000000 if (BF54x || BF561)
+       help
+
 comment "Clock/PLL Setup"
 
 config CLKIN_HZ
 comment "Clock/PLL Setup"
 
 config CLKIN_HZ
-       int "Crystal Frequency in Hz"
+       int "Frequency of the crystal on the board in Hz"
        default "11059200" if BFIN533_STAMP
        default "27000000" if BFIN533_EZKIT
        default "11059200" if BFIN533_STAMP
        default "27000000" if BFIN533_EZKIT
-       default "25000000" if BFIN537_STAMP
+       default "25000000" if (BFIN537_STAMP || BFIN527_EZKIT || H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD)
        default "30000000" if BFIN561_EZKIT
        default "24576000" if PNAV10
        default "30000000" if BFIN561_EZKIT
        default "24576000" if PNAV10
+       default "10000000" if BFIN532_IP0X
        help
          The frequency of CLKIN crystal oscillator on the board in Hz.
        help
          The frequency of CLKIN crystal oscillator on the board in Hz.
+         Warning: This value should match the crystal on the board. Otherwise,
+         peripherals won't work properly.
 
 config BFIN_KERNEL_CLOCK
        bool "Re-program Clocks while Kernel boots?"
 
 config BFIN_KERNEL_CLOCK
        bool "Re-program Clocks while Kernel boots?"
@@ -345,9 +334,9 @@ config BFIN_KERNEL_CLOCK
          configuration.
 
 config PLL_BYPASS
          configuration.
 
 config PLL_BYPASS
-        bool "Bypass PLL"
-        depends on BFIN_KERNEL_CLOCK
-        default n
+       bool "Bypass PLL"
+       depends on BFIN_KERNEL_CLOCK
+       default n
 
 config CLKIN_HALF
        bool "Half Clock In"
 
 config CLKIN_HALF
        bool "Half Clock In"
@@ -362,11 +351,11 @@ config VCO_MULT
        range 1 64
        default "22" if BFIN533_EZKIT
        default "45" if BFIN533_STAMP
        range 1 64
        default "22" if BFIN533_EZKIT
        default "45" if BFIN533_STAMP
-       default "20" if BFIN537_STAMP
+       default "20" if (BFIN537_STAMP || BFIN527_EZKIT || BFIN548_EZKIT || BFIN548_BLUETECHNIX_CM)
        default "22" if BFIN533_BLUETECHNIX_CM
        default "22" if BFIN533_BLUETECHNIX_CM
-       default "20" if BFIN537_BLUETECHNIX_CM
-       default "20" if BFIN561_BLUETECHNIX_CM
+       default "20" if (BFIN537_BLUETECHNIX_CM || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM)
        default "20" if BFIN561_EZKIT
        default "20" if BFIN561_EZKIT
+       default "16" if (H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD)
        help
          This controls the frequency of the on-chip PLL. This can be between 1 and 64.
          PLL Frequency = (Crystal Frequency) * (this setting)
        help
          This controls the frequency of the on-chip PLL. This can be between 1 and 64.
          PLL Frequency = (Crystal Frequency) * (this setting)
@@ -396,25 +385,43 @@ config SCLK_DIV
        int "System Clock Divider"
        depends on BFIN_KERNEL_CLOCK
        range 1 15
        int "System Clock Divider"
        depends on BFIN_KERNEL_CLOCK
        range 1 15
-       default 5 if BFIN533_EZKIT
-       default 5 if BFIN533_STAMP
-       default 4 if BFIN537_STAMP
-       default 5 if BFIN533_BLUETECHNIX_CM
-       default 4 if BFIN537_BLUETECHNIX_CM
-       default 4 if BFIN561_BLUETECHNIX_CM
-       default 5 if BFIN561_EZKIT
+       default 5
        help
          This sets the frequency of the system clock (including SDRAM or DDR).
          This can be between 1 and 15
          System Clock = (PLL frequency) / (this setting)
 
        help
          This sets the frequency of the system clock (including SDRAM or DDR).
          This can be between 1 and 15
          System Clock = (PLL frequency) / (this setting)
 
+choice
+       prompt "DDR SDRAM Chip Type"
+       depends on BFIN_KERNEL_CLOCK
+       depends on BF54x
+       default MEM_MT46V32M16_5B
+
+config MEM_MT46V32M16_6T
+       bool "MT46V32M16_6T"
+
+config MEM_MT46V32M16_5B
+       bool "MT46V32M16_5B"
+endchoice
+
+config MAX_MEM_SIZE
+       int "Max SDRAM Memory Size in MBytes"
+       depends on !MPU
+       default 512
+       help
+         This is the max memory size that the kernel will create CPLB
+         tables for.  Your system will not be able to handle any more.
+
 #
 # Max & Min Speeds for various Chips
 #
 config MAX_VCO_HZ
        int
        default 600000000 if BF522
 #
 # Max & Min Speeds for various Chips
 #
 config MAX_VCO_HZ
        int
        default 600000000 if BF522
+       default 400000000 if BF523
+       default 400000000 if BF524
        default 600000000 if BF525
        default 600000000 if BF525
+       default 400000000 if BF526
        default 600000000 if BF527
        default 400000000 if BF531
        default 400000000 if BF532
        default 600000000 if BF527
        default 400000000 if BF531
        default 400000000 if BF532
@@ -422,11 +429,13 @@ config MAX_VCO_HZ
        default 500000000 if BF534
        default 400000000 if BF536
        default 600000000 if BF537
        default 500000000 if BF534
        default 400000000 if BF536
        default 600000000 if BF537
-       default 533000000 if BF538
-       default 533000000 if BF539
+       default 533333333 if BF538
+       default 533333333 if BF539
        default 600000000 if BF542
        default 600000000 if BF542
-       default 533000000 if BF544
-       default 533000000 if BF549
+       default 533333333 if BF544
+       default 600000000 if BF547
+       default 600000000 if BF548
+       default 533333333 if BF549
        default 600000000 if BF561
 
 config MIN_VCO_HZ
        default 600000000 if BF561
 
 config MIN_VCO_HZ
@@ -435,7 +444,7 @@ config MIN_VCO_HZ
 
 config MAX_SCLK_HZ
        int
 
 config MAX_SCLK_HZ
        int
-       default 133000000
+       default 133333333
 
 config MIN_SCLK_HZ
        int
 
 config MIN_SCLK_HZ
        int
@@ -445,115 +454,77 @@ comment "Kernel Timer/Scheduler"
 
 source kernel/Kconfig.hz
 
 
 source kernel/Kconfig.hz
 
-comment "Memory Setup"
-
-config MEM_SIZE
-       int "SDRAM Memory Size in MBytes"
-       default  32 if BFIN533_EZKIT
-       default  64 if BFIN537_STAMP
-       default  64 if BFIN561_EZKIT
-       default 128 if BFIN533_STAMP
-       default  64 if PNAV10
-
-config MEM_ADD_WIDTH
-       int "SDRAM Memory Address Width"
-       default  9 if BFIN533_EZKIT
-       default  9 if BFIN561_EZKIT
-       default 10 if BFIN537_STAMP
-       default 11 if BFIN533_STAMP
-       default 10 if PNAV10
-
-config ENET_FLASH_PIN
-       int "PF port/pin used for flash and ethernet sharing"
-       depends on (BFIN533_STAMP)
-       default  0
-       help
-         PF port/pin used for flash and ethernet sharing to allow other PF
-         pins to be used on other platforms without having to touch common
-         code.
-         For example: PF0 --> 0,PF1 --> 1,PF2 --> 2, etc.
+config GENERIC_TIME
+       bool "Generic time"
+       default y
 
 
-config BOOT_LOAD
-       hex "Kernel load address for booting"
-       default "0x1000"
+config GENERIC_CLOCKEVENTS
+       bool "Generic clock events"
+       depends on GENERIC_TIME
+       default y
+
+config CYCLES_CLOCKSOURCE
+       bool "Use 'CYCLES' as a clocksource (EXPERIMENTAL)"
+       depends on EXPERIMENTAL
+       depends on GENERIC_CLOCKEVENTS
+       depends on !BFIN_SCRATCH_REG_CYCLES
+       default n
        help
        help
-         This option allows you to set the load address of the kernel.
-         This can be useful if you are on a board which has a small amount
-         of memory or you wish to reserve some memory at the beginning of
-         the address space.
+         If you say Y here, you will enable support for using the 'cycles'
+         registers as a clock source.  Doing so means you will be unable to
+         safely write to the 'cycles' register during runtime.  You will
+         still be able to read it (such as for performance monitoring), but
+         writing the registers will most likely crash the kernel.
 
 
-         Note that you generally want to keep this value at or above 4k
-         (0x1000) as this will allow the kernel to capture NULL pointer
-         references.
+source kernel/time/Kconfig
 
 
-comment "LED Status Indicators"
-       depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
+comment "Misc"
 
 
-config BFIN_ALIVE_LED
-       bool "Enable Board Alive"
-       depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
-       default n
+choice
+       prompt "Blackfin Exception Scratch Register"
+       default BFIN_SCRATCH_REG_RETN
        help
        help
-         Blink the LEDs you select when the kernel is running.  Helps detect
-         a hung kernel.
+         Select the resource to reserve for the Exception handler:
+           - RETN: Non-Maskable Interrupt (NMI)
+           - RETE: Exception Return (JTAG/ICE)
+           - CYCLES: Performance counter
 
 
-config BFIN_ALIVE_LED_NUM
-       int "LED"
-       depends on BFIN_ALIVE_LED
-       range 1 3 if BFIN533_STAMP
-       default "3" if BFIN533_STAMP
+         If you are unsure, please select "RETN".
+
+config BFIN_SCRATCH_REG_RETN
+       bool "RETN"
        help
        help
-         Select the LED (marked on the board) for you to blink.
+         Use the RETN register in the Blackfin exception handler
+         as a stack scratch register.  This means you cannot
+         safely use NMI on the Blackfin while running Linux, but
+         you can debug the system with a JTAG ICE and use the
+         CYCLES performance registers.
 
 
-config BFIN_IDLE_LED
-       bool "Enable System Load/Idle LED"
-       depends on (BFIN533_STAMP || BFIN533_BLUETECHNIX_CM)
-       default n
+         If you are unsure, please select "RETN".
+
+config BFIN_SCRATCH_REG_RETE
+       bool "RETE"
        help
        help
-         Blinks the LED you select when to determine kernel load.
+         Use the RETE register in the Blackfin exception handler
+         as a stack scratch register.  This means you cannot
+         safely use a JTAG ICE while debugging a Blackfin board,
+         but you can safely use the CYCLES performance registers
+         and the NMI.
 
 
-config BFIN_IDLE_LED_NUM
-       int "LED"
-       depends on BFIN_IDLE_LED
-       range 1 3 if BFIN533_STAMP
-       default "2" if BFIN533_STAMP
+         If you are unsure, please select "RETN".
+
+config BFIN_SCRATCH_REG_CYCLES
+       bool "CYCLES"
        help
        help
-         Select the LED (marked on the board) for you to blink.
+         Use the CYCLES register in the Blackfin exception handler
+         as a stack scratch register.  This means you cannot
+         safely use the CYCLES performance registers on a Blackfin
+         board at anytime, but you can debug the system with a JTAG
+         ICE and use the NMI.
 
 
-#
-# Sorry - but you need to put the hex address here -
-#
+         If you are unsure, please select "RETN".
 
 
-# Flag Data register
-config BFIN_ALIVE_LED_PORT
-       hex
-       default 0xFFC00700 if (BFIN533_STAMP)
-
-# Peripheral Flag Direction Register
-config BFIN_ALIVE_LED_DPORT
-       hex
-       default 0xFFC00730 if (BFIN533_STAMP)
-
-config BFIN_ALIVE_LED_PIN
-       hex
-       default 0x04 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 1)
-       default 0x08 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 2)
-       default 0x10 if (BFIN533_STAMP && BFIN_ALIVE_LED_NUM = 3)
-
-config BFIN_IDLE_LED_PORT
-       hex
-       default 0xFFC00700 if (BFIN533_STAMP)
-
-# Peripheral Flag Direction Register
-config BFIN_IDLE_LED_DPORT
-       hex
-       default 0xFFC00730 if (BFIN533_STAMP)
-
-config BFIN_IDLE_LED_PIN
-       hex
-       default 0x04 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 1)
-       default 0x08 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 2)
-       default 0x10 if (BFIN533_STAMP && BFIN_IDLE_LED_NUM = 3)
+endchoice
 
 endmenu
 
 
 endmenu
 
@@ -566,85 +537,86 @@ config I_ENTRY_L1
        bool "Locate interrupt entry code in L1 Memory"
        default y
        help
        bool "Locate interrupt entry code in L1 Memory"
        default y
        help
-         If enabled interrupt entry code (STORE/RESTORE CONTEXT) is linked
-         into L1 instruction memory.(less latency)
+         If enabled, interrupt entry code (STORE/RESTORE CONTEXT) is linked
+         into L1 instruction memory. (less latency)
 
 config EXCPT_IRQ_SYSC_L1
 
 config EXCPT_IRQ_SYSC_L1
-       bool "Locate entire ASM lowlevel excepetion / interrupt - Syscall and CPLB handler code in L1 Memory"
+       bool "Locate entire ASM lowlevel exception / interrupt - Syscall and CPLB handler code in L1 Memory"
        default y
        help
        default y
        help
-         If enabled entire ASM lowlevel exception and interrupt entry code (STORE/RESTORE CONTEXT) is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the entire ASM lowlevel exception and interrupt entry code
+         (STORE/RESTORE CONTEXT) is linked into L1 instruction memory.
+         (less latency)
 
 config DO_IRQ_L1
        bool "Locate frequently called do_irq dispatcher function in L1 Memory"
        default y
        help
 
 config DO_IRQ_L1
        bool "Locate frequently called do_irq dispatcher function in L1 Memory"
        default y
        help
-         If enabled frequently called do_irq dispatcher function is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the frequently called do_irq dispatcher function is linked
+         into L1 instruction memory. (less latency)
 
 config CORE_TIMER_IRQ_L1
        bool "Locate frequently called timer_interrupt() function in L1 Memory"
        default y
        help
 
 config CORE_TIMER_IRQ_L1
        bool "Locate frequently called timer_interrupt() function in L1 Memory"
        default y
        help
-         If enabled frequently called timer_interrupt() function is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the frequently called timer_interrupt() function is linked
+         into L1 instruction memory. (less latency)
 
 config IDLE_L1
        bool "Locate frequently idle function in L1 Memory"
        default y
        help
 
 config IDLE_L1
        bool "Locate frequently idle function in L1 Memory"
        default y
        help
-         If enabled frequently called idle function is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the frequently called idle function is linked
+         into L1 instruction memory. (less latency)
 
 config SCHEDULE_L1
        bool "Locate kernel schedule function in L1 Memory"
        default y
        help
 
 config SCHEDULE_L1
        bool "Locate kernel schedule function in L1 Memory"
        default y
        help
-         If enabled frequently called kernel schedule is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the frequently called kernel schedule is linked
+         into L1 instruction memory. (less latency)
 
 config ARITHMETIC_OPS_L1
        bool "Locate kernel owned arithmetic functions in L1 Memory"
        default y
        help
 
 config ARITHMETIC_OPS_L1
        bool "Locate kernel owned arithmetic functions in L1 Memory"
        default y
        help
-         If enabled arithmetic functions are linked
-         into L1 instruction memory.(less latency)
+         If enabled, arithmetic functions are linked
+         into L1 instruction memory. (less latency)
 
 config ACCESS_OK_L1
        bool "Locate access_ok function in L1 Memory"
        default y
        help
 
 config ACCESS_OK_L1
        bool "Locate access_ok function in L1 Memory"
        default y
        help
-         If enabled access_ok function is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the access_ok function is linked
+         into L1 instruction memory. (less latency)
 
 config MEMSET_L1
        bool "Locate memset function in L1 Memory"
        default y
        help
 
 config MEMSET_L1
        bool "Locate memset function in L1 Memory"
        default y
        help
-         If enabled memset function is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the memset function is linked
+         into L1 instruction memory. (less latency)
 
 config MEMCPY_L1
        bool "Locate memcpy function in L1 Memory"
        default y
        help
 
 config MEMCPY_L1
        bool "Locate memcpy function in L1 Memory"
        default y
        help
-         If enabled memcpy function is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the memcpy function is linked
+         into L1 instruction memory. (less latency)
 
 config SYS_BFIN_SPINLOCK_L1
        bool "Locate sys_bfin_spinlock function in L1 Memory"
        default y
        help
 
 config SYS_BFIN_SPINLOCK_L1
        bool "Locate sys_bfin_spinlock function in L1 Memory"
        default y
        help
-         If enabled sys_bfin_spinlock function is linked
-         into L1 instruction memory.(less latency)
+         If enabled, sys_bfin_spinlock function is linked
+         into L1 instruction memory. (less latency)
 
 config IP_CHECKSUM_L1
        bool "Locate IP Checksum function in L1 Memory"
        default n
        help
 
 config IP_CHECKSUM_L1
        bool "Locate IP Checksum function in L1 Memory"
        default n
        help
-         If enabled IP Checksum function is linked
-         into L1 instruction memory.(less latency)
+         If enabled, the IP Checksum function is linked
+         into L1 instruction memory. (less latency)
 
 config CACHELINE_ALIGNED_L1
        bool "Locate cacheline_aligned data to L1 Data Memory"
 
 config CACHELINE_ALIGNED_L1
        bool "Locate cacheline_aligned data to L1 Data Memory"
@@ -652,24 +624,60 @@ config CACHELINE_ALIGNED_L1
        default n if BF54x
        depends on !BF531
        help
        default n if BF54x
        depends on !BF531
        help
-         If enabled cacheline_anligned data is linked
-         into L1 data memory.(less latency)
+         If enabled, cacheline_anligned data is linked
+         into L1 data memory. (less latency)
 
 config SYSCALL_TAB_L1
        bool "Locate Syscall Table L1 Data Memory"
        default n
        depends on !BF531
        help
 
 config SYSCALL_TAB_L1
        bool "Locate Syscall Table L1 Data Memory"
        default n
        depends on !BF531
        help
-         If enabled the Syscall LUT is linked
-         into L1 data memory.(less latency)
+         If enabled, the Syscall LUT is linked
+         into L1 data memory. (less latency)
 
 config CPLB_SWITCH_TAB_L1
        bool "Locate CPLB Switch Tables L1 Data Memory"
        default n
        depends on !BF531
        help
 
 config CPLB_SWITCH_TAB_L1
        bool "Locate CPLB Switch Tables L1 Data Memory"
        default n
        depends on !BF531
        help
-         If enabled the CPLB Switch Tables are linked
-         into L1 data memory.(less latency)
+         If enabled, the CPLB Switch Tables are linked
+         into L1 data memory. (less latency)
+
+config APP_STACK_L1
+       bool "Support locating application stack in L1 Scratch Memory"
+       default y
+       help
+         If enabled the application stack can be located in L1
+         scratch memory (less latency).
+
+         Currently only works with FLAT binaries.
+
+comment "Speed Optimizations"
+config BFIN_INS_LOWOVERHEAD
+       bool "ins[bwl] low overhead, higher interrupt latency"
+       default y
+       help
+         Reads on the Blackfin are speculative. In Blackfin terms, this means
+         they can be interrupted at any time (even after they have been issued
+         on to the external bus), and re-issued after the interrupt occurs.
+         For memory - this is not a big deal, since memory does not change if
+         it sees a read.
+
+         If a FIFO is sitting on the end of the read, it will see two reads,
+         when the core only sees one since the FIFO receives both the read
+         which is cancelled (and not delivered to the core) and the one which
+         is re-issued (which is delivered to the core).
+
+         To solve this, interrupts are turned off before reads occur to
+         I/O space. This option controls which the overhead/latency of
+         controlling interrupts during this time
+          "n" turns interrupts off every read
+               (higher overhead, but lower interrupt latency)
+          "y" turns interrupts off every loop
+               (low overhead, but longer interrupt latency)
+
+         default behavior is to leave this set to on (type "Y"). If you are experiencing
+         interrupt latency issues, it is safe and OK to turn this off.
 
 endmenu
 
 
 endmenu
 
@@ -693,17 +701,19 @@ endchoice
 
 source "mm/Kconfig"
 
 
 source "mm/Kconfig"
 
-config LARGE_ALLOCS
-       bool "Allow allocating large blocks (> 1MB) of memory"
+config BFIN_GPTIMERS
+       tristate "Enable Blackfin General Purpose Timers API"
+       default n
        help
        help
-         Allow the slab memory allocator to keep chains for very large
-         memory sizes - upto 32MB. You may need this if your system has
-         a lot of RAM, and you need to able to allocate very large
-         contiguous chunks. If unsure, say N.
+         Enable support for the General Purpose Timers API.  If you
+         are unsure, say N.
+
+         To compile this driver as a module, choose M here: the module
+         will be called gptimers.ko.
 
 config BFIN_DMA_5XX
        bool "Enable DMA Support"
 
 config BFIN_DMA_5XX
        bool "Enable DMA Support"
-       depends on (BF533 || BF532 || BF531 || BF537 || BF536 || BF534 || BF561 || BF54x)
+       depends on (BF52x || BF53x || BF561 || BF54x)
        default y
        help
          DMA driver for BF5xx.
        default y
        help
          DMA driver for BF5xx.
@@ -711,7 +721,9 @@ config BFIN_DMA_5XX
 choice
        prompt "Uncached SDRAM region"
        default DMA_UNCACHED_1M
 choice
        prompt "Uncached SDRAM region"
        default DMA_UNCACHED_1M
-       depends BFIN_DMA_5XX
+       depends on BFIN_DMA_5XX
+config DMA_UNCACHED_4M
+       bool "Enable 4M DMA region"
 config DMA_UNCACHED_2M
        bool "Enable 2M DMA region"
 config DMA_UNCACHED_1M
 config DMA_UNCACHED_2M
        bool "Enable 2M DMA region"
 config DMA_UNCACHED_1M
@@ -722,22 +734,22 @@ endchoice
 
 
 comment "Cache Support"
 
 
 comment "Cache Support"
-config BLKFIN_CACHE
+config BFIN_ICACHE
        bool "Enable ICACHE"
        bool "Enable ICACHE"
-config BLKFIN_DCACHE
+config BFIN_DCACHE
        bool "Enable DCACHE"
        bool "Enable DCACHE"
-config BLKFIN_DCACHE_BANKA
+config BFIN_DCACHE_BANKA
        bool "Enable only 16k BankA DCACHE - BankB is SRAM"
        bool "Enable only 16k BankA DCACHE - BankB is SRAM"
-       depends on BLKFIN_DCACHE && !BF531
+       depends on BFIN_DCACHE && !BF531
        default n
        default n
-config BLKFIN_CACHE_LOCK
-       bool "Enable Cache Locking"
+config BFIN_ICACHE_LOCK
+       bool "Enable Instruction Cache Locking"
 
 choice
        prompt "Policy"
 
 choice
        prompt "Policy"
-       depends on BLKFIN_DCACHE
-       default BLKFIN_WB
-config BLKFIN_WB
+       depends on BFIN_DCACHE
+       default BFIN_WB
+config BFIN_WB
        bool "Write back"
        help
          Write Back Policy:
        bool "Write back"
        help
          Write Back Policy:
@@ -754,7 +766,7 @@ config BLKFIN_WB
          If you are unsure of the options and you want to be safe,
          then go with Write Through.
 
          If you are unsure of the options and you want to be safe,
          then go with Write Through.
 
-config BLKFIN_WT
+config BFIN_WT
        bool "Write through"
        help
          Write Back Policy:
        bool "Write through"
        help
          Write Back Policy:
@@ -773,23 +785,30 @@ config BLKFIN_WT
 
 endchoice
 
 
 endchoice
 
-config L1_MAX_PIECE
-       int "Set the max L1 SRAM pieces"
-       default 16
+config BFIN_L2_CACHEABLE
+       bool "Cache L2 SRAM"
+       depends on (BFIN_DCACHE || BFIN_ICACHE) && (BF54x || BF561)
+       default n
+       help
+         Select to make L2 SRAM cacheable in L1 data and instruction cache.
+
+config MPU
+       bool "Enable the memory protection unit (EXPERIMENTAL)"
+       default n
        help
        help
-         Set the max memory pieces for the L1 SRAM allocation algorithm.
-         Min value is 16. Max value is 1024.
+         Use the processor's MPU to protect applications from accessing
+         memory they do not own.  This comes at a performance penalty
+         and is recommended only for debugging.
 
 comment "Asynchonous Memory Configuration"
 
 
 comment "Asynchonous Memory Configuration"
 
-menu "EBIU_AMBCTL Global Control"
+menu "EBIU_AMGCTL Global Control"
 config C_AMCKEN
        bool "Enable CLKOUT"
        default y
 
 config C_CDPRIO
        bool "DMA has priority over core for ext. accesses"
 config C_AMCKEN
        bool "Enable CLKOUT"
        default y
 
 config C_CDPRIO
        bool "DMA has priority over core for ext. accesses"
-       depends on !BF54x
        default n
 
 config C_B0PEN
        default n
 
 config C_B0PEN
@@ -841,6 +860,7 @@ config BANK_0
 config BANK_1
        hex "Bank 1"
        default 0x7BB0
 config BANK_1
        hex "Bank 1"
        default 0x7BB0
+       default 0x5558 if BF54x
 
 config BANK_2
        hex "Bank 2"
 
 config BANK_2
        hex "Bank 2"
@@ -851,6 +871,20 @@ config BANK_3
        default 0x99B3
 endmenu
 
        default 0x99B3
 endmenu
 
+config EBIU_MBSCTLVAL
+       hex "EBIU Bank Select Control Register"
+       depends on BF54x
+       default 0
+
+config EBIU_MODEVAL
+       hex "Flash Memory Mode Control Register"
+       depends on BF54x
+       default 1
+
+config EBIU_FCTLVAL
+       hex "Flash Memory Bank Control Register"
+       depends on BF54x
+       default 6
 endmenu
 
 #############################################################################
 endmenu
 
 #############################################################################
@@ -858,6 +892,7 @@ menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
 
 config PCI
        bool "PCI support"
 
 config PCI
        bool "PCI support"
+       depends on BROKEN
        help
          Support for PCI bus.
 
        help
          Support for PCI bus.
 
@@ -875,8 +910,8 @@ config HOTPLUG
          plugged into slots found on all modern laptop computers.  Another
          example, used on modern desktops as well as laptops, is USB.
 
          plugged into slots found on all modern laptop computers.  Another
          example, used on modern desktops as well as laptops, is USB.
 
-         Enable HOTPLUG and KMOD, and build a modular kernel.  Get agent
-         software (at <http://linux-hotplug.sourceforge.net/>) and install it.
+         Enable HOTPLUG and build a modular kernel.  Get agent software
+         (from <http://linux-hotplug.sourceforge.net/>) and install it.
          Then your kernel will automatically call out to a user mode "policy
          agent" (/sbin/hotplug) to load modules and set up software needed
          to use devices as you hotplug them.
          Then your kernel will automatically call out to a user mode "policy
          agent" (/sbin/hotplug) to load modules and set up software needed
          to use devices as you hotplug them.
@@ -896,31 +931,50 @@ endmenu
 menu "Power management options"
 source "kernel/power/Kconfig"
 
 menu "Power management options"
 source "kernel/power/Kconfig"
 
+config ARCH_SUSPEND_POSSIBLE
+       def_bool y
+       depends on !SMP
+
 choice
 choice
-       prompt "Select PM Wakeup Event Source"
-       default PM_WAKEUP_GPIO_BY_SIC_IWR
+       prompt "Standby Power Saving Mode"
        depends on PM
        depends on PM
-       help
-         If you have a GPIO already configured as input with the corresponding PORTx_MASK
-         bit set - "Specify Wakeup Event by SIC_IWR value"
-
-config PM_WAKEUP_GPIO_BY_SIC_IWR
-       bool "Specify Wakeup Event by SIC_IWR value"
-config PM_WAKEUP_BY_GPIO
-       bool "Cause Wakeup Event by GPIO"
-config PM_WAKEUP_GPIO_API
-       bool "Configure Wakeup Event by PM GPIO API"
-
+       default PM_BFIN_SLEEP_DEEPER
+config  PM_BFIN_SLEEP_DEEPER
+       bool "Sleep Deeper"
+       help
+         Sleep "Deeper" Mode (High Power Savings) - This mode reduces dynamic
+         power dissipation by disabling the clock to the processor core (CCLK).
+         Furthermore, Standby sets the internal power supply voltage (VDDINT)
+         to 0.85 V to provide the greatest power savings, while preserving the
+         processor state.
+         The PLL and system clock (SCLK) continue to operate at a very low
+         frequency of about 3.3 MHz. To preserve data integrity in the SDRAM,
+         the SDRAM is put into Self Refresh Mode. Typically an external event
+         such as GPIO interrupt or RTC activity wakes up the processor.
+         Various Peripherals such as UART, SPORT, PPI may not function as
+         normal during Sleep Deeper, due to the reduced SCLK frequency.
+         When in the sleep mode, system DMA access to L1 memory is not supported.
+
+         If unsure, select "Sleep Deeper".
+
+config  PM_BFIN_SLEEP
+       bool "Sleep"
+       help
+         Sleep Mode (High Power Savings) - The sleep mode reduces power
+         dissipation by disabling the clock to the processor core (CCLK).
+         The PLL and system clock (SCLK), however, continue to operate in
+         this mode. Typically an external event or RTC activity will wake
+         up the processor. When in the sleep mode, system DMA access to L1
+         memory is not supported.
+
+         If unsure, select "Sleep Deeper".
 endchoice
 
 endchoice
 
-config PM_WAKEUP_SIC_IWR
-       hex "Wakeup Events (SIC_IWR)"
-       depends on PM_WAKEUP_GPIO_BY_SIC_IWR
-       default 0x80000000 if (BF537 || BF536 || BF534)
-       default 0x100000 if (BF533 || BF532 || BF531)
+config PM_WAKEUP_BY_GPIO
+       bool "Allow Wakeup from Standby by GPIO"
 
 config PM_WAKEUP_GPIO_NUMBER
 
 config PM_WAKEUP_GPIO_NUMBER
-       int "Wakeup GPIO number"
+       int "GPIO number"
        range 0 47
        depends on PM_WAKEUP_BY_GPIO
        default 2 if BFIN537_STAMP
        range 0 47
        depends on PM_WAKEUP_BY_GPIO
        default 2 if BFIN537_STAMP
@@ -941,204 +995,48 @@ config  PM_WAKEUP_GPIO_POLAR_EDGE_B
        bool "Both EDGE"
 endchoice
 
        bool "Both EDGE"
 endchoice
 
-endmenu
-
-if (BF537 || BF533 || BF54x)
-
-menu "CPU Frequency scaling"
-
-source "drivers/cpufreq/Kconfig"
+comment "Possible Suspend Mem / Hibernate Wake-Up Sources"
+       depends on PM
 
 
-config CPU_FREQ
-       bool
+config PM_BFIN_WAKE_PH6
+       bool "Allow Wake-Up from on-chip PHY or PH6 GP"
+       depends on PM && (BF52x || BF534 || BF536 || BF537)
        default n
        help
        default n
        help
-         If you want to enable this option, you should select the
-         DPMC driver from Character Devices.
-endmenu
-
-endif
-
-source "net/Kconfig"
-
-source "drivers/Kconfig"
-
-source "fs/Kconfig"
-
-source "arch/blackfin/oprofile/Kconfig"
-
-menu "Kernel hacking"
-
-source "lib/Kconfig.debug"
-
-config DEBUG_HWERR
-       bool "Hardware error interrupt debugging"
-       depends on DEBUG_KERNEL
-       help
-         When enabled, the hardware error interrupt is never disabled, and
-         will happen immediately when an error condition occurs.  This comes
-         at a slight cost in code size, but is necessary if you are getting
-         hardware error interrupts and need to know where they are coming
-         from.
-
-config DEBUG_ICACHE_CHECK
-       bool "Check Instruction cache coherancy"
-       depends on DEBUG_KERNEL
-       depends on DEBUG_HWERR
-       help
-         Say Y here if you are getting wierd unexplained errors. This will
-         ensure that icache is what SDRAM says it should be, by doing a
-         byte wise comparision between SDRAM and instruction cache. This
-         also relocates the irq_panic() function to L1 memory, (which is
-         un-cached).
+         Enable PHY and PH6 GP Wake-Up (Voltage Regulator Power-Up)
 
 
-config DEBUG_KERNEL_START
-       bool "Debug Kernel Startup"
-       depends on DEBUG_KERNEL
-       help
-         Say Y here to put in an mini-execption handler before the kernel
-         replaces the bootloader exception handler. This will stop kernels
-         from dieing at startup with no visible error messages.
-
-config DEBUG_SERIAL_EARLY_INIT
-       bool "Initialize serial driver early"
+config PM_BFIN_WAKE_GP
+       bool "Allow Wake-Up from GPIOs"
+       depends on PM && BF54x
        default n
        default n
-       depends on SERIAL_BFIN
-       help
-         Say Y here if you want to get kernel output early when kernel
-         crashes before the normal console initialization. If this option
-         is enable, console output will always go to the ttyBF0, no matter
-         what kernel boot paramters you set.
-
-config DEBUG_HUNT_FOR_ZERO
-       bool "Catch NULL pointer reads/writes"
-       default y
-       help
-         Say Y here to catch reads/writes to anywhere in the memory range
-         from 0x0000 - 0x0FFF (the first 4k) of memory.  This is useful in
-         catching common programming errors such as NULL pointer dereferences.
-
-         Misbehaving applications will be killed (generate a SEGV) while the
-         kernel will trigger a panic.
-
-         Enabling this option will take up an extra entry in CPLB table.
-         Otherwise, there is no extra overhead.
-
-config DEBUG_BFIN_HWTRACE_ON
-       bool "Turn on Blackfin's Hardware Trace"
-       default y
-       help
-         All Blackfins include a Trace Unit which stores a history of the last
-         16 changes in program flow taken by the program sequencer. The history
-         allows the user to recreate the program sequencer’s recent path. This
-         can be handy when an application dies - we print out the execution
-         path of how it got to the offending instruction.
-
-         By turning this off, you may save a tiny amount of power.
-
-choice
-       prompt "Omit loop Tracing"
-       default DEBUG_BFIN_HWTRACE_COMPRESSION_OFF
-       depends on DEBUG_BFIN_HWTRACE_ON
-       help
-         The trace buffer can be configured to omit recording of changes in
-         program flow that match either the last entry or one of the last
-         two entries. Omitting one of these entries from the record prevents
-         the trace buffer from overflowing because of any sort of loop (for, do
-         while, etc) in the program.
-
-         Because zero-overhead Hardware loops are not recorded in the trace buffer,
-         this feature can be used to prevent trace overflow from loops that
-         are nested four deep.
-
-config DEBUG_BFIN_HWTRACE_COMPRESSION_OFF
-       bool "Trace all Loops"
-       help
-         The trace buffer records all changes of flow 
-
-config DEBUG_BFIN_HWTRACE_COMPRESSION_ONE
-       bool "Compress single-level loops"
        help
        help
-         The trace buffer does not record single loops - helpful if trace 
-         is spinning on a while or do loop.
-
-config DEBUG_BFIN_HWTRACE_COMPRESSION_TWO
-       bool "Compress two-level loops"
-       help
-         The trace buffer does not record loops two levels deep. Helpful if
-         the trace is spinning in a nested loop
-
-endchoice
+         Enable General-Purpose Wake-Up (Voltage Regulator Power-Up)
+endmenu
 
 
-config DEBUG_BFIN_HWTRACE_COMPRESSION
-       int
-       depends on DEBUG_BFIN_HWTRACE_ON
-       default 0 if DEBUG_BFIN_HWTRACE_COMPRESSION_OFF
-       default 1 if DEBUG_BFIN_HWTRACE_COMPRESSION_ONE
-       default 2 if DEBUG_BFIN_HWTRACE_COMPRESSION_TWO
+menu "CPU Frequency scaling"
 
 
+source "drivers/cpufreq/Kconfig"
 
 
-config DEBUG_BFIN_HWTRACE_EXPAND
-       bool "Expand Trace Buffer greater than 16 entries"
-       depends on DEBUG_BFIN_HWTRACE_ON
-       default n
-       help
-         By selecting this option, every time the 16 hardware entries in
-         the Blackfin's HW Trace buffer are full, the kernel will move them
-         into a software buffer, for dumping when there is an issue. This 
-         has a great impact on performance, (an interrupt every 16 change of 
-         flows) and should normally be turned off, except in those nasty
-         debugging sessions
-
-config DEBUG_BFIN_HWTRACE_EXPAND_LEN
-       int "Size of Trace buffer (in power of 2k)"
-       range 0 4
-       depends on DEBUG_BFIN_HWTRACE_EXPAND
-       default 1
-       help
-         This sets the size of the software buffer that the trace information
-         is kept in.
-         0 for (2^0)  1k, or 256 entries,
-         1 for (2^1)  2k, or 512 entries,
-         2 for (2^2)  4k, or 1024 entries,
-         3 for (2^3)  8k, or 2048 entries,
-         4 for (2^4) 16k, or 4096 entries
-
-config DEBUG_BFIN_NO_KERN_HWTRACE
-       bool "Trace user apps (turn off hwtrace in kernel)"
-       depends on DEBUG_BFIN_HWTRACE_ON
+config CPU_VOLTAGE
+       bool "CPU Voltage scaling"
+       depends on EXPERIMENTAL 
+       depends on CPU_FREQ
        default n
        help
        default n
        help
-         Some pieces of the kernel contain a lot of flow changes which can
-         quickly fill up the hardware trace buffer.  When debugging crashes,
-         the hardware trace may indicate that the problem lies in kernel
-         space when in reality an application is buggy.
+         Say Y here if you want CPU voltage scaling according to the CPU frequency.
+         This option violates the PLL BYPASS recommendation in the Blackfin Processor
+         manuals. There is a theoretical risk that during VDDINT transitions 
+         the PLL may unlock.
 
 
-         Say Y here to disable hardware tracing in some known "jumpy" pieces
-         of code so that the trace buffer will extend further back.
-
-config DUAL_CORE_TEST_MODULE
-       tristate "Dual Core Test Module"
-       depends on (BF561)
-       default n
-       help
-         Say Y here to build-in dual core test module for dual core test.
+endmenu
 
 
-config CPLB_INFO
-       bool "Display the CPLB information"
-       help
-         Display the CPLB information.
+source "net/Kconfig"
 
 
-config ACCESS_CHECK
-       bool "Check the user pointer address"
-       default y
-       help
-         Usually the pointer transfer from user space is checked to see if its
-         address is in the kernel space.
+source "drivers/Kconfig"
 
 
-         Say N here to disable that check to improve the performance.
+source "fs/Kconfig"
 
 
-endmenu
+source "arch/blackfin/Kconfig.debug"
 
 source "security/Kconfig"
 
 
 source "security/Kconfig"