a4a6b9de5c859ff953ce1b854cbfa112718a3f43 |
|
30-Sep-2013 |
Jingoo Han <jg1.han@samsung.com> |
regulator: ab8500-ext: use devm_regulator_register() Use devm_regulator_register() to make cleanup paths simpler, and remove unnecessary remove(). Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Mark Brown <broonie@linaro.org>
|
08d49f4372ebee2b06d6988ecca37612fdc5b897 |
|
26-Jun-2013 |
Sachin Kamat <sachin.kamat@linaro.org> |
regulator: ab8500-ext: Staticize local symbols Local symbols used only in this file are made static. Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
|
30aa4b26c00f5c5ae6081f85e7adca47dcb24e29 |
|
07-Jun-2013 |
Lee Jones <lee.jones@linaro.org> |
regulator: ab8500-ext: Enable for Device Tree Here we use the OF regulator match facility to collect and populate initialisation data from Device Tree if we're booting with it enabled. Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonielinaro.org>
|
5a49b4a527e5b72ae3a4f64f078759f83fbd98b5 |
|
07-Jun-2013 |
Lee Jones <lee.jones@linaro.org> |
regulator: ab8500-ext: Register as a device in its own right Some platforms don't support the AB8500 external regulators, so instead of having a list of is_<platform>() calls prior to calling ab8500_ext_regulator_init() from ab8500_regulator_probe(), we can only register as a platform device on platforms which require them. It means we also have more control over them when booting with Device Tree. Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonielinaro.org>
|
33fb880249b1f2f349461c64d19bdfe2e969c1ba |
|
07-Jun-2013 |
Lee Jones <lee.jones@linaro.org> |
regulator: ab8500-ext: Provide a set_voltage call-back operation When registering regulators which have a single voltage through Device Tree, the framework insists that the specified voltage is actually set. Well in order to do that we need to provide this call-back, where we check that the value is sane and return without error. Not that the selector isn't populated, but in our case list_voltage doesn't actually use it, so we're good. Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
|
7384744d2de1638b5aa9cbe9f743e9067cb6a44a |
|
16-Apr-2013 |
Axel Lin <axel.lin@ingics.com> |
regulator: ab8500-ext: Remove enable() and disable() functions Both enable() and disable() functions have only one caller, thus remove them. Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
66511fa4a7902fb9ffdffc8c153f1758817fb8a4 |
|
16-Apr-2013 |
Axel Lin <axel.lin@ingics.com> |
regulator: ab8500-ext: Don't update info->update_val if set_mode() fails This ensures info->update_val status is still correct if set_mode() call fails. Otherwise, get_mode() may return wrong status if a set_mode() call fails. Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
3480c0cab6e1a25fdeb63147b0b643b7825a36fb |
|
10-Apr-2013 |
Axel Lin <axel.lin@ingics.com> |
regulator: ab8500-ext: Make the return type of ab8500_ext_regulator_exit() void ab8500_ext_regulator_exit() never fails. Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
e343ab08bddeb0ed83f0a85f06739569d3081e3a |
|
07-Apr-2013 |
Axel Lin <axel.lin@ingics.com> |
regulator: ab8500-ext: Remove get_voltage to avoid duplicate implementation The implementation of ab8500_ext_fixed_get_voltage is identical to ab8500_ext_list_voltage. We can avoid the duplicate implementation by just remove get_voltage. For fixed regulator, regulator core will call list_voltage(rdev, 0) to get voltage if both get_voltage get_voltage_sel are not implemented. Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
bcbba9de0f66d30621a489dc8af07350f8d477fd |
|
07-Apr-2013 |
Axel Lin <axel.lin@ingics.com> |
regulator: ab8500-ext: Remove unnecessary checking for ab9540 and ab8540 This code was added by commit 0fe17e20a6 "regulator: ab8500-ext: Add support for AB9540 regulators" and commit bd44e2cb "regulator: ab8500: Also check for AB8505 based platforms" The original patch[1] is to set info->desc.ops = &ab9540_ext_regulator_ops. However, ab9540_ext_regulator_ops is identical to ab8500_ext_regulator_ops[2]. Thus we can complete remove the unnecessary checking for ab9540 and ab8540. [1] https://lkml.org/lkml/2013/3/28/333 [2] https://lkml.org/lkml/2013/4/1/178 Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
9ab51a0eb46a1cd894b1bc784e7775f7c29918c0 |
|
07-Apr-2013 |
Axel Lin <axel.lin@ingics.com> |
regulator: ab8500-ext: Get rid of is_enabled from struct ab8500_ext_regulator_info The intention of this patch is to simplify the code. Maintain the is_enabled flag is not trivial, it not only needs to set/clear the flag in disable()/enable() but also needs to set the flag in is_enable() to get initial status. The only benefit of keeping is_enabled flag is just save a register read when set_mode(). Remove is_enabled flag makes the code simpler. Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
37daa8aed1af2e09abfdb66e8da9074eb9b9e1a1 |
|
02-Apr-2013 |
Axel Lin <axel.lin@ingics.com> |
regulator: ab8500-ext: Don't update info->is_enabled if write to register fails Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
bd44e2cb4a21d9297b84efbb2e26961f6ece0423 |
|
02-Apr-2013 |
Lee Jones <lee.jones@linaro.org> |
regulator: ab8500: Also check for AB8505 based platforms Ensure we initialise AB8505 external supply regulators. Signed-off-by: Alexandre Torgue <alexandre.torgue@stericsson.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Reviewed-by: Philippe LANGLAIS <philippe.langlais@stericsson.com> Tested-by: Xiao Mei ZHANG <xiaomei.zhang@stericsson.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
0fe17e20a6af5cbe4d0a7739300f7b818c79620f |
|
02-Apr-2013 |
Lee Jones <lee.jones@linaro.org> |
regulator: ab8500-ext: Add support for AB9540 regulators Add the support for ab9540 external regulators. Signed-off-by: Michel JAOUEN <michel.jaouen@stericsson.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
a6324709ab4e8a06cb61aa4f7aa3374679d5f426 |
|
28-Mar-2013 |
Bengt Jonsson <bengt.g.jonsson@stericsson.com> |
regulator: ab8500-ext: Add support for AB8505/AB9540 The external regulator driver checks for old AB8500 HW to apply a fix. This patch adds a check to see that it is a AB8500 (not AB8505/AB9540). Signed-off-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
18bc2b39307b45527efc6c84836953c7a8f2181e |
|
28-Mar-2013 |
Bengt Jonsson <bengt.g.jonsson@stericsson.com> |
regulator: ab8500-ext: Add HW request support Support for HW request is added in the external regulator driver. A flag in the board configuration can be set to let HW control the regulator when there is no SW request. This means that the regulator will be put in high power mode when there is a SW request and in HW-request mode otherwise. Signed-off-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Reviewed-by: Mattias NILSSON <mattias.i.nilsson@stericsson.com> Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|
d1a820011b2fbc11d5af80d1a961fe66c613fa4b |
|
28-Mar-2013 |
Lee Jones <lee.jones@linaro.org> |
regulator: ab8500-ext: New driver to control external regulators The ABx500 is capable of controlling three external regulator supplies. Most commonly on and off are supported, but if an external regulator chipset or power supply supports high-power and low-power mode settings, we can control those too. Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
|