linux/drivers/regulator
Axel Lin 9234c636c5 regulator: as3711: Convert to use linear ranges
The SD, ALDO, and DLDO vlotage tables are composed of linear ranges.
This patch converts as3711 to use newly introduced helpers for multiple
linear ranges.

Below is the voltage table on datasheet:

SD:
00h:     DC/DC powered down
01h-40h: Volt = 0.6V + sdx_vsel * 12.5mV
41h-70h: Volt = 1.4V + (sdx_vsel - 40h) * 25mV
71h-7Fh: Volt = 2.6V + (sdx_vsel - 70h) * 50mV

ALDO:
0h-0Fh:  1.2V + ldox_vsel * 50mV
10h-1Fh: 1.8V + (ldox_vsel - 10h) * 100mV

DLDO:
00h-10h: Volt = 0.9V + ldox_vsel * 50mV
11h-1fh: Do not use
20h-3fh: Volt = 1.75V + (ldox_vsel - 20h) * 50mV

Note, when convert to use linear ranges APIs, the equation for SD needs below
adjustment because the linear ranges APIs wiil substract range->min_sel when
apply the equation.

SD ( the equation to be used with linear ranges APIs )
01h-40h: Volt = 0.6125V + (sdx_vsel - 1h) * 12.5mV
41h-70h: Volt = 1.425V + (sdx_vsel - 41h) * 25mV
71h-7Fh: Volt = 2.650V + (sdx_vsel - 71h) * 50mV

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-07-24 15:47:07 +01:00
..
88pm8607.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
aat2870-regulator.c regulator: remove use of __devexit 2012-11-20 10:53:38 +09:00
ab3100.c regulator: ab3100: Fix regulator register error handling 2013-04-26 16:33:10 +01:00
ab8500-ext.c regulator: ab8500-ext: Staticize local symbols 2013-06-26 16:23:09 +01:00
ab8500.c regulator: Updates for v3.11 2013-07-03 11:56:38 -07:00
ad5398.c regulator: remove use of __devexit 2012-11-20 10:53:38 +09:00
anatop-regulator.c regulator: anatop: improve precision of delay time 2013-02-08 11:15:00 +00:00
arizona-ldo1.c regulator: arizona: Increase ramp delay for high current regulators 2013-03-26 13:27:11 +00:00
arizona-micsupp.c regulator: arizona-micsupp: Enable bypass in default constraints 2013-01-13 21:31:02 +09:00
as3711-regulator.c regulator: as3711: Convert to use linear ranges 2013-07-24 15:47:07 +01:00
core.c Merge remote-tracking branch 'regulator/topic/linar' into regulator-next 2013-07-01 11:17:08 +01:00
da903x.c regulator: remove use of __devexit 2012-11-20 10:53:38 +09:00
da9052-regulator.c Merge remote-tracking branch 'regulator/topic/of' into regulator-next 2013-02-19 12:42:52 +00:00
da9055-regulator.c Merge remote-tracking branch 'regulator/topic/da9055' into regulator-next 2013-02-19 12:42:33 +00:00
db8500-prcmu.c regulator: db8500-prcmu - remove incorrect __exit markup 2013-03-01 06:04:44 +00:00
dbx500-prcmu.c regulator: dbx500: Make local symbol static 2013-05-08 13:42:30 +01:00
dbx500-prcmu.h regulator: dbx500-prcmu: Remove operating_point from struct dbx500_regulator_info 2013-04-02 23:05:28 +01:00
dummy.c regulator: remove use of __devinit 2012-11-20 10:31:26 +09:00
dummy.h regulator: fix build when CONFIG_REGULATOR_DUMMY=n 2010-10-28 22:40:32 +01:00
fan53555.c regulator: fan53555: Use PTR_RET function 2013-03-20 14:30:12 +01:00
fixed-helper.c regulator: extend the fixed dummy voltage regulator to accept voltage 2012-06-19 23:22:30 +01:00
fixed.c Drivers: regulator: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
gpio-regulator.c regulator: gpio-regulator: Staticize of_get_gpio_regulator_config() 2013-01-29 00:44:17 +08:00
isl6271a-regulator.c regulator: isl6271a: Use NULL instead of 0 2013-05-12 18:36:38 +04:00
Kconfig Merge remote-tracking branch 'regulator/topic/abb' into regulator-next 2013-07-01 11:17:06 +01:00
lp872x.c regulator: lp872x: support the device tree feature 2013-05-20 18:13:44 -05:00
lp3971.c regulator: lp397x: use devm_kzalloc() to make cleanup paths simpler 2013-05-27 08:18:30 -04:00
lp3972.c regulator: lp397x: use devm_kzalloc() to make cleanup paths simpler 2013-05-27 08:18:30 -04:00
lp8755.c regulator: Remove unnecessary include of linux/delay.h from regulator drivers 2013-05-12 18:39:51 +04:00
lp8788-buck.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
lp8788-ldo.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
Makefile Merge remote-tracking branch 'regulator/topic/abb' into regulator-next 2013-07-01 11:17:06 +01:00
max1586.c Merge remote-tracking branch 'regulator/topic/max1586' into v3.9-rc8 2013-04-28 02:13:41 +01:00
max8649.c Merge remote-tracking branch 'regulator/topic/enable-invert' into v3.9-rc8 2013-04-28 02:13:37 +01:00
max8660.c regulator: Remove NULL test before calling regulator_unregister() 2013-04-28 02:11:19 +01:00
max8907-regulator.c regulator: Add missing of_node_put() 2013-01-30 18:50:27 +08:00
max8925-regulator.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
max8952.c regulator: max8952: Add missing config.of_node setting for regulator register 2013-04-26 18:17:01 +01:00
max8973-regulator.c regulator: max8973: initial DT support 2013-06-24 15:22:26 +01:00
max8997.c regulator: max8997: Test pdata by NULL checking instead of IS_ERR_OR_NULL 2013-04-15 17:21:18 +01:00
max8998.c mfd: max8998: Add support for Device Tree 2013-06-30 23:30:04 +02:00
max77686.c regulator: Remove unnecessary include of linux/delay.h from regulator drivers 2013-05-12 18:39:51 +04:00
max77693.c regulator: max77693: Remove NULL test for rmatch[i].init_data 2013-07-01 11:16:15 +01:00
mc13xxx-regulator-core.c regulator: mc13xxx: Add warning of incorrect names of regulators 2013-04-28 02:10:00 +01:00
mc13xxx.h regulator: mc13xxx: Add warning of incorrect names of regulators 2013-04-28 02:10:00 +01:00
mc13783-regulator.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
mc13892-regulator.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
of_regulator.c regulator: of: Added a property to indicate bypass mode support 2013-06-20 12:20:09 +01:00
palmas-regulator.c regulator: palmas: Add TPS659038 support 2013-06-27 09:46:30 +02:00
pcap-regulator.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
pcf50633-regulator.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
rc5t583-regulator.c regulator: rc5t583: Remove unused fields from struct rc5t583_regulator_info 2013-04-16 12:22:06 +01:00
s2mps11.c regulator: s2mps11: Convert ramp rate to uV/us and set default ramp rate 2013-07-03 18:51:40 +01:00
s5m8767.c Merge remote-tracking branch 'regulator/topic/s5m8767' into v3.9-rc8 2013-04-28 02:13:46 +01:00
ti-abb-regulator.c regulator: ti-abb: Convert to use devm_ioremap_resource 2013-06-18 12:57:08 +01:00
tps6105x-regulator.c regulator: remove use of __devexit 2012-11-20 10:53:38 +09:00
tps6507x-regulator.c regulator: tps6507x: Use regulator_map_voltage_ascend 2013-04-25 11:48:37 +01:00
tps6524x-regulator.c Merge remote-tracking branch 'regulator/topic/core' into v3.9-rc8 2013-04-28 02:13:37 +01:00
tps6586x-regulator.c mfd: tps6586x: correct device name of the regulator cell 2013-06-24 12:37:47 +01:00
tps51632-regulator.c regulator: tps51632: Use regulator_[get|set]_voltage_sel_regmap 2013-02-13 12:58:40 +00:00
tps62360-regulator.c regulator: tps62360: Fix crash in i2c_driver .probe 2013-06-18 12:45:09 +01:00
tps65023-regulator.c Merge remote-tracking branch 'regulator/topic/tps65023' into v3.9-rc8 2013-04-28 02:13:47 +01:00
tps65090-regulator.c regulator: tps65090: Fix using wrong dev argument for calling of_regulator_match 2013-01-31 14:42:05 +08:00
tps65217-regulator.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
tps65910-regulator.c regulator: tps65910: Convert to use regulator_map_voltage_ascend 2013-04-23 11:41:06 +01:00
tps65912-regulator.c regulator: remove use of __devexit 2012-11-20 10:53:38 +09:00
tps80031-regulator.c regulator: tps80031: Convert tps80031_dcdc_ops to [get|set]_voltage_sel_regmap 2013-04-23 11:47:38 +01:00
twl-regulator.c mfd: twl-core: Change TWL6025 references to TWL6032 2013-06-20 10:26:29 +02:00
userspace-consumer.c regulator: userspace-consumer: Convert to use devm_* APIs 2012-04-18 10:26:24 +01:00
vexpress.c regulator: remove use of __devexit 2012-11-20 10:53:38 +09:00
virtual.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
wm831x-dcdc.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
wm831x-isink.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
wm831x-ldo.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
wm8350-regulator.c regulator: wm8350: Reuse map_voltage() to get selector of a given uV 2012-06-17 20:53:58 +01:00
wm8400-regulator.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00
wm8994-regulator.c regulator: Remove all platform_set_drvdata(pdev, NULL) in drivers 2013-05-12 18:34:12 +04:00