208
Development Tools User’s Guide
Intel
®
IXP2400/IXP2800 Network Processors
Linker
6.7.2.2
UOF Object Chunk Header
This is the variable portion of the obj-header and it must immediately precede the fixed section
(uof_uof_objHdr_T) in the file. This header, of type uof_chunkHdr_T, identifies and provides the
location of the object-chunks. The linker (UcLd) currently creates object-chunks that are identified
by the following literals: UOF_STRT, UOF_GTID, UOF_IMAG, UOF_MSEG, UOF_IMEM.
6.7.2.3
UOF_STRT
This object-chunk identifies the string table within the object and contains all the strings that are
used by the other object-chunks. The strings are NULL terminated, and referenced by a value that
is less than
tableLength as an offset
into this table. The strings in this table should not be
altered. This object is represented by the uof_strTab_T data type.
6.7.2.4
UOF_IMEM
This object-chunk, of type uof_initMem_T, contains the memory initialization values and
locations. The values are stored and written to memory as a sequence of bytes, therefore, the
attributes are only used when the byte-order of the values needs to be switched
cpuType
4 bytes: CPU family type -- IXP2400=2, IXP2800=4. This is a resolution of all the
cpu types from images (list files).
minCpuVers
2 bytes: The minimum CPU revision that the UOF will run on.
maxCpuVers
2 bytes: The maximum CPU revision that the UOF will run on.
maxChunks
2 bytes: The maximum of chunks that can be contained in an UOF chunk.
numChunks
2 bytes: Number of chunks currently being used.
reserved1
4 bytes: Reserved for future use.
reserved2
4 bytes: Reserved for future use.
UOF-object headers
MaxChunks * sizeof(uof_ChunkHdr) contiguous bytes of uof object headers.
chunkId
8 bytes: A unique value identifying the chunk.
offset
4 byte: Offset of the chunk relative to the begining of the object.
size
4 bytes: Size of the chunk in bytes.
tableLength
4 bytes: Total length of the table in bytes.
*strings
tableLength of bytes: NULL terminated strings.
symName
4 bytes: Symbol name string table offset.
region
1 byte: Memory region -- uof_MemRegion.
scope
8 bytes: 0 = global, 1 - local
reserved1
2 bytes: Reserved for future use.