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.
