提交 4a3ea216 编写于 作者: R Rob Herring 提交者: Albert ARIBAUD

ARM: highbank: setup env from boot source register

Add support to read the boot src register and set bootcmd env from the
selected bootcmdX env setting.

Based on Linkstation boot choice selection.
Signed-off-by: NRob Herring <rob.herring@calxeda.com>
上级 a34e8549
......@@ -24,6 +24,7 @@
#include <asm/io.h>
#define HB_SREG_A9_PWR_REQ 0xfff3cf00
#define HB_SREG_A9_BOOT_SRC_STAT 0xfff3cf04
#define HB_PWR_SUSPEND 0
#define HB_PWR_SOFT_RESET 1
#define HB_PWR_HARD_RESET 2
......@@ -55,8 +56,20 @@ int board_eth_init(bd_t *bis)
int misc_init_r(void)
{
char envbuffer[16];
u32 boot_choice;
ahci_init(0xffe08000);
scsi_scan(1);
boot_choice = readl(HB_SREG_A9_BOOT_SRC_STAT) & 0xff;
sprintf(envbuffer, "bootcmd%d", boot_choice);
if (getenv(envbuffer)) {
sprintf(envbuffer, "run bootcmd%d", boot_choice);
setenv("bootcmd", envbuffer);
} else
setenv("bootcmd", "");
return 0;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册