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.

AM62L: Get SoC UID in bootloader

Part Number: AM62L

Hi,

The TISCI API used to make the SOC_UID available to the bootloader and Linux via the TISCI_MSG_GET_SOC_UID call. On AM62l TISCI is no longer provided to the non secure world. What are your plans to make the SOC UID available again? Will there be a custom SIP call
to the TF-A or something like that? Will at some point the TISCI API available again?

  • Yes, you're right that only subset of TISCI API on OTP efuse programming are currently supported via TF SiP services
    https://github.com/TexasInstruments/arm-trusted-firmware/blob/ti-master/plat/ti/k3/include/k3_sip_svc.h#L17
    which call into tisci driver under TF
    https://github.com/TexasInstruments/arm-trusted-firmware/tree/ti-master/plat/ti/k3/common/drivers/ti_sci
    Best,
    -Hong

  • This doesn't answer my questions

  • Due to the new AM62L SoC architecture, there's SW re-architecture on SW entity (u-boot/kernel/OPTEE... etc...) calling the TIFS secure services as well as calling the DM-services (TF-A on AM62L). In addition to the SoC_UID service, any other secure services are needed?
    I'm checking internally on schedule estimate.
    Best,
    -Hong

  • Not that I am aware of currently. It would however be good if we could read back the fused SMPK/BMPK hashes from the bootloader or Kernel

  • The SMPK-H & BMPK-H are read-accessible from MMR registers.
    - SMPK-H part1: starting @0x44234800 with len=32 bytes
    - SMPK-H part2: starting @0x44234850 with len=32 bytes
    - BMPK-H part1: starting @0x44234900 with len=32 bytes
    - BMPK-H part2: starting @0x44234950 with len=32 bytes

    You'll find more details from <Table 10-4632. Security Manager Registers> in K3 Security Hardware Architecture TRM.

    I'm attaching a sample log on AM62L HS-SE where I programmed the TI testing SMPK-H & BMPK-H.

    Best,
    -Hong

    NOTICE:  bl1_plat_arch_setup arch setup 
    NOTICE:  Booting Trusted Firmware
    NOTICE:  BL1: v2.12.0(release):11.01.14-1-g6c8ef6729
    NOTICE:  BL1: Built : 17:20:39, Nov 13 2025
    NOTICE:  BL1: dram_class: 11
    NOTICE:  lpddr4: post start - PI training status=0x27c0a000 
    NOTICE:  bl1_platform_setup DDR init done
    NOTICE:  k3_bl1_handoff ENTERING WFI - end of bl1
    NOTICE:  BL31: v2.12.0(release):11.01.14-1-g6c8ef6729
    NOTICE:  BL31: Built : 17:20:40, Nov 13 2025
    NOTICE:  SYSFW ABI: 4.0 (firmware rev 0x000b '11.1.12-v11.01.12 (Fancy Rat)')
    ERROR:   Agent 0 Protocol 0x10 Message 0x7: not supported
    
    U-Boot SPL 2025.01-gc779c758475c-dirty (Nov 13 2025 - 14:20:45 -0600)
    SPL initial stack usage: 1984 bytes
    Trying to boot from MMC2
    ERROR:   Agent 0 Protocol 0x10 Message 0x7: not supported
    
    
    U-Boot 2025.01-gc779c758475c-dirty (Nov 13 2025 - 14:20:45 -0600)
    
    SoC:   AM62LX SR1.1 HS-SE
    Model: Texas Instruments AM62L3 Evaluation Module
    DRAM:  2 GiB
    ERROR:   Agent 0 Protocol 0x10 Message 0x7: not supported
    Core:  82 devices, 31 uclasses, devicetree: separate
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from nowhere... OK
    In:    serial@2800000
    Out:   serial@2800000
    Err:   serial@2800000
    Net:   eth0: ethernet@8000000port@1
    Warning: ethernet@8000000port@2 (eth1) using random MAC address - fe:18:36:7d:ca:ed
    , eth1: ethernet@8000000port@2
    Hit any key to stop autoboot:  2  0 
    => md.b 0x44234800 0x200
    44234800: 1f 60 02 b0 7c d9 b0 b7 c4 7d 9c a8 d1 aa e5 7b  .`..|....}.....{
    44234810: 8e 87 84 a1 2f 63 6b 2b 76 0d 7d 98 a1 8f 18 97  ..../ck+v.}.....
    44234820: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234830: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234840: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234850: 60 df d0 f2 3e 2b 0c b1 0e c7 ed c7 c6 ed ac 3d  `...>+.........=
    44234860: 9b df ef e0 ed dc 3f ff 7f e9 ad 87 51 95 52 7d  ......?.....Q.R}
    44234870: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234890: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442348a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442348b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442348c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442348d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442348e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442348f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234900: 38 4b e2 78 a7 a5 0e b2 5a fd ff ac 2e 8b d3 06  8K.x....Z.......
    44234910: f8 2a 3b 51 a7 70 f8 05 6c 9d de b9 f3 1b 0d 3d  .*;Q.p..l......=
    44234920: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234930: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234940: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234950: 3e a0 06 3e 6d e3 12 7a 47 c8 a1 44 3f c7 e1 0d  >..>m..zG..D?...
    44234960: ad ff b5 16 01 ae ae b4 99 d6 07 e0 28 74 cd 80  ............(t..
    44234970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    44234990: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442349a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442349b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442349c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442349d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442349e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    442349f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    =>