MIMXRT1010 Boot

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

MIMXRT1010 Boot

1,194 Views
christopherjwhi
Contributor I

I have recently bought the MIMXRT1010-EVK and have been playing around with it. I managed to get the SDK Samples loaded and debugger working. However, I now have the board in a state where it will no longer jump to the application; the program counter is stuck in the ROM boot loader section (e.g. 0x20b0cc). I have the Boot switches set to 10, i.e. internal Flex SPI boot mode. 

I am new to the crossover processor architecture and I am unsure how to get the board back into a state where I can continue development. 

I am developing on a Mac, with MCUXpresso, which complicates matters as a lot of the flashing tools are only available as executables

Any help would be greatly appreciated.

Labels (1)
Tags (1)
0 Kudos
3 Replies

316 Views
youngSheldon
Contributor II
  • import iled_Blinky
  • set SW8 to 0001 (serial downloader)
  • run debug to compile and program the board
  • stop debugger
  • reboot (power cycle the board)
  • change SW8 to 0010 (flexspi bood - default mode)
  • reboot (power cycle the board)
  • you're done
let it flow
0 Kudos

839 Views
johnadriaan
Contributor III

Christopher,

I too had this problem, at the same address; but after uploading my own code, not for any samples. I assume you've moved past the supplied samples too?

My problem was that I hadn't correctly initialised the required boot initialisation tables in Flash. They're set up for the demo examples, but are easy to overwrite if you upload at 0x6000_0000 instead of where they expect you to upload the code at 0x6000_2000. Note that NXP's Boot ROM has control of the processor, so you have to meet their boot requirements as outlined in the i.MX RT1010 Processor Reference Manual (IMXRT1010RM.pdf) Chapter 9, sections 9.1, 9.6.3 and 9.7.

If you want to fully manage the environment like me, you need to have a Flash/FlexSPI Configuration Block (FCB) with Serial NOR Configuration Block at 0x6000_0400-05FF and an Image Vector Table (IVT) at 0x6000_1000-101F.

I wrote my definitions in C++, using the framework that I use for MCUs. I'd be happy to post it, but it makes use of some definitions that I'd have to explain. The trickiest part is the FCB's Look Up Table (LUT): you need to understand the command language of the Flash in use - or just copy the values used by the samples!

John Adriaan

0 Kudos

839 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Christopher, 

I sent you an email with a step-by-step guide on how to recover your RT1010-EVK.


Have a great day,
Victor

-------------------------------------------------------------------------------
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