mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-17 18:56:24 +00:00
net: wwan: qcom_bam_dmux: Fix missing pm_runtime_disable()
[ Upstream commit d505d3593b52b6c43507f119572409087416ba28 ] It's important to undo pm_runtime_use_autosuspend() with pm_runtime_dont_use_autosuspend() at driver exit time. But the pm_runtime_disable() and pm_runtime_dont_use_autosuspend() is missing in the error path for bam_dmux_probe(). So add it. Found by code review. Compile-tested only. Fixes: 21a0ffd9b38c ("net: wwan: Add Qualcomm BAM-DMUX WWAN network driver") Suggested-by: Stephan Gerhold <stephan.gerhold@linaro.org> Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com> Reviewed-by: Stephan Gerhold <stephan.gerhold@linaro.org> Reviewed-by: Sergey Ryazanov <ryazanov.s.a@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
6b289c5568
commit
dd50c5f3ca
@ -823,17 +823,17 @@ static int bam_dmux_probe(struct platform_device *pdev)
|
||||
ret = devm_request_threaded_irq(dev, pc_ack_irq, NULL, bam_dmux_pc_ack_irq,
|
||||
IRQF_ONESHOT, NULL, dmux);
|
||||
if (ret)
|
||||
return ret;
|
||||
goto err_disable_pm;
|
||||
|
||||
ret = devm_request_threaded_irq(dev, dmux->pc_irq, NULL, bam_dmux_pc_irq,
|
||||
IRQF_ONESHOT, NULL, dmux);
|
||||
if (ret)
|
||||
return ret;
|
||||
goto err_disable_pm;
|
||||
|
||||
ret = irq_get_irqchip_state(dmux->pc_irq, IRQCHIP_STATE_LINE_LEVEL,
|
||||
&dmux->pc_state);
|
||||
if (ret)
|
||||
return ret;
|
||||
goto err_disable_pm;
|
||||
|
||||
/* Check if remote finished initialization before us */
|
||||
if (dmux->pc_state) {
|
||||
@ -844,6 +844,11 @@ static int bam_dmux_probe(struct platform_device *pdev)
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
err_disable_pm:
|
||||
pm_runtime_disable(dev);
|
||||
pm_runtime_dont_use_autosuspend(dev);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int bam_dmux_remove(struct platform_device *pdev)
|
||||
|
Loading…
x
Reference in New Issue
Block a user