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

From: Akhil P Oommen
Date: Mon Jul 15 2024 - 15:01:38 EST


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-crd.dts b/arch/arm64/boot/dts/qcom/x1e80100-crd.dts
> index 6152bcd0bc1f..8f4e238f014f 100644
> --- a/arch/arm64/boot/dts/qcom/x1e80100-crd.dts
> +++ b/arch/arm64/boot/dts/qcom/x1e80100-crd.dts
> @@ -637,6 +637,14 @@ vreg_l3j_0p8: ldo3 {
> };
> };
>
> +&gpu {
> + satus = "okay";

s/satus/status

Also, we should add this chunk to x1e80100-qcp.dts too.

> +
> + zap-shader {
> + firmware-name = "qcom/x1e80100/gen70500_zap.mbn";
> + };
> +};
> +
> &i2c0 {
> clock-frequency = <400000>;
>
> 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.

-Akhil

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