
As XEA board uses imx287, which has some constrains on SPL (u-boot.sb) size - it must be less than ~55 KiB, multiple boards versions are included in u-boot proper's FIT image.
The decision of using proper configuration is based on information passed from SPL (u-boot.sb) in OCRAM dedicated location (0xE000 - 2).
This board also uses falcon boot for production setup, so the proper dtb is flashed during production (also based on GPIO values describing HW ID).
Signed-off-by: Lukasz Majewski lukma@denx.de ---
board/liebherr/xea/xea.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)
diff --git a/board/liebherr/xea/xea.c b/board/liebherr/xea/xea.c index d9cf27c81b..615d266b8f 100644 --- a/board/liebherr/xea/xea.c +++ b/board/liebherr/xea/xea.c @@ -287,6 +287,21 @@ int dram_init(void) return mxs_dram_init(); }
+#if defined(CONFIG_MULTI_DTB_FIT) +int board_fit_config_name_match(const char *name) +{ + u8 rev_id = get_som_rev(); + char board[11]; + + sprintf(board, "imx28-xea-%d", rev_id); + + if (!strncmp(name, board, sizeof(board))) + return 0; + + return -EINVAL; +} +#endif + #ifdef CONFIG_OF_BOARD_SETUP static int fdt_fixup_l2switch(void *blob) {