20 Apr
2022
20 Apr
'22
7:40 p.m.
+static irqreturn_t qcom_swrm_wake_irq_handler(int irq, void *dev_id) +{
- struct qcom_swrm_ctrl *swrm = dev_id;
- int ret;
- ret = pm_runtime_get_sync(swrm->dev);
- if (ret < 0 && ret != -EACCES) {
dev_err_ratelimited(swrm->dev,
"pm_runtime_get_sync failed in %s, ret %d\n",
__func__, ret);
pm_runtime_put_noidle(swrm->dev);
missing 'return ret' here as well, is this intentional?
Fix at https://github.com/thesofproject/linux/pull/3602/commits/6353eec8dc971c5f0fd... ready to go, but not sure what the intent was.
- }
- if (swrm->wake_irq > 0) {
if (!irqd_irq_disabled(irq_get_irq_data(swrm->wake_irq)))
disable_irq_nosync(swrm->wake_irq);
- }
- pm_runtime_mark_last_busy(swrm->dev);
- pm_runtime_put_autosuspend(swrm->dev);
- return IRQ_HANDLED;
+}