From 1c35cc85ad9ab434b21be968989aba091f718fcb Mon Sep 17 00:00:00 2001 From: Mathew McBride Date: Fri, 21 Jul 2023 04:39:31 +0000 Subject: [PATCH] board: ten64: strip extra u-boot compatibles from FDT 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 Reviewed-by: Peng Fan --- board/traverse/ten64/ten64.c | 6 ++++++ 1 file changed, 6 insertions(+) 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); -- 2.39.5