linux/drivers/regulator
Mark Brown cd99758ba3 mfd: Convert wm831x to irq_domain
The modern idiom is to use irq_domain to allocate interrupts. This is
useful partly to allow further infrastructure to be based on the domains
and partly because it makes it much easier to allocate virtual interrupts
to devices as we don't need to allocate a contiguous range of interrupt
numbers.

Convert the wm831x driver over to this infrastructure, using a legacy
IRQ mapping if an irq_base is specified in platform data and otherwise
using a linear mapping, always registering the interrupts even if they
won't ever be used. Only boards which need to use the GPIOs as
interrupts should need to use an irq_base.

This means that we can't use the MFD irq_base management since the
unless we're using an explicit irq_base from platform data we can't rely
on a linear mapping of interrupts.  Instead we need to map things via
the irq_domain - provide a conveniencem function wm831x_irq() to save a
small amount of typing when doing so. Looking at this I couldn't clearly
see anything the MFD core could do to make this nicer.

Since we're not supporting device tree yet there's no meaningful
advantage if we don't do this conversion in one, the fact that the
interrupt resources are used for repeated IP blocks makes accessor
functions for the irq_domain more trouble to do than they're worth.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2012-05-20 17:27:07 +02:00
..
88pm8607.c regulator: fix the ldo configure according to 88pm860x spec 2012-02-24 14:56:32 +00:00
aat2870-regulator.c regulator: Add a pointer to aat2870_data in struct aat2870_regulator 2012-03-11 20:48:48 +00:00
ab3100.c regulator: pass additional of_node to regulator_register() 2011-11-23 18:47:04 +00:00
ab8500.c regulator: Convert ab8499 to use get_voltage_sel() 2012-03-11 20:48:43 +00:00
ad5398.c regulator: ad5398: Use DIV_ROUND_UP macro to calculate selector 2012-03-11 20:48:49 +00:00
anatop-regulator.c regulator: Fix a build warning in the anatop driver for 3.4 2012-04-10 10:26:41 -07:00
core.c regulator: Fixes for -rc1 2012-04-04 10:09:30 -07:00
da903x.c regulator: da903x: Use DIV_ROUND_UP macro to calculate selector 2012-03-11 20:48:52 +00:00
da9052-regulator.c regulator: da9052: Ensure the selected voltage falls within the specified range 2012-03-11 20:39:10 +00:00
db8500-prcmu.c regulators/db8500: split off shared dbx500 code 2012-01-20 12:01:29 +00:00
dbx500-prcmu.c regulators/db8500: split off shared dbx500 code 2012-01-20 12:01:29 +00:00
dbx500-prcmu.h regulators/db8500: split off shared dbx500 code 2012-01-20 12:01:29 +00:00
dummy.c regulator: pass additional of_node to regulator_register() 2011-11-23 18:47:04 +00:00
dummy.h regulator: fix build when CONFIG_REGULATOR_DUMMY=n 2010-10-28 22:40:32 +01:00
fixed-helper.c regulator: Remove non-existent parameter from fixed-helper.c kernel doc 2012-03-31 19:41:20 +01:00
fixed.c regulator fixed: Do not report enumaratable voltages if there are none 2012-03-11 20:48:51 +00:00
gpio-regulator.c regulator: Fix compile break due to missing arguments to regulator_register 2011-11-24 10:47:56 +00:00
isl6271a-regulator.c regulator: Simplify the code to get selector in isl6271a_set_voltage 2012-03-11 20:48:47 +00:00
Kconfig Merge tag 'regulator-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator into next/drivers 2012-03-24 11:29:58 +00:00
lp3971.c regulator: pass additional of_node to regulator_register() 2011-11-23 18:47:04 +00:00
lp3972.c regulator: pass additional of_node to regulator_register() 2011-11-23 18:47:04 +00:00
Makefile Merge tag 'regulator-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator into next/drivers 2012-03-24 11:29:58 +00:00
max1586.c regulator: max1586: Use DIV_ROUND_UP macro to calculate selector 2012-03-11 20:48:49 +00:00
max8649.c Merge remote-tracking branch 'regulator/topic/stub' into regulator-next 2012-03-18 21:38:20 +00:00
max8660.c regulator: max8660: Use DIV_ROUND_UP macro to calculate selector 2012-03-11 20:48:50 +00:00
max8925-regulator.c regulator: max8925: Use DIV_ROUND_UP macro 2012-03-13 23:19:40 +00:00
max8952.c regulator: pass additional of_node to regulator_register() 2011-11-23 18:47:04 +00:00
max8997.c regulator: Kill max8997_get_rid function 2012-03-11 20:48:46 +00:00
max8998.c regulator: Silence error message in max8998_pmic_probe 2012-03-11 20:48:54 +00:00
mc13xxx-regulator-core.c regulator: Fix mc13xxx regulator modular build (again) 2012-02-09 22:57:46 +00:00
mc13xxx.h regulator: mc13892: add device tree probe support 2011-12-22 11:10:45 +00:00
mc13783-regulator.c regulator: mc13783: bail out without platform data 2012-03-11 20:48:44 +00:00
mc13892-regulator.c regulator: Fix unbalanced lock/unlock in mc13892_regulator_probe error path 2012-03-26 18:32:11 +01:00
of_regulator.c regulator: Set apply_uV only when min and max voltages are defined 2012-01-26 11:01:21 +00:00
pcap-regulator.c regulator: pass additional of_node to regulator_register() 2011-11-23 18:47:04 +00:00
pcf50633-regulator.c regulator: Fix n_voltage settings for pcf50633 regulator 2012-03-11 20:48:45 +00:00
s5m8767.c regulator: Fix setting new voltage in s5m8767_set_voltage 2012-03-31 11:26:19 +01:00
tps6105x-regulator.c regulator: pass additional of_node to regulator_register() 2011-11-23 18:47:04 +00:00
tps6507x-regulator.c regulator: Convert tps6507x to set_voltage_sel 2012-03-14 14:13:17 +00:00
tps6524x-regulator.c regulator: Updates for 3.4 2012-03-21 10:34:56 -07:00
tps6586x-regulator.c regulator: tps6586x: Fix list minimal voltage setting for LDO0 2012-03-26 11:55:29 +01:00
tps62360-regulator.c regulator: tps62360: Remove pointless test for unsigned less than zero 2012-03-11 20:48:40 +00:00
tps65023-regulator.c regulator: Remove redundant regmap_update_bits call for TPS65023_REG_CON_CTRL2 2012-02-06 16:38:18 +00:00
tps65217-regulator.c regulator: Merge tps65217_pmic_ldo234_ops and tps65217_pmic_dcdc_ops to tps65217_pmic_ops 2012-03-12 10:50:46 +00:00
tps65910-regulator.c mfd: Commonize tps65910 regmap access through header 2012-05-20 17:25:23 +02:00
tps65912-regulator.c regulator: Simplify implementation of tps65912_get_voltage_dcdc 2012-03-14 12:37:23 +00:00
twl-regulator.c regulator: twl-regulator: Add fixed LDO for V1V8, V2V1 supply 2012-03-11 20:09:18 +00:00
userspace-consumer.c regulator: Convert virtual and userspace regulator consumer drivers to use module_platform_driver() 2011-11-28 11:49:13 +00:00
virtual.c regulator: Convert virtual and userspace regulator consumer drivers to use module_platform_driver() 2011-11-28 11:49:13 +00:00
wm831x-dcdc.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
wm831x-isink.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
wm831x-ldo.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
wm8350-regulator.c regulator: Only update [LDOx|DCx]_HIB_MODE bits in wm8350_[ldo|dcdc]_set_suspend_disable 2012-03-29 12:06:24 +01:00
wm8400-regulator.c regulator: wm8400: Use DIV_ROUND_UP macro to calculate selector 2012-03-11 20:48:51 +00:00
wm8994-regulator.c regulator: wm8994: Convert to devm_kzalloc() 2012-03-11 20:48:41 +00:00