J. Eastlack

JTAG Debugging - Connecting to i.MX53, i.MX51 TO2, i.MX37, i.MX31, and i.MX25 using RVDS 3.1

Discussion created by J. Eastlack Employee on Jun 15, 2011

Connecting to i.MX53, i.MX51 TO2, i.MX37, i.MX31 and i.MX25 using RVDS 3.1 
RVI update:
In order to connect to i.MX51 TO2 RVI updates are required. 
Patches must be applied in this order:

  1. ARM-RVI-3.1.0-754-base.rvi
  2. ARM_RVI-3.1.3-776-patch.rvi
  3. ARM-RVI-3.2.0-850-base.rvi
  4. ARM-RVI-3.2.6-875-Engineer-patch.rvi

Note - Check ARM's website for patches


Note: after the update ETMBUF is not listed as a registered option. Use an unregistered device of IR length 4 in place of ETMBUF. 

i.MX53

  • Same as i.MX51 TO2 except Coresight base address is 0xC0008000

i.MX50

  • Same as i.MX53 -> Coresight base address is 0xC0008000

i.MX51 TO2 

  • Connect RVICE to MX51 board using short JTAG parallel cable.  LVDS probe cannot be used. 
  • Configure the scan chain with the following connections (TDI => Unknown => Unknown => ARMCS-DP => Cortex-A8)
    • Add Device=>Custom Device=>UNKNOWN=>IR Length = 5
    • Add Device=>Custom Device=>UNKNOWN=>IR Length = 4
    • Add Device=>Registered Device=>CoreSight=>ARMCS-DP
    • Add Device=>Registered Device=>Cortex=>Cortex-A8 
  • Update the CoreSight base address as follows:
    • Right Click on Cortex-A8 Device
    • Select Configuration
    • Set CoreSight base address = 0xE0008000
    • Save the configuration


Save and Close. 

i.MX37 
After updating RVICE to version 3.1 (needed to work with MX51), you'll need to add a new configuration as below to talk to MX37.
In order to connect to i.MX37 TO2 RVI updates are required. http://compass.freescale.net/go/179841424
Patches must be applied in this order:

  1. ARM-RVI-1.6.0-581-base.rvi
  2. ARM_RVI-1.6.1-583-patch.rvi
  3. Metrowerks-RVI-1.1.0-172-patch-MWZAS1.rvi
  • Configure the scan chain with the following connections (TDI => ETMBUF => ARM1176JZF-S => StarCORE140 => SDMA => SJC)
    • Add Device=>ETMBUF
    • Add Device=>ARM1176JZF-S
    • Add Device=>StarCORE140
    • Add Device=>SDMA
    • Add Device=>SJC
        

Save and Close. 


i.MX31 and i.MX35 
You will also need to add a new configuration as below to talk to MX31.

  • Configure the scan chain with the following connections (TDI => Unknown => Unknown => ARM1136JF-S => ETMBUF)


    • Add Device=>Custom Device=>UNKNOWN=>IR Length = 4
    • Add Device=>Custom Device=>UNKNOWN=>IR Length = 5
    • Add Device=>Registered Device=>ARM1136JF-S
    • Add Device=>Registered Device=>ETMBUF (IR Length = 4)



Save and Close 

i.MX25 
You will also need to add a new configuration as below to talk to MX25.

  • Configure the scan chain with the following connections (TDI => Unknown => Unknown => ARM926EJ-S => ETMBUF)


    • Add Device=>Custom Device=>UNKNOWN=>IR Length = 5
    • Add Device=>Custom Device=>UNKNOWN=>IR Length = 4
    • Add Device=>Registered Device=> ARM926EJ-S
    • Add Device=>Registered Device=>ETMBUF (IR Length = 4)



Save and Close. 

i.MX23 & i.MX28

For i.MX23,  uncheck the "Use Adaptive Clock if detected" option and set the JTAG Clock Speed to 400 KHz.  After that you can use the Auto Configure Scan Chain option.  Only one TAP should show up which is the ARM926ej-s.  Now you can save this configuration for later use. 
You should now be able to connect to i.MX53, i.MX51, i.MX37, i.MX31, i.MX28, i.MX25, and i.MX23.

Outcomes