[PATCH v4 0/2] Enable dynamic MMU page table sizing

Michal Simek michal.simek at amd.com
Fri Dec 19 10:57:44 CET 2025



On 12/19/25 09:36, Michal Simek wrote:
> 
> 
> On 12/12/25 11:26, Pranav Sanwal wrote:
>> This patch series fixes a boot sequence issue in AMD Versal Gen 2,
>> where DRAM banks are populated too late during MMU initialization.
>> The fdtdec-based approach doesn't provide memory information
>> early enough.
>>
>> Changes in v4:
>> -Better debug logs alignment.
>>
>> Changes in v3:
>> -Fix DRAM base detection boundary condition (text >= bank_phys)
>>
>> Changes in v2:
>> -Address boundary case where U-Boot is loaded at the
>>   beginning of a memory region.
>> -Export get_next_memory_node() helper from fdtdec for reuse
>> -Split previous monolithic patch into two focused patches
>> -Add comprehensive documentation for new functions
>> -Include proper header dependencies (dm/ofnode_decl.h)
>>
>> Pranav Sanwal (2):
>>    fdtdec: Add declaration for get_next_memory_node() helper
>>    arm64: versal2: Populate DRAM banks before page table size calculation
>>
>>   arch/arm/mach-versal2/cpu.c                   | 57 ++++++++++++---
>>   .../arm/mach-versal2/include/mach/sys_proto.h |  4 +-
>>   board/amd/versal2/board.c                     | 70 +++++++++++++++----
>>   include/fdtdec.h                              | 23 ++++++
>>   4 files changed, 130 insertions(+), 24 deletions(-)
>>
> 
> Applied.
> M

Actually I have to remove it from my queue because there is compilation failure 
on xenguest_arm64.

+board/xen/xenguest_arm64/xenguest_arm64.c:63:12: error: conflicting types for 
'get_next_memory_node'; have 'int(const void *, int)'
+   63 | static int get_next_memory_node(const void *blob, int mem)
+      |            ^~~~~~~~~~~~~~~~~~~~
+In file included from include/dm/ofnode.h:11,
+                 from include/dm/device.h:13,
+                 from include/dm.h:13,
+                 from board/xen/xenguest_arm64/xenguest_arm64.c:12:
+include/fdtdec.h:222:8: note: previous declaration of 'get_next_memory_node' 
with type 'ofnode(ofnode)' {aka 'union ofnode_union(union ofnode_union)'}
+  222 | ofnode get_next_memory_node(ofnode mem);
+      |        ^~~~~~~~~~~~~~~~~~~~
+make[2]: *** [scripts/Makefile.build:297: 
board/xen/xenguest_arm64/xenguest_arm64.o] Error 1
+make[1]: *** [Makefile:2133: board/xen/xenguest_arm64] Error 2
Please fix it and send v5.

Thanks,
Michal



More information about the U-Boot mailing list