Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

spi: omap2-mcspi: fix controller deregistration

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

Fixes: ccdc7bf92573 ("SPI: omap2_mcspi driver")
Cc: stable@vger.kernel.org # 2.6.23
Signed-off-by: Johan Hovold <johan@kernel.org>
Link: https://patch.msgid.link/20260410081757.503099-6-johan@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Johan Hovold and committed by
Mark Brown
fb45f95c ebd81199

+7 -1
+7 -1
drivers/spi/spi-omap2-mcspi.c
··· 1592 1592 if (status < 0) 1593 1593 goto disable_pm; 1594 1594 1595 - status = devm_spi_register_controller(&pdev->dev, ctlr); 1595 + status = spi_register_controller(ctlr); 1596 1596 if (status < 0) 1597 1597 goto disable_pm; 1598 1598 ··· 1613 1613 struct spi_controller *ctlr = platform_get_drvdata(pdev); 1614 1614 struct omap2_mcspi *mcspi = spi_controller_get_devdata(ctlr); 1615 1615 1616 + spi_controller_get(ctlr); 1617 + 1618 + spi_unregister_controller(ctlr); 1619 + 1616 1620 omap2_mcspi_release_dma(ctlr); 1617 1621 1618 1622 pm_runtime_dont_use_autosuspend(mcspi->dev); 1619 1623 pm_runtime_put_sync(mcspi->dev); 1620 1624 pm_runtime_disable(&pdev->dev); 1625 + 1626 + spi_controller_put(ctlr); 1621 1627 } 1622 1628 1623 1629 /* work with hotplug and coldplug */