mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-15 19:51:37 +00:00
board: ge: bx50v3: check b850v3 power management watchdog
Set `bootcause' from b850v3 power management watchdog status. Boot cause "REVERT" is no longer used, remove it. Signed-off-by: Ian Ray <ian.ray@ge.com> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
This commit is contained in:
parent
559aaa2526
commit
4f1970f437
2 changed files with 18 additions and 3 deletions
|
@ -384,6 +384,7 @@ static iomux_v3_cfg_t const misc_pads[] = {
|
|||
MX6_PAD_GPIO_9__WDOG1_B | MUX_PAD_CTRL(NC_PAD_CTRL),
|
||||
};
|
||||
#define SUS_S3_OUT IMX_GPIO_NR(4, 11)
|
||||
#define PWGIN_IN IMX_GPIO_NR(4, 14)
|
||||
#define WIFI_EN IMX_GPIO_NR(6, 14)
|
||||
|
||||
int board_early_init_f(void)
|
||||
|
@ -416,6 +417,9 @@ int board_init(void)
|
|||
gpio_request(SUS_S3_OUT, "sus_s3_out");
|
||||
gpio_direction_output(SUS_S3_OUT, 1);
|
||||
|
||||
gpio_request(PWGIN_IN, "pwgin_in");
|
||||
gpio_direction_input(PWGIN_IN);
|
||||
|
||||
gpio_request(WIFI_EN, "wifi_en");
|
||||
gpio_direction_output(WIFI_EN, 1);
|
||||
|
||||
|
@ -465,6 +469,17 @@ void pmic_init(void)
|
|||
}
|
||||
}
|
||||
|
||||
static void detect_boot_cause(void)
|
||||
{
|
||||
const char *cause = "POR";
|
||||
|
||||
if (is_b850v3())
|
||||
if (!gpio_get_value(PWGIN_IN))
|
||||
cause = "PM_WDOG";
|
||||
|
||||
env_set("bootcause", cause);
|
||||
}
|
||||
|
||||
int board_late_init(void)
|
||||
{
|
||||
process_vpd(&vpd);
|
||||
|
@ -478,6 +493,8 @@ int board_late_init(void)
|
|||
else
|
||||
env_set("videoargs", "video=LVDS-1:1024x768@65");
|
||||
|
||||
detect_boot_cause();
|
||||
|
||||
/* board specific pmic init */
|
||||
pmic_init();
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@
|
|||
"setenv netmask 255.255.255.0; setenv ethaddr ca:fe:de:ca:f0:11; " \
|
||||
"setenv bootargs root=/dev/nfs nfsroot=${nfsserver}:/srv/nfs/,v3,tcp rw rootwait" \
|
||||
"setenv bootargs $bootargs ip=${ipaddr}:${nfsserver}:${gatewayip}:${netmask}::eth0:off " \
|
||||
"setenv bootargs $bootargs cma=128M bootcause=POR ${videoargs} " \
|
||||
"setenv bootargs $bootargs cma=128M bootcause=${bootcause} ${videoargs} " \
|
||||
"setenv bootargs $bootargs systemd.mask=helix-network-defaults.service " \
|
||||
"setenv bootargs $bootargs watchdog.handle_boot_enabled=1\0" \
|
||||
"networkboot=" \
|
||||
|
@ -74,7 +74,6 @@
|
|||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
NETWORKBOOT \
|
||||
"bootcause=POR\0" \
|
||||
"image=/boot/fitImage\0" \
|
||||
"dev=mmc\0" \
|
||||
"devnum=2\0" \
|
||||
|
@ -104,7 +103,6 @@
|
|||
"setenv partnum 1; run hasfirstboot || setenv partnum 2; " \
|
||||
"run hasfirstboot || setenv partnum 0; " \
|
||||
"if test ${partnum} != 0; then " \
|
||||
"setenv bootcause REVERT; " \
|
||||
"run swappartitions loadimage doboot; " \
|
||||
"fi; " \
|
||||
"run failbootcmd\0" \
|
||||
|
|
Loading…
Add table
Reference in a new issue