Messages in this thread | | | Date | Wed, 22 Nov 2023 16:56:15 +0200 | From | Laurent Pinchart <> | Subject | Re: [PATCH 1/2] media: imx-mipi-csis: Fix clock handling in remove() |
| |
Hi Tomi,
Thank you for the patch.
On Wed, Nov 22, 2023 at 03:13:48PM +0200, Tomi Valkeinen wrote: > The driver always calls mipi_csis_runtime_suspend() and > mipi_csis_clk_disable() in remove(). This causes multiple WARNs from the > kernel, as the clocks get disabled too many times.
Did you try to unload the driver ? What a weird idea :-)
> Fix the remove() to call mipi_csis_runtime_suspend() and > mipi_csis_clk_disable() in a way that reverses what is done in probe(). > > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> --- > drivers/media/platform/nxp/imx-mipi-csis.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/platform/nxp/imx-mipi-csis.c b/drivers/media/platform/nxp/imx-mipi-csis.c > index 6cb20b45e0a1..b39d7aeba750 100644 > --- a/drivers/media/platform/nxp/imx-mipi-csis.c > +++ b/drivers/media/platform/nxp/imx-mipi-csis.c > @@ -1502,8 +1502,10 @@ static void mipi_csis_remove(struct platform_device *pdev) > v4l2_async_nf_cleanup(&csis->notifier); > v4l2_async_unregister_subdev(&csis->sd); > > + if (!pm_runtime_enabled(&pdev->dev)) > + mipi_csis_runtime_suspend(&pdev->dev); > + > pm_runtime_disable(&pdev->dev); > - mipi_csis_runtime_suspend(&pdev->dev); > mipi_csis_clk_disable(csis); > v4l2_subdev_cleanup(&csis->sd); > media_entity_cleanup(&csis->sd.entity); >
-- Regards,
Laurent Pinchart
| |