Re: [PATCH] spi: bcmbca-hsspi: disable clocks on resume failure
Kursad Oney <[email protected]> Tue, 4 Aug 2026 13:23:00 -0400
| Newsgroups | org.kernel.vger.stable,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-spi |
|---|---|
| Message-ID | <CAMm8Nh3Fo5+jvo16RDY2HaS1eD+r8qdUbuc55ij-k01XS-gAFA@mail.gmail.com> |
On Tue, Aug 4, 2026 at 3:20 AM Can Peng <[email protected]> wrote: > > bcmbca_hsspi_resume() enables the HSSPI clock, and optionally the PLL > clock, before restarting the SPI controller queue. > > If spi_controller_resume() fails, the function currently reports success > and leaves those clocks enabled. Propagate the error and disable the > clocks before returning. > > Fixes: a38a2233f23b ("spi: bcmbca-hsspi: Add driver for newer HSSPI controller") > Cc: [email protected] > Signed-off-by: Can Peng <[email protected]> > --- > drivers/spi/spi-bcmbca-hsspi.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/drivers/spi/spi-bcmbca-hsspi.c b/drivers/spi/spi-bcmbca-hsspi.c > index af88ce04948b..2aed876e5deb 100644 > --- a/drivers/spi/spi-bcmbca-hsspi.c > +++ b/drivers/spi/spi-bcmbca-hsspi.c > @@ -598,7 +598,13 @@ static int bcmbca_hsspi_resume(struct device *dev) > } > } > > - spi_controller_resume(host); > + ret = spi_controller_resume(host); > + if (ret) { > + if (bs->pll_clk) > + clk_disable_unprepare(bs->pll_clk); > + clk_disable_unprepare(bs->clk); > + return ret; > + } > > return 0; > } > -- > 2.53.0 > Reviewed-by: Kursad Oney <[email protected]>
smime.p7s
(application/pkcs7-signature, 5.3 KB) - not displayed