How to disable JTAG on i.MX 8M?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to disable JTAG on i.MX 8M?

Jump to solution
9,357 Views
christian_mauderer
Contributor III

The i.MX 8M reference manual mentions a JTAG_SMODE[1:0] and a SJC DISABLE e-fuse that are necessary to disable JTAG access. But I can't find the address or location of the fuses. Where can I find them? Is there some document describing it?

Labels (1)
0 Kudos
Reply
1 Solution
8,153 Views
bernhardfink
NXP Employee
NXP Employee

Here is the description of these fuse bits:

Fuse AddressFuse NameFunctionSetting
0x470[21]SJC_DISABLEDisable/Enable the Secure JTAG Controller module. This fuse is used to create highest JTAG security level, where JTAG is totally blocked.0 - Secure JTAG Controller is enabled
1 - Secure JTAG Controller is disabled
0x470[23:22]JTAG_SMODE[1:0]JTAG Security Mode. Controls the security mode of the JTAG debug interface00 - JTAG enable mode
01 - Secure JTAG mode
1x - No debug mode

View solution in original post

17 Replies
8,168 Views
Nocker
Contributor II

Hi,

I have the exact same question, can someone let me know the answer please?

And I agree with what someone else has posted, it is not very useful when the answer results in a private email.

Regards,

Chris

0 Kudos
Reply
8,154 Views
bernhardfink
NXP Employee
NXP Employee

Here is the description of these fuse bits:

Fuse AddressFuse NameFunctionSetting
0x470[21]SJC_DISABLEDisable/Enable the Secure JTAG Controller module. This fuse is used to create highest JTAG security level, where JTAG is totally blocked.0 - Secure JTAG Controller is enabled
1 - Secure JTAG Controller is disabled
0x470[23:22]JTAG_SMODE[1:0]JTAG Security Mode. Controls the security mode of the JTAG debug interface00 - JTAG enable mode
01 - Secure JTAG mode
1x - No debug mode
66 Views
Bhardwaj
Contributor I

Hi,

When we are read the bank 1 word 3 in I.MX8MPLUS after the U-BOOT ,we observe the below value.

Bhardwaj_0-1761211742453.png

Does it means ,Is JTAG is Disable?

 

You said that  SJC_DISABLE  and JTAG_SMODE are set high ,that means JTAG is Disable.

Does the I.MX8M  fuse address are applicable for I.MX8MPLUS ?.

Fuse AddressFuse NameFunctionSetting
0x470[21]SJC_DISABLEDisable/Enable the Secure JTAG Controller module. This fuse is used to create highest JTAG security level, where JTAG is totally blocked.0 - Secure JTAG Controller is enabled
1 - Secure JTAG Controller is disabled
0x470[23:22]JTAG_SMODE[1:0]JTAG Security Mode. Controls the security mode of the JTAG debug interface00 - JTAG enable mode
01 - Secure JTAG mode
1x - No debug mode

 

0 Kudos
Reply
57 Views
bernhardfink
NXP Employee
NXP Employee

You seem to have a closed part. All 3 relevant bits are set. Bit definitions and the location are valid for i.MX 8M Plus.

Make a crosscheck with a debugger, if you don't see any core appearing, then the JTAG is definitely closed.

Regards,
Bernhard.

0 Kudos
Reply
52 Views
Bhardwaj
Contributor I

1.How to enable JTAG Mode in I.MX8MPLUS ? 

2.Is there any possibility to override that register in I.MX8MPLUS ? for I.MX6 a bit is mentioned to override JTAG_SMODE by setting the BOOT_CFG_LOCK bits as shown below?.

Bhardwaj_0-1761215546734.png

 

0 Kudos
Reply
47 Views
bernhardfink
NXP Employee
NXP Employee

Closed is closed. If there would a way to re-open it, the closed configuration wouldn't make sense. The OTP bits are really just one-time-programmable.

The alternative way to access the chip is the Serial Download Protocol (SDP) on the USB port.

According to your readout, bit[28] = BT_FUSE_SEL is not set, so the device can still boot taking a configuration from external BOOT_MODE pins.

 

Regards,
Bernhard.

0 Kudos
Reply
8,287 Views
M_J
Contributor I

Hi @igorpadykov 

Could you forward to me details as well?

Kind regards,
Marcin

0 Kudos
Reply
8,206 Views
bernhardfink
NXP Employee
NXP Employee

Meanwhile these fuse bits have been documented in the Security Reference Manuals of 8M Nano and 8M Plus. It's the same structure as in 8M and 8M Mini.

I will check

  • Why we haven't updated it for 8M Mini and 8M yet
  • Why it is not part of the OTP fuse description in the normal Reference Manual


Regards,
Bernhard.

0 Kudos
Reply
9,069 Views
igorpadykov
NXP Employee
NXP Employee

Hi Christian

one can look at

Understanding how to burn eFuses on i.MX8 and i.MX8x families - i.MXDev Blog 

https://community.nxp.com/thread/505184 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply
9,069 Views
christian_mauderer
Contributor III

Hello Igor,

thanks for the reply. My problem is not how to set a fuse in general. It's more the problem where this specific fuses are located.

For example: The reference manual tells me that BT_FUSE_SEL is at 0x470[28] and it tells me that this is bank 1 word 3. But it doesn't tell me a location for JTAG_SMODE[1:0] and SJC DISABLE. For i.MX6 or i.MX7 there is another document that tells me the location (https://www.nxp.com/docs/en/application-note/AN4581.pdf ). But I didn't find one for i.MX8.

Best regards

Christian

0 Kudos
Reply
9,069 Views
igorpadykov
NXP Employee
NXP Employee

Hi Christian

I sent additional details by mail.

Best regards
igor

6,787 Views
xuxa
Contributor I

Can you also send me the additional details?

Thank you.

0 Kudos
Reply
6,760 Views
bernhardfink
NXP Employee
NXP Employee

I marked my answer from last year as solution, so that it's easier to find.

0 Kudos
Reply
8,370 Views
marcusfolkesson
Contributor I

Please post the solution here instead of sending it to one single recipient. There are too many threads here that end with "I sent you a mail". The thread is useless for everyone but the thread creator.

I would like to have this information as well.

Thanks,
Marcus

0 Kudos
Reply
8,582 Views
tgs
Contributor I

Hi Igor

Can you please send me the same information as well.

Thanks in advance,

TG

0 Kudos
Reply
9,069 Views
marcelziswiler
Senior Contributor I

Thanks, igorpadykov, very helpful to answer this by mail!

How about others like us who are also wondering about all this?

0 Kudos
Reply
9,069 Views
christian_mauderer
Contributor III

Hello Igor,

thank you. That solved my question.

Best regards

Christian

0 Kudos
Reply