Difference between revisions of "i.MX6SoloX"
(24 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
− | + | 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.
Contents
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.