[ARM] Arrange for platforms to select appropriate CPU support
[safe/jmp/linux-2.6] / arch / arm / mach-s3c2410 / Kconfig
index 534df0c..7315569 100644 (file)
@@ -1,62 +1,94 @@
-if ARCH_S3C2410
+# arch/arm/mach-s3c2410/Kconfig
+#
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
 
-menu "S3C24XX Implementations"
+config CPU_S3C2410
+       bool
+       depends on ARCH_S3C2410
+       select CPU_ARM920T
+       select S3C2410_CLOCK
+       select S3C2410_GPIO
+       select CPU_LLSERIAL_S3C2410
+       select S3C2410_PM if PM
+       help
+         Support for S3C2410 and S3C2410A family from the S3C24XX line
+         of Samsung Mobile CPUs.
 
-config ARCH_BAST
-       bool "Simtec Electronics BAST (EB2410ITX)"
-       select CPU_S3C2410
+config CPU_S3C2410_DMA
+       bool
+       depends on S3C2410_DMA && (CPU_S3C2410 || CPU_S3C2442)
+       default y if CPU_S3C2410 || CPU_S3C2442
        help
-         Say Y here if you are using the Simtec Electronics EB2410ITX
-         development board (also known as BAST)
+         DMA device selection for S3C2410 and compatible CPUs
 
-         Product page: <http://www.simtec.co.uk/products/EB2410ITX/>.
+config S3C2410_PM
+       bool
+       help
+         Power Management code common to S3C2410 and better
 
-config ARCH_H1940
-       bool "IPAQ H1940"
-       select CPU_S3C2410
+config S3C2410_GPIO
+       bool
        help
-         Say Y here if you are using the HP IPAQ H1940
+         GPIO code for S3C2410 and similar processors
+
+config S3C2410_CLOCK
+       bool
+       help
+         Clock code for the S3C2410, and similar processors
 
-         <http://www.handhelds.org/projects/h1940.html>.
+config SIMTEC_NOR
+       bool
+       help
+         Internal node to specify machine has simtec NOR mapping
 
-config MACH_N30
-       bool "Acer N30"
-       select CPU_S3C2410
+config MACH_BAST_IDE
+       bool
+       select HAVE_PATA_PLATFORM
        help
-         Say Y here if you are using the Acer N30
+         Internal node for machines with an BAST style IDE
+         interface
 
-         <http://zoo.weinigel.se/n30>.
+menu "S3C2410 Machines"
 
 config ARCH_SMDK2410
        bool "SMDK2410/A9M2410"
        select CPU_S3C2410
+       select MACH_SMDK
        help
           Say Y here if you are using the SMDK2410 or the derived module A9M2410
            <http://www.fsforth.de>
 
-config ARCH_S3C2440
-       bool "SMDK2440"
-       select CPU_S3C2440
-       help
-         Say Y here if you are using the SMDK2440.
-
-config MACH_VR1000
-       bool "Thorcom VR1000"
+config ARCH_H1940
+       bool "IPAQ H1940"
        select CPU_S3C2410
+       select PM_H1940 if PM
        help
-         Say Y here if you are using the Thorcom VR1000 board.
+         Say Y here if you are using the HP IPAQ H1940
 
-         This linux port is currently being maintained by Simtec, on behalf
-         of Thorcom. Any queries, please contact Thorcom first.
+config PM_H1940
+       bool
+       help
+         Internal node for H1940 and related PM
 
-config MACH_RX3715
-       bool "HP iPAQ rx3715"
-       select CPU_S3C2440
+config MACH_N30
+       bool "Acer N30 family"
+       select CPU_S3C2410
        help
-         Say Y here if you are using the HP iPAQ rx3715.
+         Say Y here if you want suppt for the Acer N30, Acer N35,
+         Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs.
 
-         See <http://www.handhelds.org/projects/rx3715.html> for more
-         information on this project
+config ARCH_BAST
+       bool "Simtec Electronics BAST (EB2410ITX)"
+       select CPU_S3C2410
+       select PM_SIMTEC if PM
+       select SIMTEC_NOR
+       select MACH_BAST_IDE
+       select ISA
+       help
+         Say Y here if you are using the Simtec Electronics EB2410ITX
+         development board (also known as BAST)
 
 config MACH_OTOM
        bool "NexVision OTOM Board"
@@ -64,106 +96,42 @@ config MACH_OTOM
        help
          Say Y here if you are using the Nex Vision OTOM board
 
-config MACH_NEXCODER_2440
-       bool "NexVision NEXCODER 2440 Light Board"
-       select CPU_S3C2440
-       help
-         Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board
-
-endmenu
-
-config CPU_S3C2410
-       bool
-       depends on ARCH_S3C2410
-       help
-         Support for S3C2410 and S3C2410A family from the S3C24XX line
-         of Samsung Mobile CPUs.
-
-config CPU_S3C2440
-       bool
-       depends on ARCH_S3C2410
-       help
-         Support for S3C2440 Samsung Mobile CPU based systems.
-
-comment "S3C2410 Boot"
-
-config S3C2410_BOOT_WATCHDOG
-       bool "S3C2410 Initialisation watchdog"
-       depends on ARCH_S3C2410 && S3C2410_WATCHDOG
-       help
-         Say y to enable the watchdog during the kernel decompression
-         stage. If the kernel fails to uncompress, then the watchdog
-         will trigger a reset and the system should restart.
-
-         Although this uses the same hardware unit as the kernel watchdog
-         driver, it is not a replacement for it. If you use this option,
-         you will have to use the watchdg driver to either stop the timeout
-         or restart it. If you do not, then your kernel will reboot after
-         startup.
-
-         The driver uses a fixed timeout value, so the exact time till the
-         system resets depends on the value of PCLK. The timeout on an
-         200MHz s3c2410 should be about 30 seconds.
-
-comment "S3C2410 Setup"
-
-config S3C2410_DMA
-       bool "S3C2410 DMA support"
-       depends on ARCH_S3C2410
-       help
-         S3C2410 DMA support. This is needed for drivers like sound which
-         use the S3C2410's DMA system to move data to and from the
-         peripheral blocks.
-
-config S3C2410_DMA_DEBUG
-       bool "S3C2410 DMA support debug"
-       depends on ARCH_S3C2410 && S3C2410_DMA
+config MACH_AML_M5900
+       bool "AML M5900 Series"
+       select CPU_S3C2410
+       select PM_SIMTEC if PM
        help
-         Enable debugging output for the DMA code. This option sends info
-         to the kernel log, at priority KERN_DEBUG.
+          Say Y here if you are using the American Microsystems M5900 Series
+           <http://www.amltd.com>
 
-         Note, it is easy to create and fill the log buffer in a small
-         amount of time, as well as using an significant percentage of
-         the CPU time doing so.
-
-
-config S3C2410_PM_DEBUG
-       bool "S3C2410 PM Suspend debug"
-       depends on ARCH_S3C2410 && PM
+config BAST_PC104_IRQ
+       bool "BAST PC104 IRQ support"
+       depends on ARCH_BAST
+       default y
        help
-         Say Y here if you want verbose debugging from the PM Suspend and
-         Resume code. See `Documentation/arm/Samsing-S3C24XX/Suspend.txt`
-         for more information.
+         Say Y here to enable the PC104 IRQ routing on the
+         Simtec BAST (EB2410ITX)
 
-config S3C2410_PM_CHECK
-       bool "S3C2410 PM Suspend Memory CRC"
-       depends on ARCH_S3C2410 && PM && CRC32
+config MACH_TCT_HAMMER
+       bool "TCT Hammer Board"
+       select CPU_S3C2410
        help
-         Enable the PM code's memory area checksum over sleep. This option
-         will generate CRCs of all blocks of memory, and store them before
-         going to sleep. The blocks are then checked on resume for any
-         errors.
+          Say Y here if you are using the TinCanTools Hammer Board
+           <http://www.tincantools.com>
 
-config S3C2410_PM_CHECK_CHUNKSIZE
-       int "S3C2410 PM Suspend CRC Chunksize (KiB)"
-       depends on ARCH_S3C2410 && PM && S3C2410_PM_CHECK
-       default 64
+config MACH_VR1000
+       bool "Thorcom VR1000"
+       select PM_SIMTEC if PM
+       select SIMTEC_NOR
+       select MACH_BAST_IDE
+       select CPU_S3C2410
        help
-         Set the chunksize in Kilobytes of the CRC for checking memory
-         corruption over suspend and resume. A smaller value will mean that
-         the CRC data block will take more memory, but wil identify any
-         faults with better precision.
+         Say Y here if you are using the Thorcom VR1000 board.
 
-config S3C2410_LOWLEVEL_UART_PORT
-       int "S3C2410 UART to use for low-level messages"
-       default 0
+config MACH_QT2410
+       bool "QT2410"
+       select CPU_S3C2410
        help
-         Choice of which UART port to use for the low-level messages,
-         such as the `Uncompressing...` at start time. The value of
-         this configuration should be between zero and two. The port
-         must have been initialised by the boot-loader before use.
+          Say Y here if you are using the Armzone QT2410
 
-         Note, this does not affect the port used by the debug messages,
-         which is a separate configuration.
-
-endif
+endmenu