aboutsummaryrefslogtreecommitdiff
path: root/src/soc/qualcomm
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/qualcomm')
-rw-r--r--src/soc/qualcomm/ipq40xx/lcc.c32
1 files changed, 12 insertions, 20 deletions
diff --git a/src/soc/qualcomm/ipq40xx/lcc.c b/src/soc/qualcomm/ipq40xx/lcc.c
index b2b4c4524f..9a6c9116ec 100644
--- a/src/soc/qualcomm/ipq40xx/lcc.c
+++ b/src/soc/qualcomm/ipq40xx/lcc.c
@@ -287,29 +287,21 @@ static int lcc_enable_mi2s(IpqLccClocks *bus)
int audio_clock_config(unsigned frequency)
{
- IpqLccClocks *bus = malloc(sizeof(*bus));
-
- if (!bus) {
- printk(BIOS_ERR, "%s: failed to allocate bus structure\n",
- __func__);
+ IpqLccClocks bus = {
+ .gcc_apcs_regs = (void *)(MSM_GCC_BASE + GCC_PLL_APCS_REG),
+ .lcc_pll0_regs = (void *)(MSM_LPASS_LCC_BASE + LCC_PLL0_MODE_REG),
+ .lcc_ahbix_regs = (void *)(MSM_LPASS_LCC_BASE + LCC_AHBIX_NS_REG),
+ .lcc_mi2s_regs = (void *)(MSM_LPASS_LCC_BASE + LCC_MI2S_NS_REG),
+ .lcc_pll_regs = (void *)(MSM_LPASS_LCC_BASE + LCC_PLL_PCLK_REG),
+ };
+
+ if (lcc_init_enable_pll0(&bus))
return 1;
- }
-
- bus->gcc_apcs_regs = (void *)(MSM_GCC_BASE + GCC_PLL_APCS_REG);
- bus->lcc_pll0_regs = (void *)(MSM_LPASS_LCC_BASE + LCC_PLL0_MODE_REG);
- bus->lcc_ahbix_regs = (void *)(MSM_LPASS_LCC_BASE + LCC_AHBIX_NS_REG);
- bus->lcc_mi2s_regs = (void *)(MSM_LPASS_LCC_BASE + LCC_MI2S_NS_REG);
- bus->lcc_pll_regs = (void *)(MSM_LPASS_LCC_BASE + LCC_PLL_PCLK_REG);
-
-
- if (lcc_init_enable_pll0(bus))
- return 1;
- if (lcc_init_enable_ahbix(bus))
+ if (lcc_init_enable_ahbix(&bus))
return 1;
- if (lcc_init_mi2s(bus, frequency))
+ if (lcc_init_mi2s(&bus, frequency))
return 1;
-
- if (lcc_enable_mi2s(bus))
+ if (lcc_enable_mi2s(&bus))
return 1;
return 0;