mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
To: Keke Li <keke.li@amlogic.com>
Cc: Jiale Yao <yaojiale02@163.com>,
	 Mauro Carvalho Chehab <mchehab@kernel.org>,
	Jacopo Mondi <jacopo.mondi@ideasonboard.com>,
	 Hans Verkuil <hverkuil@kernel.org>,
	Daniel Scally <dan.scally@ideasonboard.com>,
	 linux-media@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] media: c3-mipi-csi2: handle runtime resume failure
Date: Mon, 19 Oct 2026 09:31:39 +0200	[thread overview]
Message-ID: <atXFmYHrVP5uwIbj@zed> (raw)
In-Reply-To: <99b34523-8ee2-431f-ad1b-c1e11dd1412a@amlogic.com>

Hi Keke

On Mon, Oct 19, 2026 at 02:24:34PM +0800, Keke Li wrote:
> Hi Jiale,
>
> On 10/3/26 16:11, Jiale Yao wrote:
> > [You don't often get email from yaojiale02@163.com. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
> >
> > [ EXTERNAL EMAIL ]
> >
> > c3_mipi_csi_enable_streams() ignores runtime resume failures and starts
> > the receiver before reporting that streaming is enabled. If the power
> > domain could not be resumed, this accesses unavailable registers and
> > the disable path later drops a reference that was not acquired.
> >
> > Return the runtime PM error before starting the receiver.
> >
> > Fixes: b63ef604a28d ("media: platform: Add C3 MIPI CSI-2 driver")
> > Signed-off-by: Jiale Yao <yaojiale02@163.com>
> > ---
> >   drivers/media/platform/amlogic/c3/mipi-csi2/c3-mipi-csi2.c | 4 +++-
> >   1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/media/platform/amlogic/c3/mipi-csi2/c3-mipi-csi2.c b/drivers/media/platform/amlogic/c3/mipi-csi2/c3-mipi-csi2.c
> > index b9e4ef3fc308..4731d58bf2dd 100644
> > --- a/drivers/media/platform/amlogic/c3/mipi-csi2/c3-mipi-csi2.c
> > +++ b/drivers/media/platform/amlogic/c3/mipi-csi2/c3-mipi-csi2.c
> > @@ -431,7 +431,9 @@ static int c3_mipi_csi_enable_streams(struct v4l2_subdev *sd,
> >
> >          src_sd = media_entity_to_v4l2_subdev(csi->src_pad->entity);
> >
> > -       pm_runtime_resume_and_get(csi->dev);
> > +       ret = pm_runtime_resume_and_get(csi->dev);
> > +       if (ret < 0)
> Is   ' if (ret)'  better?

Does your driver depend on select PM ? It doesn't seem the case to me.

If PM is disabled pm_runtime_resume_and_get() returns 1
if my reading of

        static inline int __pm_runtime_resume(struct device *dev, int rpmflags)
        {
                return 1;
        }

is correct.

If you
        if (ret)

also this case will be caught as an error, while we instead want to
continue as the peripheral is meant to stay powered on from probe() if
CONFIG_PM is not selected.

(I quickly had a look at the csi2 driver probe() routine
c3_mipi_csi_probe() and it doesn't seem to power up the interface in
probe() to support !CONFIG_PM. Personally, I would just select PM
unconditionally almost everywhere these days and be done with it).

> > +               return ret;
> >
> >          c3_mipi_csi_start_stream(csi);
> >
> > --
> > 2.34.1
> >

  reply	other threads:[~2026-10-19  7:31 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-03  8:11 [PATCH 0/2] media: amlogic: handle C3 MIPI runtime resume failures Jiale Yao
2026-10-03  8:11 ` [PATCH 1/2] media: c3-mipi-adap: handle runtime resume failure Jiale Yao
2026-10-19  6:23   ` Keke Li
2026-10-03  8:11 ` [PATCH 2/2] media: c3-mipi-csi2: " Jiale Yao
2026-10-19  6:24   ` Keke Li
2026-10-19  7:31     ` Jacopo Mondi [this message]
2026-10-19  8:48       ` Keke Li

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=atXFmYHrVP5uwIbj@zed \
    --to=jacopo.mondi@ideasonboard.com \
    --cc=dan.scally@ideasonboard.com \
    --cc=hverkuil@kernel.org \
    --cc=keke.li@amlogic.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=yaojiale02@163.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®