Re: [PATCH v2] arm64: dts: qcom: disable GPU on x1e80100 by default

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

 



On Tue, Jul 16, 2024 at 07:49:07AM -0700, Rob Clark wrote:
> On Tue, Jul 16, 2024 at 4:03 AM Dmitry Baryshkov
> <dmitry.baryshkov@xxxxxxxxxx> wrote:
> >
> > On Mon, 15 Jul 2024 at 22:01, Akhil P Oommen <quic_akhilpo@xxxxxxxxxxx> wrote:
> > >
> > > On Mon, Jul 15, 2024 at 09:18:49PM +0300, Dmitry Baryshkov wrote:
> > > > The GPU on X1E80100 requires ZAP 'shader' file to be useful. Since the
> > > > file is signed by the OEM keys and might be not available by default,
> > > > disable the GPU node and drop the firmware name from the x1e80100.dtsi
> > > > file. Devices not being fused to use OEM keys can specify generic
> > > > location at `qcom/x1e80100/gen70500_zap.mbn` while enabling the GPU.
> > > >
> > > > The CRD was lucky enough to work with the default settings, so reenable
> > > > the GPU on that platform and provide correct firmware-name (including
> > > > the SoC subdir).
> > > >
> > > > Fixes: 721e38301b79 ("arm64: dts: qcom: x1e80100: Add gpu support")
> > > > Cc: Akhil P Oommen <quic_akhilpo@xxxxxxxxxxx>
> > > > Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx>
> > > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
> > > > ---
> > > > Changes in v2:
> > > > - Keep GPU enabled for X1E80100-CRD (Johan)
> > > > - Link to v1: https://lore.kernel.org/r/20240715-x1e8-zap-name-v1-1-b66df09d0b65@xxxxxxxxxx
> > > > ---
> > > >  arch/arm64/boot/dts/qcom/x1e80100-crd.dts | 8 ++++++++
> > > >  arch/arm64/boot/dts/qcom/x1e80100.dtsi    | 3 ++-
> > > >  2 files changed, 10 insertions(+), 1 deletion(-)
> > > >
> >
> > [..]
> >
> > > > diff --git a/arch/arm64/boot/dts/qcom/x1e80100.dtsi b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> > > > index 7bca5fcd7d52..8df90d01eba8 100644
> > > > --- a/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> > > > +++ b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> > > > @@ -3155,9 +3155,10 @@ gpu: gpu@3d00000 {
> > > >                       interconnects = <&gem_noc MASTER_GFX3D 0 &mc_virt SLAVE_EBI1 0>;
> > > >                       interconnect-names = "gfx-mem";
> > > >
> > > > +                     status = "disabled";
> > > > +
> > > >                       zap-shader {
> > > >                               memory-region = <&gpu_microcode_mem>;
> > > > -                             firmware-name = "qcom/gen70500_zap.mbn";
> > >
> > > In general, why not keep a default zap firmware listed here? Anyway we
> > > are disabling gpu node here in case of platforms which doesn't upstream
> > > secure firmwares.
> >
> > Excuse me, I missed the question before sending v3, however the answer
> > is still going to be the same:
> >
> > First of all, we don't do it for other platforms
> > Second, we don't do it for other firmware. Each DT declares its own
> > set of files.
> > Last, but not least, it's better to get an error message regarding
> > firmware-name not being present rather than a possibly cryptic message
> > regarding firmware failing authentication.
> 
> tbh, I think it might be better to just remove the default fw name
> from a6xx_catalog.c device table.  That would better reflect the
> situation, ie. some fw is needed and not available (if the
> firmware-name prop isn't provided).  Trying to fall back to loading
> the wrong fw is a mis-design.

Agree. Thanks for the clarification.

-Akhil

> 
> BR,
> -R
> 
> > >
> > > -Akhil
> > >
> > > >                       };
> > > >
> > > >                       gpu_opp_table: opp-table {
> > > >
> > > > ---
> > > > base-commit: 3fe121b622825ff8cc995a1e6b026181c48188db
> > > > change-id: 20240715-x1e8-zap-name-7b3c79234401
> > > >
> > > > Best regards,
> > > > --
> > > > Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
> > > >
> >
> >
> >
> > --
> > With best wishes
> > Dmitry
> >




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux