aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/gemini/patches/050-gpio-to-irq.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/gemini/patches/050-gpio-to-irq.patch')
-rw-r--r--target/linux/gemini/patches/050-gpio-to-irq.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/target/linux/gemini/patches/050-gpio-to-irq.patch b/target/linux/gemini/patches/050-gpio-to-irq.patch
new file mode 100644
index 0000000000..7572849864
--- /dev/null
+++ b/target/linux/gemini/patches/050-gpio-to-irq.patch
@@ -0,0 +1,21 @@
+--- a/arch/arm/mach-gemini/gpio.c
++++ b/arch/arm/mach-gemini/gpio.c
+@@ -196,12 +196,18 @@ static int gemini_gpio_direction_output(
+ return 0;
+ }
+
++static int gemini_gpio_to_irq(struct gpio_chip *chip, unsigned gpio)
++{
++ return gpio + GPIO_IRQ_BASE;
++}
++
+ static struct gpio_chip gemini_gpio_chip = {
+ .label = "Gemini",
+ .direction_input = gemini_gpio_direction_input,
+ .get = gemini_gpio_get,
+ .direction_output = gemini_gpio_direction_output,
+ .set = gemini_gpio_set,
++ .to_irq = gemini_gpio_to_irq,
+ .base = 0,
+ .ngpio = GPIO_PORT_NUM * 32,
+ };