summaryrefslogtreecommitdiff
path: root/board/samsung/common/board.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/samsung/common/board.c')
-rw-r--r--board/samsung/common/board.c25
1 files changed, 23 insertions, 2 deletions
diff --git a/board/samsung/common/board.c b/board/samsung/common/board.c
index 96228a86a1..9adbd1e2cf 100644
--- a/board/samsung/common/board.c
+++ b/board/samsung/common/board.c
@@ -249,11 +249,22 @@ int board_eth_init(bd_t *bis)
return 0;
}
-#ifdef CONFIG_DISPLAY_BOARDINFO
+#if defined(CONFIG_DISPLAY_BOARDINFO) || defined(CONFIG_DISPLAY_BOARDINFO_LATE)
int checkboard(void)
{
if (IS_ENABLED(CONFIG_BOARD_TYPES)) {
- const char *board_info = get_board_type();
+ const char *board_info;
+
+ if (IS_ENABLED(CONFIG_DISPLAY_BOARDINFO_LATE)) {
+ /*
+ * Printing type requires having revision, although
+ * this will succeed only if done late.
+ * Otherwise revision will be set in misc_init_r().
+ */
+ set_board_revision();
+ }
+
+ board_info = get_board_type();
if (board_info)
printf("Type: %s\n", board_info);
@@ -287,6 +298,16 @@ int board_late_init(void)
#ifdef CONFIG_MISC_INIT_R
int misc_init_r(void)
{
+ if (IS_ENABLED(CONFIG_BOARD_TYPES) &&
+ !IS_ENABLED(CONFIG_DISPLAY_BOARDINFO_LATE)) {
+ /*
+ * If revision was not set by late display boardinfo,
+ * set it here. At this point regulators should be already
+ * available.
+ */
+ set_board_revision();
+ }
+
#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
set_board_info();
#endif