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.
Tool/software:
Hello,
By default, the OCRAM set aside for executing the SBL from address 0x7000 0000 in linker.cmd is 0x40000 (256KiB).
I am using TI's sbl_ospi.release.tiimage SBL for the foreseeable future so I would like to allocate the minimum RAM to the SBL to allow more room for application code.
<Question> How much OCRAM memory does sbl_ospi.release.tiimage actually use on execution please?
Thank you.
Hi Kier,
How much OCRAM memory does sbl_ospi.release.tiimage actually use on execution please?
It would depend on the functionality you would be using;
For example if you are opting for the fast boot: AM263Px MCU+ SDK: Achieving Fast Secure Boot and Boot time calculator
then keeping 256KiB is necessary due to streaming service.
But I would recommend having 256KiB minimum for SBL.
Also If you are looking for a way to monitor memory usage of SBL at runtime, you could fill the entire memory range with a certain value (using the fill directive in the linker command file - please see the Assembly Language Tools Users Guide for more details), and then view the memory at runtime (using memory browser) to determine how much of it has been used. The .stack section is usually the section in RAM that can vary in size based on your application's needs.
Useful info thank you Nilabh but I'm only talking about your SBL 'sbl_ospi.release.tiimage' already built by TI located here:
C:\ti\mcu_plus_sdk_am263px_09_02_00_56\examples\drivers\boot\sbl_ospi\am263px-cc\r5fss0-0_nortos\ti-arm-clang
I don't wish to build my own.
Having said that, I think I found the answer in the .map file located in the above directory. Sorry I should have looked harder. Anyway, it looks like your SBL uses about 216KiB.
Just one remaining question: The load origin of the SBL is 7000 2000 according to the map file but the standard memory region in the TI application examples starts at 0x7000 0000:
<Question> Can I change the above SBL Start Address to 0x7000 2000 and use region 0x7000 0000 to 7000 1FFF for application?
Glad to know you were able to find the info.
Just one remaining question: The load origin of the SBL is 7000 2000 according to the map file but the standard memory region in the TI application examples starts at 0x7000 0000:
Tis cannot be changed as ROM expects SBL at this location. ROM Boot Flow in AM26x devices (ti.com)
<Question> Can I change the above SBL Start Address to 0x7000 2000 and use region 0x7000 0000 to 7000 1FFF for application?
You cannot change the SBL start address but you can still use the 70000000 to 70001FFF for your use case.
I would recommend reading these: (2) AM2634: Clarify application usage of SBL reserved memory from 0x70002000 to 0x70040000 - Arm-based microcontrollers forum - Arm-based microcontrollers - TI E2E support forums