microSD card fails to complete initialization

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

microSD card fails to complete initialization

270 Views
MarkDrzymala
Contributor III

Hello, 

 

We are integrating an i.MX 8QuadMax and are experiencing intermittent failures of SanDisk brand 32GB microSD cards in our development units. 

 

With a protocol analyzer on bootup (this microSD card is the OS boot source) and a *failed* card, I see the i.MX 8 send a CMD0 (reset), then CMD8 (check supplied voltage), then a CMD55 (APP_CMD) and ACMD41 (send operating condition register). The CMD55 and ACMD41 commands are continuously sent until the i.MX 8 resets itself after about 300mS. Bus analysis shows that the ACMD41 response "Busy Status" bit is never set, therefore the card has not completed initialization and the i.MX 8 resets before it ever does.

 

Questions:

1. The SDIO Physical specification says that the SDIO controller should wait for the "Busy Status" bit to be set for at least 1 second, yet the i.MX 8 resets before then. Why? Can this be changed?

2. Has anyone else experienced SD card failures like this using i.MX 8 processors? Our previous generation product with an i.MX 6 processor did not exhibit this issue.

0 Kudos
10 Replies

154 Views
MarkDrzymala
Contributor III

Hi Rita, 

 

We are using NXP Hardknott, kernel version 5.10. We do have another boot device - an eMMC chip, but we have yet to observe this issue with it. 

 

I suspect it's possible there is an issue with the microSD cards and we're communicating with the manufacturer. However, it doesn't explain why the processor resets before the minimum time specified in the SDIO specification.

0 Kudos

152 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Have you change to another microSD cards to see if there is the same issue?

0 Kudos

148 Views
MarkDrzymala
Contributor III

We are currently procuring and evaluating other cards

142 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Basically for the card from micron SanDisk Kingston are no problem.

0 Kudos

109 Views
MarkDrzymala
Contributor III

We have now replicated this issue with a Western Digital Industrial card

0 Kudos

60 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Could you share your steps in your side, I will try in our board

0 Kudos

38 Views
MarkDrzymala
Contributor III

We have observed that with the SanDisk Extreme, Western Digital, Industrial, and other brand microSD cards that after strenuous use our system no longer boots up. Upon probing the SDIO bus we observe the CMD0, CMD8, and then CDM55 and ACMD41 repeatedly issued for roughly 300mS before a system reset occurs. I believe this is because these cards have not ~yet~ set their “Busy Status” bit and therefore their file system contents cannot yet be accessed. This system reset originates from a Watchdog strobe event on the i.MX 8 SCU_WDOG_OUT pin.

 

I read in the “SD Specifications Part 1 Physical Layer Simplified Specification Version 9.10” document in section 4.2.3 that “The host repeatedly issues ACMD41 for at least 1 second or until the busy bit are set to 1.” This reads to me like the i.MX 8 violates SD specification by not allowing 1 full second after the first ACMD41 message for the card to become ready. 

 

We believe we've identified the source of this Watchdog event - the SECO hardware reset timer. The i.MX 8 Hardware Reference Manual states in section 5.7.3.3 that "There is a hardware reset timer enabled by default on the SECO side. The timeout of this timer is 300ms...". Since the firmware resides on the microSD card and the CPU/PMICs execute a system-wide power cycle before the microSD card is ready, our system gets caught in a boot-reset loop indefinitely.

 

Is there a way we can extend or suppress the SECO reset timer?

0 Kudos

42 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

I have tested the Samsung 32GB SD card, no problem with the Linux 6.1.22-2.0.0. You can try our newest version BSP to see if issue still or not.

0 Kudos

127 Views
MarkDrzymala
Contributor III

The cards we're having issues with are SanDisk Extreme 32GB 

0 Kudos

238 Views
Rita_Wang
NXP TechSupport
NXP TechSupport

Which version BSP are you using? Do you have other boot device on your board, can other device can boot well? And only the SD card boot met problem?

0 Kudos