Skip to content

Commit 9d651a6

Browse files
committed
spi: cadence-quadspi: Fix probe error path and logging
Merge series from Anurag Dutta <a-dutta@ti.com>: This series addresses issues in the cadence-quadspi driver's probe error path: Patch 1 fixes a clock disable imbalance that occurs when probe fails after runtime PM is enabled, particularly when DMA request returns -EPROBE_DEFER. Patch 2 adds proper error logging for DMA request failures using dev_err_probe() to improve diagnostics and handle probe deferral appropriately. logs : https://gist.github.com/anuragdutta731/59925cd11a50913b7128c88cd5394db7
2 parents 8c04b77 + 1889dd2 commit 9d651a6

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

drivers/spi/spi-cadence-quadspi.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2001,8 +2001,10 @@ static int cqspi_probe(struct platform_device *pdev)
20012001

20022002
if (cqspi->use_direct_mode) {
20032003
ret = cqspi_request_mmap_dma(cqspi);
2004-
if (ret == -EPROBE_DEFER)
2004+
if (ret == -EPROBE_DEFER) {
2005+
dev_err_probe(&pdev->dev, ret, "Failed to request mmap DMA\n");
20052006
goto probe_setup_failed;
2007+
}
20062008
}
20072009

20082010
ret = spi_register_controller(host);
@@ -2024,7 +2026,9 @@ static int cqspi_probe(struct platform_device *pdev)
20242026
probe_reset_failed:
20252027
if (cqspi->is_jh7110)
20262028
cqspi_jh7110_disable_clk(pdev, cqspi);
2027-
clk_disable_unprepare(cqspi->clk);
2029+
2030+
if (pm_runtime_get_sync(&pdev->dev) >= 0)
2031+
clk_disable_unprepare(cqspi->clk);
20282032
probe_clk_failed:
20292033
return ret;
20302034
}

0 commit comments

Comments
 (0)