[ARM] S3C24XX: Add extra GPIOs via Kconfig
authorBen Dooks <ben-linux@fluff.org>
Mon, 10 Nov 2008 10:59:32 +0000 (10:59 +0000)
committerBen Dooks <ben-linux@fluff.org>
Thu, 18 Dec 2008 14:43:07 +0000 (14:43 +0000)
Add Kconfig entries to allow more GPIO space to
be specified depending on the machine(s) selected.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
arch/arm/mach-s3c2410/include/mach/gpio.h
arch/arm/mach-s3c2440/Kconfig
arch/arm/plat-s3c24xx/Kconfig

index 3b52b86498a6a4060cccaee1f720b61bb5a02674..e0349af8a483f29be67a42ff302f155670792b94 100644 (file)
 #define gpio_set_value __gpio_set_value
 #define gpio_cansleep  __gpio_cansleep
 
+/* some boards require extra gpio capacity to support external
+ * devices that need GPIO.
+ */
+
+#define ARCH_NR_GPIOS  (256 + CONFIG_S3C24XX_GPIO_EXTRA)
+
 #include <asm-generic/gpio.h>
index 0429d255b0d83eecdd64a05868ce6184b1b98ae0..402213dc5d85e0079dbc7341952cad3a41eff1b9 100644 (file)
@@ -31,6 +31,7 @@ config MACH_ANUBIS
        select CPU_S3C2440
        select PM_SIMTEC if PM
        select HAVE_PATA_PLATFORM
+       select S3C24XX_GPIO_EXTRA64
        help
          Say Y here if you are using the Simtec Electronics ANUBIS
          development system
@@ -39,6 +40,7 @@ config MACH_OSIRIS
        bool "Simtec IM2440D20 (OSIRIS) module"
        select CPU_S3C2440
        select PM_SIMTEC if PM
+       select S3C24XX_GPIO_EXTRA128
        help
          Say Y here if you are using the Simtec IM2440D20 module, also
          known as the Osiris.
index 0af3872fb76306fa6b6119dcf12ad124c9463189..7fe28aaa08ca35a6d596861690eb5a1c9e84dc08 100644 (file)
@@ -28,6 +28,27 @@ config S3C24XX_PWM
          Support for exporting the PWM timer blocks via the pwm device
          system.
 
+
+# gpio configurations
+
+config S3C24XX_GPIO_EXTRA
+       int
+       default 128 if S3C24XX_GPIO_EXTRA128
+       default 64 if S3C24XX_GPIO_EXTRA64
+       default 0
+
+config S3C24XX_GPIO_EXTRA64
+       bool
+       help
+         Add an extra 64 gpio numbers to the available GPIO pool. This is
+         available for boards that need extra gpios for external devices.
+
+config S3C24XX_GPIO_EXTRA128
+       bool
+       help
+         Add an extra 128 gpio numbers to the available GPIO pool. This is
+         available for boards that need extra gpios for external devices.
+
 config PM_SIMTEC
        bool
        help