--- a/board/mediatek/mt7622/mt7622_rfb.c +++ b/board/mediatek/mt7622/mt7622_rfb.c @@ -6,9 +6,15 @@ #include #include +#include +#include #include #include +#ifndef CONFIG_RESET_BUTTON_LABEL +#define CONFIG_RESET_BUTTON_LABEL "reset" +#endif + DECLARE_GLOBAL_DATA_PTR; int board_init(void) @@ -19,7 +25,15 @@ int board_init(void) int board_late_init(void) { - gd->env_valid = 1; //to load environment variable from persistent store + struct udevice *dev; + int ret; + + ret = !!button_get_by_label(CONFIG_RESET_BUTTON_LABEL, &dev); + + if (!ret) + ret = !button_get_state(dev); + + gd->env_valid = ret; //to load environment variable from persistent store env_relocate(); return 0; }