Unverified Commit 5d6f477d authored by Johan Hovold's avatar Johan Hovold Committed by Mark Brown
Browse files

spi: topcliff-pch: fix controller deregistration



Make sure to deregister the controller before disabling and releasing
underlying resources like interrupts and DMA during driver unbind.

Fixes: e8b17b5b ("spi/topcliff: Add topcliff platform controller hub (PCH) spi bus driver")
Cc: stable@vger.kernel.org	# 2.6.37
Cc: Masayuki Ohtake <masa-korg@dsn.okisemi.com>
Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
Link: https://patch.msgid.link/20260414134319.978196-8-johan@kernel.org


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 220f4f11
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1406,6 +1406,10 @@ static void pch_spi_pd_remove(struct platform_device *plat_dev)
	dev_dbg(&plat_dev->dev, "%s:[ch%d] irq=%d\n",
		__func__, plat_dev->id, board_dat->pdev->irq);

	spi_controller_get(data->host);

	spi_unregister_controller(data->host);

	if (use_dma)
		pch_free_dma_buf(board_dat, data);

@@ -1433,7 +1437,8 @@ static void pch_spi_pd_remove(struct platform_device *plat_dev)
	}

	pci_iounmap(board_dat->pdev, data->io_remap_addr);
	spi_unregister_controller(data->host);

	spi_controller_put(data->host);
}
#ifdef CONFIG_PM
static int pch_spi_pd_suspend(struct platform_device *pd_dev,