On 9/4/26 8:50 AM, Julien Stephan wrote:
> 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>;
> +};
> 

This isn't part of the upstream binding. I think we should be able to just
drop the reserved-memory node and let U-Boot allocate it. We aren't handing
it off to Linux or anything like that.

Reply via email to