omap3: overo: Select fdtfile for expansion board
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@gmail.com> Conflicts: include/configs/omap3_overo.h
This commit is contained in:
parent
7a4861fad0
commit
12cc543767
|
@ -267,12 +267,14 @@ int misc_init_r(void)
|
||||||
expansion_config.revision,
|
expansion_config.revision,
|
||||||
expansion_config.fab_revision);
|
expansion_config.fab_revision);
|
||||||
setenv("defaultdisplay", "dvi");
|
setenv("defaultdisplay", "dvi");
|
||||||
|
setenv("expansionname", "summit");
|
||||||
break;
|
break;
|
||||||
case GUMSTIX_TOBI:
|
case GUMSTIX_TOBI:
|
||||||
printf("Recognized Tobi expansion board (rev %d %s)\n",
|
printf("Recognized Tobi expansion board (rev %d %s)\n",
|
||||||
expansion_config.revision,
|
expansion_config.revision,
|
||||||
expansion_config.fab_revision);
|
expansion_config.fab_revision);
|
||||||
setenv("defaultdisplay", "dvi");
|
setenv("defaultdisplay", "dvi");
|
||||||
|
setenv("expansionname", "tobi");
|
||||||
break;
|
break;
|
||||||
case GUMSTIX_TOBI_DUO:
|
case GUMSTIX_TOBI_DUO:
|
||||||
printf("Recognized Tobi Duo expansion board (rev %d %s)\n",
|
printf("Recognized Tobi Duo expansion board (rev %d %s)\n",
|
||||||
|
@ -293,12 +295,14 @@ int misc_init_r(void)
|
||||||
expansion_config.revision,
|
expansion_config.revision,
|
||||||
expansion_config.fab_revision);
|
expansion_config.fab_revision);
|
||||||
setenv("defaultdisplay", "lcd43");
|
setenv("defaultdisplay", "lcd43");
|
||||||
|
setenv("expansionname", "palo43");
|
||||||
break;
|
break;
|
||||||
case GUMSTIX_CHESTNUT43:
|
case GUMSTIX_CHESTNUT43:
|
||||||
printf("Recognized Chestnut43 expansion board (rev %d %s)\n",
|
printf("Recognized Chestnut43 expansion board (rev %d %s)\n",
|
||||||
expansion_config.revision,
|
expansion_config.revision,
|
||||||
expansion_config.fab_revision);
|
expansion_config.fab_revision);
|
||||||
setenv("defaultdisplay", "lcd43");
|
setenv("defaultdisplay", "lcd43");
|
||||||
|
setenv("expansionname", "chestnut43");
|
||||||
break;
|
break;
|
||||||
case GUMSTIX_PINTO:
|
case GUMSTIX_PINTO:
|
||||||
printf("Recognized Pinto expansion board (rev %d %s)\n",
|
printf("Recognized Pinto expansion board (rev %d %s)\n",
|
||||||
|
@ -310,6 +314,7 @@ int misc_init_r(void)
|
||||||
expansion_config.revision,
|
expansion_config.revision,
|
||||||
expansion_config.fab_revision);
|
expansion_config.fab_revision);
|
||||||
setenv("defaultdisplay", "lcd43");
|
setenv("defaultdisplay", "lcd43");
|
||||||
|
setenv("expansionname", "gallop43");
|
||||||
break;
|
break;
|
||||||
case GUMSTIX_ALTO35:
|
case GUMSTIX_ALTO35:
|
||||||
printf("Recognized Alto35 expansion board (rev %d %s)\n",
|
printf("Recognized Alto35 expansion board (rev %d %s)\n",
|
||||||
|
@ -317,6 +322,7 @@ int misc_init_r(void)
|
||||||
expansion_config.fab_revision);
|
expansion_config.fab_revision);
|
||||||
MUX_ALTO35();
|
MUX_ALTO35();
|
||||||
setenv("defaultdisplay", "lcd35");
|
setenv("defaultdisplay", "lcd35");
|
||||||
|
setenv("expansionname", "alto35");
|
||||||
break;
|
break;
|
||||||
case GUMSTIX_STAGECOACH:
|
case GUMSTIX_STAGECOACH:
|
||||||
printf("Recognized Stagecoach expansion board (rev %d %s)\n",
|
printf("Recognized Stagecoach expansion board (rev %d %s)\n",
|
||||||
|
@ -349,8 +355,11 @@ int misc_init_r(void)
|
||||||
break;
|
break;
|
||||||
case GUMSTIX_NO_EEPROM:
|
case GUMSTIX_NO_EEPROM:
|
||||||
puts("No EEPROM on expansion board\n");
|
puts("No EEPROM on expansion board\n");
|
||||||
|
setenv("expansionname", "tobi");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
if (expansion_id == 0x0)
|
||||||
|
setenv("expansionname", "tobi");
|
||||||
printf("Unrecognized expansion board 0x%08x\n", expansion_id);
|
printf("Unrecognized expansion board 0x%08x\n", expansion_id);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -360,6 +369,11 @@ int misc_init_r(void)
|
||||||
|
|
||||||
dieid_num_r();
|
dieid_num_r();
|
||||||
|
|
||||||
|
if (get_cpu_family() == CPU_OMAP34XX)
|
||||||
|
setenv("boardname", "overo");
|
||||||
|
else
|
||||||
|
setenv("boardname", "overo-storm");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -83,7 +83,6 @@
|
||||||
/* Environment information */
|
/* Environment information */
|
||||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||||
DEFAULT_LINUX_BOOT_ENV \
|
DEFAULT_LINUX_BOOT_ENV \
|
||||||
"fdtfile=overo.dtb\0" \
|
|
||||||
"bootdir=/boot\0" \
|
"bootdir=/boot\0" \
|
||||||
"bootfile=zImage\0" \
|
"bootfile=zImage\0" \
|
||||||
"usbtty=cdc_acm\0" \
|
"usbtty=cdc_acm\0" \
|
||||||
|
@ -152,13 +151,14 @@
|
||||||
"run mmcboot;" \
|
"run mmcboot;" \
|
||||||
"fi;" \
|
"fi;" \
|
||||||
"if run loadzimage; then " \
|
"if run loadzimage; then " \
|
||||||
"if test -n $fdtfile; then " \
|
"if test $fdtfile; then " \
|
||||||
|
"setenv fdtfile omap3-${boardname}-${expansionname}.dtb;" \
|
||||||
|
"fi;" \
|
||||||
"if run loadfdt; then " \
|
"if run loadfdt; then " \
|
||||||
"run mmcbootfdt;" \
|
"run mmcbootfdt;" \
|
||||||
"fi;" \
|
"fi;" \
|
||||||
"fi;" \
|
"fi;" \
|
||||||
"fi;" \
|
"fi;" \
|
||||||
"fi;" \
|
|
||||||
"run nandboot; " \
|
"run nandboot; " \
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue