linux/drivers/mfd
Jean Delvare 4f600ada70 gpio: gpio-ich: Share ownership of GPIO groups
The ICH chips have their GPIO pins organized in 2 or 3 independent
groups of 32 GPIO pins. It can happen that the ACPI BIOS wants to make
use of pins in one group, preventing the OS to access these. This does
not prevent the OS from accessing the other group(s).

This is the case for example on my Asus Z8NA-D6 board. The ACPI BIOS
wants to control GPIO 18 (group 1), while I (the OS) need to control
GPIO 52 and 53 (group 2) for SMBus multiplexing.

So instead of checking for ACPI resource conflict on the whole I/O
range, check on a per-group basis, and consider it a success if at
least one of the groups is available for the OS to use.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Peter Tyser <ptyser@xes-inc.com>
Cc: Aaron Sierra <asierra@xes-inc.com>
Cc: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2012-09-14 09:52:13 +02:00
..
88pm80x.c mfd: Remove __devexit annotation for pm80x_deinit 2012-07-16 15:26:45 +02:00
88pm800.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
88pm805.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
88pm860x-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
88pm860x-i2c.c mfd: Add ability to wake the system for 88pm860x 2012-03-06 18:46:49 +01:00
aat2870-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
ab3100-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
ab3100-otp.c
ab8500-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
ab8500-debugfs.c mfd: Register ab8500 devices using the newly DT:ed MFD API 2012-07-09 00:16:13 +02:00
ab8500-gpadc.c mfd: Register ab8500 devices using the newly DT:ed MFD API 2012-07-09 00:16:13 +02:00
ab8500-sysctrl.c mfd: Register ab8500 devices using the newly DT:ed MFD API 2012-07-09 00:16:13 +02:00
abx500-core.c
adp5520.c mfd: Guard adp5520 PM methods with CONFIG_PM_SLEEP 2012-07-09 00:16:13 +02:00
anatop-mfd.c mfd: Matches should be NULL when populate anatop child devices 2012-07-17 11:17:24 +02:00
arizona-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
arizona-i2c.c mfd: Initial support for the WM5110 2012-07-16 15:00:32 +02:00
arizona-irq.c mfd: arizona: Remove unused variable 2012-09-14 09:52:12 +02:00
arizona-spi.c mfd: Initial support for the WM5110 2012-07-16 15:00:32 +02:00
arizona.h mfd: Initial support for the WM5110 2012-07-16 15:00:32 +02:00
asic3.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
cs5535-mfd.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
da903x.c
da9052-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
da9052-i2c.c mfd: Convert da9052 to use devm_* APIs 2012-05-20 17:27:03 +02:00
da9052-spi.c mfd: Convert da9052 to use devm_* APIs 2012-05-20 17:27:03 +02:00
davinci_voicecodec.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
db8500-prcmu.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
dbx500-prcmu-regs.h mfd: Update db8500-prmcu hostport_access enable 2012-07-09 00:16:10 +02:00
dm355evm_msp.c
ezx-pcap.c ARM: pxa: remove irq_to_gpio from ezx-pcap driver 2012-08-09 15:16:41 +02:00
htc-egpio.c
htc-i2cpld.c
htc-pasic3.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
intel_msic.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
janz-cmodio.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
jz4740-adc.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
Kconfig MFD bits for the 3.6 merge window. 2012-07-30 12:41:17 -07:00
lm3533-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
lm3533-ctrlbank.c mfd: Use SI-units for the lm3533 max-current interface 2012-05-20 17:27:02 +02:00
lpc_ich.c gpio: gpio-ich: Share ownership of GPIO groups 2012-09-14 09:52:13 +02:00
lpc_sch.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
Makefile mfd: Initial support for the WM5110 2012-07-16 15:00:32 +02:00
max8925-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
max8925-i2c.c
max8997-irq.c mfd: Add irq domain support for max8997 interrupts 2012-07-09 00:16:13 +02:00
max8997.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
max8998-irq.c
max8998.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
max77686-irq.c mfd: Allow to specify max77686 interrupt through DT or platform file also 2012-07-09 15:13:42 +02:00
max77686.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
max77693-irq.c mfd: Add MAX77693 irq handler 2012-05-20 17:27:06 +02:00
max77693.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
mc13xxx-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
mc13xxx-i2c.c mfd: Drop modifying mc13xxx driver's id_table in probe 2012-07-16 15:40:17 +02:00
mc13xxx-spi.c mfd: Drop modifying mc13xxx driver's id_table in probe 2012-07-16 15:40:17 +02:00
mc13xxx.h mfd: Move the mc13xxx-core spi specific code into a separate module 2012-05-01 12:35:40 +02:00
mcp-core.c Disintegrate and delete asm/system.h 2012-03-28 15:58:21 -07:00
mcp-sa11x0.c Disintegrate and delete asm/system.h 2012-03-28 15:58:21 -07:00
menelaus.c
mfd-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
omap-usb-host.c mfd: USB: Fix the omap-usb EHCI ULPI PHY reset fix issues. 2012-07-09 00:16:25 +02:00
palmas.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
pcf50633-adc.c
pcf50633-core.c mfd: Add missing out of memory check for pcf50633 2012-07-16 15:55:41 +02:00
pcf50633-gpio.c mfd: Include linux/mfd/pcf50633/pmic.h in pcf50633-gpio.c 2012-03-06 18:46:51 +01:00
pcf50633-irq.c mfd: Include linux/mfd/pcf50633/mbc.h in pcf50633-irq.c 2012-03-06 18:46:51 +01:00
pm8xxx-irq.c
pm8921-core.c
rc5t583-irq.c mfd: Add support for RICOH PMIC RC5T583 2012-03-16 20:05:45 +01:00
rc5t583.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
rdc321x-southbridge.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
sec-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
sec-irq.c mfd: Add s2mps11 irq driver 2012-07-16 14:31:59 +02:00
sm501.c mfd: Use DIV_ROUND_CLOSEST for sm501 clock 2012-03-16 20:37:47 +01:00
sta2x11-mfd.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
stmpe-i2c.c Viresh has moved 2012-06-20 14:39:36 -07:00
stmpe-spi.c Viresh has moved 2012-06-20 14:39:36 -07:00
stmpe.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
stmpe.h
t7l66xb.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tc3589x.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tc6387xb.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tc6393xb.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
ti-ssp.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
timberdale.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
timberdale.h
tmio_core.c
tps6105x.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tps6507x.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tps6586x.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tps65010.c mfd: remove IRQF_SAMPLE_RANDOM which is now a no-op 2012-07-19 10:38:33 -04:00
tps65090.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tps65217.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tps65910-irq.c mfd: Add tps65910-irq devicetree init and irqdomain support 2012-05-20 17:27:08 +02:00
tps65910.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tps65911-comparator.c Fix typo milivolt => millivolt 2012-04-05 16:58:23 -07:00
tps65912-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
tps65912-i2c.c
tps65912-irq.c
tps65912-spi.c
twl4030-audio.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
twl4030-irq.c mfd: enable wakeup on twl4030 IRQ. 2012-05-09 18:02:51 +02:00
twl4030-madc.c
twl4030-power.c
twl6030-irq.c mfd: Replace twl-* pr_ macros by the dev_ equivalent and do various cleanups 2012-03-22 13:05:34 +01:00
twl6030-pwm.c
twl6040-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
twl6040-irq.c mfd: Add support for Device Tree to twl6040 2012-05-20 17:27:12 +02:00
twl-core.c The tag contains just a few battery-related changes for v3.6. It's is 2012-07-31 18:08:25 -07:00
twl-core.h mfd: Move twl-core IRQ allocation into twl[4030|6030]-irq files 2012-03-22 13:04:33 +01:00
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vx855.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
wl1273-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
wm831x-auxadc.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
wm831x-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
wm831x-i2c.c mfd: wm831x: Convert to devm_regmap_init() 2012-02-22 13:57:05 +00:00
wm831x-irq.c mfd: Emulate active low IRQs as well as active high IRQs for wm831x 2012-05-20 17:27:14 +02:00
wm831x-otp.c mfd: wm831x: Feed the device UUID into device_add_randomness() 2012-07-19 10:38:31 -04:00
wm831x-spi.c MFD changes for 3.4 2012-03-28 13:56:35 -07:00
wm5102-tables.c mfd: Mark headphone detect readback wm5102 register volatile 2012-07-09 00:46:29 +02:00
wm5110-tables.c mfd: Add data tables for the WM5110 2012-07-16 14:59:56 +02:00
wm8350-core.c mfd: Remove custom wm8350 cache implementation 2012-07-09 00:16:10 +02:00
wm8350-gpio.c
wm8350-i2c.c mfd: Add regmap cache support for wm8350 2012-07-09 00:16:10 +02:00
wm8350-irq.c mfd: Rely on regmap cache in wm8350 interrupt controller 2012-07-09 00:16:10 +02:00
wm8350-regmap.c mfd: Remove custom wm8350 cache implementation 2012-07-09 00:16:10 +02:00
wm8400-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-14 09:51:54 +02:00
wm8994-core.c mfd: wm8994: Update WM1811 register patches for latest evaluation 2012-09-14 09:52:12 +02:00
wm8994-irq.c mfd: Support for user defined wm8994 irq flags 2012-07-09 00:16:10 +02:00
wm8994-regmap.c mfd: wm8994: Implement support for WM1811 devices with higher cust_ids 2012-09-14 09:52:11 +02:00
wm8994.h