SLUAAP5 july   2023 UCD3138 , UCD3138064 , UCD3138064A , UCD3138128 , UCD3138128A , UCD3138A , UCD3138A64

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Why Lockup Can Occur
  5. 2Reasons for Lockup
    1. 2.1 Wrong Code in the load.asm
    2. 2.2 Misoperation with TI GUI
    3. 2.3 zero_out_integrity_word Function Fails
    4. 2.4 PMBus Communication Fails
    5. 2.5 Unexpected Occurrences
  6. 3How to Avoid a Lockup
  7. 4Unlock with JTAG
    1. 4.1 Enable JTAG Functionality
    2. 4.2 New Target Configuration in CCS
    3. 4.3 Clear the Flash
  8. 5Summary
  9. 6References

Wrong Code in the load.asm

In load.asm, if the following red lines are removed, but the two blue lines remain, this can cause the device to reset continuously since r4 does not have a valid value. If this is the case, the device locks permanently and these 5 lines are removed entirely or remain.

B_fast_interrupt
         .align 4
         .sect ".text"
             .state32
c_int00
;            B      c_int00 
             LDR          r13, c_sup_stack_top ; initialize supervisor stack pointer
;            LDR          r4,c_mfbalr1_half0 ;point r4 at program flash base address register
;            MOV          r0,#0x62 ;make block size 32K, address 0, read only
;            STRH   r0,[r4]; store it there
             LDR          r0,c_mfbalr2_half0_load ;set up data flash for write only
             STRH   r0,[r4,#8] ;put it into mfbalr2