- 18 Apr, 2013 2 commits
-
-
Axel Lin authored
The voltage_shift can be calculated from voltage_mask. Let's remove voltage_shift fied from struct ab8500_regulator_info, this change can prevent missing voltage_shift setting issue. 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>
-
Axel Lin authored
The voltage_shift field of struct expand_register is not used now, remove it. 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>
-
- 17 Apr, 2013 5 commits
-
-
Axel Lin authored
When setting voltage for AB8540_LDO_AUX3, current code only updates one of info->voltage_reg and info->expand_register registers which is wrong. To ensure we set to correct voltage, it always needs to clear or set expand_register.voltage_mask bit of expand_register. The function of the expand register bit is the following (from the user manual): 0: VAUX3 output voltage is determined by Vaux3Sel bit settings in register VldoCVaux3Sel 1: VAUX3 output voltage is set to 3.05V regardless of Vaux3Sel settings in register VldoCVaux3Sel (VldoCVaux3Sel is the register at 0x0421) So when going to 3.05V, set the expand register bit. When leaving 3.05V for another voltage, set the target voltage before clearing the expand register bit. 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>
-
Axel Lin authored
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>
-
Axel Lin authored
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>
-
Axel Lin authored
Currently, set invalid mode setting for shared mode regulators may change sm->lp_mode_req flag. This patch ensures we don't set lp_mode_req flag to wrong status if set_mode() fails. This patch includes some clean up, and these changes makes this patch looks like code refactor. The clean up is mainly to avoid adding ugly code to handle failure paths. 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>
-
Axel Lin authored
This patch ensures info->update_val is consistent with current register value. 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>
-
- 16 Apr, 2013 1 commit
-
-
Axel Lin authored
We can save a register read operation in some case if read expand_register first. If info->expand_register.voltage_mask bit is set, no need to read voltage_reg. 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>
-
- 15 Apr, 2013 1 commit
-
-
Axel Lin authored
The voltage_mask is 0xc0, thus we need to set voltage_shift = 6 to get correct selector in get_voltage_sel and set_voltage_sel. 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>
-
- 12 Apr, 2013 1 commit
-
-
Axel Lin authored
The voltage_mask and voltage_shift settings of AB8505_LDO_AUDIO are not matched. It looks like a typo in the voltage_mask settings. 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>
-
- 11 Apr, 2013 2 commits
-
-
Axel Lin authored
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>
-
Axel Lin authored
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>
-
- 08 Apr, 2013 4 commits
-
-
Axel Lin authored
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>
-
Axel Lin authored
This code was added by commit 0fe17e20 "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/178Signed-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>
-
Axel Lin authored
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>
-
Axel Lin authored
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. This patch also moves ab8500_regulator_is_enabled() close to ab8500_regulator_[en|dis]able functions. This is required to avoid a forward declaration because now we call ab8500_regulator_is_enabled() in ab8500_regulator_set_mode(). This change also makes the code better in readability by moving similar functions to one place. 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>
-
- 05 Apr, 2013 1 commit
-
-
Axel Lin authored
All users of ab8500_regulator_volt_mode_ops and ab8500_regulator_volt_ops do not set info->desc.enable_time, thus set_voltage_time_sel() always returns 0. Remove it. Signed-off-by:
Axel Lin <axel.lin@ingics.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 03 Apr, 2013 10 commits
-
-
Axel Lin authored
This is required for regulator_list_voltage_table() to properly work. Signed-off-by:
Axel Lin <axel.lin@ingics.com> Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Axel Lin authored
commit b080c78a "regulator: ab8500: Update voltage handling for fixed voltage regulators" removes min_uV settings and sets volt_table for all fixed voltages, thus we can not use regulator_list_voltage_linear now. Use regulator_list_voltage_table instead. Signed-off-by:
Axel Lin <axel.lin@ingics.com> Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
Quite a few changes in this patch, including: supply-name changes, new consumers, initialisation and capability updates and new regulators. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
The ab*_match[] arrays should be moved out of the way, instead of bunched in the middle of the initialisation functions. This patch moves all initialisation code which currently resides above these arrays down to be grouped with the others. This makes the whole thing slightly easier to read. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
Regulator platform data is now passed though a single structure as opposed to the old way where four separate struct elements were required. This patch makes use of the new format. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
The regulator framework offers a generic regulator_list_voltage_table() function which can directly look-up a regulator's voltage capabilities using a table provided through the desc structure. This patch ensures that information is available. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
The regulator framework now has provisions to read a regulator's start-up time via the 'enable_time' attribute. So let's remove all 'enable_time'/'delay' duplication and just stick with 'enable_time' from now on. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
Allow the regulator framework to directly access the time it takes any given regulator to settle. This saves time and code because without it we would have to implement a dedication function to read the value from elsewhere. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Zhenhua HUANG authored
Introduce aux5, aux6 into ab8540 regulator framework. Signed-off-by:
Zhenhua HUANG <zhenhua.huang@stericsson.com> Signed-off-by:
Lee Jones <lee.jones@linaro.org> Reviewed-by:
Maxime COQUELIN <maxime.coquelin@stericsson.com> Reviewed-by:
David PARIS <david.paris@stericsson.com> Reviewed-by:
Philippe LANGLAIS <philippe.langlais@stericsson.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
At the probe use a structure to select the good regulator array from from ab9540, ab8505, ab8540 or ab8500 configuration. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 02 Apr, 2013 12 commits
-
-
Axel Lin authored
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>
-
Axel Lin authored
operating_point is not used since the initial commit of db8500-prcmu driver, remove it. 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>
-
Lee Jones authored
Add voltage setting for vdmic; add LP mode setting for vamic1,2. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
v-amic1 and v-amic2 regulators have dedicated mode registers and share the same mode bit. This patch adds special handling for those regulators. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
In former functions, only can set Vaux3 to 2.91V, because the highest bit of Vaux3 register is put into another register. So add new expanded functions for Vaux3's operation. Signed-off-by:
zhang xiaomei <xiaomei.zhang@stericsson.com> Signed-off-by:
Lee Jones <lee.jones@linaro.org> Reviewed-by:
Philippe LANGLAIS <philippe.langlais@stericsson.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
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>
-
Lee Jones authored
Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Rabin Vincent authored
ExtSupply regulators are not included on AB8505 based platforms. Signed-off-by:
Rabin Vincent <rabin.vincent@stericsson.com> Signed-off-by:
Lee Jones <lee.jones@linaro.org> Tested-by:
Marcus COOPER <marcus.xm.cooper@stericsson.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
The regulator ID in the regulator info array should be the same values as the position of the element within the array. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
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>
-
Lee Jones authored
Before the AB8500 External Regulator driver was Mainlined, it used to be conditionally compiled in using the CONFIG_REGULATOR_AB8500_EXT flag. During the review process that capability was removed, but the guard controlling prototyping slipped though the net. This patch cleans it up. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lee Jones authored
Following commit: "7a4f2609 ARM: ux500: de-globalize <mach/id.h>", the use of 'mach/id.h' is no longer valid. This patch continues the work of the aforementioned commit on patches applied around the same time, containing the merge-conflict. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 01 Apr, 2013 1 commit
-
-
Lee Jones authored
Following a recent move to regulator_list_voltage_table() for all previous abx500 related platforms this converts all recent platform updates over too. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-