Difference between revisions of "i.MX6SoloX"

From SEGGER Wiki
Jump to: navigation, search
 
(22 intermediate revisions by 6 users not shown)
Line 1: Line 1:
J-Link script files are necessary to connect to the A9 and M4 core.
+
The '''NXP iMX6SoloX''' are multi-core MCUs composed of a Cortex-M4 and Cortex-A9 core.
  +
__TOC__
   
  +
==Flash Banks==
A9 core:
 
  +
===QSPI Flash===
[[File:iMX6SoloX_Connect_CortexA9.JLinkScript]]
 
  +
QSPI flash programming requires special handling compared to internal flash. For more information about this, please see the [[QSPI Flash Programming Support | QSPI Flash Programming Support article]].<br>
  +
J-Link supports the following pin configurations for iMX6SoloX:
   
  +
{| class="seggertable"
M4 core:
 
  +
|-
[[File:iMX6SoloX_Connect_CortexM4.JLinkScript]]
 
  +
! Alternate function !! Port / Pin
  +
|-
  +
| QSPI2A_SS0_B || IOMUXC_SW_MUX_CTL_PAD_NAND_ALE
  +
|-
  +
| QSPI2A_DATA2 || IOMUXC_SW_MUX_CTL_PAD_NAND_CE0_B
  +
|-
  +
| QSPI2A_DATA3 || IOMUXC_SW_MUX_CTL_PAD_NAND_CE1_B
  +
|-
  +
| QSPI2A_SCLK || IOMUXC_SW_MUX_CTL_PAD_NAND_CLE
  +
|-
  +
| QSPI2A_DATA1 || IOMUXC_SW_MUX_CTL_PAD_NAND_READY_B
  +
|-
  +
| QSPI2A_DATA0 || IOMUXC_SW_MUX_CTL_PAD_NAND_WP_B
  +
|}
   
  +
==Multi-Core Support ==
How to use script files:
 
  +
Before proceeding with this article, please check out the generic article regarding Multi-Core debugging [[Multi-Core_Debugging | here]].<br>
Please refer to J-Link User Guide (UM08001), chapter 5.10 "J-Link script files"
 
  +
The iMX6SoloX family feature a Cortex-A9 and Cortex-M4 core.<br>
  +
In below, the debug related multi-core behavior of the J-Link is described for each core:
  +
===Cortex-A9===
  +
====Init/Setup====
  +
*Enables debugging
  +
====Reset====
  +
*No Reset is performed.
  +
===Secondary core(s)===
  +
====Init/Setup====
  +
*Enables debugging
  +
====Reset====
  +
*No reset is performed.
   
  +
==Evaluation Boards==
  +
*[[NXP iMX6SX SABRE]]
   
  +
==Example Application==
Startup procedure is:
 
  +
*[[NXP iMX6SX SABRE#Example_Project | NXP iMX6SX SABRE]]
 
1) Start debug session that connects to A9 and let it run the application to the point that enables the M4
 
 
2) Start debug session that connects to M4
 
 
[...]
 
 
x) Close debug session that connects to M4
 
 
x + 1) Close debug session that connects to A9
 
 
 
'''Important!'''
 
On the SoloX the M4 cannot be independently debugged without having something running on the A9 that enables the M4.
 
Since Freescale removed some features from the i.MX6 to the SoloX, it is no longer possible to easily enable the M4 from the debug interface and so being able to debug it completely independent from the A9.
 

Latest revision as of 17:36, 23 February 2024

The NXP iMX6SoloX are multi-core MCUs composed of a Cortex-M4 and Cortex-A9 core.

Flash Banks

QSPI Flash

QSPI flash programming requires special handling compared to internal flash. For more information about this, please see the QSPI Flash Programming Support article.
J-Link supports the following pin configurations for iMX6SoloX:

Alternate function Port / Pin
QSPI2A_SS0_B IOMUXC_SW_MUX_CTL_PAD_NAND_ALE
QSPI2A_DATA2 IOMUXC_SW_MUX_CTL_PAD_NAND_CE0_B
QSPI2A_DATA3 IOMUXC_SW_MUX_CTL_PAD_NAND_CE1_B
QSPI2A_SCLK IOMUXC_SW_MUX_CTL_PAD_NAND_CLE
QSPI2A_DATA1 IOMUXC_SW_MUX_CTL_PAD_NAND_READY_B
QSPI2A_DATA0 IOMUXC_SW_MUX_CTL_PAD_NAND_WP_B

Multi-Core Support

Before proceeding with this article, please check out the generic article regarding Multi-Core debugging here.
The iMX6SoloX family feature a Cortex-A9 and Cortex-M4 core.
In below, the debug related multi-core behavior of the J-Link is described for each core:

Cortex-A9

Init/Setup

  • Enables debugging

Reset

  • No Reset is performed.

Secondary core(s)

Init/Setup

  • Enables debugging

Reset

  • No reset is performed.

Evaluation Boards

Example Application