summaryrefslogtreecommitdiffstats
path: root/drivers/regulator/da9055-regulator.c
Commit message (Collapse)AuthorAgeFilesLines
*-. Merge remote-tracking branches 'regulator/topic/bcm590xx', ↵Mark Brown2014-03-261-4/+65
|\ \ | | | | | | | | | 'regulator/topic/da9052', 'regulator/topic/da9055', 'regulator/topic/da9063', 'regulator/topic/da9210', 'regulator/topic/db8500' and 'regulator/topic/dbx500' into regulator-next
| | * regulator: da9055: Do not hardcode return valueSachin Kamat2014-02-191-1/+1
| | | | | | | | | | | | | | | | | | | | | Propagate the error value returned by the function instead. Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
| | * regulator: da9055: Use of_get_child_by_nameSachin Kamat2014-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | of_find_node_by_name walks the allnodes list, and can thus walk outside of the parent node. Use of_get_child_by_name instead. Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
| | * regulator: da9055: declare return type of inline function exclusivelySeongJae Park2014-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | da9055_regulator_dt_init does not declare return type and it cause following build warning. drivers/regulator/da9055-regulator.c:582:15: warning: return type defaults to ‘int’ [-Wreturn-type] static inline da9055_regulator_dt_init(struct platform_device *pdev, ^ Fix the warning by declare return type as int exclusively. Signed-off-by: SeongJae Park <sj38.park@gmail.com> Signed-off-by: Mark Brown <broonie@linaro.org>
| | * regulator: da9055: Add DT supportAdam Thomson2014-02-071-4/+65
| |/ | | | | | | | | Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* / regulator: da9055: Remove use of regmap_irq_get_virq()Adam Thomson2014-02-071-1/+3
|/ | | | | Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* regulator: da9055: Convert to devm_regulator_registerAxel Lin2013-09-171-19/+5Star
| | | | | Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* regulator: use dev_get_platdata()Jingoo Han2013-07-301-1/+1
| | | | | | | | Use the wrapper function for retrieving the platform data instead of accessing dev->platform_data directly. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* Merge remote-tracking branch 'regulator/topic/da9055' into regulator-nextMark Brown2013-02-191-3/+0Star
|\
| * regulator: da9055: Remove unused v_shift field from struct da9055_volt_regAxel Lin2013-01-071-3/+0Star
| | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Drivers: regulator: remove __dev* attributes.Greg Kroah-Hartman2013-01-041-6/+6
|/ | | | | | | | | | | | | | | | CONFIG_HOTPLUG is going away as an option. As a result, the __dev* markings need to be removed. This change removes the use of __devinit, __devexit_p, __devinitdata, __devinitconst, and __devexit from these drivers. Based on patches originally written by Bill Pemberton, but redone by me in order to handle some of the coding style issues better, by hand. Cc: Bill Pemberton <wfp5p@virginia.edu> Cc: Liam Girdwood <lrg@ti.com> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* Merge remote-tracking branch 'regulator/topic/min' into regulator-nextMark Brown2012-12-101-47/+8Star
|\
| * regulator: da9055: Use linear_min_sel and regulator_[map|list]_voltage_linearAxel Lin2012-11-271-47/+8Star
| | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | regulator: da9055: Select maximum current in specific range for ↵Axel Lin2012-11-271-12/+9Star
|/ | | | | | | | | | | | | | | | | | | | set_current_limit Selecting the minimal value is only true for voltage regulators. For current regulators the maximum in the given range should be selected instead. This issue was reported by Heiko Stuebner for gpio-regulator driver [1], and the conclusion is to select the max current for current regulators [2]. [1] https://lkml.org/lkml/2012/8/5/162 [2] https://lkml.org/lkml/2012/8/6/183 This patch also ensures da9055_buck_set_current_limit return -EINVAL when the supported current limit does not meet the request range. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* regulator: da9055: Properly handle voltage range that doesn't start with 0 ↵Axel Lin2012-11-211-30/+50
| | | | | | | | | | | | | | | | | | | | | offset This patch implements map_voltage and list_voltage callbacks to properly handle the case voltage range that doesn't start with 0 offset. Now we adjust the selector in map_voltage() before calling set_voltage_sel(). And return 0 in list_voltage() for invalid selectors. With above change, we can remove da9055_regulator_set_voltage_bits function. One tricky part is that we need adding voffset to n_voltages. Although for the cases "selector < voffset" are invalid, we need add voffset to n_voltage so regulator_list_voltage() won't fail while checking the boundary for selector before calling list_voltage callback. Signed-off-by: Axel Lin <axel.lin@ingics.com> Tested-by: Ashish Jangam <ashish.jangam@kpitcummins.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* regulator: da9055: Fix checking wrong value in da9055_gpio_initAxel Lin2012-11-161-1/+1
| | | | | | | | Check pdata->gpio_rsel && pdata->gpio_rsel[id] for the case GPI pin is muxed with regulator to select the regulator register set A/B for voltage ramping. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* regulator: DA9055 regulator driverAshish Jangam2012-11-151-0/+663
This is the Regulator patch for the DA9055 PMIC and has got dependency on the DA9055 MFD core. This patch support all of the DA9055 regulators. The output voltages are fully programmable through I2C interface only. The platform data with regulation constraints is passed down from the board to the regulator. This patch is functionaly tested on SMDK6410 board. DA9055 Evaluation board was connected to the SMDK6410 board. Signed-off-by: David Dajun Chen <dchen@diasemi.com> Signed-off-by: Ashish Jangam <ashish.jangam@kpitcummins.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>