imx6 solo failing to boot

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

imx6 solo failing to boot

1,232 Views
ims
Contributor I

Hi all,

I have a custom board using imx6 Solo and about 30% of my initial boards have been unable to boot reliably (eMMC or SD Card).  I have found that applying heat directly to the top of the imx6 will cause it to NEVER boot, and applying cool air will cause it to ALWAYS boot.  This is true of some boards, and the reverse of this is true on others (will always boot hot and never boot cold).  This is also true for both SD card booting and eMMC booting.

I am using BOOT_MODE [1:0] set to 0b10 and using u-boot I have been able to read the register and verify that the imx6 is latching the correct set value, and similarly have been able to verify that BOOT_CFG1 & BOOT_CFG2 values are properly read at reset.  The hot/cold is not extreme at all, in some cases, the board will boot at room temp and then when running for a few minutes (warmed up), it will not boot if reset.  The effect of spraying the cold air is instantaneous - if I have a warmed imx6 that will not boot, I can spray it with canned air for less than 1 second and apply power in less than one second and the board will boot.  I just fused a board and the issue is still the same.

During a bad boot, it seems that the board is not even attempting to communicate with the eMMC.  I see no activity on the clock, cmd, or data lines during a failed boot.  Furthermore, if I apply the cool air to boot the imx6 properly, I can then do anything to the imx6 (extreme hot/cold) and have no issues with reading and writing to the eMMC.

Any thoughts or suggestions will be greatly appreciated.

Labels (3)
0 Kudos
1 Reply

783 Views
igorpadykov
NXP Employee
NXP Employee

Hi Ian

if heating up the part causes more failures, then the drive strength is too low and the signals

may not rise/fall fast enough. Playing with drive strengths can help.

Drive strength can be changed on i.MX side, on eMMC and DRAM sides.

Please use Table 8-14. USDHC boot eFUSE descriptions i.MX6SDL Reference Manual,

BOOT_CFG2[0], 1 - Use PAD_SETTINGS values

http://www.nxp.com/assets/documents/data/en/reference-manuals/IMX6SDLRM.pdf 

Other reason may be unstable clocks 24MHz, 32.768 KHz, one can check

its guidelines in i.MX6 System Development User’s Guide

https://www.nxp.com/docs/en/user-guide/IMX6DQ6SDLHDG.pdf

Please be aware of ERR007926 ROM: 32 kHz internal oscillator timing inaccuracy

may affect SD/MMC, NAND, and OneNAND boot

https://www.nxp.com/docs/en/errata/IMX6SDLCE.pdf 

Had board passed ddr test:

i.MX6/7 DDR Stress Test Tool V2.80 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos