i.MX7ULP BOOT_MODE[1:0]. Erratic boot mode control

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

i.MX7ULP BOOT_MODE[1:0]. Erratic boot mode control

842 次查看
benjamincanton
Contributor II

Hello.

We have detected an erratic behaviour on our boot when we try to boot on SDM. Our design is based on iMX7ULP.

On our device we do not have a robust SDM boot when we apply Boot_MODE[1:0] = 01:

  • On PTB4 (BOOT_MODE[0]) we have measured 1,27V when we apply 1V8 before R72.
  • On PTB5 (BOOT_MODE[1]) we have 0V (Pull-down R74).

*Note: This are the same voltages that we have measured on EVK when SW1 is on position BOOT_MODE[1:0] = 01; on the EVK the SDM boot is robust.

On our device we have some PCBs that are not booting on SDM even with BOOT_MODE[1:0]=01 while others are properly booting on SDM. Even some PCBs are sometimes booting on SDM and sometimes not booting on SDM when BOOT_MODE[1:0] = 01. We have test it on several devices with not a clear conclusion.

When we fix BOOT_MODE[1:0]=01 and the PCB is not booting on SDM, the device seems to state on an Infinite Loop; as soon as we change to BOOT_MODE[1:0]=00 the system of the A7 boots.

 

Questions:

  • Do you have any tips to understand where the problem may come from?
  • Is there some knowed Errata or issue with the BOOT_MODES that we should consider to obtain the reason of a not robust SDM boot from BOOT_MODE[1:0] pins?

-------------------------------------------------------------------------------------------------------------------------------------

ANNEX INFO

We have replicated the boot_mode control circuit of the EVK (Image1) for our circuit (Image2). 

*Notes:

  • R75 and R78 are not solded.
  • Before R72 we apply 1V8 when we want to boot on SDM (BOOT_MODE[1:0]=01)

Img1-EVK-BOOT_CIRCUIT.png

Image 1: BOOT MODE Circuit on Evaluation Kit

 

Img2-OUR-BOOT_CIRCUIT.png

Image 2: Our BOOT MODE Circuit

标签 (1)
标记 (3)
0 项奖励
回复
2 回复数

673 次查看
Dhruvit
NXP TechSupport
NXP TechSupport

Hi @benjamincanton,

Please try changing the R72 from 10k to 1k and see if that helps.

Also, please let me know the power-on sequence, it would be better if you could share the schematic with us. 

Thanks & Regards,
Dhruvit Vasavada

0 项奖励
回复

768 次查看
CAgell
Contributor I

A solution was found to the problem above as follows:

- When devices are first received they are in SD/MMC Manufacture Mode by default. In this mode boot pins cannot be controlled externally. 
- In order to control the pins externally, according to the diagram in page 1520 of the i.MX 7ULP Reference Manual (Doc number IMX7ULPRMB2, Rev. 0, 09/2020) two things need to happen

  • DISABLE_SDMMC_MFG set to 1
  • BT_FUSE_SEL is set to 1
 

With the above settings the system boots from fuses and setting BOOT_MODE==1 (externally, through GPIO) forces Serial Download Mode (SDM), enabling software update externally in hardware with the circuit you had listed above.