12.07.2015 Views

PXA3xx Boot ROM Reference Manual - Marvell

PXA3xx Boot ROM Reference Manual - Marvell

PXA3xx Boot ROM Reference Manual - Marvell

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3 Software RequirementsThis chapter lists the requirements that must be performed by the OBM for the NAND and NORplatforms.3.1 Size Restrictions for the Device Keying BinaryThe Device Keying Binary should be restricted in size, based on the available internal SRAM on theprocessor used. Refer to the internal SRAM usage in Section 2.3.1, “ISRAM Usage”. <strong>Marvell</strong>suggests that the Device Keying Binary size be restricted to less than 64 KB, based on the minimuminternal SRAM that is used (128 KB). Of that 128 KB of internal SRAM, the <strong>Marvell</strong> ® WTM locks 32KB, which leaves 96 KB for software usage in a minimum internal SRAM scenario.3.2 OEM <strong>Boot</strong> Module Requirements for NANDPlatformsThe OEM boot module is responsible for performing all of the relevant tasks required for booting theplatform. OEMs can choose between using their proprietary mechanism for identifying and loadingthe images from the NAND flash, or using the <strong>Marvell</strong> proposed bad block/relocation table located inBlock 0 of the NAND flash in identifying and loading images from the flash. An example of an OEMboot module that uses the <strong>Marvell</strong> proposed bad block/relocation table is provided as a template.The requirements that must be completed by the OEM boot module include the following:• Identifying the OS loader/image in the NAND flash• Loading the content of the OS loader/image from the NAND flash into either internal SRAM orthe DDR memory, as applicable• Integrity checking the OS loader/image for trusted platforms• Executing the loaded image.The OEM boot loader must first initialize the DDR memory when loading to DDR memory. The OEMboot module must also relocate the contents of a block that goes bad in the process of accessing theblock to a new block and update the bad block/relocation table of the platform.The OEM boot module in Block 0 must also have all the basic OS startup capabilities, such asidentifying reset reason and knowing when/how to identify and load the OS loader/image. Forexample, when returning from sleep resume, the OEM boot module simply performs the relevantrequirements or workarounds, and transitions to the OS image in the DDR; when returning fromhardware reset, the OEM boot module must perform a full DDR memory initialization and load theOS contents from the NAND flash to the DDR memory before transitioning to the DDR memory tocontinue execution.3.2.1 NAND OEM <strong>Boot</strong> Module Size RestrictionsIf the <strong>Marvell</strong> bad-block management table is used and the Trusted Image Module or image moduleis used, then the OEM boot module is restricted by the size of the available internal SRAM. If the<strong>Marvell</strong> bad-block management table or the image module is not present, then the OEM bootmodule is restricted to Block 0 of the NAND.3.3 NAND Bad/Relocation Block Table DefinitionThis section defines the bad-block relocation table that is used by the <strong>Boot</strong> <strong>ROM</strong> to load the OEMboot module and by the OEM boot module to identify and load the OS loader/image from the NAND12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758Copyright © 2010 <strong>Marvell</strong> PUBLIC RELEASE Doc. No. MV-S301208-00 Rev. -Page 23

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!