Re: [PATCH] Revert "venus: firmware: Correct non-pix start and end addresses"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 07, 2023 at 05:50:19PM +0000, mka@xxxxxxxxxxxx wrote:
> Hi Vikash,
> 
> On Tue, Feb 07, 2023 at 04:40:24PM +0000, Vikash Garodia wrote:
> > Hi Javier and Matthias,
> > Can we try the attached patch if that fixes the suspend issue for sc7180 and sc7280 ?
> 
> On my side the patch fixes the issue for sc7280, but not sc7180.

Some more info for sc7180:

[   10.313055] qcom-venus aa00000.video-codec: failed to reset venus core
[   10.331454] qcom-venus: probe of aa00000.video-codec failed with error -110

So venus didn't probe successfully. As a result sync_state() of its rpmhpd and
interconnects isn't called and they keep running at max speed, which prevents
the Always-On subsystem from suspending:

[   30.171148] qcom-rpmhpd 18200000.rsc:power-controller: Consumer 'aa00000.video-codec' did not probe (successfully)
[   30.682950] qnoc-sc7180 9680000.interconnect: Consumer 'aa00000.video-codec' did not probe (successfully)
[   30.701843] qnoc-sc7180 1740000.interconnect: Consumer 'aa00000.video-codec' did not probe (successfully)
[   30.720168] qnoc-sc7180 1638000.interconnect: Consumer 'aa00000.video-codec' did not probe (successfully)
[   30.738478] qnoc-sc7180 1500000.interconnect: Consumer 'aa00000.video-codec' did not probe (successfully)

(these debug logs are not upstream)

> > > -----Original Message-----
> > > From: Javier Martinez Canillas <javierm@xxxxxxxxxx>
> > > Sent: Tuesday, February 7, 2023 3:53 PM
> > > To: linux-kernel@xxxxxxxxxxxxxxx
> > > Cc: Albert Esteve <aesteve@xxxxxxxxxx>; stanimir.varbanov@xxxxxxxxxx;
> > > Matthias Kaehlcke <mka@xxxxxxxxxxxx>; Enric Balletbo i Serra
> > > <eballetb@xxxxxxxxxx>; Javier Martinez Canillas <javierm@xxxxxxxxxx>; Andy
> > > Gross <agross@xxxxxxxxxx>; Bjorn Andersson <andersson@xxxxxxxxxx>; Konrad
> > > Dybcio <konrad.dybcio@xxxxxxxxxx>; Mauro Carvalho Chehab
> > > <mchehab@xxxxxxxxxx>; Stanimir Varbanov
> > > <stanimir.k.varbanov@xxxxxxxxx>; Vikash Garodia (QUIC)
> > > <quic_vgarodia@xxxxxxxxxxx>; linux-arm-msm@xxxxxxxxxxxxxxx; linux-
> > > media@xxxxxxxxxxxxxxx
> > > Subject: [PATCH] Revert "venus: firmware: Correct non-pix start and end
> > > addresses"
> > > 
> > > WARNING: This email originated from outside of Qualcomm. Please be wary of
> > > any links or attachments, and do not enable macros.
> > > 
> > > This reverts commit a837e5161cfffbb3242cc0eb574f8bf65fd32640, which
> > > broke probing of the venus driver, at least on the SC7180 SoC HP X2
> > > Chromebook:
> > > 
> > >   [   11.455782] qcom-venus aa00000.video-codec: Adding to iommu group 11
> > >   [   11.506980] qcom-venus aa00000.video-codec: non legacy binding
> > >   [   12.143432] qcom-venus aa00000.video-codec: failed to reset venus core
> > >   [   12.156440] qcom-venus: probe of aa00000.video-codec failed with error -
> > > 110
> > > 
> > > Matthias Kaehlcke also reported that the same change caused a regression in
> > > SC7180 and sc7280, that prevents AOSS from entering sleep mode during
> > > system suspend. So let's revert this commit for now to fix both issues.
> > > 
> > > Fixes: a837e5161cff ("venus: firmware: Correct non-pix start and end
> > > addresses")
> > > Reported-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>
> > > Signed-off-by: Javier Martinez Canillas <javierm@xxxxxxxxxx>
> > > ---
> > > 
> > >  drivers/media/platform/qcom/venus/firmware.c | 4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/drivers/media/platform/qcom/venus/firmware.c
> > > b/drivers/media/platform/qcom/venus/firmware.c
> > > index 142d4c74017c..d59ecf776715 100644
> > > --- a/drivers/media/platform/qcom/venus/firmware.c
> > > +++ b/drivers/media/platform/qcom/venus/firmware.c
> > > @@ -38,8 +38,8 @@ static void venus_reset_cpu(struct venus_core *core)
> > >         writel(fw_size, wrapper_base + WRAPPER_FW_END_ADDR);
> > >         writel(0, wrapper_base + WRAPPER_CPA_START_ADDR);
> > >         writel(fw_size, wrapper_base + WRAPPER_CPA_END_ADDR);
> > > -       writel(0, wrapper_base + WRAPPER_NONPIX_START_ADDR);
> > > -       writel(0, wrapper_base + WRAPPER_NONPIX_END_ADDR);
> > > +       writel(fw_size, wrapper_base + WRAPPER_NONPIX_START_ADDR);
> > > +       writel(fw_size, wrapper_base + WRAPPER_NONPIX_END_ADDR);
> > > 
> > >         if (IS_V6(core)) {
> > >                 /* Bring XTSS out of reset */
> > > --
> > > 2.39.1
> > 
> > Thanks,
> > Vikash
> 
> 



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux