Merge "soc: soundwire: use clock stop instead of clock pause"
diff --git a/asoc/codecs/bolero/va-macro.c b/asoc/codecs/bolero/va-macro.c
index 4fb16ba..a0c0fd7 100644
--- a/asoc/codecs/bolero/va-macro.c
+++ b/asoc/codecs/bolero/va-macro.c
@@ -202,6 +202,11 @@
if (!va_macro_get_data(component, &va_dev, &va_priv, __func__))
return -EINVAL;
+ if ((va_priv->version == BOLERO_VERSION_2_1)
+ && !va_priv->lpi_enable
+ && (va_priv->dmic_clk_div == VA_MACRO_CLK_DIV_16))
+ return VA_MACRO_CLK_DIV_8;
+
return va_priv->dmic_clk_div;
}
diff --git a/asoc/codecs/wsa881x-analog.c b/asoc/codecs/wsa881x-analog.c
index c6b4066..038e338 100644
--- a/asoc/codecs/wsa881x-analog.c
+++ b/asoc/codecs/wsa881x-analog.c
@@ -1,9 +1,10 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
- * Copyright (c) 2015-2016, 2018-2019, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2015-2016, 2018-2020, The Linux Foundation. All rights reserved.
*/
#include <linux/clk.h>
+#include <linux/clk-provider.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/slab.h>
@@ -1027,7 +1028,8 @@
return ret;
}
- clk_disable_unprepare(pdata->wsa_mclk);
+ if (__clk_is_enabled(pdata->wsa_mclk))
+ clk_disable_unprepare(pdata->wsa_mclk);
ret = msm_cdc_pinctrl_select_sleep_state(pdata->wsa_clk_gpio_p);
if (ret) {