On Fri, Feb 21, 2025 at 4:06 PM Tommaso Merciai <tommaso.merciai.xr@xxxxxxxxxxxxxx> wrote: > > Use newly added devm_pm_runtime_enable() into rzg2l_cru_probe() and > drop unnecessary pm_runtime_disable() from rzg2l_cru_probe() and > rzg2l_csi2_remove(). > > Reviewed-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx> > Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@xxxxxxxxxxxxxx> > --- > Changes since v1: > - Fixed DMA leak as suggested by LPinchart > - Collected tags > > drivers/media/platform/renesas/rzg2l-cru/rzg2l-core.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx> Cheers, Prabhakar > diff --git a/drivers/media/platform/renesas/rzg2l-cru/rzg2l-core.c b/drivers/media/platform/renesas/rzg2l-cru/rzg2l-core.c > index 70fed0ce45ea..eed9d2bd0841 100644 > --- a/drivers/media/platform/renesas/rzg2l-cru/rzg2l-core.c > +++ b/drivers/media/platform/renesas/rzg2l-cru/rzg2l-core.c > @@ -287,7 +287,9 @@ static int rzg2l_cru_probe(struct platform_device *pdev) > > cru->num_buf = RZG2L_CRU_HW_BUFFER_DEFAULT; > pm_suspend_ignore_children(dev, true); > - pm_runtime_enable(dev); > + ret = devm_pm_runtime_enable(dev); > + if (ret) > + goto error_dma_unregister; > > ret = rzg2l_cru_media_init(cru); > if (ret) > @@ -297,7 +299,6 @@ static int rzg2l_cru_probe(struct platform_device *pdev) > > error_dma_unregister: > rzg2l_cru_dma_unregister(cru); > - pm_runtime_disable(dev); > > return ret; > } > @@ -306,8 +307,6 @@ static void rzg2l_cru_remove(struct platform_device *pdev) > { > struct rzg2l_cru_dev *cru = platform_get_drvdata(pdev); > > - pm_runtime_disable(&pdev->dev); > - > v4l2_async_nf_unregister(&cru->notifier); > v4l2_async_nf_cleanup(&cru->notifier); > > -- > 2.34.1 > >