Configuring a ROM Image for NAND Flash

NAND flash does not support XIP. The ROM image on a NAND flash device gets loaded into RAM once the device is switched on.

Example

This section lists code snippets from an OBY file that contain some of the basic keywords required to configure a NAND flash ROM.

The following code snippet contains the ROM image-related keywords.

romname=h4hrp_001.techview.nand.IMG
.
.
.
romsize=0x2000000
.
.
.
romlinearbase=0x80000000
romalign=0x10
.
.
.
romchecksum=0x12345678
.
.
.

The following code snippet contains the kernel-related keywords:

.
.
.
kerneltrace 0x80000000
.
.
.
multikernel
.
.
.
kerneldataaddress=0xC8000000
kernelheapmin=0x01000
kernelheapmax=0x00FFF000
.
.
.

The following are the various file-related keywords:

.
.
.
extension[0x09080004]=\epoc32\release\ARMV5\urel\_h4hrp_kaomap.dll     "Sys\Bin\kaomap.dll"
.
.
.
data=\epoc32\rom\h4hrp\unistore2\ESTARTNANDCOMP.TXT    "Sys\Data\ESTARTNANDCOMP.TXT"
.
.
.
file=\epoc32\release\ARMV5\urel\drtaeabi.dll   "sys\bin\DRTAEABI.dll"
.
.
.

In the following code snippet, the primary and secondary keywords point to files loaded without and through the file servers respectively.

.
.
.
primary[0x09080004]=\epoc32\release\ARMV5\urel\_h4hrp_ekern.exe    "Sys\Bin\ekern.exe"   code-align 0x4000
.
.
.
secondary=\epoc32\release\ARMV5\urel\efile.exe     "sys\bin\efile.exe"
.
.
.

Some of the other keywords used in configuring a NAND flash ROM are as follows:

  • The bootbinary keyword refers to the filename of the ROM's bootstrap code.

    bootbinary=\epoc32\release\ARMV5\_h4hrp_bootrom.bin
  • The dataaddress keyword refers to the linear address of data chunks.

    dataaddress=0x400000
  • The debugport keyword specifies the destination port for kernel and bootstrap devices.

    debugport 1
  • The defaultstackreserve keyword specifies the maximum stack size.

    defaultstackreserve=0x200000
  • The device keyword defines logical or physical device drivers that can contain global data.

    device[0x09080004]=\epoc32\release\ARMV5\urel\_h4hrp_euart.pdd     "Sys\Bin\euart1.pdd"
  • The memmodel keyword specifies the memory model to be used at runtime.

    memmodel multiple 0x100000
  • The variant keyword defines hardware variants.

    variant[0x09080004]=\epoc32\release\ARMV5\urel\_h4hrp_ecust_tv.dll     "Sys\Bin\ecust.dll"
  • The PlatSecDiagnostics keyword deals with the display of diagnostic messages when the platform security policy check fails.

    PlatSecDiagnostics ON

For detailed information on keywords, refer to Keywords.