Merge "asoc: codecs: Add system sleep ops for macro drivers"
diff --git a/asoc/codecs/bolero/bolero-cdc.c b/asoc/codecs/bolero/bolero-cdc.c
index 1b28382..417b34d 100644
--- a/asoc/codecs/bolero/bolero-cdc.c
+++ b/asoc/codecs/bolero/bolero-cdc.c
@@ -1368,6 +1368,7 @@
return 0;
}
+#ifdef CONFIG_PM
int bolero_runtime_resume(struct device *dev)
{
struct bolero_priv *priv = dev_get_drvdata(dev->parent);
@@ -1451,6 +1452,7 @@
return 0;
}
EXPORT_SYMBOL(bolero_runtime_suspend);
+#endif /* CONFIG_PM */
bool bolero_check_core_votes(struct device *dev)
{
diff --git a/asoc/codecs/bolero/rx-macro.c b/asoc/codecs/bolero/rx-macro.c
index ea1a374..eb7cb88 100644
--- a/asoc/codecs/bolero/rx-macro.c
+++ b/asoc/codecs/bolero/rx-macro.c
@@ -4135,6 +4135,10 @@
};
static const struct dev_pm_ops bolero_dev_pm_ops = {
+ SET_SYSTEM_SLEEP_PM_OPS(
+ pm_runtime_force_suspend,
+ pm_runtime_force_resume
+ )
SET_RUNTIME_PM_OPS(
bolero_runtime_suspend,
bolero_runtime_resume,
diff --git a/asoc/codecs/bolero/tx-macro.c b/asoc/codecs/bolero/tx-macro.c
index 9fe19c1..472cdfe 100644
--- a/asoc/codecs/bolero/tx-macro.c
+++ b/asoc/codecs/bolero/tx-macro.c
@@ -980,11 +980,12 @@
if (tx_unmute_delay < unmute_delay)
tx_unmute_delay = unmute_delay;
/* schedule work queue to Remove Mute */
- schedule_delayed_work(&tx_priv->tx_mute_dwork[decimator].dwork,
- msecs_to_jiffies(tx_unmute_delay));
+ queue_delayed_work(system_freezable_wq,
+ &tx_priv->tx_mute_dwork[decimator].dwork,
+ msecs_to_jiffies(tx_unmute_delay));
if (tx_priv->tx_hpf_work[decimator].hpf_cut_off_freq !=
CF_MIN_3DB_150HZ) {
- schedule_delayed_work(
+ queue_delayed_work(system_freezable_wq,
&tx_priv->tx_hpf_work[decimator].dwork,
msecs_to_jiffies(hpf_delay));
snd_soc_component_update_bits(component,
@@ -3297,6 +3298,10 @@
};
static const struct dev_pm_ops bolero_dev_pm_ops = {
+ SET_SYSTEM_SLEEP_PM_OPS(
+ pm_runtime_force_suspend,
+ pm_runtime_force_resume
+ )
SET_RUNTIME_PM_OPS(
bolero_runtime_suspend,
bolero_runtime_resume,
diff --git a/asoc/codecs/bolero/va-macro.c b/asoc/codecs/bolero/va-macro.c
index 02534d6..a947a28 100644
--- a/asoc/codecs/bolero/va-macro.c
+++ b/asoc/codecs/bolero/va-macro.c
@@ -1186,11 +1186,12 @@
*/
usleep_range(6000, 6010);
/* schedule work queue to Remove Mute */
- schedule_delayed_work(&va_priv->va_mute_dwork[decimator].dwork,
- msecs_to_jiffies(va_tx_unmute_delay));
+ queue_delayed_work(system_freezable_wq,
+ &va_priv->va_mute_dwork[decimator].dwork,
+ msecs_to_jiffies(va_tx_unmute_delay));
if (va_priv->va_hpf_work[decimator].hpf_cut_off_freq !=
CF_MIN_3DB_150HZ)
- schedule_delayed_work(
+ queue_delayed_work(system_freezable_wq,
&va_priv->va_hpf_work[decimator].dwork,
msecs_to_jiffies(hpf_delay));
/* apply gain after decimator is enabled */
@@ -3211,6 +3212,10 @@
};
static const struct dev_pm_ops bolero_dev_pm_ops = {
+ SET_SYSTEM_SLEEP_PM_OPS(
+ pm_runtime_force_suspend,
+ pm_runtime_force_resume
+ )
SET_RUNTIME_PM_OPS(
bolero_runtime_suspend,
bolero_runtime_resume,
diff --git a/asoc/codecs/bolero/wsa-macro.c b/asoc/codecs/bolero/wsa-macro.c
index e97d746..2ab2e8a 100644
--- a/asoc/codecs/bolero/wsa-macro.c
+++ b/asoc/codecs/bolero/wsa-macro.c
@@ -3244,6 +3244,10 @@
};
static const struct dev_pm_ops bolero_dev_pm_ops = {
+ SET_SYSTEM_SLEEP_PM_OPS(
+ pm_runtime_force_suspend,
+ pm_runtime_force_resume
+ )
SET_RUNTIME_PM_OPS(
bolero_runtime_suspend,
bolero_runtime_resume,