修改randflash为多个区
在 linux-2.6.19:
/linux-code/linux-2.6.19/drivers/mtd/nand 文件夹的at91_nand.c中
static struct mtd_partition partition_info64M[] = {
{
.name = "AT91 NAND partition 1, kernel",
.offset = 0,
.size = 2*SZ_1M, //内核(包括启动,U-BOOT)在0-2M间
.mask_flags = MTD_WRITEABLE
},
{
.name = "AT91 NAND partition 2, filesystem",
.offset = 2*SZ_1M,
.size = 10*SZ_1M, //文件系统在2-12M间
.mask_flags = MTD_WRITEABLE
},
{
.name = "AT91 NAND partition 3, storage",
.offset = 12*SZ_1M, //存储空间在12-64M间
.size = 52*SZ_1M,
},
可见整个flash被分为了3段
.............................................................
在linux-2.6.22在:
将/linux-2.6.22/arch/arm/mach-at91/board-sam9260ek.c的内容修改为:
/*
* NAND flash
*/
191句
/*static struct mtd_partition __initdata ek_nand_partition[] = {
{
.name = "Partition 1",
.offset = 0,
.size = 64 * 1024 * 1024,
},
{
.name = "Partition 2",
.offset = 64 * 1024 * 1024,
.size = MTDPART_SIZ_FULL,
},
};
*/
static struct mtd_partition __initdata ek_nand_partition[] = {
{
.name = "Partition 0",
.offset = 0,
.size = 2 * 1024 * 1024,
},
{
.name = "Partition 1",
.offset = 2 * 1024 * 1024,
.size = 10 * 1024 * 1024,
},
{
.name = "Partition 2",
.offset = 12 * 1024 * 1024,
.size = 52 * 1024 * 1024,
},
};