分类: 嵌入式
2012-09-18 13:27:12
u-boot中是没有什么分区表(一般磁盘会在最前面哪里有一个分区表和引导加载程序)这样的东西的,所谓的分区我们构架好之后,是在代码里写死的,在include/configs/100ask24x0.h(xxx.h)中,可以像下面那样添加
103 #define
MTDIDS_DEFAULT
"nand0=nandflash0"
104 #define
MTDPARTS_DEFAULT
"mtdparts=nandflash0:256k@0(bios)," \
105
"128k(params)," \
106
"2m(kernel)," \
107
"-(root)"
在这里顺便说下U-boot中Tab命令补齐功能其实很简单加多一个宏就可以了如下(在include/configs/100ask24x0.h(xxx.h)中)
#define CONFIG_AUTO_COMPLETE //开启命令自动补全函数的编译
这样U-boot中就可以使用命令补齐功能了
这里就分好了四个分区,其中大少是你自己规定的,这样分好后还不可以用mtd来查到分区表,不过分区表是这样分好了没错的,这是我们启动开发板后先输入tq2440# mtdparts default 载入默认分区表 ,这时就可以看了如下
启动开发板如下
tq2440# mtdparts default
tq2440# mtd
device nand0
#:
name
size
offset
mask_flags
0:
bios
0x00040000
0x00000000
0
1:
params
0x00020000
0x00040000
0
2:
kernel
0x00200000
0x00060000
0
3:
root
0x0fda0000
0x00260000
0
active partition: nand0,0 - (bios) 0x00040000 @ 0x00000000
defaults:
mtdids : nand0=nandflash0
mtdparts:
mtdparts=nandflash0:256k@0(bios),128k(params),2m(kernel),-(root)