X-Git-Url: http://git.cascardo.info/?a=blobdiff_plain;f=drivers%2Fregulator%2Ftps65910-regulator.c;h=696116ebdf50a5b853ba847b9ef55604ed3423ae;hb=ce866e2d182b9e00e29e7a2eed4db908257d7f79;hp=fb991ec764235d55443a9f99414efc3511cad7a2;hpb=c841e12add6926d64aa608687893465330b5a03e;p=cascardo%2Flinux.git diff --git a/drivers/regulator/tps65910-regulator.c b/drivers/regulator/tps65910-regulator.c index fb991ec76423..696116ebdf50 100644 --- a/drivers/regulator/tps65910-regulator.c +++ b/drivers/regulator/tps65910-regulator.c @@ -1111,6 +1111,12 @@ static int tps65910_probe(struct platform_device *pdev) pmic->num_regulators = ARRAY_SIZE(tps65910_regs); pmic->ext_sleep_control = tps65910_ext_sleep_control; info = tps65910_regs; + /* Work around silicon erratum SWCZ010: output programmed + * voltage level can go higher than expected or crash + * Workaround: use no synchronization of DCDC clocks + */ + tps65910_reg_clear_bits(pmic->mfd, TPS65910_DCDCCTRL, + DCDCCTRL_DCDCCKSYNC_MASK); break; case TPS65911: pmic->get_ctrl_reg = &tps65911_get_ctrl_register;