为提高boot引导速度,,需支持multibin。方法如下:
1.D:\WINCE600\PLATFORM\SMDKV210\SMDKV210.bat
@REM For Multiple XIP (using demand paging on BINFS)
set IMGMULTIXIP=1
2.调整config.bib镜像大小
由于系统生成的XIPKERNEL约为3M。大于默认设置。所以改大到3M。后面的相应调整
IF WINCEDEBUG = retail
XIPKERNEL 80020000 00300000 RAMIMAGE ;
NK 80320000 03D00000 NANDIMAGE ; Max size (it will be autosized)
RAM 80320000 05BFF000 RAM ; Max size (it will be autosized)
3.smdkv210\src\bootloader\eboot\nand.cpp
bool LoadNK()
{
...
#if 0
// Read the kernel region from the Boot Media into RAM.
//
if ( !BP_ReadData( hPart,
(LPBYTE)(g_pTOC->id[TOC_ENTRY_NK].dwLoadAddress),
SECTOR_TO_FILE_SIZE(g_pTOC->id[TOC_ENTRY_NK].dwTtlSectors)) )
{
OALMSG(1, (TEXT("Failed to read kernel region from partition.\r\n")));
return FALSE;
}
#else //for support multibin .
if ( !BP_ReadData( hPart,
(LPBYTE)(g_pTOC->id[TOC_ENTRY_NK].dwLoadAddress),
3*1024*1024/*3M*/) )
{
OALMSG(1, (TEXT("Failed to read kernel region from partition.\r\n")));
return FALSE;
}
#endif
...
}
4.运行SMDKV210.bat
5.重新编译生成新的9tripod_boot.nb0 和新的xip.bin
6.用新的9tripod_boot.nb0来引导系统,下载OS从NK.BIN改为XIP.BIN。
7.启动速度约12S,不计bootloader中的5S倒计时(注此5S倒计时可去除,加快启动速度)。即可
出现界面。
8.存在的后续工作:
要根据实现需要来调整reg、bib文件
|