Hi,
I am trying to build and download an image into NAND flash with BINFS on my
platform. The built OS image is about 19MB in size. However I would like to
extend the region size for the NK.bin with AUTOSIZE_ROMGAP to about 32MB, so
that I can expand this XIP region in the future without affecting other
regions/partitions in my NAND flash memory. I have set ' AUTOSIZE_ROMGAP
NK D34508 ' and ' ROM_AUTOSIZE=ON '. However the NK.bin built is still
19MB only, instead of 32MB. Does anyone know what the problem might be and
how to resolve it? Below are the config.bib settings used:
=======================================================================
MEMORY
#define CHAIN_ADDRESS 82000000
CHAIN $(CHAIN_ADDRESS) 00001000 RESERVED
pdwXIPLoc 00000000 $(CHAIN_ADDRESS) FIXUPVAR
NK 80001000 01FFF000 RAMIMAGE
CHAIN 82000000 00001000 RESERVED
IF IMGNOKITL
RAM 82001000 01FFF000 RAM
ELSE
RAM 82001000 01FDF000 RAM
KITL 83FE0000 0001F800 RESERVED
BOOTARGS 83FFF800 00000800 RESERVED
ENDIF
FLASH 9E000000 01C00000 RESERVED
CONFIG
COMPRESSION=ON
KERNELFIXUPS=ON
; Multi-Region
;
AUTOSIZE=ON ; AUTOSIZE is used to enable the following flags.
RAM_AUTOSIZE=ON
ROM_AUTOSIZE=ON
DLLADDR_AUTOSIZE=ON
XIPSCHAIN=$(CHAIN_ADDRESS)
AUTOSIZE_ROMGAP NK D34508
AUTOSIZE_DLLADDRGAP=0
AUTOSIZE_DLLDATAADDRGAP=0
AUTOSIZE_DLLCODEADDRGAP=0
IF IMGPROFILER
PROFILE=ON
ELSE
PROFILE=OFF
ENDIF
IF IMGSRE
SRE=ON
ELSE
SRE=OFF
ENDIF
;
; ROMFLAGS is a bitmask of options for the kernel
; ROMFLAGS 0x0001 Disallow Paging
; ROMFLAGS 0x0002 Not all KMode
; ROMFLAGS 0x0010 Trust Module only
;
IF IMGTRUSTROMONLY
IF IMGNOTALLKMODE
ROMFLAGS=12
ELSE
ROMFLAGS=10
ENDIF
ELSE
IF IMGNOTALLKMODE
ROMFLAGS=02
ELSE
ROMFLAGS=00
ENDIF
ENDIF
----------------------------------------------------------------------------
-------------------------------------------
The build output is as follows:
8100effc 4 80b37ffc 4 80967ffc 4 81059ffc
4
80658ffc 4 800c6ffc 4 804e1ffc 4 80530ffc
4
80213ffc 4 80d9effc 4 81061ffc 4
total space 97012 in 87 ranges
Warning: FixupVar pdwXIPLoc not found in kernel. Variable not fixed up.
Writing C:\WINCE420\PUBLIC\MSDBAu1500\RelDir\AMD_DB~2\NK.bin
Table of contents 812c93e8 00001688 ( 5768)
Writing ROM signature and TOC pointer at 80001040
Kernel data copy section 804e2ec4 00000020 ( 32)
ROM Header 812c9394 00000054 ( 84)
First DLL code Address: 02c90000
Last DLL code Address: 04000000
First DLL Address: 01ed01f3
Last DLL Address: 02000000
Physical Start Address: 80001000
Physical End Address: 812caa70
Start RAM: 82000000
Start of free RAM: 82049000
End of RAM: 83fdf000
Number of Modules: 105
Number of Copy Sections: 2
Copy Section Offset: 804e2ec4
Kernel Flags: 00000002
FileSys 4K Chunks/Mbyte: 128 <2Mbyte 128 2-4Mbyte 0 4-6Mbyte 0 >6Mbyte
CPU Type: 0166h
Extensions Pointer: 80005370
Total ROM size: 012c9a70 ( 19700336)
Starting ip: 80001004
Raw files size: 002d6327
Compressed files size: 001707b7
Compacting bin file...
Combining bin files...
Compacting bin file...
Done!
Failed calling bin2xip.exe
C:\WINCE420\PUBLIC\MSDBAu1500\RelDir\AMD_DB~2\chain.bin
C:\WINCE420\PUBLIC\MSDBAu1500\RelDir\AMD_DB~2\privkey.dat
makeimg: Check for
C:\WINCE420\PUBLIC\MSDBAu1500\RelDir\AMD_DB~2\PostRomImage.bat to run.
makeimg: Check for
C:\WINCE420\PUBLIC\MSDBAu1500\RelDir\AMD_DB~2\PostMakeImg.bat to run.
After the built, I can see the NK.bin(19,138MB), chain.bin(1KB),
XIP.bin(19,139MB), and chain.lst in the _FLATRELEASEDIR .
Is the following warning messages the cause of my problem? Does anyone know
why I am getting this messages and how to resolve it?? Thanks in advance!
>> Warning: FixupVar pdwXIPLoc not found in kernel. Variable not fixed up.
>> Failed calling bin2xip.exe
C:\WINCE420\PUBLIC\MSDBAu1500\RelDir\AMD_DB~2\chain.bin
C:\WINCE420\PUBLIC\MSDBAu1500\RelDir\AMD_DB~2\privkey.dat
Paul W