From: chenxing Date: Thu, 5 Jul 2012 11:02:42 +0000 (+0800) Subject: rk30:sdk: get avs value under logic 1.1V X-Git-Tag: firefly_0821_release~9038 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=3c9e537ef5353cbf93a961cf9f36e8435861e19b;p=firefly-linux-kernel-4.4.55.git rk30:sdk: get avs value under logic 1.1V --- diff --git a/arch/arm/mach-rk30/board-rk30-sdk-wm8326.c b/arch/arm/mach-rk30/board-rk30-sdk-wm8326.c index 7ba9d521cd68..ce3050e7e6df 100755 --- a/arch/arm/mach-rk30/board-rk30-sdk-wm8326.c +++ b/arch/arm/mach-rk30/board-rk30-sdk-wm8326.c @@ -175,6 +175,8 @@ static int wm831x_low_power_detection(struct wm831x *wm831x) return 0; } #endif + +#define AVS_BASE 172 int wm831x_post_init(struct wm831x *Wm831x) { struct regulator *dcdc; @@ -226,6 +228,13 @@ int wm831x_post_init(struct wm831x *Wm831x) udelay(100); dcdc = regulator_get(NULL, "vdd_core"); // vdd_log + + /* Read avs value under logic 1.1V*/ + regulator_set_voltage(dcdc, 1100000, 1100000); + avs_init_val_get(1,1100000,"wm8326 init"); + udelay(600); + avs_set_scal_val(AVS_BASE); + regulator_set_voltage(dcdc, 1150000, 1150000); regulator_set_suspend_voltage(dcdc, 1000000); regulator_enable(dcdc); diff --git a/arch/arm/mach-rk30/board-rk30-sdk.c b/arch/arm/mach-rk30/board-rk30-sdk.c index 1a486057d2c6..55fa1c7fce37 100755 --- a/arch/arm/mach-rk30/board-rk30-sdk.c +++ b/arch/arm/mach-rk30/board-rk30-sdk.c @@ -1487,6 +1487,7 @@ static void rk30_pm_power_off(void) static void __init machine_rk30_board_init(void) { + avs_init(); gpio_request(POWER_ON_PIN, "poweronpin"); gpio_direction_output(POWER_ON_PIN, GPIO_HIGH);