ZynqImageHeaderStructure does not match with the datafields in the manual
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 64
- Forks
- 56
- PR merge metrics
- No merged PRs in 30d
Description
Hello,
according to
https://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_2/ug1283-bootgen-user-guide.pdf
Page 16, Table 4: Zynq-7000 SoC Device Image Header,
the content of the structure should be
0x0: next image header
0x4: corresponding partition header
0x8: Reserved
0xC: Partition Count length (number of partitions)
0x10..N Image name
N: String terminator
N+4 Reserved
However, in https://github.com/Xilinx/bootgen/blob/d000746f9621000042d9469686ee867d73321c17/imageheadertable-zynq.h
ZynqImageHeaderStructure is defined as:
0x0: next image header
0x4: corresponding partition header
0x8: dataSectionCount
0xC: imageNameLength
0x10..N Image name
So the imageNameLength seems to be wrong. Moreover, when reading the data field imageNameLength, I always get a 1, even if there is valid name with > 10 chars present. So this indeed looks much more like being the number of partitions, not the name length.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read page 16, Table 4 of the linked UG1283 manual and compare it with ZynqImageHeaderStructure in imageheadertable-zynq.h. Confirm the field meanings and offsets, then update the structure and verify that the partition count and image name data match the documented layout.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- cli, embedded-iot
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100