1.如何对nand 分区。修改mtdparts环境变量就可以了么?

对于目前的U-boot而言,是的.而且, 设置了mtdparts变量之后,你可以在nand read/write/erase命令中直接使用分区的名字而不必指定分区的偏移位置.

set bootargs noinitrd console=ttySAC0 root=/dev/mtdblock3 rootfstype=jffs2  mtdparts=nand_flash:128k(u-boot)ro,64k(u-boot envs),3m(kernel),30m(root.jffs2),30m(root.yaffs)

2 内核通过bootargs找到文件系统,bootargs中的mtdblockx即代表分区,block1,2,3代表哪个分区是如何确定的。

事实上,bootargs中的"root=/dev/mtdblockx"只是告诉内核,root fs从第x个(x=0,1,2...)MTD分区挂载,mtdblock0对应第一个分区,mtdblock1对应第二个分区,以此类推.至于这个分区对应MTD device(NAND Flash)的哪一段范围,取决于内核读到的MTD分区信息,这个分区信息可以通过:

1) 写死在MTD层的NAND Controller驱动或者内核其他部分代码里

2) 通过U-boot传递给内核的命令行中的mtdparts=...部分解析得出,解析的规则同u-boot中mtdparts变量的赋值规则

3) 其他可以让内核知道分区信息的任何办法

3 在u-boot中给nand分区后是否要对应修改kernel的代码?

如果你用的是通过内核命令行给MTD层传递u-boot中的MTD分区信息,那是不需要的,在这种情况下,内核读取到的分区信息始终和u-boot中的保持一致(推荐的做法)

如果你用的是把分区信息写死在内核源代码里的方法,那最好保证它和u-boot中的保持一致,即同步修改内核的相关部分代码

U-Boot如何向内核传递Flash的分区信息相关推荐

  1. uboot通过u盘烧写linux内核,向Flash中烧写uboot和linux操作系统

    向Flash中烧写uboot和linux操作系统 2011年03月28日 向Flash中烧写uboot和linux操作系统 ====================================== ...

  2. u-boot向linux内核传递启动参数

    U-BOOT 在启动内核时,会向内核传递一些参数.而这些参数是通过 structtag来传递的. U-boot 把要传递给 kernel 的东西保存在 struct tag数据结构中,启动 kerne ...

  3. Android内核开发:系统分区与镜像文件的烧写

    本文是<Android内核开发>系列的第五篇文章,本文重点介绍如何把编译输出的镜像文件烧写到Android设备中. 玩过刷机的朋友肯定对fastboot这个工具并不陌生,它是Android ...

  4. linux擦除nandflash分区,【Linux公开课】NAND Flash存储器分区、烧写流程图、格式化NAND Flash...

    摘要本章主要讲述EasyARM-iMX283A Linux固件的烧写方法,可以通过TF卡.USB两种方式进行整体固件烧写,也可以通过网络进行局部固件升级. 第9章 系统固件烧写 本章主要讲述EasyA ...

  5. uboot引导kernel - 1 - Flash的分区

    uboot启动Linux内核过程分为4大步骤: 问题1:Flash的分区相关问题 在 上述步骤1/2/4 中都提到了从启动介质(iNand/SD)中读取uboot/kernel到SRAM/DDR中,那 ...

  6. linux更新分区信息到内核,linux系统创建主分区、逻辑分区 、设置ext系列分区的参数以及检测分区的方法...

    linux对不同的磁盘设备的设备文件命名如下: IDE: /dev/hd[a-z] 对IDE分区的命名为/dev/hda1    /dev/hda2 -.. SCSI, SATA, SAS, USB: ...

  7. 【Linux 内核 内存管理】分区伙伴分配器 ② ( free_area 空闲区域结构体源码 | 分配标志位 | GFP_ZONE_TABLE 标志位区域类型映射表 |分配标志位对应的内存区域类型 )

    文章目录 一.free_area 空闲区域结构体源码分析 二.分配标志位 三.GFP_ZONE_TABLE 标志位区域类型映射表 四.分配标志位对应的内存区域类型 一.free_area 空闲区域结构 ...

  8. Linux内核I/O报错信息中hostbyte与driverbyte含义

    文章目录 1.现象举例 2.hostbyte和driverbyte 3.FC链路的硬件故障 4.源码分析 1.现象举例 1.hostbyte=DID_BAD_TARGET driverbyte=DRI ...

  9. openwrt-AR系列flash地址分区及系统烧写

    AR系列分区地址 4M flash的分区地址: 分区名-------起始地址-------结束地址--------分区长度 uboot 0x9f000000 0x9f020000 0x20000 fi ...

最新文章

  1. 2021年大数据Hadoop(二):Hadoop发展简史和特性优点
  2. 内网更新服务器的搭建(WSUS)
  3. hashlib 模块用来进行hash
  4. python textwrap_[Python标准库]textwrap——格式化文本段落
  5. Python -- reload 函数
  6. [转载] python标准库系列教程(三)——operator库详细教程
  7. 【Python】@staticmethod和@classmethod的作用与区别
  8. 2. CSS 高级语法
  9. Origin上下标输入
  10. git pull报错 Can‘t update no tracked branch
  11. blast2go下载和本地安装
  12. 电子邮件注册网站哪个好:四大邮箱客户端的对比
  13. 语c语言描写,语c动作描写
  14. 衣服面料成份(英文/日文/中文)
  15. 软件经验|使用消费级无人机干测绘(四)ContexCapture软件介绍
  16. 使用python实现mysql测试数据的准备(大批量导入数据)
  17. 取消计算机粘贴,电脑复制粘贴文件或图片后怎么设置右击取消粘贴?
  18. 魔兽世界盒子怎么修改服务器地址,多玩魔盒怎么设置界面 多玩魔兽盒子多玩界面调整教程...
  19. 我们社会的普遍价值观
  20. 电动口罩电路图和源代码程序破解

热门文章

  1. [bzoj2243][SDOI2011]染色
  2. Windows 8 系统快捷键热键列表收集
  3. PHP多种序列化/反序列化的方法 (转载)
  4. 15款的视频处理软件免费下载
  5. HDU 4631 Sad Love Story 平面内最近点对
  6. Spring AOP 实战运用
  7. 内存容量出现异常的解决办法
  8. JLOI2016 方
  9. 将undefault和null的数据转换成bool类型的数据 使用!!
  10. Codeforces Round 261 Div.2 D Pashmak and Parmida's problem --树状数组