Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM2432: Booting App Image API

Part Number: AM2432

Hi Team,

I received a question from my customer below. 

We have a custom board and would like to deploy the APP image to external RAM for booting.
I would like to check if there is an API that can be used for the following operations or if there is an example that can be used as a reference.
1. Relocate the vector table to external RAM.
2. Run the APP image in external RAM.

Best regards,

Mari Tsunoda

  • Hi Mari,

    1. Relocate the vector table to external RAM.
    We have an API called Bootloader_socCpuSetEntryPoint which can be used after the vector table is copied to RAM.
    2. Run the APP image in external RAM.

    We have an API called Bootloader_rprcImageLoad copies the image from External Flash to RAM based on the address mentioned in the RPRC section headers. After the image is loaded in the RAM, the application can be run via Bootloader_runCpu API which resets the CPU and runs it from the VTOR/vector table address set via Bootloader_socCpuSetEntryPoint.

    Hope that helps.

    BR,
    Aakash

  • Hi Aakash, 

    So there is no API to copy the vector table to RAM then? They will have to copy it to RAM themselves?

    Also, you mention that it copies the image from external flash to RAM in the AM243x, but they want to run the app image itself in their external RAM, not external flash. Does the same API apply?

    Best regards,

    Mari

  • Hi Mari,

    The Bootloader_rprcImageLoad itself copies everything from External Flash to RAM. The vector table will be part of the RPRC image and will be relocated by this function to the RAM. This is done with the other code and data sections which are suppose to be in RAM.

    Currently flor the OOB examples, the vector tables are relocated to TCM memory. This can be changed by changing it to External RAM in the linker and RPRC tool and SBL will take care of it automatically.

    Hope that helps.

    BR,
    Aakash