我正在开发嵌入式 ARM9 开发板。在那我想重新排列我的 nand 分区。谁能告诉我该怎么做?
在我的 u-boot shell 中,如果我给出命令 mtdparts 给出以下信息。
Boardcon> mtdparts
device nand0 <nandflash0>, # parts = 7
#: name size offset mask_flags
0: bios 0x00040000 0x00000000 0
1: params 0x00020000 0x00040000 0
2: toc 0x00020000 0x00060000 0
3: eboot 0x00080000 0x00080000 0
4: logo 0x00100000 0x00100000 0
5: kernel 0x00200000 0x00200000 0
6: root 0x03c00000 0x00400000 0
active partition: nand0,0 - (bios) 0x00040000 @ 0x00000000
defaults:
mtdids : nand0=nandflash0
mtdparts: mtdparts=nandflash0:256k@0(bios),128k(params),128k(toc),512k(eboot),1024k(logo),2m(kernel),-(root)
内核引导消息显示如下:
Creating 3 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x000000000000-0x000000040000 : "Boardcon_Board_uboot"
0x000000200000-0x000000400000 : "Boardcon_Board_kernel"
0x000000400000-0x000003ff8000 : "Boardcon_Board_yaffs2"
任何人都可以向我解释这两条消息之间的关系。内核或 u-boot 中的哪一个负责在 nand flash 上创建分区?至于我知道内核不会在每次启动时创建分区,但为什么会出现“创建 3 个 MTD 分区”消息?