kernel-fxtec-pro1x/drivers/gpio
Jon Hunter 3513cdeccc gpio/omap: optimise interrupt service routine
The OMAP GPIO interrupt service routine is checking each bit in the
GPIO interrupt status register to see which bits are set. It is not
efficient to check every bit especially if only a few bits are set.
Therefore, instead of checking every bit use the __ffs() function,
which returns the location of the first set bit, to find all the set
bits.

This optimisation was suggested-by and developed in collaboration
with Felipe Balbi.

Signed-off-by: Jon Hunter <jon-hunter@ti.com>
Reviewed-by: Felipe Balbi <balbi@ti.com>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Reviewed-by: Kevin Hilman <khilman@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-04-10 23:41:16 +02:00
..
devres.c gpio: export devm_gpio_request_one 2012-07-05 14:49:13 +02:00
gpio-74x164.c gpio: 74x164: use spi_get_drvdata() and spi_set_drvdata() 2013-03-27 16:05:13 +01:00
gpio-adnp.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-adp5520.c gpio: adp5520: use devm_kzalloc() 2013-03-27 16:05:10 +01:00
gpio-adp5588.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-amd8111.c gpio: add a driver for GPIO pins found on AMD-8111 south bridge chips 2012-07-12 13:40:13 +02:00
gpio-arizona.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-bt8xx.c Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media 2012-10-07 17:49:05 +09:00
gpio-clps711x.c GPIO: clps711x: use platform_device_unregister in gpio_clps711x_init() 2012-10-27 18:17:30 +02:00
gpio-cs5535.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-da9052.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
gpio-da9055.c Drivers: misc: remove __dev* attributes. 2013-01-03 15:57:16 -08:00
gpio-davinci.c gpio: davinci: preparation for switch to common clock framework 2012-09-01 01:12:01 +02:00
gpio-em.c gpio: em: Make use of devm functions 2013-03-27 16:05:09 +01:00
gpio-ep93xx.c gpio: remove use of __devinit 2012-11-28 11:39:33 -08:00
gpio-ge.c powerpc/85xx: Board support for GE IMP3A 2012-03-16 11:15:48 -05:00
gpio-generic.c gpio: gpio-generic: Add 16 and 32 bit big endian byte order support 2013-04-10 23:41:16 +02:00
gpio-ich.c gpio/gpio-ich: make ichx_gpio_check_available() return a pure boolean value 2013-03-27 16:05:09 +01:00
gpio-it8761e.c
gpio-janz-ttl.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-ks8695.c
gpio-langwell.c gpio/langwell: cleanup driver 2013-02-05 13:33:30 +00:00
gpio-lpc32xx.c gpio: remove use of __devinitdata 2012-11-28 11:39:59 -08:00
gpio-lynxpoint.c gpio-lynxpoint: Add X86 dependency and io-port handling header. 2013-03-27 16:05:09 +01:00
gpio-max730x.c Driver core updates for 3.8-rc1 2012-12-11 13:13:55 -08:00
gpio-max732x.c gpio: max732x: use devm_kzalloc() 2013-03-27 16:05:11 +01:00
gpio-max7300.c gpio: max7300: use devm_kzalloc() 2013-03-27 16:05:11 +01:00
gpio-max7301.c MAX7301 GPIO: Do not force SPI speed when using OF Platform 2013-03-27 16:05:18 +01:00
gpio-mc9s08dz60.c gpio: mc9s08dz60: Use devm_kzalloc API 2012-09-01 01:02:27 +02:00
gpio-mc33880.c gpio: mc33880: use spi_get_drvdata() and spi_set_drvdata() 2013-03-27 16:05:14 +01:00
gpio-mcp23s08.c Driver core updates for 3.8-rc1 2012-12-11 13:13:55 -08:00
gpio-ml-ioh.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-mm-lantiq.c GPIO: MIPS: lantiq: convert gpio-mm-lantiq to OF and of_mm_gpio 2012-05-21 14:31:53 +01:00
gpio-mpc8xxx.c gpio: mpc8xxx: don't set IRQ_TYPE_NONE when creating irq mapping 2013-02-04 21:41:46 +01:00
gpio-mpc5200.c gpio: remove use of __devinit 2012-11-28 11:39:33 -08:00
gpio-msic.c gpio: remove use of __devinit 2012-11-28 11:39:33 -08:00
gpio-msm-v1.c
gpio-msm-v2.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-mvebu.c gpio: mvebu: add dbg_show function 2013-03-27 16:05:18 +01:00
gpio-mxc.c gpio: remove use of __devinit 2012-11-28 11:39:33 -08:00
gpio-mxs.c GPIO changes for Linux 3.9 2013-02-26 09:35:29 -08:00
gpio-omap.c gpio/omap: optimise interrupt service routine 2013-04-10 23:41:16 +02:00
gpio-palmas.c gpio: palmas: Add support for Palmas GPIO 2013-02-14 00:22:45 +01:00
gpio-pca953x.c gpio: gpio-pca953x.c: fix checkpatch error 2013-03-27 16:05:15 +01:00
gpio-pcf857x.c gpio: pcf857x: use devm_kzalloc() 2013-03-27 16:05:12 +01:00
gpio-pch.c Driver core updates for 3.8-rc1 2012-12-11 13:13:55 -08:00
gpio-pl061.c gpio: pl061: set initcall level to module init 2013-01-22 10:43:15 +01:00
gpio-pxa.c gpio: gpio-pxa.c: fix checkpatch errors 2013-03-27 16:05:16 +01:00
gpio-rc5t583.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-rdc321x.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-sa1100.c ARM: 7342/2: sa1100: prepare for sparse irq conversion 2012-03-25 23:57:20 +01:00
gpio-samsung.c gpio: samsung: Add terminating entry for exynos_pinctrl_ids 2013-03-27 16:05:19 +01:00
gpio-sch.c gpio: gpio-sch.c: fix checkpatch error 2013-03-27 16:05:16 +01:00
gpio-sodaville.c gpio: remove use of __devinit 2012-11-28 11:39:33 -08:00
gpio-spear-spics.c gpio: Convert to devm_ioremap_resource() 2013-01-22 11:41:56 -08:00
gpio-sta2x11.c gpio: remove use of __devinit 2012-11-28 11:39:33 -08:00
gpio-stmpe.c Driver core updates for 3.8-rc1 2012-12-11 13:13:55 -08:00
gpio-stp-xway.c gpio: gpio-stp-xway.c: fix checkpatch error 2013-03-27 16:05:16 +01:00
gpio-sx150x.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-tc3589x.c gpio: gpio-tc3589x.c: fix checkpatch errors 2013-03-27 16:05:17 +01:00
gpio-tegra.c gpio/tegra: assume CONFIG_OF 2013-03-04 10:22:18 +08:00
gpio-timberdale.c gpio: gpio-timberdale.c: fix checkpatch error 2013-03-27 16:05:17 +01:00
gpio-tnetv107x.c
gpio-tps6586x.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
gpio-tps65910.c gpio: gpio-tps65910.c: fix checkpatch error 2013-03-27 16:05:18 +01:00
gpio-tps65912.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-ts5500.c Drivers: misc: remove __dev* attributes. 2013-01-03 15:57:16 -08:00
gpio-twl4030.c gpio: twl4030: Cache the direction and output states in private data 2013-01-17 11:48:12 +01:00
gpio-twl6040.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-ucb1400.c
gpio-viperboard.c gpio: viperboard: Remove duplicate code to set gpio->gpiob_val 2013-03-27 09:13:06 +01:00
gpio-vr41xx.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-vt8500.c gpio/vt8500: Convert to devm_ioremap_resource() 2013-03-27 16:05:10 +01:00
gpio-vx855.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-wm831x.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-wm8350.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-wm8994.c gpio: remove use of __devexit 2012-11-28 11:39:59 -08:00
gpio-xilinx.c gpio: remove use of __devinitdata 2012-11-28 11:39:59 -08:00
gpiolib-acpi.c gpiolib-acpi: Fix error checks in interrupt requesting 2013-02-04 21:41:47 +01:00
gpiolib-of.c gpio: gpiolib-of.c: fix checkpatch error 2013-03-27 16:05:14 +01:00
gpiolib.c gpiolib: move comment to right function 2013-03-02 13:20:20 +00:00
Kconfig gpio-lynxpoint: Add X86 dependency and io-port handling header. 2013-03-27 16:05:09 +01:00
Makefile GPIO changes for Linux 3.9 2013-02-26 09:35:29 -08:00