[PATCH V2] spi: spi-cadence-quadspi: Fix missing unwind goto warnings

From: Dhruva Gole
Date: Tue Sep 19 2023 - 03:51:20 EST


The following smatch warnings [0] were recently introduced:

drivers/spi/spi-cadence-quadspi.c:1882 cqspi_probe() warn: missing
unwind goto?

Fix these warnings by releasing dma channel and adding a goto fail probe.

[0] https://lore.kernel.org/all/5e21c351-cd08-443e-8509-aecf242a4da9@kadam.mountain/

Fixes: 0578a6dbfe75 ("spi: spi-cadence-quadspi: add runtime pm support")
Reported-by: kernel test robot <lkp@xxxxxxxxx>
Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
Closes: https://lore.kernel.org/r/202309140543.03dMbMM5-lkp@xxxxxxxxx/
Signed-off-by: Dhruva Gole <d-gole@xxxxxx>
---

Link to V1:
https://lore.kernel.org/all/20230915123103.2493640-1-d-gole@xxxxxx/

Changelog:
* added dma_release_channel
* added a fixes tag.

drivers/spi/spi-cadence-quadspi.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/spi/spi-cadence-quadspi.c b/drivers/spi/spi-cadence-quadspi.c
index 4828da4587c5..3d7bf62da11c 100644
--- a/drivers/spi/spi-cadence-quadspi.c
+++ b/drivers/spi/spi-cadence-quadspi.c
@@ -1878,8 +1878,11 @@ static int cqspi_probe(struct platform_device *pdev)
}

ret = devm_pm_runtime_enable(dev);
- if (ret)
- return ret;
+ if (ret) {
+ if (cqspi->rx_chan)
+ dma_release_channel(cqspi->rx_chan);
+ goto probe_setup_failed;
+ }

pm_runtime_set_autosuspend_delay(dev, CQSPI_AUTOSUSPEND_TIMEOUT);
pm_runtime_use_autosuspend(dev);

base-commit: 21f252cd29f08892d48739fd7513ad79c1cff96a
--
2.34.1