diff options
author | Mirko Vogt <mirko@openwrt.org> | 2008-12-12 11:58:53 +0000 |
---|---|---|
committer | Mirko Vogt <mirko@openwrt.org> | 2008-12-12 11:58:53 +0000 |
commit | 614683faf8029100802db06a825648d0b6490285 (patch) | |
tree | 7401b135dc7ce24ff0175e67e0f2ce7f96296ff0 /target/linux/s3c24xx/patches-2.6.24/1108-Fix-the-FIXME-store-the-GPIO-value-for-now.patch | |
parent | 4a018d2445c5f249179ff82c8fffb0e3b717f738 (diff) | |
download | upstream-614683faf8029100802db06a825648d0b6490285.tar.gz upstream-614683faf8029100802db06a825648d0b6490285.tar.bz2 upstream-614683faf8029100802db06a825648d0b6490285.zip |
changed Makefile and profiles, added patches for kernel 2.6.24 (stable-branch of Openmoko)
SVN-Revision: 13613
Diffstat (limited to 'target/linux/s3c24xx/patches-2.6.24/1108-Fix-the-FIXME-store-the-GPIO-value-for-now.patch')
-rw-r--r-- | target/linux/s3c24xx/patches-2.6.24/1108-Fix-the-FIXME-store-the-GPIO-value-for-now.patch | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.24/1108-Fix-the-FIXME-store-the-GPIO-value-for-now.patch b/target/linux/s3c24xx/patches-2.6.24/1108-Fix-the-FIXME-store-the-GPIO-value-for-now.patch new file mode 100644 index 0000000000..3f91d3a470 --- /dev/null +++ b/target/linux/s3c24xx/patches-2.6.24/1108-Fix-the-FIXME-store-the-GPIO-value-for-now.patch @@ -0,0 +1,85 @@ +From 897d69be643b8a8616b1c912444993a54f095917 Mon Sep 17 00:00:00 2001 +From: Holger Freyther <zecke@openmoko.org> +Date: Sun, 13 Apr 2008 07:25:53 +0100 +Subject: [PATCH] Fix the FIXME, store the GPIO value for now + +Signed-Off-by: Holger Freyther <zecke@openmoko.org> +--- + drivers/input/keyboard/neo1973kbd.c | 23 +++++++++++++---------- + 1 files changed, 13 insertions(+), 10 deletions(-) + +diff --git a/drivers/input/keyboard/neo1973kbd.c b/drivers/input/keyboard/neo1973kbd.c +index 30f324d..a77d8c0 100644 +--- a/drivers/input/keyboard/neo1973kbd.c ++++ b/drivers/input/keyboard/neo1973kbd.c +@@ -23,20 +23,21 @@ + #include <linux/slab.h> + + #include <asm/hardware.h> +-#include <asm/arch/gta01.h> + #include <asm/mach-types.h> + + struct neo1973kbd { + struct input_dev *input; + unsigned int suspended; ++ int gpio_aux; ++ int gpio_hold; ++ int gpio_jack; + }; + + static irqreturn_t neo1973kbd_aux_irq(int irq, void *dev_id) + { + struct neo1973kbd *neo1973kbd_data = dev_id; + +- /* FIXME: use GPIO from platform_dev resources */ +- int key_pressed = !s3c2410_gpio_getpin(GTA01_GPIO_AUX_KEY); ++ int key_pressed = !s3c2410_gpio_getpin(neo1973kbd_data->gpio_aux); + input_report_key(neo1973kbd_data->input, KEY_PHONE, key_pressed); + input_sync(neo1973kbd_data->input); + +@@ -47,8 +48,7 @@ static irqreturn_t neo1973kbd_hold_irq(int irq, void *dev_id) + { + struct neo1973kbd *neo1973kbd_data = dev_id; + +- /* FIXME: use GPIO from platform_dev resources */ +- int key_pressed = 3c2410_gpio_getpin(GTA01_GPIO_HOLD_KEY); ++ int key_pressed = s3c2410_gpio_getpin(neo1973kbd_data->gpio_hold); + input_report_key(neo1973kbd_data->input, KEY_PAUSE, key_pressed); + input_sync(neo1973kbd_data->input); + +@@ -59,8 +59,7 @@ static irqreturn_t neo1973kbd_headphone_irq(int irq, void *dev_id) + { + struct neo1973kbd *neo1973kbd_data = dev_id; + +- /* FIXME: use GPIO from platform_dev resources */ +- int key_pressed = s3c2410_gpio_getpin(GTA01_GPIO_JACK_INSERT); ++ int key_pressed = s3c2410_gpio_getpin(neo1973kbd_data->gpio_jack); + input_report_switch(neo1973kbd_data->input, + SW_HEADPHONE_INSERT, key_pressed); + input_sync(neo1973kbd_data->input); +@@ -108,15 +107,19 @@ static int neo1973kbd_probe(struct platform_device *pdev) + if (pdev->resource[0].flags != 0) + return -EINVAL; + +- irq_aux = s3c2410_gpio_getirq(pdev->resource[0].start); ++ neo1973kbd->gpio_aux = pdev->resource[0].start; ++ neo1973kbd->gpio_hold = pdev->resource[1].start; ++ neo1973kbd->gpio_jack = pdev->resource[2].start; ++ ++ irq_aux = s3c2410_gpio_getirq(neo1973kbd->gpio_aux); + if (irq_aux < 0) + return -EINVAL; + +- irq_hold = s3c2410_gpio_getirq(pdev->resource[1].start); ++ irq_hold = s3c2410_gpio_getirq(neo1973kbd->gpio_hold); + if (irq_hold < 0) + return -EINVAL; + +- irq_jack = s3c2410_gpio_getirq(pdev->resource[2].start); ++ irq_jack = s3c2410_gpio_getirq(neo1973kbd->gpio_jack); + if (irq_jack < 0) + return -EINVAL; + +-- +1.5.6.5 + |