Adding a reserved memory region for the framebuffer memory (the splash memory region set up by the bootloader). It fixes a kernel panic (arm-smmu: Unhandled context fault at this particular memory region) reported on DB845c running v5.10.y. Cc: stable@xxxxxxxxxxxxxxx # v5.10+ Reviewed-by: Caleb Connolly <caleb.connolly@xxxxxxxxxx> Signed-off-by: Amit Pundir <amit.pundir@xxxxxxxxxx> --- v6: Collected review tag, updated commit message for the context and marked for stable kernel versions. v5: Re-sending with updated dt-bindings patch in mdss-common schema. v4: Re-sending this along with a new dt-bindings patch to document memory-region property in qcom,sdm845-mdss schema and keep dtbs_check happy. v3: Point this reserved region to MDSS. v2: Updated commit message. There was some dicussion on v1 but it didn't go anywhere, https://lore.kernel.org/linux-kernel/20230124182857.1524912-1-amit.pundir@xxxxxxxxxx/T/#u. The general consensus is that this memory should be freed and be made resuable but that (releasing this piece of memory) has been tried before and it is not trivial to return the reserved memory node to the system RAM pool in this case. arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sdm845-db845c.dts b/arch/arm64/boot/dts/qcom/sdm845-db845c.dts index d6b464cb61d6..f546f6f57c1e 100644 --- a/arch/arm64/boot/dts/qcom/sdm845-db845c.dts +++ b/arch/arm64/boot/dts/qcom/sdm845-db845c.dts @@ -101,6 +101,14 @@ hdmi_con: endpoint { }; }; + reserved-memory { + /* Cont splash region set up by the bootloader */ + cont_splash_mem: framebuffer@9d400000 { + reg = <0x0 0x9d400000 0x0 0x2400000>; + no-map; + }; + }; + lt9611_1v8: lt9611-vdd18-regulator { compatible = "regulator-fixed"; regulator-name = "LT9611_1V8"; @@ -506,6 +514,7 @@ &i2c14 { }; &mdss { + memory-region = <&cont_splash_mem>; status = "okay"; }; -- 2.25.1