On 9/16/21 3:05 PM, Amit Pundir wrote: > Upstream commit 2e01e0c21459 ("arm64: dts: qcom: sdm850-yoga: > Enable IPA") shuffled reserved memory regions in sdm845.dtsi > to make firmware loading succeed and enable the ipa device on > sdm845-yoga but it broke the other common users of those > memory regions like Xiaomi Pocophone F1. > > So this patch effectively revert those upstream commit changes > and move all the relevant changes to sdm850-lenovo-yoga-c630.dts > instead. > > Fixes: 2e01e0c21459 ("arm64: dts: qcom: sdm850-yoga: Enable IPA") > Signed-off-by: Amit Pundir <amit.pundir@xxxxxxxxxx> > --- > Smoke tested on PocoF1 and not on Yoga-C630. > > arch/arm64/boot/dts/qcom/sdm845.dtsi | 21 +++++++----- > .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 34 +++++++++++++++++++ > 2 files changed, 47 insertions(+), 8 deletions(-) > > diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi > index 6d7172e6f4c3..b3b911926184 100644 > --- a/arch/arm64/boot/dts/qcom/sdm845.dtsi > +++ b/arch/arm64/boot/dts/qcom/sdm845.dtsi > @@ -128,23 +128,28 @@ camera_mem: memory@8bf00000 { > no-map; > }; > > - wlan_msa_mem: memory@8c400000 { > - reg = <0 0x8c400000 0 0x100000>; > + ipa_fw_mem: memory@8c400000 { > + reg = <0 0x8c400000 0 0x10000>; > no-map; > }; > > - gpu_mem: memory@8c515000 { > - reg = <0 0x8c515000 0 0x2000>; > + ipa_gsi_mem: memory@8c410000 { > + reg = <0 0x8c410000 0 0x5000>; > no-map; > }; > > - ipa_fw_mem: memory@8c517000 { > - reg = <0 0x8c517000 0 0x5a000>; > + gpu_mem: memory@8c415000 { > + reg = <0 0x8c415000 0 0x2000>; > no-map; > }; > > - adsp_mem: memory@8c600000 { > - reg = <0 0x8c600000 0 0x1a00000>; > + adsp_mem: memory@8c500000 { > + reg = <0 0x8c500000 0 0x1a00000>; > + no-map; > + }; > + > + wlan_msa_mem: memory@8df00000 { > + reg = <0 0x8df00000 0 0x100000>; > no-map; > }; > > diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts > index 385e5029437d..2ba23aa582a1 100644 > --- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts > +++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts > @@ -16,6 +16,17 @@ > #include "sdm850.dtsi" > #include "pm8998.dtsi" > > +/* > + * Update following upstream (sdm845.dtsi) reserved > + * memory mappings for firmware loading to succeed > + * and enable the IPA device. > + */ > +/delete-node/ &ipa_fw_mem; > +/delete-node/ &ipa_gsi_mem; > +/delete-node/ &gpu_mem; > +/delete-node/ &adsp_mem; > +/delete-node/ &wlan_msa_mem; > + > / { > model = "Lenovo Yoga C630"; > compatible = "lenovo,yoga-c630", "qcom,sdm845"; > @@ -58,6 +69,29 @@ panel_in_edp: endpoint { > }; > }; > > + /* Reserved memory changes for IPA */ > + reserved-memory { > + wlan_msa_mem: memory@8c400000 { > + reg = <0 0x8c400000 0 0x100000>; > + no-map; > + }; > + > + gpu_mem: memory@8c515000 { > + reg = <0 0x8c515000 0 0x2000>; > + no-map; > + }; > + > + ipa_fw_mem: memory@8c517000 { > + reg = <0 0x8c517000 0 0x5a000>; > + no-map; > + }; > + > + adsp_mem: memory@8c600000 { > + reg = <0 0x8c600000 0 0x1a00000>; > + no-map; > + }; > + }; > + > sn65dsi86_refclk: sn65dsi86-refclk { > compatible = "fixed-clock"; > #clock-cells = <0>; Tested on the Lenovo Yoga C630 I have. I get the ipa modem device, so it looks like it does the correct thing. I don't have a SIM card to test actual connectivity though. Tested-By: Steev Klimaszewski <steev@xxxxxxxx>