uboot-202206: mt7986/bootmenu_emmc: sync write firmware logic from 7981 (#60)

This commit is contained in:
lgs2007m
2024-06-17 19:08:19 +08:00
committed by GitHub
parent 3b93bc9078
commit 6f1582df4d

View File

@@ -140,8 +140,7 @@ int write_firmware(void *priv, const struct data_part_entry *dpe,
const void *kernel_data, *rootfs_data;
size_t kernel_size, rootfs_size;
loff_t rootfs_data_offs;
int ret = 0, ret2 = 0;
int ret = 0;
#ifdef CONFIG_MTK_DUAL_BOOT
u32 slot;
#endif /* CONFIG_MTK_DUAL_BOOT */
@@ -162,18 +161,16 @@ int write_firmware(void *priv, const struct data_part_entry *dpe,
rootfs_part = PART_ROOTFS_NAME;
#endif /* CONFIG_MTK_DUAL_BOOT */
ret = write_part(rootfs_part, rootfs_data, rootfs_size, true);
if (ret)
return ret;
/* Mark rootfs_data unavailable */
rootfs_data_offs = (rootfs_size + ROOTDEV_OVERLAY_ALIGN - 1) &
(~(ROOTDEV_OVERLAY_ALIGN - 1));
erase_part(PART_ROOTFS_NAME, rootfs_data_offs, SZ_512K);
ret = write_part(kernel_part, kernel_data, kernel_size, true);
ret2 = write_part(rootfs_part, rootfs_data, rootfs_size, true);
if (!ret2) {
/* Mark rootfs_data unavailable */
rootfs_data_offs = (rootfs_size + ROOTDEV_OVERLAY_ALIGN - 1) &
(~(ROOTDEV_OVERLAY_ALIGN - 1));
erase_part(PART_ROOTFS_NAME, rootfs_data_offs, SZ_512K);
} else {
ret = ret2;
}
if (ret)
return ret;
@@ -270,7 +267,6 @@ int board_boot_default(void)
mbd.boot_slots = dual_boot_slots;
mbd.env_part = ofnode_conf_read_str("u-boot,mmc-env-partition");
mbd.load_ptr = (void *)0x40000000;
#ifdef CONFIG_MTK_DUAL_BOOT_SHARED_ROOTFS_DATA
mbd.rootfs_data_part = CONFIG_MTK_DUAL_BOOT_ROOTFS_DATA_NAME;
#endif