Commit a9230ccc authored by Vijendar Mukunda's avatar Vijendar Mukunda Committed by Mark Brown

ASoC: amd: vg: update acp init and deinit sequence

As part of ACP programming sequence, ACP_CONTROL and ACP_CLKMUX_SEL
registers should be updated during acp init and de-init sequence.
This patch updates register sequence during ACP init and
deinit.
Signed-off-by: default avatarVijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://lore.kernel.org/r/20220223071959.13539-6-Vijendar.Mukunda@amd.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent 0c38cc1d
...@@ -92,12 +92,14 @@ static int acp5x_init(void __iomem *acp5x_base) ...@@ -92,12 +92,14 @@ static int acp5x_init(void __iomem *acp5x_base)
pr_err("ACP5x power on failed\n"); pr_err("ACP5x power on failed\n");
return ret; return ret;
} }
acp_writel(0x01, acp5x_base + ACP_CONTROL);
/* Reset */ /* Reset */
ret = acp5x_reset(acp5x_base); ret = acp5x_reset(acp5x_base);
if (ret) { if (ret) {
pr_err("ACP5x reset failed\n"); pr_err("ACP5x reset failed\n");
return ret; return ret;
} }
acp_writel(0x03, acp5x_base + ACP_CLKMUX_SEL);
acp5x_enable_interrupts(acp5x_base); acp5x_enable_interrupts(acp5x_base);
return 0; return 0;
} }
...@@ -113,6 +115,8 @@ static int acp5x_deinit(void __iomem *acp5x_base) ...@@ -113,6 +115,8 @@ static int acp5x_deinit(void __iomem *acp5x_base)
pr_err("ACP5x reset failed\n"); pr_err("ACP5x reset failed\n");
return ret; return ret;
} }
acp_writel(0x00, acp5x_base + ACP_CLKMUX_SEL);
acp_writel(0x00, acp5x_base + ACP_CONTROL);
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment