kernel_optimize_test/drivers/regulator
Jan Remmet 8f9165c981 regulator: tps65910: Work around silicon erratum SWCZ010
http://www.ti.com/lit/pdf/SWCZ010:
  DCDC o/p voltage can go higher than programmed value

Impact:
VDDI, VDD2, and VIO output programmed voltage level can go higher than
expected or crash, when coming out of PFM to PWM mode or using DVFS.

Description:
When DCDC CLK SYNC bits are 11/01:
* VIO 3-MHz oscillator is the source clock of the digital core and input
  clock of VDD1 and VDD2
* Turn-on of VDD1 and VDD2 HSD PFETis synchronized or at a constant
  phase shift
* Current pulled though VCC1+VCC2 is Iload(VDD1) + Iload(VDD2)
* The 3 HSD PFET will be turned-on at the same time, causing the highest
  possible switching noise on the application. This noise level depends
  on the layout, the VBAT level, and the load current. The noise level
  increases with improper layout.

When DCDC CLK SYNC bits are 00:
* VIO 3-MHz oscillator is the source clock of digital core
* VDD1 and VDD2 are running on their own 3-MHz oscillator
* Current pulled though VCC1+VCC2 average of Iload(VDD1) + Iload(VDD2)
* The switching noise of the 3 SMPS will be randomly spread over time,
  causing lower overall switching noise.

Workaround:
Set DCDCCTRL_REG[1:0]= 00.

Signed-off-by: Jan Remmet <j.remmet@phytec.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
2016-09-24 19:04:36 +01:00
..
88pm800.c Merge branch 'fix/88pm800' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator into regulator-88pm800 2015-07-17 12:42:48 +01:00
88pm8607.c
aat2870-regulator.c
ab3100.c
ab8500-ext.c ARM: ux500: move ab8500_regulator_plat_data into driver 2016-07-12 11:23:50 +02:00
ab8500.c
act8865-regulator.c regulator: act8865: Fix missing of_node_put() in act8865_pdata_from_dt() 2016-07-14 17:22:22 +01:00
act8945a-regulator.c regulator: act8945a: add regulator driver for ACT8945A 2016-02-05 18:18:47 +00:00
ad5398.c regulator: ad5398: Fix return value of ad5398_write_reg 2016-02-20 01:02:34 +09:00
anatop-regulator.c regulator: anatop: allow regulator to be in bypass mode 2016-06-17 11:40:20 +01:00
arizona-ldo1.c regulator: arizona-ldo1: Fix handling of GPIO 0 2015-10-16 15:48:39 +01:00
arizona-micsupp.c
as3711-regulator.c
as3722-regulator.c regulator: as3722: Constify regulator ops 2016-04-11 15:15:36 +01:00
axp20x-regulator.c regulator: axp20x: Add support for the (external) drivebus regulator 2016-06-06 18:38:30 +01:00
bcm590xx-regulator.c regulator: bcm590xx: Remove unneeded semicolon 2015-09-14 19:48:34 +01:00
core.c regulator: Remove regulator_can_change_voltage() 2016-06-09 11:40:34 +01:00
da903x.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9052-regulator.c regulator: da9053/52: Fix incorrectly stated minimum and maximum voltage limits 2016-07-20 17:00:34 +01:00
da9055-regulator.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9062-regulator.c regulator: da9*: constify regulator_ops structures 2015-12-22 23:59:57 +00:00
da9063-regulator.c regulator: da9063: Correct module alias prefix to fix module autoloading 2016-05-10 20:00:49 +01:00
da9210-regulator.c regulator: da9210: addition of device tree support 2016-07-15 11:45:26 +01:00
da9210-regulator.h
da9211-regulator.c regulator: da9211: add descriptions for da9212/da9214 2016-06-29 17:24:55 +01:00
da9211-regulator.h regulator: da9211: add descriptions for da9212/da9214 2016-06-29 17:24:55 +01:00
db8500-prcmu.c
dbx500-prcmu.c
dbx500-prcmu.h
devres.c regulator: Make bulk API support optional supplies 2015-11-17 18:54:07 +00:00
dummy.c
dummy.h
fan53555.c regulator: fan53555: Add support for FAN53555UC13X type 2016-04-20 10:57:26 +01:00
fixed-helper.c
fixed.c regulator: fixed: Remove workaround to handle of_get_named_gpio() return 2016-05-30 16:29:34 +01:00
gpio-regulator.c regulator: gpio: check return value of of_get_named_gpio 2016-03-17 11:44:57 +00:00
helpers.c regulator: helpers: Ensure bypass register field matches ON value 2016-04-22 11:49:03 +01:00
hi655x-regulator.c regulator: hi655x: enable regulator for hi655x PMIC 2016-02-15 19:54:55 +00:00
hi6421-regulator.c
internal.h
isl6271a-regulator.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
isl9305.c Merge remote-tracking branches 'regulator/topic/mt6311', 'regulator/topic/ocp', 'regulator/topic/owner', 'regulator/topic/pfuze100' and 'regulator/topic/pwm' into regulator-next 2015-08-30 14:39:48 +01:00
Kconfig Merge remote-tracking branches 'regulator/topic/qcom-spmi', 'regulator/topic/rn5t618', 'regulator/topic/tps65218' and 'regulator/topic/twl' into regulator-next 2016-07-20 18:02:08 +01:00
lm363x-regulator.c regulator: lm363x: Staticise ldo_cont_enable_time 2015-11-30 11:32:52 +00:00
lp872x.c regulator: lp872x: Add enable GPIO pin support 2016-02-05 18:57:09 +00:00
lp873x-regulator.c regulator: lp873x: Drop _nlr parameter from LP873X_REGULATOR() 2016-06-21 18:43:48 +01:00
lp3971.c regulator: lp3971: Silence uninitialized variable warning 2016-04-14 14:46:05 +01:00
lp3972.c regulator: lp3972: Silence uninitialized variable warning 2016-04-14 14:46:19 +01:00
lp8755.c
lp8788-buck.c regulator: lp8788: constify regulator_ops structures 2015-12-23 00:01:23 +00:00
lp8788-ldo.c regulator: lp8788: constify regulator_ops structures 2015-12-23 00:01:23 +00:00
ltc3589.c regulator: ltc3589: Make IRQ optional 2016-02-12 22:35:00 +00:00
Makefile regulator: mt6323: Add support for MT6323 regulator 2016-07-18 13:46:23 +01:00
max1586.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
max8649.c
max8660.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
max8907-regulator.c
max8925-regulator.c
max8952.c
max8973-regulator.c regulator: max8973: Fix setting ramp delay 2016-05-30 17:00:56 +01:00
max8997-regulator.c regulator: max8997/max77802: Fix misspelled Samsung address 2016-04-05 11:37:49 -07:00
max8998.c
max14577-regulator.c regulator: Rename files for Maxim PMIC drivers 2016-03-28 19:39:17 +01:00
max77620-regulator.c regulator: max77620: check for valid regulator info 2016-06-29 18:50:05 +01:00
max77686-regulator.c regulator: max77686: Configure enable time to properly handle regulator enable 2016-04-29 12:31:39 +01:00
max77693-regulator.c regulator: Rename files for Maxim PMIC drivers 2016-03-28 19:39:17 +01:00
max77802-regulator.c regulator: max8997/max77802: Fix misspelled Samsung address 2016-04-05 11:37:49 -07:00
mc13xxx-regulator-core.c
mc13xxx.h
mc13783-regulator.c
mc13892-regulator.c
mt6311-regulator.c regulator: mt6311: Use REGCACHE_RBTREE 2015-12-18 12:14:27 +00:00
mt6311-regulator.h regulator: mt6311: Add support for mt6311 regulator 2015-07-24 12:30:49 +01:00
mt6323-regulator.c regulator: mt6323: Constify struct regulator_ops 2016-07-19 18:31:59 +01:00
mt6397-regulator.c regulator: mt6397: Add buck change mode regulator interface for mt6397 2016-05-30 16:29:43 +01:00
of_regulator.c regulator: of: setup initial suspend state 2016-06-22 16:15:34 +01:00
palmas-regulator.c regulator: tps65917/palmas: Simplify multiple dereference of match->of_node 2016-05-06 18:15:18 +01:00
pbias-regulator.c Merge remote-tracking branches 'regulator/fix/anatop', 'regulator/fix/gpio', 'regulator/fix/pbias', 'regulator/fix/tpx65218' and 'regulator/fix/vexpress' into regulator-linus 2015-09-21 14:16:09 -07:00
pcap-regulator.c
pcf50633-regulator.c
pfuze100-regulator.c regulator: pfuze100-regulator: Adjust MODULE_DESCRIPTION() 2016-06-06 19:13:48 +01:00
pv88060-regulator.c regulator: pv880x0: Clean up unnecessary header inclusion 2016-05-30 16:29:39 +01:00
pv88060-regulator.h regulator: pv88060: new regulator driver 2015-11-20 18:06:15 +00:00
pv88080-regulator.c regulator: pv880x0: Clean up unnecessary header inclusion 2016-05-30 16:29:39 +01:00
pv88080-regulator.h regulator: pv88080: new regulator driver 2016-04-18 17:53:57 +01:00
pv88090-regulator.c regulator: pv880x0: Clean up unnecessary header inclusion 2016-05-30 16:29:39 +01:00
pv88090-regulator.h regulator: pv88090: new regulator driver 2015-12-08 18:21:06 +00:00
pwm-regulator.c regulator: pwm: Support extra continuous mode cases 2016-07-25 15:34:06 +02:00
qcom_rpm-regulator.c
qcom_smd-regulator.c regulator: qcom_smd: Avoid overlapping linear voltage ranges 2016-07-12 10:01:36 +01:00
qcom_spmi-regulator.c regulator: qcom_spmi: Add support for get_mode/set_mode on switches 2016-06-26 12:24:07 +01:00
rc5t583-regulator.c
rk808-regulator.c regulator: rk808: Migrate to regulator core's simplified DT parsing code 2016-05-13 12:19:57 +01:00
rn5t618-regulator.c regulator: rn5t618: Add RN5T567 PMIC support 2016-06-29 10:11:29 +01:00
rt5033-regulator.c
s2mpa01.c
s2mps11.c regulator: s2mps11: Fix the voltage linear range for s2mps15 2016-07-12 09:24:05 +01:00
s5m8767.c regulator: s5m8767: fix get_register() error handling 2016-02-16 17:08:59 +00:00
sky81452-regulator.c
stw481x-vmmc.c
ti-abb-regulator.c
tps6105x-regulator.c regulator: tps6105x: Convert to use regmap helper functions 2015-11-18 13:19:47 +00:00
tps6507x-regulator.c
tps6524x-regulator.c regulator: tps6524x: Fix broken use of spi_dev_get() 2016-04-20 17:37:59 +01:00
tps6586x-regulator.c regulator: tps6586x: silence pointer-to-int-cast 2015-07-23 15:58:33 +01:00
tps51632-regulator.c regulator: tps51632: Fix setting ramp delay 2016-05-31 16:38:01 +01:00
tps62360-regulator.c regulator: drivers: Drop owner assignment from i2c_driver 2015-07-14 18:53:01 +01:00
tps65023-regulator.c regulator: tps65023: add device tree support 2015-09-21 10:13:17 -07:00
tps65086-regulator.c regulator: tps65086: Update regulator driver for the TPS65086 PMIC 2015-12-01 19:58:58 +00:00
tps65090-regulator.c
tps65217-regulator.c regulator: tps65217: Enable suspend configuration 2016-06-27 17:56:43 +01:00
tps65218-regulator.c regulator: tps65218: force set power-up/down strobe to 3 for dcdc3 2016-06-27 17:56:43 +01:00
tps65910-regulator.c regulator: tps65910: Work around silicon erratum SWCZ010 2016-09-24 19:04:36 +01:00
tps65912-regulator.c regulator: tps65912: Add regulator driver for the TPS65912 PMIC 2016-02-11 16:31:06 +00:00
tps80031-regulator.c
twl-regulator.c regulator: twl: fix use of integer as pointer 2016-06-08 18:18:24 +01:00
userspace-consumer.c
vexpress-regulator.c regulator: vexpress: rename vexpress regulator implementation 2016-02-15 21:01:52 +00:00
virtual.c
wm831x-dcdc.c Merge remote-tracking branch 'regulator/topic/wm831x' into regulator-next 2016-01-12 18:26:12 +00:00
wm831x-isink.c regulator: wm8*: constify regulator_ops structures 2015-12-23 00:00:00 +00:00
wm831x-ldo.c Merge remote-tracking branch 'regulator/topic/wm831x' into regulator-next 2016-01-12 18:26:12 +00:00
wm8350-regulator.c regulator: wm8*: constify regulator_ops structures 2015-12-23 00:00:00 +00:00
wm8400-regulator.c regulator: wm8*: constify regulator_ops structures 2015-12-23 00:00:00 +00:00
wm8994-regulator.c regulator: wm8*: constify regulator_ops structures 2015-12-23 00:00:00 +00:00