Browse Source

Use the generic GPIO api for bcm947xx and ar7 (for now), thanks to Gabor Juhos

SVN-Revision: 7285
Florian Fainelli 18 years ago
parent
commit
b835cbc80e

+ 1 - 0
target/linux/ar7-2.6/config/default

@@ -192,6 +192,7 @@ CONFIG_SERIAL_8250_PCI=y
 # CONFIG_SOFT_WATCHDOG is not set
 # CONFIG_SPARSEMEM_STATIC is not set
 CONFIG_SWAP_IO_SPACE=y
+CONFIG_GENERIC_GPIO=y
 CONFIG_SYS_HAS_CPU_MIPS32_R1=y
 CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
 CONFIG_SYS_SUPPORTS_ARBIT_HZ=y

+ 0 - 25
target/linux/ar7-2.6/files/include/asm-generic/gpio.h

@@ -1,25 +0,0 @@
-#ifndef _ASM_GENERIC_GPIO_H
-#define _ASM_GENERIC_GPIO_H
-
-/* platforms that don't directly support access to GPIOs through I2C, SPI,
- * or other blocking infrastructure can use these wrappers.
- */
-
-static inline int gpio_cansleep(unsigned gpio)
-{
-	return 0;
-}
-
-static inline int gpio_get_value_cansleep(unsigned gpio)
-{
-	might_sleep();
-	return gpio_get_value(gpio);
-}
-
-static inline void gpio_set_value_cansleep(unsigned gpio, int value)
-{
-	might_sleep();
-	gpio_set_value(gpio, value);
-}
-
-#endif /* _ASM_GENERIC_GPIO_H */

+ 0 - 6
target/linux/ar7-2.6/files/include/asm-mips/gpio.h

@@ -1,6 +0,0 @@
-#ifndef _ASM_MIPS_GPIO_H
-#define _ASM_MIPS_GPIO_H
-
-#include <gpio.h>
-
-#endif /* _ASM_MIPS_GPIO_H */

+ 2 - 1
target/linux/ar7-2.6/patches/100-board_support.patch

@@ -1,7 +1,7 @@
 diff -Nru linux-2.6.19.2/arch/mips/Kconfig linux-ar7/arch/mips/Kconfig
 --- linux-2.6.19.2/arch/mips/Kconfig	2006-12-12 02:32:53.000000000 +0700
 +++ linux-ar7/arch/mips/Kconfig	2007-01-29 21:52:21.000000000 +0700
-@@ -12,6 +12,18 @@
+@@ -12,6 +12,19 @@
  	prompt "System type"
  	default SGI_IP22
  
@@ -16,6 +16,7 @@ diff -Nru linux-2.6.19.2/arch/mips/Kconfig linux-ar7/arch/mips/Kconfig
 +	select SYS_SUPPORTS_32BIT_KERNEL
 +	select SYS_SUPPORTS_LITTLE_ENDIAN
 +	select NEED_MULTIPLE_NODES
++	select GENERIC_GPIO
 +
  config MIPS_MTX1
  	bool "4G Systems MTX-1 board"

+ 1 - 0
target/linux/brcm47xx-2.6/config/default

@@ -254,6 +254,7 @@ CONFIG_SSB_PCICORE_HOSTMODE=y
 CONFIG_SSB_PCIHOST=y
 CONFIG_SSB_SERIAL=y
 # CONFIG_SSB_SILENT is not set
+CONFIG_GENERIC_GPIO=y
 CONFIG_SYS_HAS_CPU_MIPS32_R1=y
 CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
 CONFIG_SYS_SUPPORTS_ARBIT_HZ=y

+ 0 - 25
target/linux/brcm47xx-2.6/files/include/asm-generic/gpio.h

@@ -1,25 +0,0 @@
-#ifndef _ASM_GENERIC_GPIO_H
-#define _ASM_GENERIC_GPIO_H
-
-/* platforms that don't directly support access to GPIOs through I2C, SPI,
- * or other blocking infrastructure can use these wrappers.
- */
-
-static inline int gpio_cansleep(unsigned gpio)
-{
-	return 0;
-}
-
-static inline int gpio_get_value_cansleep(unsigned gpio)
-{
-	might_sleep();
-	return gpio_get_value(gpio);
-}
-
-static inline void gpio_set_value_cansleep(unsigned gpio, int value)
-{
-	might_sleep();
-	gpio_set_value(gpio, value);
-}
-
-#endif /* _ASM_GENERIC_GPIO_H */

+ 2 - 1
target/linux/brcm47xx-2.6/patches/100-board_support.patch

@@ -12,7 +12,7 @@ diff -urN linux.old/arch/mips/Kconfig linux.dev/arch/mips/Kconfig
  mainmenu "Linux/MIPS Kernel Configuration"
  
  menu "Machine selection"
-@@ -222,6 +226,22 @@
+@@ -222,6 +226,23 @@
  	 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
  	 Olivetti M700-10 workstations.
  
@@ -29,6 +29,7 @@ diff -urN linux.old/arch/mips/Kconfig linux.dev/arch/mips/Kconfig
 +	select SSB_DRIVER_PCICORE
 +	select SSB_PCICORE_HOSTMODE
 +	select CFE
++	select GENERIC_GPIO
 +	help
 +	 Support for BCM947xx based boards
 +