git: b52dceb83811 - main - powerpc: Bump maximum number of FDT reserved mem entries

From: Justin Hibbits <jhibbits_at_FreeBSD.org>
Date: Thu, 29 Feb 2024 03:04:34 UTC
The branch main has been updated by jhibbits:

URL: https://cgit.FreeBSD.org/src/commit/?id=b52dceb838116391996909ff50b49f950ee01f48

commit b52dceb838116391996909ff50b49f950ee01f48
Author:     Shawn Anastasio <sanastasio@raptorengineering.com>
AuthorDate: 2024-02-27 19:40:50 +0000
Commit:     Justin Hibbits <jhibbits@FreeBSD.org>
CommitDate: 2024-02-29 03:01:15 +0000

    powerpc: Bump maximum number of FDT reserved mem entries
    
    Newer firmware on POWER systems, including v2.10 of the Talos II and
    Blackbird firmware can end up reserving more than 32 memory regions in
    the device tree, which exceeded an assumption made by ofw_machdep.c's
    excise_fdt_reserved(). Bump the maximum number of FDT reservations to
    the next power of 2 in order to fix booting on newer firmware.
    
    PR:             277097
    Reviewed by:    jhibbits
    Differential Revision: https://reviews.freebsd.org/D44015
---
 sys/powerpc/ofw/ofw_machdep.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/powerpc/ofw/ofw_machdep.c b/sys/powerpc/ofw/ofw_machdep.c
index f850efa6c713..6d7b0b01fc84 100644
--- a/sys/powerpc/ofw/ofw_machdep.c
+++ b/sys/powerpc/ofw/ofw_machdep.c
@@ -426,7 +426,7 @@ excise_msi_region(struct mem_region *avail, int asz)
 static int
 excise_fdt_reserved(struct mem_region *avail, int asz)
 {
-	struct mem_region fdtmap[32];
+	struct mem_region fdtmap[64];
 	ssize_t fdtmapsize;
 	phandle_t chosen;
 	int j, fdtentries;