Post Go back to editing

Secure JTAG

Thread Summary

The user encountered issues programming and verifying secure keys for JTAG on an ADSP-SC589 using the Program_OTP example from EE-366 notes. The problem was resolved by using the `aesKey` parameter instead of `aesWrapKey` in the `configureBlw` function within the `SecureBoot_OpenPart` example. The user also needed to ensure the OTP region was correctly defined in the apt file and use the latest CCES version 2.11.1 for proper memory mapping and key programming.
AI Generated Content
Category: Hardware
Product Number: SC589
Software Version: cces 2.8.3

Hi,

Is it possible to program just a secure key for the JTAG or does enabling secure jtag also mandate that a secure boot stream is required ?

I've tried to experiment with an old board with the code based on the Program_OTP util in the EE-366 notes, but after programming the key & then reading it back to verify, it always comes back as zeros. It seems to program fine and I can see the key being programmed is valid.


/* call the api */
if(!adi_rom_otp_pgm(&data)) { return false; }

/* verify the data was written */
return VALIDATE(secure_emu_key);

where

#define VALIDATE(otpkey) validate_pgm(otpcmd_##otpkey,*key,ROM_OTP_SZ_##otpkey)

I've read that the OTP regions is memory mapped, I eventually found the address in an apt file as 

 
{ 0x24000000u, 0x240FFFFFu, ADI_MMU_RW_UNCACHED }, /* 1MB OTP Space */

but I can't view that address in a cces memory window - should I be able to ?

Is there any documentation about how to use cldp to program the OTP ?