08 Sep, 2020
1 commit
-
regulator_notifier_call_chain() doesn't need rdev lock and rdev's
existence is assumed in the code anyway. Remove the locks from drivers.Signed-off-by: Michał Mirosław
Acked-by: Adam Thomson
Reviewed-by: Dmitry Osipenko
Link: https://lore.kernel.org/r/42393f66dcc4d80dcd9797be45216b4035aa96cb.1597032945.git.mirq-linux@rere.qmqm.pl
Signed-off-by: Mark Brown
22 Aug, 2020
1 commit
-
Fix below warning when CONFIG_OF=n:
drivers/regulator/ltc3589.c:460:34: warning: ‘ltc3589_of_match’ defined but not used [-Wunused-const-variable=]
460 | static const struct of_device_id ltc3589_of_match[] = {
| ^~~~~~~~~~~~~~~~Signed-off-by: Jisheng Zhang
Link: https://lore.kernel.org/r/20200821111449.7cf580f2@xhacker.debian
Signed-off-by: Mark Brown
26 Apr, 2019
3 commits
-
Signed-off-by: Axel Lin
Signed-off-by: Mark Brown -
After converting to use simplified DT parsing, the struct ltc3589_regulator
only has a desc member. So let's remove struct ltc3589_regulator and use
struct regulator_desc instead.Signed-off-by: Axel Lin
Signed-off-by: Mark Brown -
Use regulator core's simplified DT parsing code to simplify the driver
implementation.Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
13 Mar, 2019
1 commit
-
The mutex for the regulator_dev must be controlled by the caller of
the regulator_notifier_call_chain(), as described in the comment
for that function.Failure to mutex lock and unlock surrounding the notifier call results
in a kernel WARN_ON_ONCE() which will dump a backtrace for the
regulator_notifier_call_chain() when that function call is first made.
The mutex can be controlled using the regulator_lock/unlock() API.Fixes: 3eb2c7ecb7ea ("regulator: Add LTC3589 support")
Suggested-by: Adam Thomson
Signed-off-by: Steve Twiss
Signed-off-by: Mark Brown
07 Sep, 2018
1 commit
-
Split regmap_config.use_single_rw into use_single_read and
use_single_write. This change enables drivers of devices which only
support bulk operations in one direction to use the regmap_bulk_*()
functions for both directions and have their bulk operation split into
single operations only when necessary.Update all struct regmap_config instances where use_single_rw==true to
instead set both use_single_read and use_single_write. No attempt was
made to evaluate whether it is possible to set only one of
use_single_read or use_single_write.Signed-off-by: David Frey
Signed-off-by: Mark Brown
22 Aug, 2017
1 commit
-
i2c_device_id are not supposed to change at runtime. All functions
working with i2c_device_id provided by work with
const i2c_device_id. So mark the non-const structs as const.Signed-off-by: Arvind Yadav
Signed-off-by: Mark Brown
22 Feb, 2017
1 commit
-
The driver doesn't have a struct of_device_id table but supported devices
are registered via Device Trees. This is working on the assumption that a
I2C device registered via OF will always match a legacy I2C device ID and
that the MODALIAS reported will always be of the form i2c:.But this could change in the future so the correct approach is to have an
OF device ID table if the devices are registered via OF.Signed-off-by: Javier Martinez Canillas
Signed-off-by: Mark Brown
01 Feb, 2017
1 commit
-
Declare regulator_ops structure as const as it is only stored in the ops
field of a regulator_desc structure. This field is of type const, so
regulator_ops structures having this property can be made const too.File size before: drivers/regulator/ltc3589.o
text data bss dec hex filename
2564 3312 288 6164 1814 drivers/regulator/ltc3589.oFile size after: drivers/regulator/ltc3589.o
text data bss dec hex filename
3604 2544 8 6156 180c drivers/regulator/ltc3589.oSigned-off-by: Bhumika Goyal
Signed-off-by: Mark Brown
13 Feb, 2016
1 commit
-
It's perfectly valid to use the LTC3589 without an interrupt pin
connected to it. Currently, the driver probing fails when client->irq
is 0 (which means "no interrupt"). Don't register the interrupt
handler in that case but successfully finish the device probing instead.Signed-off-by: Bernhard Walle
Signed-off-by: Mark Brown
30 Aug, 2015
2 commits
-
…'regulator/topic/owner', 'regulator/topic/pfuze100' and 'regulator/topic/pwm' into regulator-next
-
The driver has a I2C device id table that is used to create the modaliases
and already contains a "ltc3589" device id. So the modalias is unnecessary.Signed-off-by: Javier Martinez Canillas
Signed-off-by: Mark Brown
15 Jul, 2015
1 commit
-
i2c_driver does not need to set an owner because i2c_register_driver()
will set it.Signed-off-by: Krzysztof Kozlowski
Signed-off-by: Mark Brown
07 Jul, 2015
1 commit
-
ltc3589_reg_defaults[] is not modified after initialized, so make it const.
Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
26 Sep, 2014
1 commit
-
VCCR is used as a trigger to start voltage transitions, so
we need to mark it volatile in order to make sure it gets
written to hardware every time we set a new voltage.Fixes regulator voltage being stuck at the first voltage
set after driver load.[lst: reworded commit message]
Signed-off-by: Steffen Trumtrar
Signed-off-by: Lucas Stach
Signed-off-by: Mark Brown
Cc: stable@vger.kernel.org
06 Aug, 2014
1 commit
-
…9', 'regulator/topic/max8952', 'regulator/topic/mc13xxx' and 'regulator/topic/palmas' into regulator-next
21 Jun, 2014
1 commit
-
'ltc3589_reg_defaults' is local to this file. Make it static.
Signed-off-by: Sachin Kamat
Signed-off-by: Mark Brown
16 Jun, 2014
1 commit
-
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: Axel Lin
Signed-off-by: Mark Brown
27 May, 2014
1 commit
-
When fixed_uV is set and n_voltage is 1, regulator core will return
rdev->desc->fixed_uV in regulator_get_voltage() and regulator_list_voltage().Rename ltc3589_standby_regulator_ops to ltc3589_fixed_standby_regulator_ops,
this makes the code clear that the ops is for fixed voltage regulator.Signed-off-by: Axel Lin
Acked-by: Philipp Zabel
Signed-off-by: Mark Brown
26 May, 2014
1 commit
-
This patch adds support for the Linear Technology LTC3589, LTC3589-1,
and LTC3589-2 8-output I2C voltage regulator ICs.Signed-off-by: Lucas Stach
Signed-off-by: Philipp Zabel
Signed-off-by: Mark Brown