Hi,

 

I’m trying to add platform power control functions (to power off/on peripherials) to the SPM.  Are there any examples of this?  What is the cleanest way to implement?  Can it be done via adding code to source/third_party/tfm/platform/ext/target/<vendor>/ and compiling into the platform_s target?

 

Figure 3 from DEN0063 shows the connection between SPM and PRoT partitions is IMPLEMENTATION DEFINED.  How does the TF-M implement PRoT partitions to call the SPM?  Can it be a direct API call?  I did see platform_svc_handlers() but I assume that was for use by ARoT partitions (unpriviledged).

 

DEN0063 PSA Firmware Framework:

Some platforms include functionality that can only be accessed by firmware at the highest privilege level. For example, platform power control or control registers that are shared by secure and non-secure firmware. These Platform services must be implemented as part of the SPM, but the mechanism by which the NSPE firmware accesses these services is IMPLEMENTATION DEFINED.

 

Regards,

 

Brian Quach

SimpleLink MCU

Texas Instruments Inc.