OpenCloudOS-Kernel/arch/arm/mach-pxa
Arnd Bergmann 4eef6cbfcc Input: eeti_ts: pass gpio value instead of IRQ
The EETI touchscreen asserts its IRQ line as soon as it has data in its
internal buffers. The line is automatically deasserted once all data has
been read via I2C. Hence, the driver has to monitor the GPIO line and
cannot simply rely on the interrupt handler reception.

In the current implementation of the driver, irq_to_gpio() is used to
determine the GPIO number from the i2c_client's IRQ value.

As irq_to_gpio() is not available on all platforms, this patch changes
this and makes the driver ignore the passed in IRQ. Instead, a GPIO is
added to the platform_data struct and gpio_to_irq is used to derive the
IRQ from that GPIO. If this fails, bail out. The driver is only able to
work in environments where the touchscreen GPIO can be mapped to an
IRQ.

Without this patch, building raumfeld_defconfig results in:

drivers/input/touchscreen/eeti_ts.c: In function 'eeti_ts_irq_active':
drivers/input/touchscreen/eeti_ts.c:65:2: error: implicit declaration of function 'irq_to_gpio' [-Werror=implicit-function-declaration]

Signed-off-by: Daniel Mack <zonque@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: stable@vger.kernel.org (v3.2+)
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Sven Neumann <s.neumann@raumfeld.com>
Cc: linux-input@vger.kernel.org
Cc: Haojian Zhuang <haojian.zhuang@gmail.com>
2012-08-09 15:16:41 +02:00
..
include/mach ARM: sa11x0/pxa: convert OS timer registers to IOMEM 2012-07-09 17:37:35 +01:00
Kconfig ARM: fix __io macro for PCMCIA 2012-04-05 11:29:55 -07:00
Makefile ARM: pxa: pxa95x/saarb depends on pxa3xx code 2011-10-08 21:03:00 +08:00
Makefile.boot ARM: 7022/1: allow to detect conflicting zreladdrs 2011-10-17 09:12:40 +01:00
am200epd.c ARM: pxa: rename IRQ_GPIO to PXA_GPIO_TO_IRQ 2011-11-14 21:07:58 +08:00
am300epd.c ARM: pxa: rename IRQ_GPIO to PXA_GPIO_TO_IRQ 2011-11-14 21:07:58 +08:00
balloon3.c - More robust parsing especially of xattr data in JFFS2 2012-06-01 16:55:42 -07:00
capc7117.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
clock-pxa2xx.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
clock-pxa3xx.c ARM / PXA: Use struct syscore_ops for "core" power management 2011-04-24 19:16:09 +02:00
clock.c ARM: pxa: add clk_set_rate() 2011-07-12 19:45:19 +08:00
clock.h ARM: pxa: add clk_set_rate() 2011-07-12 19:45:19 +08:00
cm-x2xx-pci.c ARM: PCI: provide a default bus scan implementation 2012-05-13 17:12:17 +01:00
cm-x2xx-pci.h [ARM] 5280/1: pxa: prepare cm-x2xx.c and cm-x2xx-pci.[ch] for addition of CM-X255 2008-10-07 12:05:05 +01:00
cm-x2xx.c Merge branch 'samsung/driver' into next/drivers 2012-01-09 16:16:29 +00:00
cm-x255.c ARM: 7104/1: plat-pxa: break out GPIO driver specifics 2011-10-01 23:45:34 +01:00
cm-x270.c ARM: pxa: rename gpio_to_irq and irq_to_gpio 2011-11-14 21:07:59 +08:00
cm-x300.c ARM: pxa: Use REGULATOR_SUPPLY macro 2012-05-14 09:30:04 +08:00
colibri-evalboard.c ARM / PXA: Use struct syscore_ops for "core" power management 2011-04-24 19:16:09 +02:00
colibri-pxa3xx.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
colibri-pxa270-income.c ARM: pxa: Fix typo 'CONFIG_BACKLIGHT_PWM__MODULE' 2011-10-31 10:55:26 +01:00
colibri-pxa270.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
colibri-pxa300.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
colibri-pxa320.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
corgi.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
corgi_pm.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
cpufreq-pxa2xx.c ARM: pxa: Access SMEMC via virtual addresses 2010-12-16 14:31:16 +08:00
cpufreq-pxa3xx.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
csb701.c [ARM] pxa/csb701: do not register devices on non-csb726 boads 2009-04-04 10:26:35 +08:00
csb726.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
devices.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
devices.h ARM: pxa: change gpio to platform device 2011-11-15 19:08:27 +08:00
em-x270.c - More robust parsing especially of xattr data in JFFS2 2012-06-01 16:55:42 -07:00
eseries.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound 2012-01-12 08:00:30 -08:00
ezx.c ARM: restart: pxa: use new restart hook 2012-01-05 12:57:17 +00:00
generic.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
generic.h ARM: pxa: remove duplicated registeration on pxa-gpio 2012-03-06 14:40:59 +08:00
gumstix.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
h5000.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
himalaya.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
hx4700.c ARM: arm-soc board updates, take 2 2012-07-30 09:48:00 -07:00
icontrol.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
idp.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
irq.c ARM: pxa: change gpio to platform device 2011-11-15 19:08:27 +08:00
leds-idp.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
leds-lubbock.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
leds-mainstone.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
leds.c
leds.h
littleton.c Merge branch 'samsung/driver' into next/drivers 2012-01-09 16:16:29 +00:00
lpd270.c Merge branch 'samsung/driver' into next/drivers 2012-01-09 16:16:29 +00:00
lubbock.c [ARM] pxa: remove IRQF_SAMPLE_RANDOM which is now a no-op 2012-07-19 10:40:16 -04:00
magician.c [ARM] pxa: remove IRQF_SAMPLE_RANDOM which is now a no-op 2012-07-19 10:40:16 -04:00
mainstone.c Merge branch 'samsung/driver' into next/drivers 2012-01-09 16:16:29 +00:00
mfp-pxa2xx.c ARM: PXA2xx: MFP: fix potential direction bug 2012-04-27 11:14:06 +08:00
mfp-pxa3xx.c ARM / PXA: Use struct syscore_ops for "core" power management 2011-04-24 19:16:09 +02:00
mioa701.c Merge branch 'board-specific' of git://github.com/hzhuang1/linux into next/boards 2012-05-18 23:46:36 -07:00
mioa701_bootresume.S [ARM] pxa/MioA701: fix memory corruption. 2008-11-22 20:57:21 +08:00
mp900.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
mxm8x10.c Merge branches 'drivers/macb-gem' and 'drivers/pxa-gpio' into next/drivers 2011-11-23 20:47:41 +00:00
palm27x.c ARM: pxa: Use REGULATOR_SUPPLY macro 2012-05-14 09:30:04 +08:00
palmld.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
palmt5.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
palmtc.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
palmte2.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
palmtreo.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
palmtx.c arm: Use the plat_nand default partition parser 2012-05-13 22:47:06 -05:00
palmz72.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
pcm027.c ARM: restart: pxa: use new restart hook 2012-01-05 12:57:17 +00:00
pcm990-baseboard.c ARM: pxa: use ioremap to access CPLD 2012-04-27 13:05:36 +08:00
pm.c ARM: pm: move cpu_init() call into core code 2011-06-24 08:48:43 +01:00
poodle.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
pxa2xx.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
pxa3xx-ulpi.c usb: otg: Convert all users to pass struct usb_otg for OTG functions 2012-02-27 15:41:52 +02:00
pxa3xx.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
pxa25x.c Merge branch 'board' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/boards 2012-03-10 09:15:30 -08:00
pxa27x.c ARM: pxa: fix gpio wakeup setting 2012-04-27 10:46:45 +08:00
pxa95x.c Merge branch 'next/fixes-non-critical' into next/drivers 2012-03-20 22:42:24 +00:00
pxa300.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
pxa320.c ARM: pxa: use common IOMEM definition 2012-03-25 14:36:31 -05:00
pxa930.c ARM: pxa: support pxa95x 2010-12-18 21:02:14 +08:00
raumfeld.c Input: eeti_ts: pass gpio value instead of IRQ 2012-08-09 15:16:41 +02:00
reset.c ARM: sa11x0/pxa: convert OS timer registers to IOMEM 2012-07-09 17:37:35 +01:00
saar.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
saarb.c arch/arm/mach-pxa/: included linux/gpio.h twice 2012-02-16 23:26:19 +08:00
sharpsl_pm.c ARM: cleanups of io includes 2012-03-29 18:02:10 -07:00
sleep.S ARM: pm: pxa: move cpu_suspend into C code 2011-06-24 08:48:45 +01:00
smemc.c ARM / PXA: Use struct syscore_ops for "core" power management 2011-04-24 19:16:09 +02:00
spitz.c ARM: pxa: Use REGULATOR_SUPPLY macro 2012-05-14 09:30:04 +08:00
spitz_pm.c ARM: pxa: fix wrong parsing gpio event on spitz 2012-02-16 10:28:53 +08:00
standby.S [ARM] pxa: separate definitions from pxa-regs.h and remove it finally 2009-03-09 21:22:40 +08:00
stargate2.c ARM: pxa: Use REGULATOR_SUPPLY macro 2012-05-14 09:30:04 +08:00
tavorevb.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
tavorevb3.c Merge branch 'samsung/driver' into next/drivers 2012-01-09 16:16:29 +00:00
time.c ARM: sa11x0/pxa: convert OS timer registers to IOMEM 2012-07-09 17:37:35 +01:00
tosa-bt.c ARM: pxa/tosa: drop setting LED trigger name, as it's unsupported now 2011-02-27 21:38:18 +08:00
tosa.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound 2012-01-12 08:00:30 -08:00
trizeps4.c [ARM] pxa: remove IRQF_SAMPLE_RANDOM which is now a no-op 2012-07-19 10:40:16 -04:00
viper.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
vpac270.c ARM: pxa: Use REGULATOR_SUPPLY macro 2012-05-14 09:30:04 +08:00
xcep.c ARM: pxa: remove NR_IRQS 2012-01-25 20:37:49 -06:00
z2.c ARM: pxa: Use REGULATOR_SUPPLY macro 2012-05-14 09:30:04 +08:00
zeus.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
zylonite.c Merge branch 'samsung/driver' into next/drivers 2012-01-09 16:16:29 +00:00
zylonite_pxa300.c ARM: pxa: rename IRQ_GPIO to PXA_GPIO_TO_IRQ 2011-11-14 21:07:58 +08:00
zylonite_pxa320.c [ARM] pxa/zylonite: simplify reduntant gpio settings on mmc slot 2009-12-29 14:11:34 +08:00