How to Enable Debugging for i.MX RT1064 SIP 4M Flash Memory

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

How to Enable Debugging for i.MX RT1064 SIP 4M Flash Memory

Jump to solution
2,599 Views
yamakatb
Contributor III

Hello,

I am using a custom i.MxRT1064 board in EWARM.

I want to program in the internal 4MB SIP memory of i.MxRT1064.
I'm trying to debug using the SDK "iled_blinky", but when I start it I get a verify error.

This is the part I confirmed.
1.Boot Mode Setting: 00 (Boot From Fuses)
2.Debug Setting: flexspi_nor_debug
3. Symbol definition: XIP_EXTERNAL_FLASH = 0
    Symbol definition: XIP_BOOT_HEADER_ENABLE = 0

Is there anything else I should check to debug in internal memory?

Hardware Details
Device: MIMXRT1064
SDK Details
SDK Version: 2.7.0 (released 2019-12-19)
Host OS: Windows
Toolchain: IAR Embedded Workbench for ARM
ICE: I-jet (SWD)

Labels (1)
0 Kudos
1 Solution
2,415 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi T. Y.,

  You are always welcome! :smileyhappy:

  1. Boot mode select: 10  internal boot.

   If you only select "Boot From Fuses: 00", please check the RM content about this:

pastedImage_2.png

   If you didn't burn the fuse, it means your mode still the serial downloader mode.

  This mode will let the customer to download the app code with the UART or HID interface, they can use the mfgtool or the MCUbootUtility tool to download the code, but if they want to boot from the the internal side, they need to modify the fuse, please note, fuse just one time operated area, after it is burned, it can't be modified any mode, so, normally, we use the BOOT_MODE pin to select the mode at first.

  You can let the customer download the code with MCUbootUtility tool, whether they can connect the chip and download the code or not?

You can find the MCUbootUtility tool from this link:

https://github.com/JayHeng/NXP-MCUBootUtility/archive/v2.2.0.zip

the related user manual is:
https://github.com/JayHeng/NXP-MCUBootUtility

Q2

2. the "iled_blinky" IAR project select flexspi_nor_debug in the project.

3. Symbol definition, just used the default SDK project configuration:

> In addition to these settings, I changed the reset type of the debug option to the "core" type.
Then debug the project, the code will download to the internal 4M flash.
Is this the correct fix?

Answer: I still think customer's issue is the boot mode issue, the chip still in the serial download mode, not internal boot mode.

 

Q3

I thought that if I select flexspi_nor_debug in the IAR project and program it to the internal 4M flash, it works standalone. Currently, my board only works when I have a debugger attached. Is there any other way to get it to work standalone?

 Answer: This situation may still indicate the boot mode issue.

  You can try the RAM project, if it works, then download to the flash, if it is not work, you can try to burn the fuse map, let the chip boot from internal side. Check the RM Table 9-4. Boot eFUSE descriptions

Please note, fuse map just one time operation, just can modify 0 to 1, can't be modified back.

Wish it helps you!

 

If you still have questions about it, please kindly let me know.

Kerry

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

View solution in original post

0 Kudos
6 Replies
1,758 Views
pinkesh25gar
Contributor I

Hello,

We have custom board based on i.MXRT1171 family

Can you please tell us how to select internal boot mode : 10. Is there any utility or tool to accomplish this task ?

We are unable to flash code to QSPI flash as BOOT type is 00 (Boot from fuses)

pinkesh25gar_0-1641906576486.png

.

0 Kudos
2,415 Views
yamakatb
Contributor III

Hi kerryzhou


Sorry for the late reply.
Modified the circuit to change the Boot Mode to Internal Boot.
I was able to operate it stand-alone safely.
Thank you for your cooperation.

Best Regards,

T.Y.

0 Kudos
2,415 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi T. Y.,

  You are welcome!

   Any new question, welcome to create the new question post and let us know!

Best Regards,

Kerry

0 Kudos
2,415 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi  T. Y.,

   1. Boot mode select: 10  internal boot.

    2. the "iled_blinky" IAR project select flexspi_nor_debug in the project.

pastedImage_1.png

   3. Symbol definition, just used the default SDK project configuration:

DEBUG
XIP_EXTERNAL_FLASH=1
XIP_BOOT_HEADER_ENABLE=1
CPU_MIMXRT1064DVL6A
SERIAL_PORT_TYPE_UART=1

   4. Then debug the project, the code will download to the internal 4M flash.

pastedImage_3.png

Wish it helps you!

If you still have questions about it, please kindly let me know.

Kerry

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos
2,415 Views
yamakatb
Contributor III

Hi kerryzhou‌,

Thank you for always helping me.

I have 3 questions.

Q1

1. Boot mode select: 10  internal boot.

 > Currently, the custom board has an environment where you can only select "Boot From Fuses: 00" or "Serial Downloader". Is that not possible?

 

Q2

2. the "iled_blinky" IAR project select flexspi_nor_debug in the project.

3. Symbol definition, just used the default SDK project configuration:

> In addition to these settings, I changed the reset type of the debug option to the "core" type.
Then debug the project, the code will download to the internal 4M flash.
Is this the correct fix?

Q3

I thought that if I select flexspi_nor_debug in the IAR project and program it to the internal 4M flash, it works standalone. Currently, my board only works when I have a debugger attached. Is there any other way to get it to work standalone?

0 Kudos
2,416 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi T. Y.,

  You are always welcome! :smileyhappy:

  1. Boot mode select: 10  internal boot.

   If you only select "Boot From Fuses: 00", please check the RM content about this:

pastedImage_2.png

   If you didn't burn the fuse, it means your mode still the serial downloader mode.

  This mode will let the customer to download the app code with the UART or HID interface, they can use the mfgtool or the MCUbootUtility tool to download the code, but if they want to boot from the the internal side, they need to modify the fuse, please note, fuse just one time operated area, after it is burned, it can't be modified any mode, so, normally, we use the BOOT_MODE pin to select the mode at first.

  You can let the customer download the code with MCUbootUtility tool, whether they can connect the chip and download the code or not?

You can find the MCUbootUtility tool from this link:

https://github.com/JayHeng/NXP-MCUBootUtility/archive/v2.2.0.zip

the related user manual is:
https://github.com/JayHeng/NXP-MCUBootUtility

Q2

2. the "iled_blinky" IAR project select flexspi_nor_debug in the project.

3. Symbol definition, just used the default SDK project configuration:

> In addition to these settings, I changed the reset type of the debug option to the "core" type.
Then debug the project, the code will download to the internal 4M flash.
Is this the correct fix?

Answer: I still think customer's issue is the boot mode issue, the chip still in the serial download mode, not internal boot mode.

 

Q3

I thought that if I select flexspi_nor_debug in the IAR project and program it to the internal 4M flash, it works standalone. Currently, my board only works when I have a debugger attached. Is there any other way to get it to work standalone?

 Answer: This situation may still indicate the boot mode issue.

  You can try the RAM project, if it works, then download to the flash, if it is not work, you can try to burn the fuse map, let the chip boot from internal side. Check the RM Table 9-4. Boot eFUSE descriptions

Please note, fuse map just one time operation, just can modify 0 to 1, can't be modified back.

Wish it helps you!

 

If you still have questions about it, please kindly let me know.

Kerry

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos