Loading asoc/codecs/bolero/rx-macro.c +0 −12 Original line number Diff line number Diff line Loading @@ -1147,18 +1147,6 @@ static int rx_macro_mclk_event(struct snd_soc_dapm_widget *w, dev_dbg(rx_dev, "%s: event = %d\n", __func__, event); switch (event) { case SND_SOC_DAPM_PRE_PMU: /* if swr_clk_users > 0, call device down */ if (rx_priv->swr_clk_users > 0) { if ((rx_priv->clk_id == rx_priv->default_clk_id && rx_priv->is_native_on) || (rx_priv->clk_id == RX_CORE_CLK && !rx_priv->is_native_on)) { if (rx_priv->swr_ctrl_data) swrm_wcd_notify( rx_priv->swr_ctrl_data[0].rx_swr_pdev, SWR_DEVICE_DOWN, NULL); } } if (rx_priv->is_native_on) mclk_freq = MCLK_FREQ_NATIVE; if (rx_priv->swr_ctrl_data) Loading soc/swr-mstr-ctrl.c +11 −9 Original line number Diff line number Diff line Loading @@ -2480,6 +2480,8 @@ static int swrm_runtime_resume(struct device *dev) swr_master_write(swrm, SWRM_COMP_SW_RESET, 0x01); swr_master_write(swrm, SWRM_COMP_SW_RESET, 0x01); swrm_master_init(swrm); /* wait for hw enumeration to complete */ usleep_range(100, 105); swrm_cmd_fifo_wr_cmd(swrm, 0x4, 0xF, 0x0, SWRS_SCP_INT_STATUS_MASK_1); if (swrm->state == SWR_MSTR_SSR) { Loading Loading @@ -2621,22 +2623,14 @@ static int swrm_device_down(struct device *dev) { struct platform_device *pdev = to_platform_device(dev); struct swr_mstr_ctrl *swrm = platform_get_drvdata(pdev); int ret = 0; dev_dbg(dev, "%s: swrm state: %d\n", __func__, swrm->state); mutex_lock(&swrm->force_down_lock); swrm->state = SWR_MSTR_SSR; mutex_unlock(&swrm->force_down_lock); if (!pm_runtime_enabled(dev) || !pm_runtime_suspended(dev)) { ret = swrm_runtime_suspend(dev); if (!ret) { pm_runtime_disable(dev); pm_runtime_set_suspended(dev); pm_runtime_enable(dev); } } swrm_device_suspend(dev); return 0; } Loading Loading @@ -2770,6 +2764,14 @@ int swrm_wcd_notify(struct platform_device *pdev, u32 id, void *data) ret = -EINVAL; } else { mutex_lock(&swrm->mlock); if (swrm->mclk_freq != *(int *)data) { dev_dbg(swrm->dev, "%s: freq change: force mstr down\n", __func__); if (swrm->state == SWR_MSTR_DOWN) dev_dbg(swrm->dev, "%s:SWR master is already Down:%d\n", __func__, swrm->state); else swrm_device_suspend(&pdev->dev); } swrm->mclk_freq = *(int *)data; mutex_unlock(&swrm->mlock); } Loading Loading
asoc/codecs/bolero/rx-macro.c +0 −12 Original line number Diff line number Diff line Loading @@ -1147,18 +1147,6 @@ static int rx_macro_mclk_event(struct snd_soc_dapm_widget *w, dev_dbg(rx_dev, "%s: event = %d\n", __func__, event); switch (event) { case SND_SOC_DAPM_PRE_PMU: /* if swr_clk_users > 0, call device down */ if (rx_priv->swr_clk_users > 0) { if ((rx_priv->clk_id == rx_priv->default_clk_id && rx_priv->is_native_on) || (rx_priv->clk_id == RX_CORE_CLK && !rx_priv->is_native_on)) { if (rx_priv->swr_ctrl_data) swrm_wcd_notify( rx_priv->swr_ctrl_data[0].rx_swr_pdev, SWR_DEVICE_DOWN, NULL); } } if (rx_priv->is_native_on) mclk_freq = MCLK_FREQ_NATIVE; if (rx_priv->swr_ctrl_data) Loading
soc/swr-mstr-ctrl.c +11 −9 Original line number Diff line number Diff line Loading @@ -2480,6 +2480,8 @@ static int swrm_runtime_resume(struct device *dev) swr_master_write(swrm, SWRM_COMP_SW_RESET, 0x01); swr_master_write(swrm, SWRM_COMP_SW_RESET, 0x01); swrm_master_init(swrm); /* wait for hw enumeration to complete */ usleep_range(100, 105); swrm_cmd_fifo_wr_cmd(swrm, 0x4, 0xF, 0x0, SWRS_SCP_INT_STATUS_MASK_1); if (swrm->state == SWR_MSTR_SSR) { Loading Loading @@ -2621,22 +2623,14 @@ static int swrm_device_down(struct device *dev) { struct platform_device *pdev = to_platform_device(dev); struct swr_mstr_ctrl *swrm = platform_get_drvdata(pdev); int ret = 0; dev_dbg(dev, "%s: swrm state: %d\n", __func__, swrm->state); mutex_lock(&swrm->force_down_lock); swrm->state = SWR_MSTR_SSR; mutex_unlock(&swrm->force_down_lock); if (!pm_runtime_enabled(dev) || !pm_runtime_suspended(dev)) { ret = swrm_runtime_suspend(dev); if (!ret) { pm_runtime_disable(dev); pm_runtime_set_suspended(dev); pm_runtime_enable(dev); } } swrm_device_suspend(dev); return 0; } Loading Loading @@ -2770,6 +2764,14 @@ int swrm_wcd_notify(struct platform_device *pdev, u32 id, void *data) ret = -EINVAL; } else { mutex_lock(&swrm->mlock); if (swrm->mclk_freq != *(int *)data) { dev_dbg(swrm->dev, "%s: freq change: force mstr down\n", __func__); if (swrm->state == SWR_MSTR_DOWN) dev_dbg(swrm->dev, "%s:SWR master is already Down:%d\n", __func__, swrm->state); else swrm_device_suspend(&pdev->dev); } swrm->mclk_freq = *(int *)data; mutex_unlock(&swrm->mlock); } Loading