[U-Boot] [Patch v3] omap3: overo: Select fdtfile for expansion board
Stefan Herbrechtsmeier
stefan at herbrechtsmeier.net
Tue Jun 10 21:29:00 CEST 2014
Am 10.06.2014 21:02, schrieb Ash Charles:
> The u-boot Overo board actually supports both Overo (OMAP35xx)
> and Overo Storm (AM/DM37xx) COMs with a range of different expansion
> boards. This provides a mechanism to select the an appropriate device
> tree file based on the processor version and, if available, the
> expansion board ID written on the expansion board EEPROM. To match the
> 3.15+ kernels, fdtfile names have this format:
> "omap3-overo[-storm]-<expansion board name>.dtb"
>
> By default, we use "omap3-overo-storm-tobi.dtb".
>
> Signed-off-by: Ash Charles <ashcharles at gmail.com>
>
> Conflicts:
> include/configs/omap3_overo.h
> ---
> board/overo/overo.c | 14 ++++++++++++++
> include/configs/omap3_overo.h | 10 +++++-----
> 2 files changed, 19 insertions(+), 5 deletions(-)
>
> diff --git a/board/overo/overo.c b/board/overo/overo.c
> index 62b50a8..13220c5 100644
> --- a/board/overo/overo.c
> +++ b/board/overo/overo.c
> @@ -267,12 +267,14 @@ int misc_init_r(void)
> expansion_config.revision,
> expansion_config.fab_revision);
> setenv("defaultdisplay", "dvi");
> + setenv("expansionname", "summit");
> break;
> case GUMSTIX_TOBI:
> printf("Recognized Tobi expansion board (rev %d %s)\n",
> expansion_config.revision,
> expansion_config.fab_revision);
> setenv("defaultdisplay", "dvi");
> + setenv("expansionname", "tobi");
> break;
> case GUMSTIX_TOBI_DUO:
> printf("Recognized Tobi Duo expansion board (rev %d %s)\n",
> @@ -293,12 +295,14 @@ int misc_init_r(void)
> expansion_config.revision,
> expansion_config.fab_revision);
> setenv("defaultdisplay", "lcd43");
> + setenv("expansionname", "palo43");
> break;
> case GUMSTIX_CHESTNUT43:
> printf("Recognized Chestnut43 expansion board (rev %d %s)\n",
> expansion_config.revision,
> expansion_config.fab_revision);
> setenv("defaultdisplay", "lcd43");
> + setenv("expansionname", "chestnut43");
> break;
> case GUMSTIX_PINTO:
> printf("Recognized Pinto expansion board (rev %d %s)\n",
> @@ -310,6 +314,7 @@ int misc_init_r(void)
> expansion_config.revision,
> expansion_config.fab_revision);
> setenv("defaultdisplay", "lcd43");
> + setenv("expansionname", "gallop43");
> break;
> case GUMSTIX_ALTO35:
> printf("Recognized Alto35 expansion board (rev %d %s)\n",
> @@ -317,6 +322,7 @@ int misc_init_r(void)
> expansion_config.fab_revision);
> MUX_ALTO35();
> setenv("defaultdisplay", "lcd35");
> + setenv("expansionname", "alto35");
> break;
> case GUMSTIX_STAGECOACH:
> printf("Recognized Stagecoach expansion board (rev %d %s)\n",
> @@ -349,8 +355,11 @@ int misc_init_r(void)
> break;
> case GUMSTIX_NO_EEPROM:
> puts("No EEPROM on expansion board\n");
> + setenv("expansionname", "tobi");
> break;
> default:
> + if (expansion_id == 0x0)
> + setenv("expansionname", "tobi");
You should add an additional case (0x0) above GUMSTIX_NO_EEPROM but an
un-programmed eeprom returns GUMSTIX_NO_EEPROM (0xffffffff).
> printf("Unrecognized expansion board 0x%08x\n", expansion_id);
> break;
> }
> @@ -360,6 +369,11 @@ int misc_init_r(void)
>
> dieid_num_r();
>
> + if (get_cpu_family() == CPU_OMAP34XX)
> + setenv("boardname", "overo");
> + else
> + setenv("boardname", "overo-storm");
> +
> return 0;
> }
>
> diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h
> index 1a13633..f7483a0 100644
> --- a/include/configs/omap3_overo.h
> +++ b/include/configs/omap3_overo.h
> @@ -83,7 +83,6 @@
> /* Environment information */
> #define CONFIG_EXTRA_ENV_SETTINGS \
> DEFAULT_LINUX_BOOT_ENV \
> - "fdtfile=overo.dtb\0" \
> "bootdir=/boot\0" \
> "bootfile=zImage\0" \
> "usbtty=cdc_acm\0" \
> @@ -152,10 +151,11 @@
> "run mmcboot;" \
> "fi;" \
> "if run loadzimage; then " \
> - "if test -n $fdtfile; then " \
> - "if run loadfdt; then " \
> - "run mmcbootfdt;" \
> - "fi;" \
> + "if test $fdtfile; then " \
> + "setenv fdtfile omap3-${boardname}-${expansionname}.dtb;" \
> + "fi;" \
> + "if run loadfdt; then " \
> + "run mmcbootfdt;" \
> "fi;" \
> "fi;" \
> "fi;" \
More information about the U-Boot
mailing list