Hi Marek On 7/31/20 1:35 AM, Marek Vasut wrote: > Include both PDK2 and DRC02 DTs in the DHCOM fitImage .its and implement > support in SPL to select the correct configuration entry for U-Boot by > using the machine compatible string from SPL DT. > > Signed-off-by: Marek Vasut <[email protected]> > Cc: Patrice Chotard <[email protected]> > Cc: Patrick Delaunay <[email protected]> > --- > board/dhelectronics/dh_stm32mp1/board.c | 8 ++++++-- > .../dhelectronics/dh_stm32mp1/u-boot-dhcom.its | 18 +++++++++++++++++- > .../dhelectronics/dh_stm32mp1/u-boot-dhcor.its | 3 ++- > configs/stm32mp15_dhcom_basic_defconfig | 1 + > 4 files changed, 26 insertions(+), 4 deletions(-) > > diff --git a/board/dhelectronics/dh_stm32mp1/board.c > b/board/dhelectronics/dh_stm32mp1/board.c > index 17018716fd..c9abe3cc6d 100644 > --- a/board/dhelectronics/dh_stm32mp1/board.c > +++ b/board/dhelectronics/dh_stm32mp1/board.c > @@ -237,9 +237,13 @@ int board_early_init_f(void) > #ifdef CONFIG_SPL_LOAD_FIT > int board_fit_config_name_match(const char *name) > { > - char test[20]; > + const char *compat; > + char test[128]; > > - snprintf(test, sizeof(test), "somrev%d_boardrev%d", somcode, brdcode); > + compat = fdt_getprop(gd->fdt_blob, 0, "compatible", NULL); > + > + snprintf(test, sizeof(test), "%s_somrev%d_boardrev%d", > + compat, somcode, brdcode); > > if (!strcmp(name, test)) > return 0; > diff --git a/board/dhelectronics/dh_stm32mp1/u-boot-dhcom.its > b/board/dhelectronics/dh_stm32mp1/u-boot-dhcom.its > index 2776c41af1..d8a1a28a11 100644 > --- a/board/dhelectronics/dh_stm32mp1/u-boot-dhcom.its > +++ b/board/dhelectronics/dh_stm32mp1/u-boot-dhcom.its > @@ -23,17 +23,33 @@ > arch = "arm"; > compression = "none"; > }; > + > + fdt-2 { > + description = ".dtb"; > + data = > /incbin/("arch/arm/dts/stm32mp15xx-dhcom-drc02.dtb"); > + type = "flat_dt"; > + arch = "arm"; > + compression = "none"; > + }; > }; > > configurations { > default = "config-1"; > > config-1 { > - description = "somrev0_boardrev0"; /* SoM+board model */ > + /* DT+SoM+board model */ > + description = > "dh,stm32mp15xx-dhcom-pdk2_somrev0_boardrev0"; > loadables = "uboot"; > fdt = "fdt-1"; > }; > > + config-2 { > + /* DT+SoM+board model */ > + description = > "dh,stm32mp15xx-dhcom-drc02_somrev0_boardrev0"; > + loadables = "uboot"; > + fdt = "fdt-2"; > + }; > + > /* Add 587-100..587-400 with fdt-2..fdt-4 here */ > }; > }; > diff --git a/board/dhelectronics/dh_stm32mp1/u-boot-dhcor.its > b/board/dhelectronics/dh_stm32mp1/u-boot-dhcor.its > index 8844508f1a..7419684f55 100644 > --- a/board/dhelectronics/dh_stm32mp1/u-boot-dhcor.its > +++ b/board/dhelectronics/dh_stm32mp1/u-boot-dhcor.its > @@ -29,7 +29,8 @@ > default = "config-1"; > > config-1 { > - description = "somrev0_boardrev1"; /* SoM+board model */ > + /* DT+SoM+board model */ > + description = > "arrow,stm32mp15xx-avenger96_somrev0_boardrev1"; > loadables = "uboot"; > fdt = "fdt-1"; > }; > diff --git a/configs/stm32mp15_dhcom_basic_defconfig > b/configs/stm32mp15_dhcom_basic_defconfig > index dc85625a8b..c70414e23b 100644 > --- a/configs/stm32mp15_dhcom_basic_defconfig > +++ b/configs/stm32mp15_dhcom_basic_defconfig > @@ -57,6 +57,7 @@ CONFIG_CMD_REGULATOR=y > CONFIG_CMD_EXT4_WRITE=y > CONFIG_CMD_MTDPARTS=y > # CONFIG_SPL_DOS_PARTITION is not set > +CONFIG_OF_LIST="stm32mp15xx-dhcom-pdk2 stm32mp15xx-dhcom-drc02" > CONFIG_OF_SPL_REMOVE_PROPS="interrupts interrupt-names interrupts-extended > interrupt-controller \\\#interrupt-cells interrupt-parent dmas dma-names > assigned-clocks assigned-clock-rates assigned-clock-parents hwlocks" > CONFIG_ENV_IS_IN_SPI_FLASH=y > CONFIG_USE_ENV_SPI_BUS=y
Reviewed-by: Patrice Chotard <[email protected]> Thanks Patrice

