diff --git a/board/adi/common-sc598-som/sc598-som.c b/board/adi/common-sc598-som/sc598-som.c index 96b73520e66a..0612c9d907a9 100644 --- a/board/adi/common-sc598-som/sc598-som.c +++ b/board/adi/common-sc598-som/sc598-som.c @@ -9,6 +9,7 @@ #include #include #include +#include #include "../carriers/somcrr.h" @@ -21,6 +22,8 @@ int board_phy_config(struct phy_device *phydev) int board_init(void) { + u32 bmode = (readl(0x3108C004) & 0x00000F00) >> 8; + sc59x_remap_ospi(); if (IS_ENABLED(CONFIG_ADI_CARRIER_SOMCRR_EZKIT) || @@ -30,5 +33,11 @@ int board_init(void) sc5xx_enable_rgmii(); + if (bmode == 2) { + env_set("bootcmd", "spiboot"); + } else if (bmode == 6) { + env_set("bootcmd", "emmcboot"); + } + return 0; }