On Fri, Apr 23, 2021 at 11:42:47AM +0800, Artem Lapkin wrote: > Problem: rmmod meson_gx_mmc - not stable without spi_master_suspend call > and we can get stuck when try unload this module > +++ b/drivers/spi/spi-meson-spifc.c > @@ -359,6 +359,7 @@ static int meson_spifc_remove(struct platform_device *pdev) > struct spi_master *master = platform_get_drvdata(pdev); > struct meson_spifc *spifc = spi_master_get_devdata(master); > > + spi_master_suspend(master); > pm_runtime_get_sync(&pdev->dev); > clk_disable_unprepare(spifc->clk); > pm_runtime_disable(&pdev->dev); I would expect the driver to unregister the controller at the start of the remove function, suspend doesn't really make sense here.
Attachment:
signature.asc
Description: PGP signature