setenv bootargs 'mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=yaffs2 mtdparts=nand_flash:1M(boot),15M(kernel),32M(rootfs),16M(test)'
mtdparts的分区可以通过uboot传给内核,内核选项要经过一定的配置就可以与uboot环境变量的分区保持一致了
mtdparts=nand_flash:1M(boot),15M(kernel),32M(rootfs),16M(test)
mtdparts=mtd-id:<size1>@<offset1>(<name1>),<size2>@<offset2>(<name2>)
内核需要做如下配置,否则会使用内核中在代码中写死的默认分区配置,这时需要跟flash中的实际的烧写分区保持一致,否则会有问题
Device Drivers ---> Memory Technology Device (MTD) support ---> Command line partition table parsing
参考