Unverified Commit 964ee979 authored by Johan Hovold's avatar Johan Hovold Committed by Mark Brown
Browse files

spi: cadence-quadspi: fix controller deregistration



Make sure to deregister the controller before dropping the reference
count that allows new operations to start to allow SPI drivers to do I/O
during deregistration.

Fixes: 74462840 ("spi: cadence-quadspi: Implement refcount to handle unbind during busy")
Cc: stable@vger.kernel.org	# 6.17
Cc: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
Link: https://patch.msgid.link/20260414134319.978196-3-johan@kernel.org


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 666fa7e9
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -2020,13 +2020,13 @@ static void cqspi_remove(struct platform_device *pdev)

	ddata = of_device_get_match_data(dev);

	spi_unregister_controller(cqspi->host);

	refcount_set(&cqspi->refcount, 0);

	if (!refcount_dec_and_test(&cqspi->inflight_ops))
		cqspi_wait_idle(cqspi);

	spi_unregister_controller(cqspi->host);

	if (cqspi->rx_chan)
		dma_release_channel(cqspi->rx_chan);