随着内核的更新,内核越来越大,uboot给nand的kernel分区默认是2M的

device nand0 <nandflash0>, # parts = 4

 #: name                        size            offset          mask_flags

 0: bootloader          0x00040000      0x00000000      0

 1: params              0x00020000      0x00040000      0

 2: kernel              0x00200000      0x00060000      0

 3: root                0x0fda0000      0x00260000      0

修改分区如下,建议留给kernel4M大小:

第一步 在你的配置文件下uboot/include/config/xxx.h 里面有一个宏定义

#define MTDPARTS_DEFAULT "mtdparts=nandflash0:256k@0(bootloader)," \

                            "128k(params)," \

                            "2m(kernel)," \

                            "-(root)"

把2M改为4M(改好后重新编译uboot),在cmd_jffs2.c里面我们看到把默认的分区信息分配给了mtdparts_default

#if defined(MTDPARTS_DEFAULT)

static const char *const mtdparts_default = MTDPARTS_DEFAULT;

#else

#warning "MTDPARTS_DEFAULT not defined!"

static const char *const mtdparts_default = NULL;

#endif

然后在cmd_jffs2.c的函数int do_jffs2_mtdparts(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])中把mtdparts_default

给了环境变量setenv("mtdparts", (char *)mtdparts_default);

因此我们可以在uboot的中设置命令 mtdparts default,然后利用mtd查看 分区一样改好了

device nand0 <nandflash0>, # parts = 4

 #: name                        size            offset          mask_flags

 0: bootloader          0x00040000      0x00000000      0

 1: params              0x00020000      0x00040000      0

 2: kernel              0x00400000      0x00060000      0

 3: root                0x0fba0000      0x00460000      0

第二步 修改内核的分区信息,\linux-3.4.2\arch\arm\mach-s3c24xx\Common-smdk.c 这个文件中把分区信息修改的和uboot一样

然后就可以使用了

uboot和内核分区的修改的更多相关文章

  1. uboot和内核分区的改动

    随着内核的更新,内核越来越大,uboot给nand的kernel分区默认是2M的 device nand0 <nandflash0>, # parts = 4  #: name       ...

  2. tiny4412学习(一)之从零搭建linux系统(烧写uboot、内核进emmc+uboot启动内核)【转】

    本文转载自:http://blog.csdn.net/fengyuwuzu0519/article/details/74080109 版权声明:本文为博主原创文章,转载请注明http://blog.c ...

  3. 关于UBOOT,LINUX内核编译,根文件系统的15个小问题

    (1)内核默认运行地址和加载地址在哪里设置? 由 arch/arm/kernel/vmlinux.lds.S 生成的 arch/armkernel/vmlinux.lds决定   (2)从FLASH什 ...

  4. 嵌入式Linux驱动学习之路(六)u-boot启动内核

    内核启动是需要必要的启动参数.不能开机自动完全从0开始启动,需要uboot帮助内核实现重定位并提供参数. 首先,uboo会从Kernel分区中读取bootcmd环境变量,根据环境变量可自动启动. 分区 ...

  5. uboot和内核波特率不同

    uboot和内核波特率不同,在uboot启动后,修改uboot参数: set bootargs 'noinitrd root=/dev/mtdblock3 init=/linuxrc console= ...

  6. u-boot(五)内核启动

    目录 u-boot(五)内核启动 概述 分区空间 内核文件格式 内核复制跳转 内核启动 机器ID 启动参数 (起始tag)setup_start_tag 内存设置 根文件系统,启动程序,串口设备 (结 ...

  7. u-boot引导内核过程

    目标板:2440 u-boot引导内核启动时,传入内核的参数为bootcmd=nand read.jffs2 0x30007FC0 kernel; bootm 0x30007FC0 一.nand re ...

  8. UBOOT启动内核过程

    1.摘要 (1).启动4步骤第一步:将内核搬移到DDR中第二步:校验内核格式.CRC等第三步:准备传参第四步:跳转执行内核(2).涉及到的主要函数是:do_bootm和do_bootm_linux(3 ...

  9. U-boot 启动内核

    1:什么是UBOOT,为什么要有UBOOT? UBOOT的主要作用是用来启动linux内核,因为CPU不能直接从块设备中执行代码,需要把块设备中的程序复制到内存中,而复制之前还需要进行很多初始化工作, ...

随机推荐

  1. 【学员管理系统】0x02 学生信息管理功能

    [学员管理系统]0x02 学生信息管理功能 写在前面 项目详细需求参见:Django项目之[学员管理系统] Django框架大致处理流程 捋一下Django框架相关的内容: 浏览器输入URL到页面展示 ...

  2. 【整理学习Hadoop】Hadoop学习基础之一:服务器集群技术

            服务器集群就是指将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器.集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任 ...

  3. 扩展 Yii2 自带的日志组件

    <?php /** * author : forecho <caizhenghai@gmail.com> * createTime : 2015/12/22 18:13 * desc ...

  4. 牛客小白月赛1 C 分元宵【快速幂】

    题目链接 https://www.nowcoder.com/acm/contest/85/C 思路 有 A 种 元宵馅,B 种元宵皮 所以 我们可以认为 有Q = A * B 种 元宵 有 C 张桌子 ...

  5. Hive2.0的新特性介绍

  6. curl使用手册

    查询curl耗时 curl -o /dev/null -s -w %{time_namelookup}::%{time_connect}::%{time_starttransfer}::%{time_ ...

  7. EntityFramework 学习 一 Persistence in Entity Framework

    实体框架的持久化 当用EntityFramework持久化一个对象时,有两种情形:连接的和断开的 1.连接场景:使用同一个context上下文从数据库中查询和持久化实体时,查询和持久化实体期间,con ...

  8. java语法糖---枚举

    java语法糖---枚举   在JDK5.0中提供了大量的语法糖,例如:自动装箱拆箱.增强for循环.枚举.泛型等.所谓“语法糖”就是指提供更便利的语法供程序员使用,只是在编译器上做了手脚,却没有提供 ...

  9. spring 4 + jpa(hibernate 3/4) + spring mvc 多数据源配置

    先从persistence.xml开始: <?xml version=”1.0″ encoding=”UTF-8″?><persistence version=”2.1″ xmlns ...

  10. php 微信公众平台开发之微信群发信息

    这篇文章主要为大家详细介绍了php微信公众平台开发之微信群发信息,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 1.目的 完成在微信公众号中群发消息.这里只是完成简单的文字发送.也可以发送语音图片 ...