SPRADG2 January   2024 AM67 , AM67A , AM68 , AM68A , AM69 , AM69A , DRA821U , DRA821U-Q1 , DRA829J , DRA829J-Q1 , DRA829V , DRA829V-Q1 , TDA4AEN-Q1 , TDA4AH-Q1 , TDA4AL-Q1 , TDA4AP-Q1 , TDA4VE-Q1 , TDA4VEN-Q1 , TDA4VH-Q1 , TDA4VL-Q1 , TDA4VM , TDA4VM-Q1 , TDA4VP-Q1

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
  5. 2Device Type and Key Information Provided
    1. 2.1 Get Other Key Information via MCU UART
  6. 3HS Device Return
    1. 3.1 CRP Script Tool
    2. 3.2 Generate and Signs the WIR Certificate Binary (override.bin) Standalone
    3. 3.3 Generate the Binaries for Bench Test Standalone
  7. 4Summary
  8. 5References

Get Other Key Information via MCU UART

It has to be done to read key information such as the UID (Unique ID), DIE ID in advance before removing it from the customer board and sending it back for testing. This article recommends using the UART BOOT mode to analyze the characters printed by the MCU UART. The specific operation steps are as follows.

  1. Get UID.
    1. Configure boot mode of the board to UART boot and connect second MCU UART serial port of the board to the host PC, see the EVM Setup for J721E, and power on the EVM.
    2. The terminal prints some log as shown below. You need to remove the extra CCC at the end and save as a log file. Default HS Board log as below.
    3. mi02000000011a00006a376573000000000000000048535345020001000200010002a600000100010033c74f0c8631aa67a56d53b06f250d75cb2a9cf7a52d6eb5e21b5e824250d7e09c22d997f09dc9389ecaa3f7d2b64d3a76d6163aa09e928ea050e1da95507e661f6002b07cd9b0b7c47d9ca8d1aae57b8e8784a12f636b2b760d7d98a18f189760dfd0f23e2b0cb10ec7edc7c6edac3d9bdfefe0eddc3fff7fe9ad875195527df02f2a23c0ed9d5fcf6dfb3a097ee4207cb1e2a5956e07ba144b73fe71143982CCCCCCCCCCC
    4. Download the python script to parse the log in step 2.
    5. Use the following command to parse the log after getting the above two files. The parsed information is as shown:
      @Ubuntu18:~/Documents/summary/parse_uart_log$ python 7080.uart_boot_socid.py default_uart_hs.log 
      -----------------------
      SoC ID Header Info:
      -----------------------
      NumBlocks            : [2]
      -----------------------
      SoC ID Public ROM Info:
      -----------------------
      SubBlockId           :
      SubBlockSize         :
      DeviceName           : j7es
      DeviceType           : HSSE
      DMSC ROM Version     : [0, 1, 0, 2]
      R5 ROM Version       : [0, 1, 0, 2]
      -----------------------
      SoC ID Secure ROM Info:
      -----------------------
      Sec SubBlockId       : 2
      Sec SubBlockSize     : 166
      Sec Prime            : 0
      Sec Key Revision     : 1
      Sec Key Count        : 1
      Sec TI MPK Hash      : 33c74f0c8631aa67a56d53b06f250d75cb2a9cf7a52d6eb5e21b5e824250d7e09c22d997f09dc9389ecaa3f7d2b64d3a76d6163aa09e928ea050e1da95507e66
      Sec Cust MPK Hash    : 1f6002b07cd9b0b7c47d9ca8d1aae57b8e8784a12f636b2b760d7d98a18f189760dfd0f23e2b0cb10ec7edc7c6edac3d9bdfefe0eddc3fff7fe9ad875195527d
      Sec Unique ID        : f02f2a23c0ed9d5fcf6dfb3a097ee4207cb1e2a5956e07ba144b73fe71143982
  2. Get DIE ID.

    This document recommends that after entering the Linux of the customer board, type in the command line and use the following command line to read the DIE ID.

    echo `devmem2 0x43000020 w | tail -n1`
    echo `devmem2 0x43000024 w | tail -n1`
    echo `devmem2 0x43000028 w | tail -n1`
    echo `devmem2 0x4300002c w | tail -n1`

    After you get all the key information list above, you need share it to your support window. This will help the subsequent process for HS device return. If your device is a General Purpose (GP) type, provide this key information to your TI support window, then you can return this device directly without the files below for HS device return. Otherwise, you need to follow the steps in Section 3 to generate more binaries for TI can further test your device.