Some TI K3 SoCs like J721S2, and J784S4 have a HSM (High Security
Module) M4F core in the Wakeup Voltage Domain which could be used to
run secure services like Authentication. Boot flow for HSM M4 core is
different than the general purpose M4F cores, and is as below:

1. Request control of HSM M4F remote processor.
2. Assert Reset on the HSM M4F remote processor.
3. Request Secure Entity to Authenticate and Load HSM firmware into
   core's internal SRAM memory region. For GP device, load the firmware
   manually into core's SRAM region.
4. Deassert Reset on the HSM M4F remote processor.
5. Release control of HSM M4F remote processor.

This series adds support to boot HSM M4 core from R5 SPL stage. The HSM
firmware is packed inside the tispl.bin fit image. The firmware is
unpacked into a temporary DDR address which is then used to load HSM
core. The configs to boot HSM M4 core are disabled by default.

Test logs after enabling HSM boot configs:
https://gist.github.com/3V3RYONE/608f16c7c60c27be1343957b4955dc1a

Beleswar Padhi (4):
  arm: mach-k3: Add config option for booting HSM core
  arm: dts: k3-binman: Add template for packing HSM firmware
  arm: dts: k3-{j721s2/j784s4}-binman: Pack HSM firmware inside
    tispl.bin
  arm: mach-k3: r5: common: Add support to boot HSM M4 core

 arch/arm/dts/k3-binman.dtsi        | 11 ++++
 arch/arm/dts/k3-j721s2-binman.dtsi | 12 +++++
 arch/arm/dts/k3-j784s4-binman.dtsi | 14 +++++
 arch/arm/mach-k3/Kconfig           |  8 +++
 arch/arm/mach-k3/r5/common.c       | 84 +++++++++++++++++++++++++++++-
 5 files changed, 128 insertions(+), 1 deletion(-)

-- 
2.34.1

Reply via email to