BOOT problem on MIMXRT1064DVL6A board

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

BOOT problem on MIMXRT1064DVL6A board

2,591 Views
lacouturepatric
Contributor I
Hello,
I have design a board that includes :
- a MIMXRT1064DVL6A processor,
- Memory IS42s16160j,
- SD card slot,
- JTAG,
- A led
I was inspired by IMXRT1064 EVKB Board to design it. I am trying to program the board with the GPIO_LED_Output exemple. I succeed to program with JTAG but the led is not blinking. I thing I have a problem of BOOT (refer to picture "recL1L5" Disassembly part).
I succeed to program on the IMXRT1064 EVKB Board by setting SW7 to QSPI Flash (refer to picture "eval" Disassembly part).
In the board that I designed, I have not the BOOT_MODE pin connected (GPIO_AD_B0_04, PIO_AD_B0_05).
Do I need to have these GPIO connected (to a switch as the EVK) to work?
How can I program in the internal Flash of the processor without using BOOT_MODE pin?
In my design, "ONOFF" and "WAKEUP" are not connected.
I think that these pin can be not connected
Thank you,
Best regards,
Patrice Lacouture
Labels (2)
Tags (2)
0 Kudos
6 Replies

2,275 Views
lacouturepatric
Contributor I

Hello Mr Jimenez,

I burned the fuse BT_FUSE_SEL. I succeed in booting from internal flash. Thank you very much for your help.

Best regards,

Patrice

0 Kudos

2,275 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Patrice Lacouture,  

Once I burn the Fuse (BT_FUSE_SEL), could I still program with «link application to RAM »? and could I put the program in the internal flash?
Yes, when you burn the fuse BT_FUSE_SEL you will be able to load your application into the internal RAM or to the on-chip flash. 

There are Boot ROM (128 KB) into IMX 1064, such as in all IMR family , what is the use?
In this part of the memory is where all the ROM bootloader code is stored. 
0 Kudos

2,276 Views
lacouturepatric
Contributor I
Hello Mr Jimenez,
Thank you very much for your answer. I succeed in connecting to target devices with USB, refer to device status.
I think I could burn the fuses (https://github.com/JayHeng/NXP-MCUBootUtility#42-dedicated-efuse-programmer4.2 Dedicated eFuse Programmer part).
Once I burn the Fuse (BT_FUSE_SEL), could I still  program with «link application to RAM »? and could I put the program in the internal flash?

There are Boot ROM (128 KB) into IMX 1064, such as in all IMR family , what is the use?
Thank you,
Best regards,
Patrice Lacouture

--------MCU device Register----------
OCOTP->UUID[31:00] = 0x65f82949
OCOTP->UUID[63:32] = 0x2d2051d2
SRC->SBMR1 = 0x0
SRC->SBMR2 = 0x9
BMOD[1:0] = 2'b00 (Boot From Fuses)
HAB status = Open
--------MCU device eFusemap--------
(0x450) BOOT_CFG0 = 0x0
(0x460) BOOT_CFG1 = 0x8
(0x470) BOOT_CFG2 = 0x0
BT_FUSE_SEL = 1'b0
  When BMOD[1:0] = 2'b00 (Boot From Fuses), It means there is no application in boot device, MCU will enter serial downloader mode directly
  When BMOD[1:0] = 2'b10 (Internal Boot), It means MCU will boot application according to both BOOT_CFGx pins and Fuse BOOT_CFGx
----------FlexRAM memory-----------
IOMUXC_GPR->GPR16 = 0x200003
FlexRAM configuration is from eFuse
OCOTP->MISC_CONF0[31:00] = 0x40
FlexRAM Partion =0000 - 128KB ITCM, 128KB DTCM, 256KB OCRAM
--------LPSPI NOR/EEPROM memory---
Page Size   = 256 Bytes
Sector Size = 4 KB
Total Size  = 16 MB
0 Kudos

2,276 Views
lacouturepatric
Contributor I
Hello Mr Jimenez,
Thank you very mush for your answer. I succeed  to test my design by setting «link application to RAM » and to program with the JTAG. I can valid my program and board.
As you can see, in the attached picture, in this design (3 boards are made) I have no possibility to change the boot pin.

Do I have the possibility to burn the efuse and to have my program boot from the internal flash?

Or I cannot use this board to boaot and I have the only possibility to do a new board with the BOOT_MODE pins connected?

I think, if I have to build a new board, I must connect th BT_CFG pins in pull down, isn't it?
If burning the efuse is possible, do you have the procedure?

Can I burn efuse with JTAG.
Thank You,
Best regards
Patrice LacoutureMIMXRT1064DVL6A_PO.pngMIMXRT1064DVL6A_IO.png
0 Kudos

2,276 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Patrice Lacouture,  

You can boot from the fuses without any problems, so hopefully, you won't need a new board revision. I recommend you refer to sections 8.3.3 and 8.4.1 of the Reference Manuel, here you will find the explanation on how to boot directly from the fuses. 

Regarding on how to burn the fuses, the easiest way to achieve this is with the MCUBootUtility (GitHub - JayHeng/NXP-MCUBootUtility: A one-stop boot utility tool based on Python2.7+wxPython4.0, it... ). Please keep in mind that to burn the fuses using this utility you need to use either USB or UART while the RT is in serial downloader mode. It is also possible to burn the fuses in runtime, please refer to the following thread: How to burn BT_FUSE_SEL on RT1050

Best regards, 

Victor 

0 Kudos

2,275 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Patrice Lacouture, 

If you don't connect anything to the BOOT_MODE pins you will always boot from the eFUSES, to learn more about this, please refer to section 8.3.3 of the Reference Manual. 

I would recommend you to connect the BOOT_MODE pins. Once you have these pins connected and you have a value of b10 in the BOOT_MODE[1:0] you will by default boot from the internal flash of the RT1064. 

Regarding the ONOFF and WAKEUP pin, there isn't any problem if you leave these two pins as no connection. 

Regards, 

Victor 

0 Kudos