mmc烧录ext4一定要注意使用write.ext4sp
static int do_mmc_write(cmd_tbl_t *cmdtp, int flag,
int argc, char * const argv[])
{
//省略掉部分代码
#ifdef CONFIG_EXT4_SPARSE
if (!strcmp(argv[0], "write.ext4sp")) {
printf("\nMMC write ext4 sparse: dev # %d, block # %d, count %d ... ",
curr_device, blk, cnt);
return ext4_unsparse(mmc, dev, addr, blk, cnt);
}
#endif
。。。
//省略掉部分代码
}
CONFIG_EXT4_SPARSE 是在头文件hi3519av100.h(include\configs\hi3519av100.h)定义的,该文件表明制作ext4时候一定要加-s 选项。
/* SD/MMC configuration */
#ifdef CONFIG_MMC
#define CONFIG_SUPPORT_EMMC_BOOT
#define CONFIG_GENERIC_MMC
#define CONFIG_CMD_MMC
#define CONFIG_ENV_IS_IN_MMC
#define CONFIG_SYS_MMC_ENV_DEV 0
#define CONFIG_EXT4_SPARSE
#define CONFIG_SDHCI
#define CONFIG_HISI_SDHCI
#define CONFIG_HISI_SDHCI_MAX_FREQ 200000000
#define CONFIG_BOUNCE_BUFFER
#define CONFIG_FS_EXT4
#define CONFIG_SDHCI_ADMA
#endif