diff --git a/uboot-mtk-20230718-09eda825/board/mediatek/common/bootmenu_mtd.c b/uboot-mtk-20230718-09eda825/board/mediatek/common/bootmenu_mtd.c index 5a0a1362a..7f7cf27b9 100644 --- a/uboot-mtk-20230718-09eda825/board/mediatek/common/bootmenu_mtd.c +++ b/uboot-mtk-20230718-09eda825/board/mediatek/common/bootmenu_mtd.c @@ -24,6 +24,7 @@ #else #define UBI_VID_OFFSET QUOTE(CONFIG_ENV_UBI_VID_OFFSET) #endif +int env_ubi_erase(void); #endif /* CONFIG_ENV_IS_IN_UBI */ static struct mtd_info *get_mtd_part(const char *partname) @@ -330,8 +331,7 @@ static int erase_env(void *priv, const struct data_part_entry *dpe, if (ubi_part(CONFIG_ENV_UBI_PART, UBI_VID_OFFSET)) return -EIO; - ubi_remove_vol(CONFIG_ENV_UBI_VOLUME); - create_ubi_volume(CONFIG_ENV_UBI_VOLUME, CONFIG_ENV_SIZE, UBI_VID_OFFSET, false); + env_ubi_erase(); ubi_exit(); #else struct mtd_info *mtd; diff --git a/uboot-mtk-20230718-09eda825/env/ubi.c b/uboot-mtk-20230718-09eda825/env/ubi.c index 22cf2ada7..f2788f1d1 100644 --- a/uboot-mtk-20230718-09eda825/env/ubi.c +++ b/uboot-mtk-20230718-09eda825/env/ubi.c @@ -203,7 +203,7 @@ static int env_ubi_load(void) } #endif /* CONFIG_SYS_REDUNDAND_ENVIRONMENT */ -static int env_ubi_erase(void) +int env_ubi_erase(void) { ALLOC_CACHE_ALIGN_BUFFER(char, env_buf, CONFIG_ENV_SIZE); int ret = 0;