[U-Boot] [PATCH 1/4] omap3_logic: Rework MACH_TYPE and fdtfile logic

Adam Ford aford173 at gmail.com
Wed Jan 11 14:38:47 CET 2017


On Tue, Jan 10, 2017 at 4:22 PM, Tom Rini <trini at 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 <aford173 at gmail.com>
> Cc: Adam Ford <aford173 at gmail.com>
> Signed-off-by: Tom Rini <trini at 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
>


More information about the U-Boot mailing list