summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorJiawen Liu <1298662399@qq.com>2026-06-20 12:39:29 +0400
committerMark Brown <broonie@kernel.org>2026-06-30 12:37:06 +0100
commitfaa878d4805ca375738294bc52eae310eb287b16 (patch)
tree329508003f85083308310b42c264e5660677dbf1 /drivers
parentf4b14e67baffd2c879765275bda998a183594e8b (diff)
downloadlinux-next-faa878d4805ca375738294bc52eae310eb287b16.tar.gz
linux-next-faa878d4805ca375738294bc52eae310eb287b16.zip
spi: bcmbca-hsspi: return error from failed controller suspend
spi_controller_suspend() can fail if pending transfers cannot stop. bcmbca_hsspi_suspend() ignored the error and still disabled the PLL and core clocks. Return the error before disabling the clocks. Signed-off-by: Jiawen Liu <1298662399@qq.com> Link: https://patch.msgid.link/tencent_54F5634545908FBA724E758054BF03953808@qq.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/spi/spi-bcmbca-hsspi.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/spi/spi-bcmbca-hsspi.c b/drivers/spi/spi-bcmbca-hsspi.c
index 09c1472ae4fa..af88ce04948b 100644
--- a/drivers/spi/spi-bcmbca-hsspi.c
+++ b/drivers/spi/spi-bcmbca-hsspi.c
@@ -568,8 +568,12 @@ static int bcmbca_hsspi_suspend(struct device *dev)
{
struct spi_controller *host = dev_get_drvdata(dev);
struct bcmbca_hsspi *bs = spi_controller_get_devdata(host);
+ int ret;
+
+ ret = spi_controller_suspend(host);
+ if (ret)
+ return ret;
- spi_controller_suspend(host);
clk_disable_unprepare(bs->pll_clk);
clk_disable_unprepare(bs->clk);