ASoC: wcd9335: wait for 500 msec for the regulator to stabilise

During soft reboot, some times codec is going to bad state as
all the codec supplies are not going down. Due to which codec is not
responding to slimbus which is effecting soundcard registration.
After disabling the regulator wait for 500msec, to ensure regulators
ramp's down completely.

Change-Id: I21de85f9e7170906a877f9328f088a91d0f69ee8
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
This commit is contained in:
Yeleswarapu Nagaradhesh 2015-08-18 22:32:42 +05:30 committed by Gerrit - the friendly Code Review server
parent cd86617027
commit 15127495f7

View file

@ -10367,11 +10367,13 @@ static void tasha_powershutdown(struct platform_device *pdev)
struct wcd9xxx_pdata *pdata = dev_get_platdata(pdev->dev.parent);
tasha = platform_get_drvdata(pdev);
gpio_direction_output(pdata->reset_gpio, 0);
/* sleep for 500msec to follow codec power down sequence */
msleep(500);
wcd9xxx_disable_static_supplies_to_optimum(tasha->wcd9xxx, pdata);
wcd9xxx_disable_supplies(tasha->wcd9xxx, pdata);
gpio_direction_output(pdata->reset_gpio, 0);
/* sleep for 60msec to follow codec power down sequence */
usleep_range(60000, 60100);
/* sleep for 500msec for the regulator to ramp down */
msleep(500);
}
static struct platform_driver tasha_codec_driver = {