[U-Boot] [Patch v2] omap3: overo: Select fdtfile for expansion board

Stefan Herbrechtsmeier stefan at herbrechtsmeier.net
Tue Jun 10 09:30:41 CEST 2014


Am 09.06.2014 22:47, 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           | 12 ++++++++++++
>   include/configs/omap3_overo.h | 10 +++++-----
>   2 files changed, 17 insertions(+), 5 deletions(-)
>
> diff --git a/board/overo/overo.c b/board/overo/overo.c
> index 62b50a8..02b606c 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",
> @@ -352,6 +358,7 @@ int misc_init_r(void)
>   		break;
>   	default:
>   		printf("Unrecognized expansion board 0x%08x\n", expansion_id);
> +		setenv("expansionname", "tobi");
Why you set the 'expansionname' to 'tobi' for unknown (maybe foreign) 
expansion boards?

>   		break;
>   	}
What happens if the eeprom is empty, no eeprom is available or the ETTUS 
expansion board is present? In this case the expansionname is empty.

>   
> @@ -360,6 +367,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