Skip to content
Permalink
Browse files

sunxi: axp152: Keep VDD-INT/VDD-DLL at bootloader set value

Some fex files contain wrong values, causing stability issues.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
  • Loading branch information...
jwrdegoede authored and nisenbeck committed Feb 21, 2015
1 parent dc4ae97 commit 2e2eab5da8aede648b6cbd461b3418421304a7bf
Showing with 10 additions and 13 deletions.
  1. +10 −13 drivers/power/axp152.c
@@ -554,14 +554,17 @@ static struct regulator_init_data regl_init_data[AXP152_REGULATOR_COUNT] = {
*/
}
},
[axp152_dcdc4] = { /* Vcpu, power on 1.25V, Android from fex */
[axp152_dcdc4] = { /* VDD-INT/VDD-DLL, power on 1.25V, use u-boot value */
.num_consumer_supplies = 1,
.consumer_supplies = &axp152_dcdc4_supply,
.constraints = {
.min_uV = 1250 * 1000,
.max_uV = 1250 * 1000,
.min_uV = 1000 * 1000,
.max_uV = 1600 * 1000,
.always_on = 1,
.apply_uV = 1,
/*
* We do not allow changing the DLL voltage, because
* of stability, so no REGULATOR_CHANGE_VOLTAGE.
*/
}
},
[axp152_dldo2] = { /* Power on 1.8V, Android hardcoded 3.0V */
@@ -625,17 +628,11 @@ static int __init axp_board_init(void)
/* Note we ignore the dcdc2_vol key as dcdc2 is set by the dvfs code */

/*
* Note we ignore the dcdc3_vol key as that sometimes contains wrong
* values make the dram unstable, instead we stick with the bootloader
* set voltage.
* Note we ignore the dcdc3_vol and dcdc4_vol keys as those sometimes
* contain wrong values making the dram unstable, instead we stick with
* the voltage set by the bootloader.
*/

ret = script_parser_fetch("target", "dcdc4_vol", &val, sizeof(int));
if (ret == 0) {
regl_init_data[axp152_dcdc4].constraints.min_uV = val * 1000;
regl_init_data[axp152_dcdc4].constraints.max_uV = val * 1000;
}

return i2c_register_board_info(i2c_bus, &axp_mfd_i2c_board_info, 1);
}
fs_initcall(axp_board_init);

0 comments on commit 2e2eab5

Please sign in to comment.
You can’t perform that action at this time.