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
