diff mbox series

[16/16] board: ten64: strip extra u-boot compatibles from FDT

Message ID 20230721043931.14188-17-matt@traverse.com.au
State Accepted
Commit 1c35cc85ad9ab434b21be968989aba091f718fcb
Delegated to: Tom Rini
Headers show
Series Ten64 updates 2023-07 | expand

Commit Message

Mathew McBride July 21, 2023, 4:39 a.m. UTC
The u-boot version of the LS1088A device tree has
an extra compatible (simple-mfd) added to &fsl_mc
to facilitate usage with U-Boot's device model.

Unfortunately FreeBSD will only match the single
"fsl,qoriq-mc" exactly when the node is a "bus"
object, so we need to strip out the extra compatible
before presenting it to the operating system.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
---
 board/traverse/ten64/ten64.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Peng Fan (OSS) July 21, 2023, 8:09 a.m. UTC | #1
On 7/21/2023 12:39 PM, Mathew McBride wrote:
> The u-boot version of the LS1088A device tree has
> an extra compatible (simple-mfd) added to &fsl_mc
> to facilitate usage with U-Boot's device model.
> 
> Unfortunately FreeBSD will only match the single
> "fsl,qoriq-mc" exactly when the node is a "bus"
> object, so we need to strip out the extra compatible
> before presenting it to the operating system.
> 
> Signed-off-by: Mathew McBride<matt@traverse.com.au>

Reviewed-by: Peng Fan <peng.fan@nxp.com>
diff mbox series

Patch

diff --git a/board/traverse/ten64/ten64.c b/board/traverse/ten64/ten64.c
index 3cb8bad855..52daae6e24 100644
--- a/board/traverse/ten64/ten64.c
+++ b/board/traverse/ten64/ten64.c
@@ -174,6 +174,12 @@  void fdt_fixup_board_enet(void *fdt)
 		return;
 	}
 
+	/* In the U-Boot FDT, a 'simple-mfd' compatible is added.
+	 * Remove this as FreeBSD will only match "fsl,qoriq-mc"
+	 * exactly on the DPAA2 bus/MC node.
+	 */
+	fdt_setprop(fdt, offset, "compatible", "fsl,qoriq-mc", 12);
+
 	if (get_mc_boot_status() == 0 &&
 	    (is_lazy_dpl_addr_valid() || get_dpl_apply_status() == 0))
 		fdt_status_okay(fdt, offset);