Add a U-Boot specific reserved-memory region holding the HDMI
framebuffer, and point the hdmi node at it through a "memory-region"
phandle.

Both are only needed by boards driving the HDMI output, so define them
in mt8390-genio-common-u-boot.dtsi (included by the Genio 510 and 700
EVKs) rather than in the SoC-wide mt8188-u-boot.dtsi. The region is
placed at 0x72000000 to stay clear of the reserved-memory pools
declared by the boards using this SoC (the Genio EVKs reserve the range
0x60000000-0x61100000 for the ADSP and AFE DMA pools) and of the kernel
load window (the Genio kernel FIT images load and decompress the kernel
at 0x64000000).

Its size, 32 MiB, is just enough for the largest mode the HDMI driver
accepts: 3840x2160 at 4 bytes per pixel is 31.6 MiB. Raising
MTK_HDMI_MAX_WIDTH or MTK_HDMI_MAX_HEIGHT means growing this region too.

Signed-off-by: Julien Stephan <[email protected]>
---
 arch/arm/dts/mt8370-genio-510-evk-u-boot.dtsi |  1 +
 arch/arm/dts/mt8390-genio-700-evk-u-boot.dtsi |  1 +
 arch/arm/dts/mt8390-genio-common-u-boot.dtsi  | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)

diff --git a/arch/arm/dts/mt8370-genio-510-evk-u-boot.dtsi 
b/arch/arm/dts/mt8370-genio-510-evk-u-boot.dtsi
index 586d15bf72e..dda05bcf7f4 100644
--- a/arch/arm/dts/mt8370-genio-510-evk-u-boot.dtsi
+++ b/arch/arm/dts/mt8370-genio-510-evk-u-boot.dtsi
@@ -5,3 +5,4 @@
  */
 
 #include "mt8188-u-boot.dtsi"
+#include "mt8390-genio-common-u-boot.dtsi"
diff --git a/arch/arm/dts/mt8390-genio-700-evk-u-boot.dtsi 
b/arch/arm/dts/mt8390-genio-700-evk-u-boot.dtsi
index 586d15bf72e..dda05bcf7f4 100644
--- a/arch/arm/dts/mt8390-genio-700-evk-u-boot.dtsi
+++ b/arch/arm/dts/mt8390-genio-700-evk-u-boot.dtsi
@@ -5,3 +5,4 @@
  */
 
 #include "mt8188-u-boot.dtsi"
+#include "mt8390-genio-common-u-boot.dtsi"
diff --git a/arch/arm/dts/mt8390-genio-common-u-boot.dtsi 
b/arch/arm/dts/mt8390-genio-common-u-boot.dtsi
new file mode 100644
index 00000000000..87953c30776
--- /dev/null
+++ b/arch/arm/dts/mt8390-genio-common-u-boot.dtsi
@@ -0,0 +1,26 @@
+// SPDX-License-Identifier: (GPL-2.0-only OR MIT)
+/*
+ * Copyright (c) 2026 BayLibre, SAS.
+ * Author: Julien Stephan <[email protected]>
+ */
+
+/ {
+       reserved-memory {
+               /*
+                * Keep this region clear of the board reserved-memory
+                * pools (the boards using this SoC reserve regions up to
+                * 0x61100000 for the adsp/afe DMA pools) and of the kernel
+                * load window: the kernel FIT images load and decompress
+                * the kernel at 0x64000000.
+                */
+               framebuffer: framebuffer@72000000 {
+                       reg = <0 0x72000000 0 0x02000000>;
+                       no-map;
+               };
+       };
+};
+
+&hdmi {
+       /* U-Boot specific: the framebuffer lives in this reserved region */
+       memory-region = <&framebuffer>;
+};

-- 
2.55.0

Reply via email to