git: 441d0bf214d2 - stable/13 - Only add gicv3 fdt children with a compatible property

From: Andrew Turner <andrew_at_FreeBSD.org>
Date: Mon, 22 Aug 2022 09:12:14 UTC
The branch stable/13 has been updated by andrew:

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

commit 441d0bf214d228c5d41937ee24f8b3481f9caf20
Author:     Andrew Turner <andrew@FreeBSD.org>
AuthorDate: 2022-07-06 17:04:53 +0000
Commit:     Andrew Turner <andrew@FreeBSD.org>
CommitDate: 2022-08-22 08:41:41 +0000

    Only add gicv3 fdt children with a compatible property
    
    Not all gicv3 fdt children have a compatible property. Those that don't
    are configuration data rather than something that should have a driver
    attach.
    
    Sponsored by:   The FreeBSD Foundation
    
    (cherry picked from commit 92f692fd249e64ed4b25199310fafe41e2d9c74d)
---
 sys/arm64/arm64/gic_v3_fdt.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/sys/arm64/arm64/gic_v3_fdt.c b/sys/arm64/arm64/gic_v3_fdt.c
index d2c0611c9167..6aa8018de56e 100644
--- a/sys/arm64/arm64/gic_v3_fdt.c
+++ b/sys/arm64/arm64/gic_v3_fdt.c
@@ -301,6 +301,14 @@ gic_v3_ofw_bus_attach(device_t dev)
 		    sizeof(size_cells));
 		/* Iterate through all GIC subordinates */
 		for (node = OF_child(parent); node > 0; node = OF_peer(node)) {
+			/*
+			 * Ignore children that lack a compatible property.
+			 * Some of them may be for configuration, for example
+			 * ppi-partitions.
+			 */
+			if (!OF_hasprop(node, "compatible"))
+				continue;
+
 			/* Allocate and populate devinfo. */
 			di = malloc(sizeof(*di), M_GIC_V3, M_WAITOK | M_ZERO);