Merge to kernel-2.6.20-1.2949.fc6.vs2.2.0.1
[linux-2.6.git] / arch / m68knommu / Kconfig
index b8f71e7..5f592ec 100644 (file)
@@ -5,6 +5,10 @@
 
 mainmenu "uClinux/68k (w/o MMU) Kernel Configuration"
 
 
 mainmenu "uClinux/68k (w/o MMU) Kernel Configuration"
 
+config M68K
+       bool
+       default y
+
 config MMU
        bool
        default n
 config MMU
        bool
        default n
@@ -13,10 +17,6 @@ config FPU
        bool
        default n
 
        bool
        default n
 
-config UID16
-       bool
-       default y
-
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
 config RWSEM_GENERIC_SPINLOCK
        bool
        default y
@@ -25,6 +25,29 @@ config RWSEM_XCHGADD_ALGORITHM
        bool
        default n
 
        bool
        default n
 
+config ARCH_HAS_ILOG2_U32
+       bool
+       default n
+
+config ARCH_HAS_ILOG2_U64
+       bool
+       default n
+
+config GENERIC_FIND_NEXT_BIT
+       bool
+       default y
+
+config GENERIC_HWEIGHT
+       bool
+       default y
+
+config GENERIC_CALIBRATE_DELAY
+       bool
+       default y
+
+config TIME_LOW_RES
+       bool
+       default y
 
 source "init/Kconfig"
 
 
 source "init/Kconfig"
 
@@ -64,26 +87,51 @@ config M5206e
        help
          Motorola ColdFire 5206e processor support.
 
        help
          Motorola ColdFire 5206e processor support.
 
+config M520x
+       bool "MCF520x"
+       help
+          Freescale Coldfire 5207/5208 processor support.
+
+config M523x
+       bool "MCF523x"
+       help
+         Freescale Coldfire 5230/1/2/4/5 processor support
+
 config M5249
        bool "MCF5249"
        help
          Motorola ColdFire 5249 processor support.
 
 config M5249
        bool "MCF5249"
        help
          Motorola ColdFire 5249 processor support.
 
+config M5271
+       bool "MCF5271"
+       help
+         Freescale (Motorola) ColdFire 5270/5271 processor support.
+
 config M5272
        bool "MCF5272"
        help
          Motorola ColdFire 5272 processor support.
 
 config M5272
        bool "MCF5272"
        help
          Motorola ColdFire 5272 processor support.
 
-config M5282
-       bool "MCF5282"
+config M5275
+       bool "MCF5275"
+       help
+         Freescale (Motorola) ColdFire 5274/5275 processor support.
+
+config M528x
+       bool "MCF528x"
        help
        help
-         Motorola ColdFire 5282 processor support.
+         Motorola ColdFire 5280/5282 processor support.
 
 config M5307
        bool "MCF5307"
        help
          Motorola ColdFire 5307 processor support.
 
 
 config M5307
        bool "MCF5307"
        help
          Motorola ColdFire 5307 processor support.
 
+config M532x
+       bool "MCF532x"
+       help
+         Freescale (Motorola) ColdFire 532x processor support.
+
 config M5407
        bool "MCF5407"
        help
 config M5407
        bool "MCF5407"
        help
@@ -91,107 +139,50 @@ config M5407
 
 endchoice
 
 
 endchoice
 
-config COLDFIRE
+config M527x
        bool
        bool
-       depends on (M5206 || M5206e || M5249 || M5272 || M5282 || M5307 || M5407)
+       depends on (M5271 || M5275)
        default y
 
        default y
 
-choice
-       prompt "CPU CLOCK Frequency"
-       default AUTO
-
-config CLOCK_AUTO
-       bool "AUTO"
-       ---help---
-         Define the CPU clock frequency in use. On many boards you don't
-         really need to know, so you can select the AUTO option. On some
-         boards you need to know the real clock frequency to determine other
-         system timing (for example baud rate dividors, etc). Some processors
-         have an internal PLL and you can select a frequency to run at.
-         You need to know a little about the internals of your processor to
-         set this. If in doubt choose the AUTO option.
-
-config CLOCK_11MHz
-       bool "11MHz"
-       help
-         Select an 11MHz CPU clock frequency.
-
-config CLOCK_16MHz
-       bool "16MHz"
-       help
-         Select an 16MHz CPU clock frequency.
-
-config CLOCK_20MHz
-       bool "20MHz"
-       help
-         Select an 20MHz CPU clock frequency.
-
-config CLOCK_24MHz
-       bool "24MHz"
-       help
-         Select an 24MHz CPU clock frequency.
-
-config CLOCK_25MHz
-       bool "25MHz"
-       help
-         Select an 25MHz CPU clock frequency.
-
-config CLOCK_33MHz
-       bool "33MHz"
-       help
-         Select an 33MHz CPU clock frequency.
-
-config CLOCK_40MHz
-       bool "40MHz"
-       help
-         Select an 40MHz CPU clock frequency.
-
-config CLOCK_45MHz
-       bool "45MHz"
-       help
-         Select an 45MHz CPU clock frequency.
-
-config CLOCK_48MHz
-       bool "48MHz"
-       help
-         Select an 48MHz CPU clock frequency.
-
-config CLOCK_50MHz
-       bool "50MHz"
-       help
-         Select an 50MHz CPU clock frequency.
-
-config CLOCK_54MHz
-       bool "54MHz"
-       help
-         Select an 54MHz CPU clock frequency.
-
-config CLOCK_60MHz
-       bool "60MHz"
-       help
-         Select an 60MHz CPU clock frequency.
-
-config CLOCK_64MHz
-       bool "64MHz"
-       help
-         Select an 64MHz CPU clock frequency.
-
-config CLOCK_66MHz
-       bool "66MHz"
-       help
-         Select an 66MHz CPU clock frequency.
-
-config CLOCK_70MHz
-       bool "70MHz"
-       help
-         Select an 70MHz CPU clock frequency.
+config COLDFIRE
+       bool
+       depends on (M5206 || M5206e || M520x || M523x || M5249 || M527x || M5272 || M528x || M5307 || M532x || M5407)
+       default y
 
 
-config CLOCK_140MHz
-       bool "140MHz"
+config CLOCK_SET
+       bool "Enable setting the CPU clock frequency"
+       default n
        help
        help
-         Select an 140MHz CPU clock frequency.
-
-endchoice
+         On some CPU's you do not need to know what the core CPU clock
+         frequency is. On these you can disable clock setting. On some
+         traditional 68K parts, and on all ColdFire parts you need to set
+         the appropriate CPU clock frequency. On these devices many of the
+         onboard peripherals derive their timing from the master CPU clock
+         frequency.
+
+config CLOCK_FREQ
+       int "Set the core clock frequency"
+       default "66666666"
+       depends on CLOCK_SET
+       help
+         Define the CPU clock frequency in use. This is the core clock
+         frequency, it may or may not be the same as the external clock
+         crystal fitted to your board. Some processors have an internal
+         PLL and can have their frequency programmed at run time, others
+         use internal dividers. In general the kernel won't setup a PLL
+         if it is fitted (there are some exceptions). This value will be
+         specific to the exact CPU that you are using.
+
+config CLOCK_DIV
+       int "Set the core/bus clock divide ratio"
+       default "1"
+       depends on CLOCK_SET
+       help
+         On many SoC style CPUs the master CPU clock is also used to drive 
+         on-chip peripherals. The clock that is distributed to these
+         peripherals is sometimes a fixed ratio of the master clock
+         frequency. If so then set this to the divider ratio of the
+         master clock to the peripheral clock. If not sure then select 1.
 
 config OLDMASK
        bool "Old mask 5307 (1H55J) silicon"
 
 config OLDMASK
        bool "Old mask 5307 (1H55J) silicon"
@@ -209,7 +200,7 @@ config PILOT3
          Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII.
 
 config XCOPILOT_BUGS
          Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII.
 
 config XCOPILOT_BUGS
-       bool "  (X)Copilot support"
+       bool "(X)Copilot support"
        depends on PILOT3
        help
          Support the bugs of Xcopilot.
        depends on PILOT3
        help
          Support the bugs of Xcopilot.
@@ -233,20 +224,20 @@ config DRAGEN2
          Support for the DragenEngine II board.
 
 config DIRECT_IO_ACCESS
          Support for the DragenEngine II board.
 
 config DIRECT_IO_ACCESS
-       bool "  Allow user to access IO directly"
+       bool "Allow user to access IO directly"
        depends on (UCSIMM || UCDIMM || DRAGEN2)
        help
          Disable the CPU internal registers protection in user mode,
           to allow a user application to read/write them.
 
 config INIT_LCD
        depends on (UCSIMM || UCDIMM || DRAGEN2)
        help
          Disable the CPU internal registers protection in user mode,
           to allow a user application to read/write them.
 
 config INIT_LCD
-       bool "  Initialize LCD"
+       bool "Initialize LCD"
        depends on (UCSIMM || UCDIMM || DRAGEN2)
        help
          Initialize the LCD controller of the 68x328 processor.
 
 config MEMORY_RESERVE
        depends on (UCSIMM || UCDIMM || DRAGEN2)
        help
          Initialize the LCD controller of the 68x328 processor.
 
 config MEMORY_RESERVE
-       int "  Memory reservation (MiB)"
+       int "Memory reservation (MiB)"
        depends on (UCSIMM || UCDIMM)
        help
          Reserve certain memory regions on 68x328 based boards.
        depends on (UCSIMM || UCDIMM)
        help
          Reserve certain memory regions on 68x328 based boards.
@@ -275,12 +266,36 @@ config ELITE
        help
          Support for the Motorola M5206eLITE board.
 
        help
          Support for the Motorola M5206eLITE board.
 
+config M5208EVB
+       bool "Freescale M5208EVB board support"
+       depends on M520x
+       help
+         Support for the Freescale Coldfire M5208EVB.
+
+config M5235EVB
+       bool "Freescale M5235EVB support"
+       depends on M523x
+       help
+         Support for the Freescale M5235EVB board.
+
 config M5249C3
        bool "Motorola M5249C3 board support"
        depends on M5249
        help
          Support for the Motorola M5249C3 board.
 
 config M5249C3
        bool "Motorola M5249C3 board support"
        depends on M5249
        help
          Support for the Motorola M5249C3 board.
 
+config M5271EVB
+       bool "Freescale (Motorola) M5271EVB board support"
+       depends on M5271
+       help
+         Support for the Freescale (Motorola) M5271EVB board.
+
+config M5275EVB
+       bool "Freescale (Motorola) M5275EVB board support"
+       depends on M5275
+       help
+         Support for the Freescale (Motorola) M5275EVB board.
+
 config M5272C3
        bool "Motorola M5272C3 board support"
        depends on M5272
 config M5272C3
        bool "Motorola M5272C3 board support"
        depends on M5272
@@ -293,17 +308,29 @@ config COBRA5272
        help
          Support for the senTec COBRA5272 board.
 
        help
          Support for the senTec COBRA5272 board.
 
-config M5282C3
-       bool "Motorola M5282C3 board support"
-       depends on M5282
+config AVNET5282
+       bool "Avnet 5282 board support"
+       depends on M528x
        help
        help
-         Support for the Motorola M5282C3 board.
+         Support for the Avnet 5282 board.  
+         
+config M5282EVB
+       bool "Motorola M5282EVB board support"
+       depends on M528x
+       help
+         Support for the Motorola M5282EVB board.
 
 config COBRA5282
        bool "senTec COBRA5282 board support"
 
 config COBRA5282
        bool "senTec COBRA5282 board support"
-       depends on M5282
+       depends on M528x
        help
          Support for the senTec COBRA5282 board.
        help
          Support for the senTec COBRA5282 board.
+         
+config SOM5282EM
+       bool "EMAC.Inc SOM5282EM board support"
+       depends on M528x
+       help
+         Support for the EMAC.Inc SOM5282EM module.  
 
 config ARN5307
        bool "Arnewsh 5307 board support"
 
 config ARN5307
        bool "Arnewsh 5307 board support"
@@ -329,6 +356,18 @@ config SECUREEDGEMP3
        help
          Support for the SnapGear SecureEdge/MP3 platform.
 
        help
          Support for the SnapGear SecureEdge/MP3 platform.
 
+config M5329EVB
+       bool "Freescale (Motorola) M5329EVB board support"
+       depends on M532x
+       help
+         Support for the Freescale (Motorola) M5329EVB board.
+
+config COBRA5329
+       bool "senTec COBRA5329 board support"
+       depends on M532x
+       help
+         Support for the senTec COBRA5329 board.
+
 config M5407C3
        bool "Motorola M5407C3 board support"
        depends on M5407
 config M5407C3
        bool "Motorola M5407C3 board support"
        depends on M5407
@@ -341,6 +380,18 @@ config CLEOPATRA
        help
          Support for the Feith Cleopatra boards.
 
        help
          Support for the Feith Cleopatra boards.
 
+config CANCam
+       bool "Feith CANCam board support"
+       depends on M5272
+       help
+         Support for the Feith CANCam board.
+
+config SCALES
+       bool "Feith SCALES board support"
+       depends on M5272
+       help
+         Support for the Feith SCALES board.
+
 config NETtel
        bool "SecureEdge/NETtel board support"
        depends on (M5206e || M5272 || M5307)
 config NETtel
        bool "SecureEdge/NETtel board support"
        depends on (M5206e || M5272 || M5307)
@@ -353,8 +404,20 @@ config SNAPGEAR
        help
          Special additional support for SnapGear router boards.
 
        help
          Special additional support for SnapGear router boards.
 
+config CPU16B
+       bool "Sneha Technologies S.L. Sarasvati board support"
+       depends on M5272
+       help
+         Support for the SNEHA CPU16B board.
+
+config MOD5272
+       bool "Netburner MOD-5272 board support"
+       depends on M5272
+       help
+         Support for the Netburner MOD-5272 board.
+
 config ROMFS_FROM_ROM
 config ROMFS_FROM_ROM
-       bool "  ROMFS image not RAM resident"
+       bool "ROMFS image not RAM resident"
        depends on (NETtel || SNAPGEAR)
        help
          The ROMfs filesystem will stay resident in the FLASH/ROM, not be
        depends on (NETtel || SNAPGEAR)
        help
          The ROMfs filesystem will stay resident in the FLASH/ROM, not be
@@ -370,15 +433,35 @@ config ARNEWSH
        default y
        depends on (ARN5206 || ARN5307)
 
        default y
        depends on (ARN5206 || ARN5307)
 
-config MOTOROLA
+config FREESCALE
        bool
        default y
        bool
        default y
-       depends on (M5206eC3 || M5249C3 || M5272C3 || M5282C3 || M5307C3 || M5407C3)
+       depends on (M5206eC3 || M5208EVB || M5235EVB || M5249C3 || M5271EVB || M5272C3 || M5275EVB || M5282EVB || M5307C3 || M5329EVB || M5407C3)
+
+config HW_FEITH
+       bool
+       default y
+       depends on (CLEOPATRA || CANCam || SCALES)
 
 config senTec
        bool
        default y
        depends on (COBRA5272 || COBRA5282)
 
 config senTec
        bool
        default y
        depends on (COBRA5272 || COBRA5282)
+       
+config EMAC_INC
+       bool
+       default y
+       depends on (SOM5282EM)
+
+config SNEHA
+        bool
+       default y
+       depends on CPU16B
+       
+config AVNET
+       bool
+       default y
+       depends on (AVNET5282)
 
 config LARGE_ALLOCS
        bool "Allow allocating large blocks (> 1MB) of memory"
 
 config LARGE_ALLOCS
        bool "Allow allocating large blocks (> 1MB) of memory"
@@ -388,46 +471,63 @@ config LARGE_ALLOCS
          a lot of RAM, and you need to able to allocate very large
          contiguous chunks. If unsure, say N.
 
          a lot of RAM, and you need to able to allocate very large
          contiguous chunks. If unsure, say N.
 
-choice 
-       prompt "RAM size"
-       default AUTO
+config 4KSTACKS
+       bool "Use 4Kb for kernel stacks instead of 8Kb"
+       default y
+       help
+         If you say Y here the kernel will use a 4Kb stacksize for the
+         kernel stack attached to each process/thread. This facilitates
+         running more threads on a system and also reduces the pressure
+         on the VM subsystem for higher order allocations.
 
 
-config RAMAUTO
-       bool "AUTO"
-       ---help---
-         Configure the RAM size on your platform. Many platforms can auto
-         detect this, on those choose the AUTO option. Otherwise set the
-         RAM size you intend using.
+comment "RAM configuration"
 
 
-config RAM4MB
-       bool "4MiB"
+config RAMBASE
+       hex "Address of the base of RAM"
+       default "0"
        help
        help
-         Set RAM size to be 4MiB.
+         Define the address that RAM starts at. On many platforms this is
+         0, the base of the address space. And this is the default. Some
+         platforms choose to setup their RAM at other addresses within the
+         processor address space.
 
 
-config RAM8MB
-       bool "8MiB"
+config RAMSIZE
+       hex "Size of RAM (in bytes)"
+       default "0x400000"
        help
        help
-         Set RAM size to be 8MiB.
+         Define the size of the system RAM. If you select 0 then the
+         kernel will try to probe the RAM size at runtime. This is not
+         supported on all CPU types.
 
 
-config RAM16MB
-       bool "16MiB"
+config VECTORBASE
+       hex "Address of the base of system vectors"
+       default "0"
        help
        help
-         Set RAM size to be 16MiB.
+         Define the address of the system vectors. Commonly this is
+         put at the start of RAM, but it doesn't have to be. On ColdFire
+         platforms this address is programmed into the VBR register, thus
+         actually setting the address to use.
 
 
-config RAM32MB
-       bool "32MiB"
+config KERNELBASE
+       hex "Address of the base of kernel code"
+       default "0x400"
        help
        help
-         Set RAM size to be 32MiB.
+         Typically on m68k systems the kernel will not start at the base
+         of RAM, but usually some small offset from it. Define the start
+         address of the kernel here. The most common setup will have the
+         processor vectors at the base of RAM and then the start of the
+         kernel. On some platforms some RAM is reserved for boot loaders
+         and the kernel starts after that. The 0x400 default was based on
+         a system with the RAM based at address 0, and leaving enough room
+         for the theoretical maximum number of 256 vectors.
 
 
-endchoice
-
-choice 
+choice
        prompt "RAM bus width"
        default RAMAUTOBIT
 
 config RAMAUTOBIT
        bool "AUTO"
        prompt "RAM bus width"
        default RAMAUTOBIT
 
 config RAMAUTOBIT
        bool "AUTO"
-       ---help---
+       help
          Select the physical RAM data bus size. Not needed on most platforms,
          so you can generally choose AUTO.
 
          Select the physical RAM data bus size. Not needed on most platforms,
          so you can generally choose AUTO.
 
@@ -448,6 +548,59 @@ config RAM32BIT
 
 endchoice
 
 
 endchoice
 
+comment "ROM configuration"
+
+config ROM
+       bool "Specify ROM linker regions"
+       default n
+       help
+         Define a ROM region for the linker script. This creates a kernel
+         that can be stored in flash, with possibly the text, and data
+         regions being copied out to RAM at startup.
+
+config ROMBASE
+       hex "Address of the base of ROM device"
+       default "0"
+       depends on ROM
+       help
+         Define the address that the ROM region starts at. Some platforms
+         use this to set their chip select region accordingly for the boot
+         device.
+
+config ROMVEC
+       hex "Address of the base of the ROM vectors"
+       default "0"
+       depends on ROM
+       help
+         This is almost always the same as the base of the ROM. Since on all
+         68000 type variants the vectors are at the base of the boot device
+         on system startup.
+
+config ROMVECSIZE
+       hex "Size of ROM vector region (in bytes)"
+       default "0x400"
+       depends on ROM
+       help
+         Define the size of the vector region in ROM. For most 68000
+         variants this would be 0x400 bytes in size. Set to 0 if you do
+         not want a vector region at the start of the ROM.
+
+config ROMSTART
+       hex "Address of the base of system image in ROM"
+       default "0x400"
+       depends on ROM
+       help
+         Define the start address of the system image in ROM. Commonly this
+         is strait after the ROM vectors.
+
+config ROMSIZE
+       hex "Size of the ROM device"
+       default "0x100000"
+       depends on ROM
+       help
+         Size of the ROM device. On some platforms this is used to setup
+         the chip select that controls the boot ROM device.
+
 choice
        prompt "Kernel executes from"
        ---help---
 choice
        prompt "Kernel executes from"
        ---help---
@@ -461,17 +614,20 @@ config RAMKERNEL
 config ROMKERNEL
        bool "ROM"
        help
 config ROMKERNEL
        bool "ROM"
        help
-         The kernel will be resident in FLASH/ROM when running.
-
-config HIMEMKERNEL
-       bool "HIMEM"
-       help
-         The kernel will be resident in high memory when running.
+         The kernel will be resident in FLASH/ROM when running. This is
+         often referred to as Execute-in-Place (XIP), since the kernel
+         code executes from the position it is stored in the FLASH/ROM.
 
 endchoice
 
 
 endchoice
 
+source "mm/Kconfig"
+
 endmenu
 
 endmenu
 
+config ISA_DMA_API
+       bool
+       depends on !M5272
+       default y
 
 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
 
 
 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
 
@@ -507,64 +663,13 @@ config PM
 
 endmenu
 
 
 endmenu
 
+source "net/Kconfig"
+
 source "drivers/Kconfig"
 
 source "fs/Kconfig"
 
 source "drivers/Kconfig"
 
 source "fs/Kconfig"
 
-menu "Kernel hacking"
-
-config FULLDEBUG
-       bool "Full Symbolic/Source Debugging support"
-       help
-         Enable debuging symbols on kernel build.
-
-config FRAME_POINTER
-       bool "Compile the kernel with frame pointers"
-       help
-         If you say Y here the resulting kernel image will be slightly larger
-         and slower, but it will give very useful debugging information.
-         If you don't debug the kernel, you can say N, but we may not be able
-         to solve problems without frame pointers.
-
-config MAGIC_SYSRQ
-       bool "Magic SysRq key"
-       help
-         Enables console device to interpret special characters as
-         commands to dump state information.
-
-config HIGHPROFILE
-       bool "Use fast second timer for profiling"
-       depends on COLDFIRE
-       help
-         Use a fast secondary clock to produce profiling information.
-
-config BOOTPARAM
-       bool 'Compiled-in Kernel Boot Parameter'
-
-config BOOTPARAM_STRING 
-       string 'Kernel Boot Parameter'
-       default 'console=ttyS0,19200'
-       depends on BOOTPARAM
-
-config DUMPTOFLASH
-       bool "Panic/Dump to FLASH"
-       depends on COLDFIRE
-       help
-         Dump any panic of trap output into a flash memory segment
-         for later analysis.
-
-config NO_KERNEL_MSG
-       bool "Suppress Kernel BUG Messages"
-       help
-         Do not output any debug BUG messages within the kernel.
-
-config BDM_DISABLE
-       bool "Disable BDM signals"
-       depends on (EXPERIMENTAL && COLDFIRE)
-       help
-         Disable the ColdFire CPU's BDM signals.
-
-endmenu
+source "arch/m68knommu/Kconfig.debug"
 
 source "kernel/vserver/Kconfig"
 
 
 source "kernel/vserver/Kconfig"
 
@@ -573,4 +678,3 @@ source "security/Kconfig"
 source "crypto/Kconfig"
 
 source "lib/Kconfig"
 source "crypto/Kconfig"
 
 source "lib/Kconfig"
-