aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm47xx/patches-3.6/251-ssb-add-gpio_to_irq.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm47xx/patches-3.6/251-ssb-add-gpio_to_irq.patch')
-rw-r--r--target/linux/brcm47xx/patches-3.6/251-ssb-add-gpio_to_irq.patch66
1 files changed, 0 insertions, 66 deletions
diff --git a/target/linux/brcm47xx/patches-3.6/251-ssb-add-gpio_to_irq.patch b/target/linux/brcm47xx/patches-3.6/251-ssb-add-gpio_to_irq.patch
deleted file mode 100644
index 788d4b1d2c..0000000000
--- a/target/linux/brcm47xx/patches-3.6/251-ssb-add-gpio_to_irq.patch
+++ /dev/null
@@ -1,66 +0,0 @@
---- a/drivers/ssb/driver_gpio.c
-+++ b/drivers/ssb/driver_gpio.c
-@@ -74,6 +74,16 @@ static void ssb_gpio_chipco_free(struct
- ssb_chipco_gpio_pullup(&bus->chipco, 1 << gpio, 0);
- }
-
-+static int ssb_gpio_chipco_to_irq(struct gpio_chip *chip, unsigned gpio)
-+{
-+ struct ssb_bus *bus = ssb_gpio_get_bus(chip);
-+
-+ if (bus->bustype == SSB_BUSTYPE_SSB)
-+ return ssb_mips_irq(bus->chipco.dev) + 2;
-+ else
-+ return -EINVAL;
-+}
-+
- static int ssb_gpio_chipco_init(struct ssb_bus *bus)
- {
- struct gpio_chip *chip = &bus->gpio;
-@@ -86,6 +96,7 @@ static int ssb_gpio_chipco_init(struct s
- chip->set = ssb_gpio_chipco_set_value;
- chip->direction_input = ssb_gpio_chipco_direction_input;
- chip->direction_output = ssb_gpio_chipco_direction_output;
-+ chip->to_irq = ssb_gpio_chipco_to_irq;
- chip->ngpio = 16;
- /* There is just one SoC in one device and its GPIO addresses should be
- * deterministic to address them more easily. The other buses could get
-@@ -134,6 +145,16 @@ static int ssb_gpio_extif_direction_outp
- return 0;
- }
-
-+static int ssb_gpio_extif_to_irq(struct gpio_chip *chip, unsigned gpio)
-+{
-+ struct ssb_bus *bus = ssb_gpio_get_bus(chip);
-+
-+ if (bus->bustype == SSB_BUSTYPE_SSB)
-+ return ssb_mips_irq(bus->extif.dev) + 2;
-+ else
-+ return -EINVAL;
-+}
-+
- static int ssb_gpio_extif_init(struct ssb_bus *bus)
- {
- struct gpio_chip *chip = &bus->gpio;
-@@ -144,6 +165,7 @@ static int ssb_gpio_extif_init(struct ss
- chip->set = ssb_gpio_extif_set_value;
- chip->direction_input = ssb_gpio_extif_direction_input;
- chip->direction_output = ssb_gpio_extif_direction_output;
-+ chip->to_irq = ssb_gpio_extif_to_irq;
- chip->ngpio = 5;
- /* There is just one SoC in one device and its GPIO addresses should be
- * deterministic to address them more easily. The other buses could get
---- a/include/linux/ssb/ssb_driver_mips.h
-+++ b/include/linux/ssb/ssb_driver_mips.h
-@@ -45,6 +45,11 @@ void ssb_mipscore_init(struct ssb_mipsco
- {
- }
-
-+static inline unsigned int ssb_mips_irq(struct ssb_device *dev)
-+{
-+ return 0;
-+}
-+
- #endif /* CONFIG_SSB_DRIVER_MIPS */
-
- #endif /* LINUX_SSB_MIPSCORE_H_ */