i.mx rt1064 boot

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

i.mx rt1064 boot

1,473 Views
allen_tseng
Contributor I

Hi

I'm doing custom board, and i need to boot from external nor flash.

I will design two board.

A board is main board(i.mx rt 1064).

B board is upgrade board(with nor-flash and spi interface connector)

Operating step

step.1 "B" plug in "A"

step.2 turn on "A" power, and boot from "B" board

step.3 the code from nor-flash will upgrade i.mx rt 1064 internal flash

step.4 shut down "A" power and remove "B"

step.5 turn on "A" power, and boot from internal flash

 

My questions are:

1. i saw the reference manual, need to configure BOOT_MODE to 0

    and BT_CFG[7:4].

    Is enough that configure BOOT_MODE and BT_CFG[7:4] for boot from external nor-flash(lpspi)?

2. Are BT_CFG's pins can using for GPIO?

    Or that 14 pins(BT_CFG and BOOT_MODE) only for boot option use?

3. Is possible step.3 copy nor-flash code to internal flash and next time using internal flash boot?

 

Please help to solve, thank you.

Allen

0 Kudos
5 Replies

1,468 Views
mjbcswitzerland
Specialist V

Hi Allen

Having a second board for updates looks to be over-complicated. Why don't you just use the inbuilt ISP capability?

Or existing boot loader concepts? (See reference below)

Regards

Mark
[uTasker project developer for Kinetis and i.MX RT]
Contact me by personal message or on the uTasker web site to discuss professional training, solutions to problems or rapid product development requirements

For professionals searching for faster, problem-free Kinetis and i.MX RT 10xx developments the uTasker project holds the key: https://www.utasker.com/iMX/RT1064.html

 

i.MX RT 1064 loader concept:

- i.MX RT 1060: https://www.utasker.com/iMX/RT1064.html
- Boot loader concept including XiP on-the-fly decryption, clone protection or AES256 protected RAM execution.
-- Boot Loader concept flow chart: https://www.utasker.com/docs/iMX/Loader.pdf and usage reference https://www.utasker.com/docs/iMX/uTaskerLoader_TestDrive.pdf
-- Serial Loader features: https://www.utasker.com/docs/uTasker/uTaskerSerialLoader.pdf
-- Building the loader with MCUXpresso: https://www.utasker.com/docs/iMX/MCUXpresso.pdf (and video guide https://youtu.be/p_eUGo6GypY ) - the guide document explains how to use with any application (eg. SDK) and to enabling its operation with On-The-Fly decryption in 5 minutes
-- Building the loader with IAR: https://www.utasker.com/docs/iMX/IAR.pdf (and video guide https://youtu.be/XPCwVndP99s )
-- Building the loader with VisualStudio and GCC: https://www.utasker.com/docs/iMX/GCC.pdf (and video guide https://youtu.be/0UzLLSXABK8 )
Video Guide to encrypting NXP SDK examples to run from XiP memory using on-the-fly decryption and uploading with the µTasker loader: https://www.youtube.com/watch?v=5iT7KP691ls&list=PLWKlVb_MqDQEOCnsNOJO8gd3jDCwiyKKe&index=10
Video Guide to encrypting NXP SDK examples to run at optimal speed in internal RAM and uploading with the µTasker loader:
https://www.youtube.com/watch?v=fnfLQ-nbscI&list=PLWKlVb_MqDQEOCnsNOJO8gd3jDCwiyKKe&index=11
Video Guide for Embedded Artist OEM Module for i.MX RT 1062 showing precise secured application operation analysis: https://youtu.be/o7hQbOqhJoc

0 Kudos

1,440 Views
allen_tseng
Contributor I

Hi mjbcswitzerland

Thanks for your reply.

Having a second board for updates looks to be over-complicated. Why don't you just use the inbuilt ISP capability?

Because i need to let factory operator update code on convenient way.

It's my boss require me to do this, so I want to check this method feasible.

And how to achieve.

I really need the answer and suggest.

 

Allen

0 Kudos

1,434 Views
mjbcswitzerland
Specialist V

Hi

If ISP doesn't prove to be convenient you can also use JTAG since there are various production programming solutions available for it.

Regards

Mark

 

0 Kudos

1,425 Views
allen_tseng
Contributor I

Hi Mark

My purpose is to let operator can update code in production line without computer.

So I need second board, and second board have nor-flash.

I will pre-program the nor-flash.

And second board plug in custom board.

Custom board will boot from second board's nor-flash.

Second bootloader(nor-flash) will read the nor-flash's code and write to custom board's on chip flash.

If this method accomplished.

The operator only plug in second board to custom board, and turn on the power, then finished.

So that is why I need this method.

 

Allen

0 Kudos

1,420 Views
mjbcswitzerland
Specialist V

Hi

I believe that there are JTAG production programmers that do what you want. if you can identify an appropriate one it will be the simplest solution.

Otherwise, If I were building such a solution I would do the following:

1. Second board with image to be programmed to the first board connects to it as USB host and can also power the board
2. The first board is in ISP mode and the second programs its internal QSPI flash via the ISP protocol

This avoid complicated wiring. The ISP protocol is documented or can be easily reverse engineered by monitoring the PC programing tool's behavior.

Regards

Mark

 

0 Kudos