开发板通过u-boot和linux内核修改nand flash分区
2018-12-03 19:07
148 查看
一个MTD分区折磨了我好几天,现在搞明白了,跟大家分享以下。
目的:我的开发板默认的MTDkernel分区是2M,我现在需要将分区扩为4M。
硬件平台:JZ2440(芯片:S3C2440)
1.在UBOOT下的uboot/include/config/100ask24x0.h 中(开发板不一样,配置文件也不一样)修改,根据自己的情况修改大小。
[code]#define MTDPARTS_DEFAULT "mtdparts=nandflash0:256k@0(bootloader)," \ "128k(params)," \ "4m(kernel)," \ "-(rootfs)"
然后编译 make
2 然后在linux下:linux-3.4.2\arch\arm\mach-s3c24xx\Common-smdk.c 修改成与u-boot中相对应的参数。
[code]static struct mtd_partition smdk_default_nand_part[] = { [0] = { .name = "bootloader", .size = SZ_256K, .offset = 0, }, [1] = { .name = "params", .offset = MTDPART_OFS_APPEND, .size = SZ_128K, }, [2] = { .name = "kernel", .offset = MTDPART_OFS_APPEND, .size = SZ_4M, }, [3] = { .name = "rootfs", .offset = MTDPART_OFS_APPEND, .size = MTDPART_SIZ_FULL, } }; static struct s3c2410_nand_set smdk_nand_sets[] = { [0] = { .name = "NAND", .nr_chips = 1, .nr_partitions = ARRAY_SIZE(smdk_default_nand_part), .partitions = smdk_default_nand_part, }, };
然后编译生成uImage:make uImage
3 把u-boot.bin下载到开发板后,设置参数,执行如下命令:mtdparts default
4 在UBOOT下,UBOOT优先使用params分区中的参数,再次使用100ask24x0.h中的,所以想要使用刚才所修改的分区,还需要把params的分区中的参数擦除掉:nand erase params,让uBOOT使用100ask24x0.h中我们所修改的参数。
5 在UBOOT下使用mtd命令查看分区情况。然后在UBOOT下使用print命令,打印环境变量,如果环境变量中的参数跟mtd下的参数对应,说明分区完全成功。
使用mtd命令查看分区情况:
使用print命令查看环境变量情况:
6 分区完全成功后,就需要重新下载文件系统和Linux内核镜像文件。
新手望轻喷!!!
相关文章推荐
- <2012 12 05> FL2440开发板的U-boot-2010.09版本移植(六)uboot架构中NAND Flash驱动修改
- 移植u-boot学习笔记7-----修改代码之支持nand flash
- 通过u-boot把内核和文件系统烧录到Nand Flash
- <2012 12 06> FL2440开发板的U-boot-2010.09版本移植(十一)U-boot引导内核设置、编译linux内核、编译文件系统、加载...
- (转)关于NAND flash的MTD分区与uboot中分区的理解
- 基于smdk2410 开发板u-boot-1.2.0 nand flash读写操作及其命令的实现
- 查看当前服务器中的所有的topic,创建topic,删除topic,通过shell命令发送消息,通过shell消费消息,查看topic详情,对分区数进行修改
- 关于NAND flash的MTD分区与uboot中分区的理解
- 通过修改linux系统默认的TCP或UDP mem大小解决开发板播放流媒体片源卡顿或马赛克问题
- <2012 12 06> FL2440开发板的U-boot-2010.09版本移植(九)NAND Flash启动支持的一种新型方法,利用U-Boot自带nand_spl/nand_boot.c
- 关于NAND flash的MTD分区与uboot中分区的理解 .
- NAND flash的MTD分区与uboot中分区的理解
- 基于smdk2410 开发板u-boot-1.2.0 nand flash读写操作及其命令的实现(续)
- buildroot构建项目(五)--- u-boot 2017.11 适配开发板修改 3 ---- 系统启动初始化之二
- u-boot在s3c2410开发板上移植(NAND Flash Boot)过程
- 解决 ubuntu 修改win分区重启造成无法通过滚动条故障
- linux-2.6.32在mini2440开发板上移植(1)之移植Nand驱动并修改分区信息
- buildroot构建项目(八)--- u-boot 2017.11 适配开发板修改 5 ---- 系统启动初始化之五
- u-boot在s3c2410开发板上移植(NAND Flash Boot)过程(转贴)
- u-boot在s3c2410开发板上移植(NAND Flash Boot)过程