On Fri, Jun 5, 2026 at 4:30 PM David Lechner <[email protected]> wrote: > > On Fri, Jun 5, 2026 at 3:07 PM <[email protected]> wrote: > > > On Tue, Jun 2, 2026 at 6:24 PM Rudy Andram <[email protected]> wrote: > > > > > > > > MT7988 detects the full installed DRAM in dram_init(), but after > > > > commit bddd6bbef3dc ("arm: mediatek: mt7988: drop > > > > dram_init_banksize()") it fell back to the generic dram_init_banksize() > > > > implementation. > > > > > > > > That generic path populates bd->bi_dram[0].size with > > > > get_effective_memsize(), which is capped by CFG_MAX_MEM_MAPPED. On > > > > MT7988 this limits the exported DRAM bank to 3 GiB even when 8 GiB is > > > > installed. > > > > > > Can we just remove the #define CFG_MAX_MEM_MAPPED (and the header file > > > that contains it)? Or is it used somewhere else? > > > > > > > Not the header file as TARGET_MT7988 sets SYS_CONFIG_NAME="mt7988" in > > arch/arm/mach-mediatek/Kconfig > > We could drop that config too since the header will be empty. > > > > > In the mt7988 I don't see CFG_MAX_MEM_MAPPED used elsewhere than just in > > common/memsize.c where it limits get_effective_memsize() > > > > Unsetting/removing CFG_MAX_MEM_MAPPED would take u-boot above 4gb... Some > > MediaTek ARM64 ports may keep U-Boot below 4 GiB because peripherals such > > as MMC need DMA buffers below 4 GiB ... so, it may work on my setup but not > > others. Also, not an expert on u-boot I would suggest for others to > > comment/review > > > > What I've done on the other MediaTek platforms for now is add this to > init.c to take care of the 4GB DMA limit. > > phys_size_t get_effective_memsize(void) > { > /* > * Limit gd->ram_top not exceeding SZ_4G. Because some peripherals like > * MMC requires DMA buffer allocated below SZ_4G. > */ > return min(SZ_4G - gd->ram_base, gd->ram_size); > }
Meh... I've just realized that this probably doesn't fix the issue as it does basically the same thing as CFG_MAX_MEM_MAPPED. I will have to come back to this next week when I have more time. > > There has been some ongoing discussion of a better way to handle this > in general though, the last few weeks. I need to check the mailing > list to see if any progress was made since then. > > If there isn't something yet, I would still propose to drop > CFG_MAX_MEM_MAPPED and add this function so that everything is the > same.

