下面是nboot loader.h中的一段定义:
// NAND Boot (loads into SteppingStone) @ Block 0
#define NBOOT_BLOCK 0
#define NBOOT_BLOCK_SIZE 8 /*1 change by capbily for vivi */
#define NBOOT_SECTOR BLOCK_TO_SECTOR(NBOOT_BLOCK)
// TOC @ Block 1
#define TOC_BLOCK 19 /*1 change by capbily for vivi */
#define TOC_BLOCK_SIZE 1
#define TOC_SECTOR BLOCK_TO_SECTOR(TOC_BLOCK)
// Eboot @ Block 2
#define EBOOT_BLOCK 10 /*2 change by capbily for vivi */
#define EBOOT_SECTOR_SIZE (11*PAGES_PER_BLOCK) /*FILE_TO_SECTOR_SIZE(EBOOT_RAM_IMAGE_SIZE)*/
#define EBOOT_BLOCK_SIZE 11 /*SECTOR_TO_BLOCK(EBOOT_SECTOR_SIZE)*/
#define EBOOT_SECTOR BLOCK_TO_SECTOR(EBOOT_BLOCK)
#define RESERVED_BOOT_BLOCKS 0x890// (NBOOT_BLOCK_SIZE + TOC_BLOCK_SIZE + EBOOT_BLOCK_SIZE)
// Images start after OEM Reserved Blocks
#define IMAGE_START_BLOCK RESERVED_BOOT_BLOCKS
#define IMAGE_START_SECTOR BLOCK_TO_SECTOR(IMAGE_START_BLOCK)
红色部分,我感觉不太对,大家看看有没有问题!
是不是友善为了适应它的VIVI做了改动啊,本来那三句应该是:
#define NBOOT_BLOCK_SIZE 1
#define TOC_BLOCK 1
#define EBOOT_BLOCK 2
对不对?
注释中是那意思。
具体的,恐怕要研究完vivi和nboot的代码才清楚。
LZ你直接问友善技术支持不是更好吗?
我也奇怪NBOOT怎么会有8个BLOCK大?
我知道nboot要下到block0,eboot要下到block2,那个block1中的东西是怎么下进去的呢,好像和NK有关系。
我的内核下载地址在什么地方定义的啊?
#define RESERVED_BOOT_BLOCKS 0x890// (NBOOT_BLOCK_SIZE + TOC_BLOCK_SIZE + EBOOT_BLOCK_SIZE) 和这个有关吗?
NK在Nandflash中的地址起始地址
#define IMAGE_START_BLOCK RESERVED_BOOT_BLOCKS
#define IMAGE_START_SECTOR BLOCK_TO_SECTOR(IMAGE_START_BLOCK)
定义的也是不对的吧!
如果 我的eboot占11个block是不是 NK的起始地址就是nandflash第13个block的地址啊
想摆脱它的VIVI,自己从Nandflash下booterloader 、NK,没想到nboot错误那么多!
看代码 上面那三个地方应该是要改的,现在想知道 怎么确定的NK的下载地址
#define RESERVED_BOOT_BLOCKS 0x890// (NBOOT_BLOCK_SIZE + TOC_BLOCK_SIZE + EBOOT_BLOCK_SIZE)
是NK在nandflash中的启示地址吗?