On Tue, Jan 10, 2017 at 4:22 PM, Tom Rini <tr...@konsulko.com> wrote: > The MACH_TYPE values for the omap37xx based platforms are no longer > officially valid, so we must not set and pass them. In order to not > reference them but still be able to set the default fdtfile based on the > board detection logic we need to combine the two steps into one.
Look good. > Acked-by: Adam Ford <aford...@gmail.com> > Cc: Adam Ford <aford...@gmail.com> > Signed-off-by: Tom Rini <tr...@konsulko.com> > --- > board/logicpd/omap3som/omap3logic.c | 54 > ++++++++++++++----------------------- > 1 file changed, 20 insertions(+), 34 deletions(-) > > diff --git a/board/logicpd/omap3som/omap3logic.c > b/board/logicpd/omap3som/omap3logic.c > index de6a06021c2c..21b3fdcf49cf 100644 > --- a/board/logicpd/omap3som/omap3logic.c > +++ b/board/logicpd/omap3som/omap3logic.c > @@ -60,25 +60,28 @@ U_BOOT_DEVICE(omap3logic_uart) = { > static struct board_id { > char *name; > int machine_id; > + char *fdtfile; > } boards[2][2] = { > { > { > .name = "OMAP35xx SOM LV", > .machine_id = MACH_TYPE_OMAP3530_LV_SOM, > + .fdtfile = "logicpd-som-lv-35xx-devkit.dtb", > }, > { > .name = "OMAP35xx Torpedo", > .machine_id = MACH_TYPE_OMAP3_TORPEDO, > + .fdtfile = "logicpd-torpedo-35xx-devkit.dtb", > }, > }, > { > { > .name = "DM37xx SOM LV", > - .machine_id = MACH_TYPE_DM3730_SOM_LV, > + .fdtfile = "logicpd-som-lv-37xx-devkit.dtb", > }, > { > .name = "DM37xx Torpedo", > - .machine_id = MACH_TYPE_DM3730_TORPEDO, > + .fdtfile = "logicpd-torpedo-37xx-devkit.dtb", > }, > }, > }; > @@ -165,14 +168,20 @@ int misc_init_r(void) > */ > int board_init(void) > { > - struct board_id *board; > - unsigned int val; > - > gpmc_init(); /* in SRAM or SDRAM, finish GPMC */ > > /* boot param addr */ > gd->bd->bi_boot_params = (OMAP34XX_SDRC_CS0 + 0x100); > > + return 0; > +} > + > +#ifdef CONFIG_BOARD_LATE_INIT > +int board_late_init(void) > +{ > + struct board_id *board; > + unsigned int val; > + > /* > * To identify between a SOM LV and Torpedo module, > * a pulldown resistor is on hsusb0_data5 for the SOM LV module. > @@ -207,39 +216,16 @@ int board_init(void) > printf("Board: %s\n", board->name); > > /* Set the machine_id passed to Linux */ > - gd->bd->bi_arch_number = board->machine_id; > + if (board->machine_id) > + gd->bd->bi_arch_number = board->machine_id; > + > + /* If the user has not set fdtimage, set the default */ > + if (!getenv("fdtimage")) > + setenv("fdtimage", board->fdtfile); > } > > /* restore hsusb0_data5 pin as hsusb0_data5 */ > MUX_VAL(CP(HSUSB0_DATA5), (IEN | PTD | DIS | M0)); > - > - return 0; > -} > - > -#ifdef CONFIG_BOARD_LATE_INIT > -int board_late_init(void) > -{ > - /* If we do not have an fdtimage, let's autodetect it*/ > - if (getenv("fdtimage")) > - return 0; > - > - switch (gd->bd->bi_arch_number) { > - case MACH_TYPE_DM3730_TORPEDO: > - setenv("fdtimage", "logicpd-torpedo-37xx-devkit.dtb"); > - break; > - case MACH_TYPE_DM3730_SOM_LV: > - setenv("fdtimage", "logicpd-som-lv-37xx-devkit.dtb"); > - break; > - case MACH_TYPE_OMAP3_TORPEDO: > - setenv("fdtimage", "logicpd-torpedo-35xx-devkit.dtb"); > - break; > - case MACH_TYPE_OMAP3530_LV_SOM: > - setenv("fdtimage", "logicpd-som-lv-35xx-devkit.dtb"); > - break; > - default: > - /* unknown machine type */ > - break; > - } > return 0; > } > #endif > -- > 1.9.1 > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot