Unverified Commit 666fa7e9 authored by Johan Hovold's avatar Johan Hovold Committed by Mark Brown
Browse files

spi: cadence: fix controller deregistration



Make sure to deregister the controller before disabling underlying
resources like clocks during driver unbind.

Fixes: c474b386 ("spi: Add driver for Cadence SPI controller")
Cc: stable@vger.kernel.org	# 3.16
Cc: Harini Katakam <harinik@xilinx.com>
Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
Link: https://patch.msgid.link/20260414134319.978196-2-johan@kernel.org


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 028ef9c9
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -777,6 +777,10 @@ static void cdns_spi_remove(struct platform_device *pdev)
	struct spi_controller *ctlr = platform_get_drvdata(pdev);
	struct cdns_spi *xspi = spi_controller_get_devdata(ctlr);

	spi_controller_get(ctlr);

	spi_unregister_controller(ctlr);

	cdns_spi_write(xspi, CDNS_SPI_ER, CDNS_SPI_ER_DISABLE);

	if (!spi_controller_is_target(ctlr)) {
@@ -784,7 +788,7 @@ static void cdns_spi_remove(struct platform_device *pdev)
		pm_runtime_set_suspended(&pdev->dev);
	}

	spi_unregister_controller(ctlr);
	spi_controller_put(ctlr);
}

/**