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.

TDA4VM: JTAG Unlock

Part Number: TDA4VM

For JTAG Security, there are three options for  JTAG unlock,

1.R5 debug unlock via SBL cert

2.On device via DMSC API

3.Externally via JTAG port

My question is :Is there any detailed description about the unlock method?

  • Guanjun,

    The JTAG unlock is effectively a call to the system firmware in all three cases. #3 is the primary method. Please start with http://software-dl.ti.com/tisci/esd/latest/2_tisci_msgs/security/sec_ap_data_transfer.html?highlight=jtag#secure-ap-command-interface .

    Best regards,

    Dave

  • Dave,

    As method 3:Externally via JTAG port,  I read the description about Secure AP command interface,

    My understanding about the unlock process as following:

    (1)External debugger (such as XDS110)  connects to the JTAG port

    (2)External debugger send the command to Get UID

    (3) Based on the UID , a certificate is generated

    (4)External debugger send the certificate 

    (5)System firmware on the DMSC checks the certificate

    Am I right about the process? I still have some query about the Secure AP:

    1.What kind of protocol is used for the Secure AP command? JTAG protocol? because JTAG is locked

    2.The certificate is generated by whom? TI or ?

    3.For the same UID, the certificate generated on  different time is the same?

    4.what is the function of DebugSS? is it hardware? what is the relation between DebugSS and JTAG?

    5.Secure Access Point (Sec AP) in the DebugSS, what is the function of Sec  AP?

  • Guangjun,

    [TI] The flow is as you describe.


    Q1.
    [TI] There are four registers in this Secure AP (Secure Access Point) that are accessible even when JTAG is locked. In the case of JTAG being locked, what it really means is that all other Access Points (to cores, buses, memory, etc) are disabled from reset. But just this one Secure Access Point with its limited interface (2 Rx and 2 Tx registers) is open and can be addressed over the JTAG connection.

    Q2.
    [TI] It should be generated by whomever owns the programmed active customer keys.

    Q3.
    [TI] The UID for that one device is constant, and therefore the created certificate is valid for all time, for that particular device. Care should ALWAYS be taken to avoid such certificates from leaking out where they could compromise that one device/system.

    Q4.
    [TI] DebugSS = Debug Sub-system. It is a centralized resource for controlling debug access on the part, which is accessed via the JTAG interface. The debug architecture is rather involved, but I think this explanation is sufficient.

    Q5.
    [TI] The Secure Access Point, as defined above, exists to provide this very limited interface for talking to a secure device and issuing it requests. As explained above, it is the only access point (end-point) that can be reached on a secure device, so that a unlock request can be issued.

    Best regards,

    Dave

  • Dave,

    Thanks for your reply, 

    As a user, What I want to know is: How to unlock the JTAG step by step.

    is there any user's manual? 

  • Guangjun,

    Code Composer Studio does allow for you to load certificates, which can be used to communicate to the target. This is available in CCS -> Help as well as at http://127.0.0.1:61906/help/index.jsp?nav=%2F13 

    In CCS -> Window -> Preferences with “show advanced settings” there is a Remote Systems -> SSL option where you can add certificates. The certificate definition is clarified in the TISCI documentation link provided earlier.

    We are working to add further documentation for secure device support and the unlock procedure to provide a more clear step-by-step for customers to follow. 

    Best regards,

    Dave