Experiences of KGDB or JTAG on imx51 target

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

Experiences of KGDB or JTAG on imx51 target

1,369 Views
Cyanica
Contributor I

Hi,

I’m currently attempting to setup tools to enable me to debug a Linux kernel module on an imx513 based target.  Has anyone successfully achieved this using either a jtag based hardware solution or by using KGDB?  I am aware there is an issue with KGDB and the lack of poll routines in the imx serial code but have as yet been unable to resolve this problem using the patch posted on imxdev.org.  Ideally I would prefer to connect to the jtag hardware from an x86 Linux host running an Eclipse IDE via the GDB mechanism.  Would anyone care to share their experiences?

 

Many thanks,

 

Richard

Tags (1)
0 Kudos
6 Replies

1,034 Views
MaciejHalasz
Contributor I

Richard,

 

Signum JTAG probes are great. Glad you got a working solution.

 

-Maciej

0 Kudos

1,034 Views
Cyanica
Contributor I

Maciej,

 

Certainly when I originally posted the Segger probe wasn't compatible with the imx51 (regardless of what third party resellers were saying) and I had this confirmed by one of the Engineers at Segger.  In the end we went for the probe from Sigum as they were able to actually demonstrate their product working on the imx51 EVK.

 

Hope that helps,

 

Richard

0 Kudos

1,034 Views
MaciejHalasz
Contributor I

Richard,

 

Which Segger probe did you look at? They do have one that works with Cortex-A8 chips. I believe Digi international is using it for their Wi-i.MX51 ConnectCore modules.

 

Do you have any other JTAG probes in-house?

 

-Maciej

0 Kudos

1,034 Views
SunderSinghNegi
Contributor I

Hi Richard,

 

Does the patch provided on imxdev.org need some change?

I tried kgdb, but the host repeatedly showed timeout error. I am trying to debug an imx51 based target.

 

Regards,

Sunder

0 Kudos

1,035 Views
Cyanica
Contributor I

Thanks for that Stanley. 

 

Unfortuately we don't have the ARM RVD but it's nice to know it's possible! 

 

I've been doing a little more digging and have managed to something *almost* working with KGDB.  This involved successfully modifying the imx serial code as described on imxdev.org (http://www.imxdev.org/wiki/index.php?title=Mxuart_patch) and building in the appropriate bits into the kernel.  Unfortunately I can't actually set breakpoints but can connect to KGDB using GDB.

 

I turned my attention to Segger to see if their hardware debugger would be suitable but at this stage (18/1/11) it doesn't quite work with the imx51.

 

 

 


Stanley Lee said:

Hi Richard,

 

Hope this info helps:

And don't hesitate to mail to me (Xingyu.li@freescale.com) if you have any suggestion regarding how to run this forum better.

 

The following steps are required to establish a connection between RVD and the MX51:
Make sure to update the RVD firmware to support Cortex-A8 (ARM-RVI-3.1.0-754-base.rvi, ARM-RVI-3.1.3-776-patch.rvi)
Install RVD v3.1
Connect RVICE to MX51 board using short JTAG parallel cable.  LVDS probe cannot be used.
Create a new connection using the following configuration
Select RVICE connected to MX51
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
Using the connection you just created, disable vector catching and semihosting as follows:
Properties..Connection=RVI..Advanced_Information..Default..ARM_config..Vector catch = FALSE
Properties..Connection=RVI..Advanced_Information..Default..ARM_config..Semihosting..Enabled = FALSE
You should now be able to connect and debug MX51 using RVD.

 

Best Regards,

Stanley

0 Kudos

1,035 Views
StanleyLee
NXP Employee
NXP Employee

Hi Richard,

 

Hope this info helps:

And don't hesitate to mail to me (Xingyu.li@freescale.com) if you have any suggestion regarding how to run this forum better.

 

The following steps are required to establish a connection between RVD and the MX51:
Make sure to update the RVD firmware to support Cortex-A8 (ARM-RVI-3.1.0-754-base.rvi, ARM-RVI-3.1.3-776-patch.rvi)
Install RVD v3.1
Connect RVICE to MX51 board using short JTAG parallel cable.  LVDS probe cannot be used.
Create a new connection using the following configuration
Select RVICE connected to MX51
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
Using the connection you just created, disable vector catching and semihosting as follows:
Properties..Connection=RVI..Advanced_Information..Default..ARM_config..Vector catch = FALSE
Properties..Connection=RVI..Advanced_Information..Default..ARM_config..Semihosting..Enabled = FALSE
You should now be able to connect and debug MX51 using RVD.

 

Best Regards,

Stanley

0 Kudos