On Tue, May 23, 2023 at 10:04:40AM +0200, Konrad Dybcio wrote: > > > On 23.05.2023 03:15, Bjorn Andersson wrote: > > From: Bjorn Andersson <bjorn.anders...@linaro.org> > > > > Add memory reservation for the zap-shader and enable the Adreno SMMU, > > GPU clock controller, GMU and the GPU nodes for the SC8280XP CRD and the > > Lenovo ThinkPad X13s. > > > > Signed-off-by: Bjorn Andersson <bjorn.anders...@linaro.org> > > Signed-off-by: Bjorn Andersson <quic_bjora...@quicinc.com> > > --- > > > > Changes since v1: > > - None > > > > arch/arm64/boot/dts/qcom/sc8280xp-crd.dts | 26 +++++++++++++++++++ > > .../qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 26 +++++++++++++++++++ > > 2 files changed, 52 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts > > b/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts > > index 5b25d54b9591..547277924ea3 100644 > > --- a/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts > > +++ b/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts > > @@ -210,6 +210,11 @@ vreg_wwan: regulator-wwan { > > }; > > > > reserved-memory { > > + gpu_mem: gpu-mem@8bf00000 { > The ZAP region is very seldom moved around, and I wouldn't expect it > to be uncommon among the very usecase-specific 8280 machines. > > > + reg = <0 0x8bf00000 0 0x2000>; > > + no-map; > > + }; > > + > > linux,cma { > > compatible = "shared-dma-pool"; > > size = <0x0 0x8000000>; > > @@ -259,6 +264,10 @@ usb1_sbu_mux: endpoint { > > }; > > }; > > > > +&adreno_smmu { > > + status = "okay"; > > +}; > Ugh. Should definitely be enabled by default. > > > + > > &apps_rsc { > > regulators-0 { > > compatible = "qcom,pm8350-rpmh-regulators"; > > @@ -376,6 +385,23 @@ &dispcc0 { > > status = "okay"; > > }; > > > > +&gmu { > > + status = "okay"; > > +}; > You can keep the GMU enabled by default as well, it won't "probe" on > its own (the GPU's hw_init calls its registration) > > > + > > +&gpu { > > + status = "okay"; > > + > > + zap-shader { > > + memory-region = <&gpu_mem>; > > + firmware-name = "qcom/sc8280xp/qcdxkmsuc8280.mbn"; > > + }; > > +}; > > + > > +&gpucc { > > + status = "okay"; > > +}; > Clock controllers have no reason to be off by default. >
On sa8295p/sa8540p the GPU is powered differently, so if I leave it enabled by default I need to disable it (or configure it) for those, or they won't boot. Regards, Bjorn > Konrad > > + > > &mdss0 { > > status = "okay"; > > }; > > diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > index bdcba719fc38..5ef3f4c07d75 100644 > > --- a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > +++ b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > @@ -264,6 +264,11 @@ vreg_wwan: regulator-wwan { > > }; > > > > reserved-memory { > > + gpu_mem: gpu-mem@8bf00000 { > > + reg = <0 0x8bf00000 0 0x2000>; > > + no-map; > > + }; > > + > > linux,cma { > > compatible = "shared-dma-pool"; > > size = <0x0 0x8000000>; > > @@ -359,6 +364,10 @@ usb1_sbu_mux: endpoint { > > }; > > }; > > > > +&adreno_smmu { > > + status = "okay"; > > +}; > > + > > &apps_rsc { > > regulators-0 { > > compatible = "qcom,pm8350-rpmh-regulators"; > > @@ -518,6 +527,23 @@ &dispcc0 { > > status = "okay"; > > }; > > > > +&gmu { > > + status = "okay"; > > +}; > > + > > +&gpu { > > + status = "okay"; > > + > > + zap-shader { > > + memory-region = <&gpu_mem>; > > + firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn"; > > + }; > > +}; > > + > > +&gpucc { > > + status = "okay"; > > +}; > > + > > &mdss0 { > > status = "okay"; > > };