* [PATCH 00/25] Fix some PM runtime issues at the media subsystem @ 2021-05-05 9:41 Mauro Carvalho Chehab 2021-05-05 9:41 ` [PATCH 01/25] staging: media: rkvdec: fix pm_runtime_get_sync() usage count Mauro Carvalho Chehab ` (3 more replies) 0 siblings, 4 replies; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-05 9:41 UTC (permalink / raw) Cc: linuxarm, mauro.chehab, Mauro Carvalho Chehab, Lad, Prabhakar, Paul J. Murphy, Andrzej Pietrasiewicz, Andy Gross, Bjorn Andersson, Chen-Yu Tsai, Daniele Alessandrelli, Ezequiel Garcia, Fabio Estevam, Jacek Anaszewski, Jernej Skrabec, Krzysztof Kozlowski, Marek Szyprowski, Matthias Brugger, Mauro Carvalho Chehab, Maxime Ripard, NXP Linux Team, Pengutronix Kernel Team, Philipp Zabel, Rui Miguel Silva, Sakari Ailus, Sascha Hauer, Shawn Guo, Stanimir Varbanov, Steve Longerbeam, Sylwester Nawrocki, linux-arm-kernel, linux-arm-msm, linux-kernel, linux-media, linux-mediatek, linux-renesas-soc, linux-rockchip, linux-samsung-soc, linux-staging, linux-sunxi As part of an effort to cleanup pm_runtime*get* calls, I detected a number of issues at the media subsystem. Most of the patches here were submitted previously at: https://lore.kernel.org/linux-media/cover.1619621413.git.mchehab+huawei@kernel.org/ This series contain just the bug fixes and other related issues that are present with the current code on media. It address the points from the existing reviews. I also did my own set of reviews, in order to avoid regressions. Changes from v4 of the previous changeset: - reworked i2c/css RPM get logic; - dropped two patches that could cause regressions; - am437x: keep using pm_runtime_get_sync on suspend/resume; - atmel: fix the returned code and add a print on failures at start streaming; - simplify some checks for return code > 0; - mdk-vcodec: properly handle RPM errors at device on logic; - venus: rework venus_sys_error_handler() logic; - sti/delta: fix an issue at the error checking logic. Mauro Carvalho Chehab (25): staging: media: rkvdec: fix pm_runtime_get_sync() usage count staging: media: imx7-mipi-csis: fix pm_runtime_get_sync() usage count media: venus: Rework error fail recover logic media: s5p_cec: decrement usage count if disabled media: i2c: ccs-core: return the right error code at suspend media: i2c: imx334: fix the pm runtime get logic media: exynos-gsc: don't resume at remove time media: atmel: properly get pm_runtime media: hantro: do a PM resume earlier media: marvel-ccic: fix some issues when getting pm_runtime media: mdk-mdp: fix pm_runtime_get_sync() usage count media: rcar_fdp1: simplify error check logic at fdp_open() media: rcar_fdp1: fix pm_runtime_get_sync() usage count media: renesas-ceu: Properly check for PM errors media: s5p: fix pm_runtime_get_sync() usage count media: am437x: fix pm_runtime_get_sync() usage count media: sh_vou: fix pm_runtime_get_sync() usage count media: mtk-vcodec: fix PM runtime get logic media: s5p-jpeg: fix pm_runtime_get_sync() usage count media: sti/delta: use pm_runtime_resume_and_get() media: sunxi: fix pm_runtime_get_sync() usage count media: sti/bdisp: fix pm_runtime_get_sync() usage count media: exynos4-is: fix pm_runtime_get_sync() usage count media: exynos-gsc: fix pm_runtime_get_sync() usage count media: i2c: ccs-core: fix pm_runtime_get_sync() usage count drivers/media/cec/platform/s5p/s5p_cec.c | 7 ++- drivers/media/i2c/ccs/ccs-core.c | 41 ++++++++----- drivers/media/i2c/imx334.c | 7 ++- drivers/media/platform/am437x/am437x-vpfe.c | 15 ++++- drivers/media/platform/atmel/atmel-isc-base.c | 30 +++++++--- drivers/media/platform/atmel/atmel-isi.c | 19 ++++-- drivers/media/platform/exynos-gsc/gsc-core.c | 11 ++-- drivers/media/platform/exynos-gsc/gsc-m2m.c | 4 +- .../media/platform/exynos4-is/fimc-capture.c | 6 +- drivers/media/platform/exynos4-is/fimc-is.c | 4 +- .../platform/exynos4-is/fimc-isp-video.c | 3 +- drivers/media/platform/exynos4-is/fimc-isp.c | 7 +-- drivers/media/platform/exynos4-is/fimc-lite.c | 5 +- drivers/media/platform/exynos4-is/fimc-m2m.c | 5 +- drivers/media/platform/exynos4-is/media-dev.c | 9 +-- drivers/media/platform/exynos4-is/mipi-csis.c | 10 ++-- .../media/platform/marvell-ccic/mcam-core.c | 9 ++- drivers/media/platform/mtk-mdp/mtk_mdp_m2m.c | 6 +- .../platform/mtk-vcodec/mtk_vcodec_dec_drv.c | 4 +- .../platform/mtk-vcodec/mtk_vcodec_dec_pm.c | 8 ++- .../platform/mtk-vcodec/mtk_vcodec_dec_pm.h | 2 +- drivers/media/platform/qcom/venus/core.c | 59 +++++++++++++++---- drivers/media/platform/rcar_fdp1.c | 28 ++++++--- drivers/media/platform/renesas-ceu.c | 4 +- drivers/media/platform/s5p-jpeg/jpeg-core.c | 5 +- drivers/media/platform/sh_vou.c | 6 +- drivers/media/platform/sti/bdisp/bdisp-v4l2.c | 7 ++- drivers/media/platform/sti/delta/delta-v4l2.c | 8 +-- .../sunxi/sun8i-rotate/sun8i_rotate.c | 2 +- drivers/staging/media/hantro/hantro_drv.c | 7 ++- drivers/staging/media/imx/imx7-mipi-csis.c | 7 +-- drivers/staging/media/rkvdec/rkvdec.c | 2 +- 32 files changed, 220 insertions(+), 127 deletions(-) -- 2.30.2 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 01/25] staging: media: rkvdec: fix pm_runtime_get_sync() usage count 2021-05-05 9:41 [PATCH 00/25] Fix some PM runtime issues at the media subsystem Mauro Carvalho Chehab @ 2021-05-05 9:41 ` Mauro Carvalho Chehab 2021-05-05 12:23 ` Jonathan Cameron 2021-05-05 9:41 ` [PATCH 02/25] staging: media: imx7-mipi-csis: " Mauro Carvalho Chehab ` (2 subsequent siblings) 3 siblings, 1 reply; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-05 9:41 UTC (permalink / raw) Cc: linuxarm, mauro.chehab, Mauro Carvalho Chehab, Ezequiel Garcia, Greg Kroah-Hartman, Mauro Carvalho Chehab, linux-kernel, linux-media, linux-rockchip, linux-staging The pm_runtime_get_sync() internally increments the dev->power.usage_count without decrementing it, even on errors. Replace it by the new pm_runtime_resume_and_get(), introduced by: commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter") in order to properly decrement the usage counter, avoiding a potential PM usage counter leak. Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> --- drivers/staging/media/rkvdec/rkvdec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c index d821661d30f3..8c17615f3a7a 100644 --- a/drivers/staging/media/rkvdec/rkvdec.c +++ b/drivers/staging/media/rkvdec/rkvdec.c @@ -658,7 +658,7 @@ static void rkvdec_device_run(void *priv) if (WARN_ON(!desc)) return; - ret = pm_runtime_get_sync(rkvdec->dev); + ret = pm_runtime_resume_and_get(rkvdec->dev); if (ret < 0) { rkvdec_job_finish_no_pm(ctx, VB2_BUF_STATE_ERROR); return; -- 2.30.2 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 01/25] staging: media: rkvdec: fix pm_runtime_get_sync() usage count 2021-05-05 9:41 ` [PATCH 01/25] staging: media: rkvdec: fix pm_runtime_get_sync() usage count Mauro Carvalho Chehab @ 2021-05-05 12:23 ` Jonathan Cameron 0 siblings, 0 replies; 15+ messages in thread From: Jonathan Cameron @ 2021-05-05 12:23 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: linuxarm, mauro.chehab, Ezequiel Garcia, Greg Kroah-Hartman, Mauro Carvalho Chehab, linux-kernel, linux-media, linux-rockchip, linux-staging On Wed, 5 May 2021 11:41:51 +0200 Mauro Carvalho Chehab <mchehab+huawei@kernel.org> wrote: > The pm_runtime_get_sync() internally increments the > dev->power.usage_count without decrementing it, even on errors. > Replace it by the new pm_runtime_resume_and_get(), introduced by: > commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter") > in order to properly decrement the usage counter, avoiding > a potential PM usage counter leak. > > Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> (I'll do tags per patch as there are some open ones and it would be odd to say - "excluding xxxx" in reply to the cover letter) > --- > drivers/staging/media/rkvdec/rkvdec.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/staging/media/rkvdec/rkvdec.c > index d821661d30f3..8c17615f3a7a 100644 > --- a/drivers/staging/media/rkvdec/rkvdec.c > +++ b/drivers/staging/media/rkvdec/rkvdec.c > @@ -658,7 +658,7 @@ static void rkvdec_device_run(void *priv) > if (WARN_ON(!desc)) > return; > > - ret = pm_runtime_get_sync(rkvdec->dev); > + ret = pm_runtime_resume_and_get(rkvdec->dev); > if (ret < 0) { > rkvdec_job_finish_no_pm(ctx, VB2_BUF_STATE_ERROR); > return; ^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 02/25] staging: media: imx7-mipi-csis: fix pm_runtime_get_sync() usage count 2021-05-05 9:41 [PATCH 00/25] Fix some PM runtime issues at the media subsystem Mauro Carvalho Chehab 2021-05-05 9:41 ` [PATCH 01/25] staging: media: rkvdec: fix pm_runtime_get_sync() usage count Mauro Carvalho Chehab @ 2021-05-05 9:41 ` Mauro Carvalho Chehab 2021-05-05 11:06 ` Jonathan Cameron 2021-05-05 9:41 ` [PATCH 09/25] media: hantro: do a PM resume earlier Mauro Carvalho Chehab 2021-05-06 15:11 ` [PATCH 00/25] Fix some PM runtime issues at the media subsystem Mauro Carvalho Chehab 3 siblings, 1 reply; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-05 9:41 UTC (permalink / raw) Cc: linuxarm, mauro.chehab, Mauro Carvalho Chehab, Fabio Estevam, Greg Kroah-Hartman, Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team, Philipp Zabel, Rui Miguel Silva, Sascha Hauer, Shawn Guo, Steve Longerbeam, linux-arm-kernel, linux-kernel, linux-media, linux-staging The pm_runtime_get_sync() internally increments the dev->power.usage_count without decrementing it, even on errors. Replace it by the new pm_runtime_resume_and_get(), introduced by: commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter") in order to properly decrement the usage counter, avoiding a potential PM usage counter leak. Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> --- drivers/staging/media/imx/imx7-mipi-csis.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/staging/media/imx/imx7-mipi-csis.c b/drivers/staging/media/imx/imx7-mipi-csis.c index 025fdc488bd6..1dc680d94a46 100644 --- a/drivers/staging/media/imx/imx7-mipi-csis.c +++ b/drivers/staging/media/imx/imx7-mipi-csis.c @@ -695,11 +695,10 @@ static int mipi_csis_s_stream(struct v4l2_subdev *mipi_sd, int enable) mipi_csis_clear_counters(state); - ret = pm_runtime_get_sync(&state->pdev->dev); - if (ret < 0) { - pm_runtime_put_noidle(&state->pdev->dev); + ret = pm_runtime_resume_and_get(&state->pdev->dev); + if (ret < 0) return ret; - } + ret = v4l2_subdev_call(state->src_sd, core, s_power, 1); if (ret < 0 && ret != -ENOIOCTLCMD) goto done; -- 2.30.2 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 02/25] staging: media: imx7-mipi-csis: fix pm_runtime_get_sync() usage count 2021-05-05 9:41 ` [PATCH 02/25] staging: media: imx7-mipi-csis: " Mauro Carvalho Chehab @ 2021-05-05 11:06 ` Jonathan Cameron 2021-05-05 11:17 ` Mauro Carvalho Chehab 2021-05-05 13:56 ` Rui Miguel Silva 0 siblings, 2 replies; 15+ messages in thread From: Jonathan Cameron @ 2021-05-05 11:06 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: linuxarm, mauro.chehab, Fabio Estevam, Greg Kroah-Hartman, Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team, Philipp Zabel, Rui Miguel Silva, Sascha Hauer, Shawn Guo, Steve Longerbeam, linux-arm-kernel, linux-kernel, linux-media, linux-staging On Wed, 5 May 2021 11:41:52 +0200 Mauro Carvalho Chehab <mchehab+huawei@kernel.org> wrote: > The pm_runtime_get_sync() internally increments the > dev->power.usage_count without decrementing it, even on errors. > Replace it by the new pm_runtime_resume_and_get(), introduced by: > commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter") > in order to properly decrement the usage counter, avoiding > a potential PM usage counter leak. > > Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Not a fix as far as I can see, just a cleanup - so perhaps not this set? Jonathan > --- > drivers/staging/media/imx/imx7-mipi-csis.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/drivers/staging/media/imx/imx7-mipi-csis.c b/drivers/staging/media/imx/imx7-mipi-csis.c > index 025fdc488bd6..1dc680d94a46 100644 > --- a/drivers/staging/media/imx/imx7-mipi-csis.c > +++ b/drivers/staging/media/imx/imx7-mipi-csis.c > @@ -695,11 +695,10 @@ static int mipi_csis_s_stream(struct v4l2_subdev *mipi_sd, int enable) > > mipi_csis_clear_counters(state); > > - ret = pm_runtime_get_sync(&state->pdev->dev); > - if (ret < 0) { > - pm_runtime_put_noidle(&state->pdev->dev); > + ret = pm_runtime_resume_and_get(&state->pdev->dev); > + if (ret < 0) > return ret; > - } > + > ret = v4l2_subdev_call(state->src_sd, core, s_power, 1); > if (ret < 0 && ret != -ENOIOCTLCMD) > goto done; ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 02/25] staging: media: imx7-mipi-csis: fix pm_runtime_get_sync() usage count 2021-05-05 11:06 ` Jonathan Cameron @ 2021-05-05 11:17 ` Mauro Carvalho Chehab 2021-05-05 13:56 ` Rui Miguel Silva 1 sibling, 0 replies; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-05 11:17 UTC (permalink / raw) To: Jonathan Cameron Cc: linuxarm, mauro.chehab, Fabio Estevam, Greg Kroah-Hartman, Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team, Philipp Zabel, Rui Miguel Silva, Sascha Hauer, Shawn Guo, Steve Longerbeam, linux-arm-kernel, linux-kernel, linux-media, linux-staging Em Wed, 5 May 2021 12:06:52 +0100 Jonathan Cameron <Jonathan.Cameron@Huawei.com> escreveu: > On Wed, 5 May 2021 11:41:52 +0200 > Mauro Carvalho Chehab <mchehab+huawei@kernel.org> wrote: > > > The pm_runtime_get_sync() internally increments the > > dev->power.usage_count without decrementing it, even on errors. > > Replace it by the new pm_runtime_resume_and_get(), introduced by: > > commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter") > > in order to properly decrement the usage counter, avoiding > > a potential PM usage counter leak. > > > > Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > > Not a fix as far as I can see, just a cleanup - so perhaps not this set? Yeah, will move it to the non-error patch pile and change the comments. > > Jonathan > > > > --- > > drivers/staging/media/imx/imx7-mipi-csis.c | 7 +++---- > > 1 file changed, 3 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/staging/media/imx/imx7-mipi-csis.c b/drivers/staging/media/imx/imx7-mipi-csis.c > > index 025fdc488bd6..1dc680d94a46 100644 > > --- a/drivers/staging/media/imx/imx7-mipi-csis.c > > +++ b/drivers/staging/media/imx/imx7-mipi-csis.c > > @@ -695,11 +695,10 @@ static int mipi_csis_s_stream(struct v4l2_subdev *mipi_sd, int enable) > > > > mipi_csis_clear_counters(state); > > > > - ret = pm_runtime_get_sync(&state->pdev->dev); > > - if (ret < 0) { > > - pm_runtime_put_noidle(&state->pdev->dev); > > + ret = pm_runtime_resume_and_get(&state->pdev->dev); > > + if (ret < 0) > > return ret; > > - } > > + > > ret = v4l2_subdev_call(state->src_sd, core, s_power, 1); > > if (ret < 0 && ret != -ENOIOCTLCMD) > > goto done; > Thanks, Mauro ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 02/25] staging: media: imx7-mipi-csis: fix pm_runtime_get_sync() usage count 2021-05-05 11:06 ` Jonathan Cameron 2021-05-05 11:17 ` Mauro Carvalho Chehab @ 2021-05-05 13:56 ` Rui Miguel Silva 2021-05-05 14:23 ` Mauro Carvalho Chehab 1 sibling, 1 reply; 15+ messages in thread From: Rui Miguel Silva @ 2021-05-05 13:56 UTC (permalink / raw) To: Jonathan Cameron, Mauro Carvalho Chehab Cc: linuxarm, mauro.chehab, Fabio Estevam, Greg Kroah-Hartman, Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team, Philipp Zabel, Sascha Hauer, Shawn Guo, Steve Longerbeam, linux-arm-kernel, linux-kernel, linux-media, linux-staging Hi, On Wed May 5, 2021 at 12:06 PM WEST, Jonathan Cameron wrote: > On Wed, 5 May 2021 11:41:52 +0200 > Mauro Carvalho Chehab <mchehab+huawei@kernel.org> wrote: > > > The pm_runtime_get_sync() internally increments the > > dev->power.usage_count without decrementing it, even on errors. > > Replace it by the new pm_runtime_resume_and_get(), introduced by: > > commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter") > > in order to properly decrement the usage counter, avoiding > > a potential PM usage counter leak. > > > > Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > > Not a fix as far as I can see, just a cleanup - so perhaps not this set? yes, the original changelog of this patch, that I acked, made it clear it was a cleanup: " Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter") added pm_runtime_resume_and_get() in order to automatically handle dev->power.usage_count decrement on errors. Use the new API, in order to cleanup the error check logic. " This one above is new, but I saw Mauro is going change it. ------ Cheers, Rui > > Jonathan > > > > --- > > drivers/staging/media/imx/imx7-mipi-csis.c | 7 +++---- > > 1 file changed, 3 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/staging/media/imx/imx7-mipi-csis.c b/drivers/staging/media/imx/imx7-mipi-csis.c > > index 025fdc488bd6..1dc680d94a46 100644 > > --- a/drivers/staging/media/imx/imx7-mipi-csis.c > > +++ b/drivers/staging/media/imx/imx7-mipi-csis.c > > @@ -695,11 +695,10 @@ static int mipi_csis_s_stream(struct v4l2_subdev *mipi_sd, int enable) > > > > mipi_csis_clear_counters(state); > > > > - ret = pm_runtime_get_sync(&state->pdev->dev); > > - if (ret < 0) { > > - pm_runtime_put_noidle(&state->pdev->dev); > > + ret = pm_runtime_resume_and_get(&state->pdev->dev); > > + if (ret < 0) > > return ret; > > - } > > + > > ret = v4l2_subdev_call(state->src_sd, core, s_power, 1); > > if (ret < 0 && ret != -ENOIOCTLCMD) > > goto done; ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 02/25] staging: media: imx7-mipi-csis: fix pm_runtime_get_sync() usage count 2021-05-05 13:56 ` Rui Miguel Silva @ 2021-05-05 14:23 ` Mauro Carvalho Chehab 0 siblings, 0 replies; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-05 14:23 UTC (permalink / raw) To: Rui Miguel Silva Cc: Jonathan Cameron, linuxarm, mauro.chehab, Fabio Estevam, Greg Kroah-Hartman, Mauro Carvalho Chehab, NXP Linux Team, Pengutronix Kernel Team, Philipp Zabel, Sascha Hauer, Shawn Guo, Steve Longerbeam, linux-arm-kernel, linux-kernel, linux-media, linux-staging Em Wed, 05 May 2021 14:56:40 +0100 "Rui Miguel Silva" <rmfrfs@gmail.com> escreveu: > Hi, > On Wed May 5, 2021 at 12:06 PM WEST, Jonathan Cameron wrote: > > > On Wed, 5 May 2021 11:41:52 +0200 > > Mauro Carvalho Chehab <mchehab+huawei@kernel.org> wrote: > > > > > The pm_runtime_get_sync() internally increments the > > > dev->power.usage_count without decrementing it, even on errors. > > > Replace it by the new pm_runtime_resume_and_get(), introduced by: > > > commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter") > > > in order to properly decrement the usage counter, avoiding > > > a potential PM usage counter leak. > > > > > > Acked-by: Rui Miguel Silva <rmfrfs@gmail.com> > > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > > > > Not a fix as far as I can see, just a cleanup - so perhaps not this set? > > yes, the original changelog of this patch, that I acked, made it > clear it was a cleanup: > > " > Commit dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to > deal with usage counter") > added pm_runtime_resume_and_get() in order to automatically handle > dev->power.usage_count decrement on errors. > > Use the new API, in order to cleanup the error check logic. > " > > This one above is new, but I saw Mauro is going change it. Yes, I'll change the subject/description to the "use pm_runtime_resume_and_get()" one on this patch, as there's no issue to be fixed here, just a cleanup ;-) Sorry for the mess. I did lots of rebase on ~80 patch series over the last couple of days, based on the reviews (and my own internal reviews)... See, the current patchset has ~80 patches with ~30% contained fixes. It shows that writing a balanced PM runtime code is not so trivial ;-) Thanks, Mauro ^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 09/25] media: hantro: do a PM resume earlier 2021-05-05 9:41 [PATCH 00/25] Fix some PM runtime issues at the media subsystem Mauro Carvalho Chehab 2021-05-05 9:41 ` [PATCH 01/25] staging: media: rkvdec: fix pm_runtime_get_sync() usage count Mauro Carvalho Chehab 2021-05-05 9:41 ` [PATCH 02/25] staging: media: imx7-mipi-csis: " Mauro Carvalho Chehab @ 2021-05-05 9:41 ` Mauro Carvalho Chehab 2021-05-05 11:34 ` Jonathan Cameron 2021-05-05 13:22 ` Ezequiel Garcia 2021-05-06 15:11 ` [PATCH 00/25] Fix some PM runtime issues at the media subsystem Mauro Carvalho Chehab 3 siblings, 2 replies; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-05 9:41 UTC (permalink / raw) Cc: linuxarm, mauro.chehab, Mauro Carvalho Chehab, Ezequiel Garcia, Greg Kroah-Hartman, Hans Verkuil, Mauro Carvalho Chehab, Philipp Zabel, linux-kernel, linux-media, linux-rockchip, linux-staging The device_run() first enables the clock and then tries to resume PM runtime, checking for errors. Well, if for some reason the pm_runtime can not resume, it would be better to detect it beforehand. So, change the order inside device_run(). Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> Fixes: 775fec69008d ("media: add Rockchip VPU JPEG encoder driver") Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> --- drivers/staging/media/hantro/hantro_drv.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/staging/media/hantro/hantro_drv.c b/drivers/staging/media/hantro/hantro_drv.c index 595e82a82728..4387edaa1d0d 100644 --- a/drivers/staging/media/hantro/hantro_drv.c +++ b/drivers/staging/media/hantro/hantro_drv.c @@ -152,13 +152,14 @@ static void device_run(void *priv) src = hantro_get_src_buf(ctx); dst = hantro_get_dst_buf(ctx); - ret = clk_bulk_enable(ctx->dev->variant->num_clocks, ctx->dev->clocks); - if (ret) - goto err_cancel_job; ret = pm_runtime_get_sync(ctx->dev->dev); if (ret < 0) goto err_cancel_job; + ret = clk_bulk_enable(ctx->dev->variant->num_clocks, ctx->dev->clocks); + if (ret) + goto err_cancel_job; + v4l2_m2m_buf_copy_metadata(src, dst, true); ctx->codec_ops->run(ctx); -- 2.30.2 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 09/25] media: hantro: do a PM resume earlier 2021-05-05 9:41 ` [PATCH 09/25] media: hantro: do a PM resume earlier Mauro Carvalho Chehab @ 2021-05-05 11:34 ` Jonathan Cameron 2021-05-05 13:22 ` Ezequiel Garcia 1 sibling, 0 replies; 15+ messages in thread From: Jonathan Cameron @ 2021-05-05 11:34 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: linuxarm, mauro.chehab, Ezequiel Garcia, Greg Kroah-Hartman, Hans Verkuil, Mauro Carvalho Chehab, Philipp Zabel, linux-kernel, linux-media, linux-rockchip, linux-staging On Wed, 5 May 2021 11:41:59 +0200 Mauro Carvalho Chehab <mchehab+huawei@kernel.org> wrote: > The device_run() first enables the clock and then > tries to resume PM runtime, checking for errors. > > Well, if for some reason the pm_runtime can not resume, > it would be better to detect it beforehand. > > So, change the order inside device_run(). > > Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> > Fixes: 775fec69008d ("media: add Rockchip VPU JPEG encoder driver") > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Does this move not result in a potential call of clk_bulk_disable() for clocks that aren't enabled? > --- > drivers/staging/media/hantro/hantro_drv.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/staging/media/hantro/hantro_drv.c b/drivers/staging/media/hantro/hantro_drv.c > index 595e82a82728..4387edaa1d0d 100644 > --- a/drivers/staging/media/hantro/hantro_drv.c > +++ b/drivers/staging/media/hantro/hantro_drv.c > @@ -152,13 +152,14 @@ static void device_run(void *priv) > src = hantro_get_src_buf(ctx); > dst = hantro_get_dst_buf(ctx); > > - ret = clk_bulk_enable(ctx->dev->variant->num_clocks, ctx->dev->clocks); > - if (ret) > - goto err_cancel_job; > ret = pm_runtime_get_sync(ctx->dev->dev); > if (ret < 0) > goto err_cancel_job; > > + ret = clk_bulk_enable(ctx->dev->variant->num_clocks, ctx->dev->clocks); > + if (ret) > + goto err_cancel_job; > + > v4l2_m2m_buf_copy_metadata(src, dst, true); > > ctx->codec_ops->run(ctx); ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 09/25] media: hantro: do a PM resume earlier 2021-05-05 9:41 ` [PATCH 09/25] media: hantro: do a PM resume earlier Mauro Carvalho Chehab 2021-05-05 11:34 ` Jonathan Cameron @ 2021-05-05 13:22 ` Ezequiel Garcia 2021-05-05 13:46 ` Mauro Carvalho Chehab 1 sibling, 1 reply; 15+ messages in thread From: Ezequiel Garcia @ 2021-05-05 13:22 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: linuxarm, mauro.chehab, Greg Kroah-Hartman, Hans Verkuil, Mauro Carvalho Chehab, Philipp Zabel, linux-kernel, linux-media, linux-rockchip, linux-staging Hi Mauro, Thanks for working on this. On Wed, 2021-05-05 at 11:41 +0200, Mauro Carvalho Chehab wrote: > The device_run() first enables the clock and then > tries to resume PM runtime, checking for errors. > > Well, if for some reason the pm_runtime can not resume, > it would be better to detect it beforehand. > > So, change the order inside device_run(). > > Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> > Fixes: 775fec69008d ("media: add Rockchip VPU JPEG encoder driver") > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> It seems this is wrong now, as this series doesn't have https://lore.kernel.org/linux-media/803c39fafdd62efc6f9e4d99a372af2c6955143b.1619621413.git.mchehab+huawei@kernel.org/ I don't fully understand why all the back and forth happening on this series, but the former Hantro patches looked good (despite perhaps unclear commit messages). Any issues just squashing these two commits from "[PATCH v4 00/79] Address some issues with PM runtime at media subsystem": media: hantro: use pm_runtime_resume_and_get() media: hantro: do a PM resume earlier ? Thanks, Ezequiel > drivers/staging/media/hantro/hantro_drv.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/staging/media/hantro/hantro_drv.c b/drivers/staging/media/hantro/hantro_drv.c > index 595e82a82728..4387edaa1d0d 100644 > --- a/drivers/staging/media/hantro/hantro_drv.c > +++ b/drivers/staging/media/hantro/hantro_drv.c > @@ -152,13 +152,14 @@ static void device_run(void *priv) > src = hantro_get_src_buf(ctx); > dst = hantro_get_dst_buf(ctx); > > - ret = clk_bulk_enable(ctx->dev->variant->num_clocks, ctx->dev->clocks); > - if (ret) > - goto err_cancel_job; > ret = pm_runtime_get_sync(ctx->dev->dev); > if (ret < 0) > goto err_cancel_job; > > + ret = clk_bulk_enable(ctx->dev->variant->num_clocks, ctx->dev->clocks); > + if (ret) > + goto err_cancel_job; > + > v4l2_m2m_buf_copy_metadata(src, dst, true); > > ctx->codec_ops->run(ctx); ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 09/25] media: hantro: do a PM resume earlier 2021-05-05 13:22 ` Ezequiel Garcia @ 2021-05-05 13:46 ` Mauro Carvalho Chehab 2021-05-05 14:01 ` Ezequiel Garcia 0 siblings, 1 reply; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-05 13:46 UTC (permalink / raw) To: Ezequiel Garcia Cc: linuxarm, mauro.chehab, Greg Kroah-Hartman, Hans Verkuil, Mauro Carvalho Chehab, Philipp Zabel, linux-kernel, linux-media, linux-rockchip, linux-staging Em Wed, 05 May 2021 10:22:03 -0300 Ezequiel Garcia <ezequiel@collabora.com> escreveu: > Hi Mauro, > > Thanks for working on this. > > On Wed, 2021-05-05 at 11:41 +0200, Mauro Carvalho Chehab wrote: > > The device_run() first enables the clock and then > > tries to resume PM runtime, checking for errors. > > > > Well, if for some reason the pm_runtime can not resume, > > it would be better to detect it beforehand. > > > > So, change the order inside device_run(). > > > > Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> > > Fixes: 775fec69008d ("media: add Rockchip VPU JPEG encoder driver") > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > > It seems this is wrong now, as this series doesn't have > > https://lore.kernel.org/linux-media/803c39fafdd62efc6f9e4d99a372af2c6955143b.1619621413.git.mchehab+huawei@kernel.org/ > > I don't fully understand why all the back and forth > happening on this series, but the former Hantro patches > looked good (despite perhaps unclear commit messages). There was a request to break the original /79 series into smaller ones, to make easier for reviewers. So, I opted to split it into (probably) 3 series: 1. Fixes (this series); 2. "use pm_runtime_resume_and_get" for the I2C drivers; 3. "use pm_runtime_resume_and_get" for remaining ones. Before flooding everybody's email's with series (2) and (3), better to focus at the fixes first. I'll probably send the other two series by tomorrow. > Any issues just squashing these two commits from "[PATCH v4 00/79] Address some issues with PM runtime at media subsystem": > > media: hantro: use pm_runtime_resume_and_get() > media: hantro: do a PM resume earlier The problem is that pm_runtime_resume_and_get() was added only recently (Kernel v5.10). So, I opted to place the fix patches before the changes, as this way, most (all?) patches can be easily be backported to legacy Kernels as needed. Thanks, Mauro ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 09/25] media: hantro: do a PM resume earlier 2021-05-05 13:46 ` Mauro Carvalho Chehab @ 2021-05-05 14:01 ` Ezequiel Garcia 2021-05-05 14:15 ` Mauro Carvalho Chehab 0 siblings, 1 reply; 15+ messages in thread From: Ezequiel Garcia @ 2021-05-05 14:01 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: linuxarm, mauro.chehab, Greg Kroah-Hartman, Hans Verkuil, Mauro Carvalho Chehab, Philipp Zabel, linux-kernel, linux-media, linux-rockchip, linux-staging On Wed, 2021-05-05 at 15:46 +0200, Mauro Carvalho Chehab wrote: > Em Wed, 05 May 2021 10:22:03 -0300 > Ezequiel Garcia <ezequiel@collabora.com> escreveu: > > > Hi Mauro, > > > > Thanks for working on this. > > > > On Wed, 2021-05-05 at 11:41 +0200, Mauro Carvalho Chehab wrote: > > > The device_run() first enables the clock and then > > > tries to resume PM runtime, checking for errors. > > > > > > Well, if for some reason the pm_runtime can not resume, > > > it would be better to detect it beforehand. > > > > > > So, change the order inside device_run(). > > > > > > Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> > > > Fixes: 775fec69008d ("media: add Rockchip VPU JPEG encoder driver") > > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > > > > It seems this is wrong now, as this series doesn't have > > > > https://lore.kernel.org/linux-media/803c39fafdd62efc6f9e4d99a372af2c6955143b.1619621413.git.mchehab+huawei@kernel.org/ > > > > I don't fully understand why all the back and forth > > happening on this series, but the former Hantro patches > > looked good (despite perhaps unclear commit messages). > > There was a request to break the original /79 series into smaller ones, > to make easier for reviewers. So, I opted to split it into (probably) > 3 series: > > 1. Fixes (this series); > 2. "use pm_runtime_resume_and_get" for the I2C drivers; > 3. "use pm_runtime_resume_and_get" for remaining ones. > > Before flooding everybody's email's with series (2) and (3), better > to focus at the fixes first. I'll probably send the other two series > by tomorrow. > > > Any issues just squashing these two commits from "[PATCH v4 00/79] Address some issues with PM runtime at media subsystem": > > > > media: hantro: use pm_runtime_resume_and_get() > > media: hantro: do a PM resume earlier > > The problem is that pm_runtime_resume_and_get() was added only > recently (Kernel v5.10). > > So, I opted to place the fix patches before the changes, as this > way, most (all?) patches can be easily be backported to legacy Kernels > as needed. > Got it. Maybe the better fix would be the squash of [PATCH v4 78/79] media: hantro: use pm_runtime_resume_and_get() and [PATCH v4 79/79] media: hantro: do a PM resume earlier but keeping pm_runtime_get_sync. And then you can replace the pm_runtime_get_sync with pm_runtime_resume_and_get. Thanks, Ezequiel ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 09/25] media: hantro: do a PM resume earlier 2021-05-05 14:01 ` Ezequiel Garcia @ 2021-05-05 14:15 ` Mauro Carvalho Chehab 0 siblings, 0 replies; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-05 14:15 UTC (permalink / raw) To: Ezequiel Garcia Cc: linuxarm, mauro.chehab, Greg Kroah-Hartman, Hans Verkuil, Mauro Carvalho Chehab, Philipp Zabel, linux-kernel, linux-media, linux-rockchip, linux-staging Em Wed, 05 May 2021 11:01:35 -0300 Ezequiel Garcia <ezequiel@collabora.com> escreveu: > On Wed, 2021-05-05 at 15:46 +0200, Mauro Carvalho Chehab wrote: > > Em Wed, 05 May 2021 10:22:03 -0300 > > Ezequiel Garcia <ezequiel@collabora.com> escreveu: > > > > > Hi Mauro, > > > > > > Thanks for working on this. > > > > > > On Wed, 2021-05-05 at 11:41 +0200, Mauro Carvalho Chehab wrote: > > > > The device_run() first enables the clock and then > > > > tries to resume PM runtime, checking for errors. > > > > > > > > Well, if for some reason the pm_runtime can not resume, > > > > it would be better to detect it beforehand. > > > > > > > > So, change the order inside device_run(). > > > > > > > > Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> > > > > Fixes: 775fec69008d ("media: add Rockchip VPU JPEG encoder driver") > > > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > > > > > > It seems this is wrong now, as this series doesn't have > > > > > > https://lore.kernel.org/linux-media/803c39fafdd62efc6f9e4d99a372af2c6955143b.1619621413.git.mchehab+huawei@kernel.org/ > > > > > > I don't fully understand why all the back and forth > > > happening on this series, but the former Hantro patches > > > looked good (despite perhaps unclear commit messages). > > > > There was a request to break the original /79 series into smaller ones, > > to make easier for reviewers. So, I opted to split it into (probably) > > 3 series: > > > > 1. Fixes (this series); > > 2. "use pm_runtime_resume_and_get" for the I2C drivers; > > 3. "use pm_runtime_resume_and_get" for remaining ones. > > > > Before flooding everybody's email's with series (2) and (3), better > > to focus at the fixes first. I'll probably send the other two series > > by tomorrow. > > > > > Any issues just squashing these two commits from "[PATCH v4 00/79] Address some issues with PM runtime at media subsystem": > > > > > > media: hantro: use pm_runtime_resume_and_get() > > > media: hantro: do a PM resume earlier > > > > The problem is that pm_runtime_resume_and_get() was added only > > recently (Kernel v5.10). > > > > So, I opted to place the fix patches before the changes, as this > > way, most (all?) patches can be easily be backported to legacy Kernels > > as needed. > > > > Got it. > > Maybe the better fix would be the squash of [PATCH v4 78/79] media: hantro: use pm_runtime_resume_and_get() > and [PATCH v4 79/79] media: hantro: do a PM resume earlier but keeping pm_runtime_get_sync. > > And then you can replace the pm_runtime_get_sync with pm_runtime_resume_and_get. Works for me. So, the fixes patch will be the enclosed one, right? Btw, I agree with Jonathan that the best would be to also move this: clk_bulk_disable(vpu->variant->num_clocks, vpu->clocks); out of hantro_job_finish_no_pm(), as, when an error happens at device_run(), the clock lines won't be enabled at the first place. > Thanks, > Ezequiel Thanks, Mauro [PATCH] media: hantro: do a PM resume earlier The device_run() first enables the clock and then tries to resume PM runtime, checking for errors. Well, if for some reason the pm_runtime can not resume, it would be better to detect it beforehand. So, change the order inside device_run(). Reviewed-by: Ezequiel Garcia <ezequiel@collabora.com> Fixes: 775fec69008d ("media: add Rockchip VPU JPEG encoder driver") Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> diff --git a/drivers/staging/media/hantro/hantro_drv.c b/drivers/staging/media/hantro/hantro_drv.c index 595e82a82728..bdb57fb56f47 100644 --- a/drivers/staging/media/hantro/hantro_drv.c +++ b/drivers/staging/media/hantro/hantro_drv.c @@ -56,14 +56,12 @@ dma_addr_t hantro_get_ref(struct hantro_ctx *ctx, u64 ts) return hantro_get_dec_buf_addr(ctx, buf); } -static void hantro_job_finish(struct hantro_dev *vpu, - struct hantro_ctx *ctx, - enum vb2_buffer_state result) +static void hantro_job_finish_no_pm(struct hantro_dev *vpu, + struct hantro_ctx *ctx, + enum vb2_buffer_state result) { struct vb2_v4l2_buffer *src, *dst; - pm_runtime_mark_last_busy(vpu->dev); - pm_runtime_put_autosuspend(vpu->dev); clk_bulk_disable(vpu->variant->num_clocks, vpu->clocks); src = v4l2_m2m_next_src_buf(ctx->fh.m2m_ctx); @@ -81,6 +79,16 @@ static void hantro_job_finish(struct hantro_dev *vpu, result); } +static void hantro_job_finish(struct hantro_dev *vpu, + struct hantro_ctx *ctx, + enum vb2_buffer_state result) +{ + pm_runtime_mark_last_busy(vpu->dev); + pm_runtime_put_autosuspend(vpu->dev); + + hantro_job_finish_no_pm(vpu, ctx, result); +} + void hantro_irq_done(struct hantro_dev *vpu, enum vb2_buffer_state result) { @@ -152,12 +160,15 @@ static void device_run(void *priv) src = hantro_get_src_buf(ctx); dst = hantro_get_dst_buf(ctx); + ret = pm_runtime_get_sync(ctx->dev->dev); + if (ret < 0) { + pm_runtime_put_noidle(ctx->dev->dev); + goto err_cancel_job; + } + ret = clk_bulk_enable(ctx->dev->variant->num_clocks, ctx->dev->clocks); if (ret) goto err_cancel_job; - ret = pm_runtime_get_sync(ctx->dev->dev); - if (ret < 0) - goto err_cancel_job; v4l2_m2m_buf_copy_metadata(src, dst, true); @@ -165,7 +176,7 @@ static void device_run(void *priv) return; err_cancel_job: - hantro_job_finish(ctx->dev, ctx, VB2_BUF_STATE_ERROR); + hantro_job_finish_no_pm(ctx->dev, ctx, VB2_BUF_STATE_ERROR); } static struct v4l2_m2m_ops vpu_m2m_ops = { ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 00/25] Fix some PM runtime issues at the media subsystem 2021-05-05 9:41 [PATCH 00/25] Fix some PM runtime issues at the media subsystem Mauro Carvalho Chehab ` (2 preceding siblings ...) 2021-05-05 9:41 ` [PATCH 09/25] media: hantro: do a PM resume earlier Mauro Carvalho Chehab @ 2021-05-06 15:11 ` Mauro Carvalho Chehab 3 siblings, 0 replies; 15+ messages in thread From: Mauro Carvalho Chehab @ 2021-05-06 15:11 UTC (permalink / raw) Cc: linuxarm, mauro.chehab, Lad, Prabhakar, Paul J. Murphy, Andrzej Pietrasiewicz, Andy Gross, Bjorn Andersson, Chen-Yu Tsai, Daniele Alessandrelli, Ezequiel Garcia, Fabio Estevam, Jacek Anaszewski, Jernej Skrabec, Krzysztof Kozlowski, Marek Szyprowski, Matthias Brugger, Mauro Carvalho Chehab, Maxime Ripard, NXP Linux Team, Pengutronix Kernel Team, Philipp Zabel, Rui Miguel Silva, Sakari Ailus, Sascha Hauer, Shawn Guo, Stanimir Varbanov, Steve Longerbeam, Sylwester Nawrocki, linux-arm-kernel, linux-arm-msm, linux-kernel, linux-media, linux-mediatek, linux-renesas-soc, linux-rockchip, linux-samsung-soc, linux-staging, linux-sunxi Em Wed, 5 May 2021 11:41:50 +0200 Mauro Carvalho Chehab <mchehab+huawei@kernel.org> escreveu: > As part of an effort to cleanup pm_runtime*get* calls, I detected a number > of issues at the media subsystem. > > Most of the patches here were submitted previously at: > > https://lore.kernel.org/linux-media/cover.1619621413.git.mchehab+huawei@kernel.org/ > > This series contain just the bug fixes and other related issues that are > present with the current code on media. Series merged on my stage tree, at: https://git.linuxtv.org/media_stage.git/log/ I'll be merging it at media_tree (either for 5.13 or 5.14) after the end of the merge window (likely next week). Please let me know if you find any problems on it. PS.: please notice that my stage tree can be rebased. Regards, Mauro > > It address the points from the existing reviews. I also did my own > set of reviews, in order to avoid regressions. > > Changes from v4 of the previous changeset: > > - reworked i2c/css RPM get logic; > - dropped two patches that could cause regressions; > - am437x: keep using pm_runtime_get_sync on suspend/resume; > - atmel: fix the returned code and add a print on failures at start streaming; > - simplify some checks for return code > 0; > - mdk-vcodec: properly handle RPM errors at device on logic; > - venus: rework venus_sys_error_handler() logic; > - sti/delta: fix an issue at the error checking logic. > > Mauro Carvalho Chehab (25): > staging: media: rkvdec: fix pm_runtime_get_sync() usage count > staging: media: imx7-mipi-csis: fix pm_runtime_get_sync() usage count > media: venus: Rework error fail recover logic > media: s5p_cec: decrement usage count if disabled > media: i2c: ccs-core: return the right error code at suspend > media: i2c: imx334: fix the pm runtime get logic > media: exynos-gsc: don't resume at remove time > media: atmel: properly get pm_runtime > media: hantro: do a PM resume earlier > media: marvel-ccic: fix some issues when getting pm_runtime > media: mdk-mdp: fix pm_runtime_get_sync() usage count > media: rcar_fdp1: simplify error check logic at fdp_open() > media: rcar_fdp1: fix pm_runtime_get_sync() usage count > media: renesas-ceu: Properly check for PM errors > media: s5p: fix pm_runtime_get_sync() usage count > media: am437x: fix pm_runtime_get_sync() usage count > media: sh_vou: fix pm_runtime_get_sync() usage count > media: mtk-vcodec: fix PM runtime get logic > media: s5p-jpeg: fix pm_runtime_get_sync() usage count > media: sti/delta: use pm_runtime_resume_and_get() > media: sunxi: fix pm_runtime_get_sync() usage count > media: sti/bdisp: fix pm_runtime_get_sync() usage count > media: exynos4-is: fix pm_runtime_get_sync() usage count > media: exynos-gsc: fix pm_runtime_get_sync() usage count > media: i2c: ccs-core: fix pm_runtime_get_sync() usage count > > drivers/media/cec/platform/s5p/s5p_cec.c | 7 ++- > drivers/media/i2c/ccs/ccs-core.c | 41 ++++++++----- > drivers/media/i2c/imx334.c | 7 ++- > drivers/media/platform/am437x/am437x-vpfe.c | 15 ++++- > drivers/media/platform/atmel/atmel-isc-base.c | 30 +++++++--- > drivers/media/platform/atmel/atmel-isi.c | 19 ++++-- > drivers/media/platform/exynos-gsc/gsc-core.c | 11 ++-- > drivers/media/platform/exynos-gsc/gsc-m2m.c | 4 +- > .../media/platform/exynos4-is/fimc-capture.c | 6 +- > drivers/media/platform/exynos4-is/fimc-is.c | 4 +- > .../platform/exynos4-is/fimc-isp-video.c | 3 +- > drivers/media/platform/exynos4-is/fimc-isp.c | 7 +-- > drivers/media/platform/exynos4-is/fimc-lite.c | 5 +- > drivers/media/platform/exynos4-is/fimc-m2m.c | 5 +- > drivers/media/platform/exynos4-is/media-dev.c | 9 +-- > drivers/media/platform/exynos4-is/mipi-csis.c | 10 ++-- > .../media/platform/marvell-ccic/mcam-core.c | 9 ++- > drivers/media/platform/mtk-mdp/mtk_mdp_m2m.c | 6 +- > .../platform/mtk-vcodec/mtk_vcodec_dec_drv.c | 4 +- > .../platform/mtk-vcodec/mtk_vcodec_dec_pm.c | 8 ++- > .../platform/mtk-vcodec/mtk_vcodec_dec_pm.h | 2 +- > drivers/media/platform/qcom/venus/core.c | 59 +++++++++++++++---- > drivers/media/platform/rcar_fdp1.c | 28 ++++++--- > drivers/media/platform/renesas-ceu.c | 4 +- > drivers/media/platform/s5p-jpeg/jpeg-core.c | 5 +- > drivers/media/platform/sh_vou.c | 6 +- > drivers/media/platform/sti/bdisp/bdisp-v4l2.c | 7 ++- > drivers/media/platform/sti/delta/delta-v4l2.c | 8 +-- > .../sunxi/sun8i-rotate/sun8i_rotate.c | 2 +- > drivers/staging/media/hantro/hantro_drv.c | 7 ++- > drivers/staging/media/imx/imx7-mipi-csis.c | 7 +-- > drivers/staging/media/rkvdec/rkvdec.c | 2 +- > 32 files changed, 220 insertions(+), 127 deletions(-) > Thanks, Mauro ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2021-05-06 15:12 UTC | newest] Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-05-05 9:41 [PATCH 00/25] Fix some PM runtime issues at the media subsystem Mauro Carvalho Chehab 2021-05-05 9:41 ` [PATCH 01/25] staging: media: rkvdec: fix pm_runtime_get_sync() usage count Mauro Carvalho Chehab 2021-05-05 12:23 ` Jonathan Cameron 2021-05-05 9:41 ` [PATCH 02/25] staging: media: imx7-mipi-csis: " Mauro Carvalho Chehab 2021-05-05 11:06 ` Jonathan Cameron 2021-05-05 11:17 ` Mauro Carvalho Chehab 2021-05-05 13:56 ` Rui Miguel Silva 2021-05-05 14:23 ` Mauro Carvalho Chehab 2021-05-05 9:41 ` [PATCH 09/25] media: hantro: do a PM resume earlier Mauro Carvalho Chehab 2021-05-05 11:34 ` Jonathan Cameron 2021-05-05 13:22 ` Ezequiel Garcia 2021-05-05 13:46 ` Mauro Carvalho Chehab 2021-05-05 14:01 ` Ezequiel Garcia 2021-05-05 14:15 ` Mauro Carvalho Chehab 2021-05-06 15:11 ` [PATCH 00/25] Fix some PM runtime issues at the media subsystem Mauro Carvalho Chehab
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).