<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic RSTA bit in the uSDHCx_SYS_CTRL register is not self cleared in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1375994#M183464</link>
    <description>&lt;P&gt;Hi All,&lt;BR /&gt;We have a i.MX6ULL custom board and work well until recently, but now facing issue with RSTA bit.&lt;/P&gt;&lt;P&gt;・RSTA bit in the uSDHCx_SYS_CTRL register is not self cleared once in 10~1000 times.&lt;BR /&gt;・We have another i.MX6Q custom board, and haven't encountered issue like this.&lt;/P&gt;&lt;P&gt;・Serial Console message&lt;BR /&gt;---------------------------------------------------------------------------------------&lt;BR /&gt;U-Boot 2017.03-imx_v2017.03_4.9.88_2.0.0_ga (Jul 16 2019 - 16:25:59 +0900)&lt;/P&gt;&lt;P&gt;CPU: Freescale i.MX6ULL rev1.1 at 900MHz&lt;BR /&gt;CPU: Commercial temperature grade (0C to 95C) at 48C&lt;BR /&gt;Reset cause: POR&lt;BR /&gt;Model: xxxxx&lt;BR /&gt;Board: xxxxx&lt;BR /&gt;DRAM: 512 MiB&lt;BR /&gt;MMC: FSL_SDHC: 0, FSL_SDHC: 1&lt;BR /&gt;In: serial&lt;BR /&gt;Out: serial&lt;BR /&gt;Err: serial&lt;BR /&gt;switch to partitions #0, OK&lt;BR /&gt;mmc1(part 0) is current device&lt;BR /&gt;Net: FEC&lt;BR /&gt;Normal Boot&lt;BR /&gt;Hit any key to stop autoboot: 0&lt;BR /&gt;reading zImage&lt;BR /&gt;6384280 bytes read in 158 ms (38.5 MiB/s)&lt;BR /&gt;Booting from mmc ...&lt;BR /&gt;reading imx6ull-xxxxx.dtb&lt;BR /&gt;32838 bytes read in 18 ms (1.7 MiB/s)&lt;BR /&gt;## Flattened Device Tree blob at 83000000&lt;BR /&gt;Booting using the fdt blob at 0x83000000&lt;BR /&gt;Using Device Tree in place at 83000000, end 8300b045&lt;BR /&gt;Modify /soc/aips-bus@02200000/epdc@0228c000:status disabled&lt;BR /&gt;ft_system_setup for mx6&lt;/P&gt;&lt;P&gt;Starting kernel ...&lt;/P&gt;&lt;P&gt;/cpus/cpu@0 missing clock-frequency property&lt;BR /&gt;mmc1: Reset 0x1 never completed.&lt;BR /&gt;mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========&lt;BR /&gt;mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00000002&lt;BR /&gt;mmc1: sdhci: Blk size: 0x00000200 | Blk cnt: 0x00000001&lt;BR /&gt;mmc1: sdhci: Argument: 0x00004fb8 | Trn mode: 0x00000000&lt;BR /&gt;mmc1: sdhci: Present: 0x01f88088 | Host ctl: 0x00000020&lt;BR /&gt;mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000080&lt;BR /&gt;mmc1: sdhci: Wake-up: 0x00000008 | Clock: 0x0000003f&lt;BR /&gt;mmc1: sdhci: Timeout: 0x0000008c | Int stat: 0x00000000&lt;BR /&gt;mmc1: sdhci: Int enab: 0x007f010b | Sig enab: 0x00000000&lt;BR /&gt;mmc1: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000302&lt;BR /&gt;mmc1: sdhci: Caps: 0x07eb0000 | Caps_1: 0x0000b407&lt;BR /&gt;mmc1: sdhci: Cmd: 0x0000113a | Max curr: 0x00ffffff&lt;BR /&gt;mmc1: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0xffffffff&lt;BR /&gt;mmc1: sdhci: Resp[2]: 0x320f5913 | Resp[3]: 0x00d02f01&lt;BR /&gt;mmc1: sdhci: Host ctl2: 0x00000000&lt;BR /&gt;mmc1: sdhci: ============================================&lt;BR /&gt;mmc1: Reset 0x1 never completed.&lt;BR /&gt;mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========&lt;BR /&gt;mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00000002&lt;BR /&gt;mmc1: sdhci: Blk size: 0x00000200 | Blk cnt: 0x00000001&lt;BR /&gt;mmc1: sdhci: Argument: 0x00004fb8 | Trn mode: 0x00000000&lt;BR /&gt;mmc1: sdhci: Present: 0x01f88088 | Host ctl: 0x00000020&lt;BR /&gt;mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000080&lt;BR /&gt;mmc1: sdhci: Wake-up: 0x00000008 | Clock: 0x0000003f&lt;BR /&gt;mmc1: sdhci: Timeout: 0x0000008c | Int stat: 0x00000000&lt;BR /&gt;mmc1: sdhci: Int enab: 0x00000000 | Sig enab: 0x00000000&lt;BR /&gt;mmc1: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000302&lt;BR /&gt;mmc1: sdhci: Caps: 0x07eb0000 | Caps_1: 0x0000b407&lt;BR /&gt;mmc1: sdhci: Cmd: 0x0000113a | Max curr: 0x00ffffff&lt;BR /&gt;mmc1: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0xffffffff&lt;BR /&gt;mmc1: sdhci: Resp[2]: 0x320f5913 | Resp[3]: 0x00d02f01&lt;BR /&gt;mmc1: sdhci: Host ctl2: 0x00000000&lt;BR /&gt;mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000&lt;BR /&gt;mmc1: sdhci: ============================================&lt;BR /&gt;mmc1: Timeout waiting for hardware cmd interrupt.&lt;BR /&gt;mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========&lt;BR /&gt;mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00000002&lt;BR /&gt;mmc1: sdhci: Blk size: 0x00000200 | Blk cnt: 0x00000001&lt;BR /&gt;mmc1: sdhci: Argument: 0x00000c00 | Trn mode: 0x00000000&lt;BR /&gt;mmc1: sdhci: Present: 0x01f88088 | Host ctl: 0x00000001&lt;BR /&gt;mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000080&lt;BR /&gt;mmc1: sdhci: Wake-up: 0x00000008 | Clock: 0x000010af&lt;BR /&gt;mmc1: sdhci: Timeout: 0x0000008c | Int stat: 0x00000000&lt;BR /&gt;mmc1: sdhci: Int enab: 0x007f1003 | Sig enab: 0x007f1003&lt;BR /&gt;mmc1: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000302&lt;BR /&gt;mmc1: sdhci: Caps: 0x07eb0000 | Caps_1: 0x0000b407&lt;BR /&gt;mmc1: sdhci: Cmd: 0x0000341a | Max curr: 0x00ffffff&lt;BR /&gt;mmc1: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0xffffffff&lt;BR /&gt;mmc1: sdhci: Resp[2]: 0x320f5913 | Resp[3]: 0x00d02f01&lt;BR /&gt;mmc1: sdhci: Host ctl2: 0x00000000&lt;BR /&gt;mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000&lt;BR /&gt;mmc1: sdhci: ============================================&lt;BR /&gt;mmc1: Reset 0x2 never completed.&lt;BR /&gt;mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========&lt;BR /&gt;mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00000002&lt;BR /&gt;mmc1: sdhci: Blk size: 0x00000200 | Blk cnt: 0x00000001&lt;BR /&gt;mmc1: sdhci: Argument: 0x00000c00 | Trn mode: 0x00000000&lt;BR /&gt;mmc1: sdhci: Present: 0x01f88088 | Host ctl: 0x00000001&lt;BR /&gt;mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000080&lt;BR /&gt;mmc1: sdhci: Wake-up: 0x00000008 | Clock: 0x000010af&lt;BR /&gt;mmc1: sdhci: Timeout: 0x0000008c | Int stat: 0x00000000&lt;BR /&gt;mmc1: sdhci: Int enab: 0x007f1003 | Sig enab: 0x007f1003&lt;BR /&gt;mmc1: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000302&lt;BR /&gt;mmc1: sdhci: Caps: 0x07eb0000 | Caps_1: 0x0000b407&lt;BR /&gt;mmc1: sdhci: Cmd: 0x0000341a | Max curr: 0x00ffffff&lt;BR /&gt;mmc1: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0xffffffff&lt;BR /&gt;mmc1: sdhci: Resp[2]: 0x320f5913 | Resp[3]: 0x00d02f01&lt;BR /&gt;mmc1: sdhci: Host ctl2: 0x00000000&lt;BR /&gt;mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000&lt;BR /&gt;mmc1: sdhci: ============================================&lt;BR /&gt;mmc1: Reset 0x4 never completed.&lt;/P&gt;&lt;P&gt;(continue.....)&lt;BR /&gt;---------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;・The error occrus at the code below&lt;BR /&gt;(linux/drivers/mmc/host/sdhci.c - Secure Digital Host Controller Interface driver)&lt;BR /&gt;---------------------------------------------------------------------------------------&lt;BR /&gt;void sdhci_reset(struct sdhci_host *host, u8 mask)&lt;BR /&gt;{&lt;BR /&gt;ktime_t timeout;&lt;BR /&gt;sdhci_writeb(host, mask, SDHCI_SOFTWARE_RESET);&lt;BR /&gt;if (mask &amp;amp; SDHCI_RESET_ALL) {&lt;BR /&gt;host-&amp;gt;clock = 0;&lt;BR /&gt;/* Reset-all turns off SD Bus Power */&lt;BR /&gt;if (host-&amp;gt;quirks2 &amp;amp; SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON)&lt;BR /&gt;sdhci_runtime_pm_bus_off(host);&lt;BR /&gt;}&lt;BR /&gt;/* Wait max 100 ms */&lt;BR /&gt;timeout = ktime_add_ms(ktime_get(), 100);&lt;BR /&gt;/* hw clears the bit when it's done */&lt;BR /&gt;while (sdhci_readb(host, SDHCI_SOFTWARE_RESET) &amp;amp; mask) {&lt;BR /&gt;if (ktime_after(ktime_get(), timeout)) {&lt;BR /&gt;pr_err("%s: Reset 0x%x never completed.\n",&lt;BR /&gt;mmc_hostname(host-&amp;gt;mmc), (int)mask);&lt;BR /&gt;sdhci_dumpregs(host);&lt;BR /&gt;return;&lt;BR /&gt;}&lt;BR /&gt;udelay(10);&lt;BR /&gt;---------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;・No effect drivers&lt;BR /&gt;&lt;A href="https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci.c" target="_blank"&gt;https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci.c&lt;/A&gt;&lt;BR /&gt;&lt;A href="https://source.codeaurora.org/external/imx/linux-imx/tree/drivers/mmc/host/sdhci-esdhc-imx.c?h=imx_5.4.70_2.3.0" target="_blank"&gt;https://source.codeaurora.org/external/imx/linux-imx/tree/drivers/mmc/host/sdhci-esdhc-imx.c?h=imx_5.4.70_2.3.0&lt;/A&gt;&lt;BR /&gt;&lt;A href="https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci.c" target="_blank"&gt;https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci.c&lt;/A&gt;&lt;BR /&gt;&lt;A href="https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci-esdhc-imx.c" target="_blank"&gt;https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci-esdhc-imx.c&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;・i.MX 6ULL Reference Manual Rev.1 p4036&lt;BR /&gt;-------------------------------------------------------------------------------------------------------&lt;BR /&gt;RSTA Software Reset For ALL&lt;/P&gt;&lt;P&gt;This reset effects the entire Host Controller except for the card detection circuit. Register bits of type ROC,&lt;BR /&gt;RW, RW1C, RWAC are cleared. During its initialization, the Host Driver shall set this bit to 1 to reset the&lt;BR /&gt;uSDHC. The uSDHC shall reset this bit to 0 when the capabilities registers are valid and the Host Driver&lt;BR /&gt;can read them. Additional use of Software Reset For All does not affect the value of the Capabilities&lt;BR /&gt;registers. After this bit is set, it is recommended that the Host Driver reset the external card and reinitialize&lt;BR /&gt;it. After this bit is set, SW should wait for self-clear.&lt;BR /&gt;-------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;・We have already checked the post below, but not resolved.&lt;BR /&gt;　&lt;A href="https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-gets-stuck/td-p/617103" target="_blank"&gt;https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-gets-stuck/td-p/617103&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could you please help on fixing this?&lt;/P&gt;</description>
    <pubDate>Wed, 24 Nov 2021 06:38:40 GMT</pubDate>
    <dc:creator>tomohiroseki</dc:creator>
    <dc:date>2021-11-24T06:38:40Z</dc:date>
    <item>
      <title>RSTA bit in the uSDHCx_SYS_CTRL register is not self cleared</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1375994#M183464</link>
      <description>&lt;P&gt;Hi All,&lt;BR /&gt;We have a i.MX6ULL custom board and work well until recently, but now facing issue with RSTA bit.&lt;/P&gt;&lt;P&gt;・RSTA bit in the uSDHCx_SYS_CTRL register is not self cleared once in 10~1000 times.&lt;BR /&gt;・We have another i.MX6Q custom board, and haven't encountered issue like this.&lt;/P&gt;&lt;P&gt;・Serial Console message&lt;BR /&gt;---------------------------------------------------------------------------------------&lt;BR /&gt;U-Boot 2017.03-imx_v2017.03_4.9.88_2.0.0_ga (Jul 16 2019 - 16:25:59 +0900)&lt;/P&gt;&lt;P&gt;CPU: Freescale i.MX6ULL rev1.1 at 900MHz&lt;BR /&gt;CPU: Commercial temperature grade (0C to 95C) at 48C&lt;BR /&gt;Reset cause: POR&lt;BR /&gt;Model: xxxxx&lt;BR /&gt;Board: xxxxx&lt;BR /&gt;DRAM: 512 MiB&lt;BR /&gt;MMC: FSL_SDHC: 0, FSL_SDHC: 1&lt;BR /&gt;In: serial&lt;BR /&gt;Out: serial&lt;BR /&gt;Err: serial&lt;BR /&gt;switch to partitions #0, OK&lt;BR /&gt;mmc1(part 0) is current device&lt;BR /&gt;Net: FEC&lt;BR /&gt;Normal Boot&lt;BR /&gt;Hit any key to stop autoboot: 0&lt;BR /&gt;reading zImage&lt;BR /&gt;6384280 bytes read in 158 ms (38.5 MiB/s)&lt;BR /&gt;Booting from mmc ...&lt;BR /&gt;reading imx6ull-xxxxx.dtb&lt;BR /&gt;32838 bytes read in 18 ms (1.7 MiB/s)&lt;BR /&gt;## Flattened Device Tree blob at 83000000&lt;BR /&gt;Booting using the fdt blob at 0x83000000&lt;BR /&gt;Using Device Tree in place at 83000000, end 8300b045&lt;BR /&gt;Modify /soc/aips-bus@02200000/epdc@0228c000:status disabled&lt;BR /&gt;ft_system_setup for mx6&lt;/P&gt;&lt;P&gt;Starting kernel ...&lt;/P&gt;&lt;P&gt;/cpus/cpu@0 missing clock-frequency property&lt;BR /&gt;mmc1: Reset 0x1 never completed.&lt;BR /&gt;mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========&lt;BR /&gt;mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00000002&lt;BR /&gt;mmc1: sdhci: Blk size: 0x00000200 | Blk cnt: 0x00000001&lt;BR /&gt;mmc1: sdhci: Argument: 0x00004fb8 | Trn mode: 0x00000000&lt;BR /&gt;mmc1: sdhci: Present: 0x01f88088 | Host ctl: 0x00000020&lt;BR /&gt;mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000080&lt;BR /&gt;mmc1: sdhci: Wake-up: 0x00000008 | Clock: 0x0000003f&lt;BR /&gt;mmc1: sdhci: Timeout: 0x0000008c | Int stat: 0x00000000&lt;BR /&gt;mmc1: sdhci: Int enab: 0x007f010b | Sig enab: 0x00000000&lt;BR /&gt;mmc1: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000302&lt;BR /&gt;mmc1: sdhci: Caps: 0x07eb0000 | Caps_1: 0x0000b407&lt;BR /&gt;mmc1: sdhci: Cmd: 0x0000113a | Max curr: 0x00ffffff&lt;BR /&gt;mmc1: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0xffffffff&lt;BR /&gt;mmc1: sdhci: Resp[2]: 0x320f5913 | Resp[3]: 0x00d02f01&lt;BR /&gt;mmc1: sdhci: Host ctl2: 0x00000000&lt;BR /&gt;mmc1: sdhci: ============================================&lt;BR /&gt;mmc1: Reset 0x1 never completed.&lt;BR /&gt;mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========&lt;BR /&gt;mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00000002&lt;BR /&gt;mmc1: sdhci: Blk size: 0x00000200 | Blk cnt: 0x00000001&lt;BR /&gt;mmc1: sdhci: Argument: 0x00004fb8 | Trn mode: 0x00000000&lt;BR /&gt;mmc1: sdhci: Present: 0x01f88088 | Host ctl: 0x00000020&lt;BR /&gt;mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000080&lt;BR /&gt;mmc1: sdhci: Wake-up: 0x00000008 | Clock: 0x0000003f&lt;BR /&gt;mmc1: sdhci: Timeout: 0x0000008c | Int stat: 0x00000000&lt;BR /&gt;mmc1: sdhci: Int enab: 0x00000000 | Sig enab: 0x00000000&lt;BR /&gt;mmc1: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000302&lt;BR /&gt;mmc1: sdhci: Caps: 0x07eb0000 | Caps_1: 0x0000b407&lt;BR /&gt;mmc1: sdhci: Cmd: 0x0000113a | Max curr: 0x00ffffff&lt;BR /&gt;mmc1: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0xffffffff&lt;BR /&gt;mmc1: sdhci: Resp[2]: 0x320f5913 | Resp[3]: 0x00d02f01&lt;BR /&gt;mmc1: sdhci: Host ctl2: 0x00000000&lt;BR /&gt;mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000&lt;BR /&gt;mmc1: sdhci: ============================================&lt;BR /&gt;mmc1: Timeout waiting for hardware cmd interrupt.&lt;BR /&gt;mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========&lt;BR /&gt;mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00000002&lt;BR /&gt;mmc1: sdhci: Blk size: 0x00000200 | Blk cnt: 0x00000001&lt;BR /&gt;mmc1: sdhci: Argument: 0x00000c00 | Trn mode: 0x00000000&lt;BR /&gt;mmc1: sdhci: Present: 0x01f88088 | Host ctl: 0x00000001&lt;BR /&gt;mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000080&lt;BR /&gt;mmc1: sdhci: Wake-up: 0x00000008 | Clock: 0x000010af&lt;BR /&gt;mmc1: sdhci: Timeout: 0x0000008c | Int stat: 0x00000000&lt;BR /&gt;mmc1: sdhci: Int enab: 0x007f1003 | Sig enab: 0x007f1003&lt;BR /&gt;mmc1: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000302&lt;BR /&gt;mmc1: sdhci: Caps: 0x07eb0000 | Caps_1: 0x0000b407&lt;BR /&gt;mmc1: sdhci: Cmd: 0x0000341a | Max curr: 0x00ffffff&lt;BR /&gt;mmc1: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0xffffffff&lt;BR /&gt;mmc1: sdhci: Resp[2]: 0x320f5913 | Resp[3]: 0x00d02f01&lt;BR /&gt;mmc1: sdhci: Host ctl2: 0x00000000&lt;BR /&gt;mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000&lt;BR /&gt;mmc1: sdhci: ============================================&lt;BR /&gt;mmc1: Reset 0x2 never completed.&lt;BR /&gt;mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========&lt;BR /&gt;mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00000002&lt;BR /&gt;mmc1: sdhci: Blk size: 0x00000200 | Blk cnt: 0x00000001&lt;BR /&gt;mmc1: sdhci: Argument: 0x00000c00 | Trn mode: 0x00000000&lt;BR /&gt;mmc1: sdhci: Present: 0x01f88088 | Host ctl: 0x00000001&lt;BR /&gt;mmc1: sdhci: Power: 0x00000000 | Blk gap: 0x00000080&lt;BR /&gt;mmc1: sdhci: Wake-up: 0x00000008 | Clock: 0x000010af&lt;BR /&gt;mmc1: sdhci: Timeout: 0x0000008c | Int stat: 0x00000000&lt;BR /&gt;mmc1: sdhci: Int enab: 0x007f1003 | Sig enab: 0x007f1003&lt;BR /&gt;mmc1: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000302&lt;BR /&gt;mmc1: sdhci: Caps: 0x07eb0000 | Caps_1: 0x0000b407&lt;BR /&gt;mmc1: sdhci: Cmd: 0x0000341a | Max curr: 0x00ffffff&lt;BR /&gt;mmc1: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0xffffffff&lt;BR /&gt;mmc1: sdhci: Resp[2]: 0x320f5913 | Resp[3]: 0x00d02f01&lt;BR /&gt;mmc1: sdhci: Host ctl2: 0x00000000&lt;BR /&gt;mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000&lt;BR /&gt;mmc1: sdhci: ============================================&lt;BR /&gt;mmc1: Reset 0x4 never completed.&lt;/P&gt;&lt;P&gt;(continue.....)&lt;BR /&gt;---------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;・The error occrus at the code below&lt;BR /&gt;(linux/drivers/mmc/host/sdhci.c - Secure Digital Host Controller Interface driver)&lt;BR /&gt;---------------------------------------------------------------------------------------&lt;BR /&gt;void sdhci_reset(struct sdhci_host *host, u8 mask)&lt;BR /&gt;{&lt;BR /&gt;ktime_t timeout;&lt;BR /&gt;sdhci_writeb(host, mask, SDHCI_SOFTWARE_RESET);&lt;BR /&gt;if (mask &amp;amp; SDHCI_RESET_ALL) {&lt;BR /&gt;host-&amp;gt;clock = 0;&lt;BR /&gt;/* Reset-all turns off SD Bus Power */&lt;BR /&gt;if (host-&amp;gt;quirks2 &amp;amp; SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON)&lt;BR /&gt;sdhci_runtime_pm_bus_off(host);&lt;BR /&gt;}&lt;BR /&gt;/* Wait max 100 ms */&lt;BR /&gt;timeout = ktime_add_ms(ktime_get(), 100);&lt;BR /&gt;/* hw clears the bit when it's done */&lt;BR /&gt;while (sdhci_readb(host, SDHCI_SOFTWARE_RESET) &amp;amp; mask) {&lt;BR /&gt;if (ktime_after(ktime_get(), timeout)) {&lt;BR /&gt;pr_err("%s: Reset 0x%x never completed.\n",&lt;BR /&gt;mmc_hostname(host-&amp;gt;mmc), (int)mask);&lt;BR /&gt;sdhci_dumpregs(host);&lt;BR /&gt;return;&lt;BR /&gt;}&lt;BR /&gt;udelay(10);&lt;BR /&gt;---------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;・No effect drivers&lt;BR /&gt;&lt;A href="https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci.c" target="_blank"&gt;https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci.c&lt;/A&gt;&lt;BR /&gt;&lt;A href="https://source.codeaurora.org/external/imx/linux-imx/tree/drivers/mmc/host/sdhci-esdhc-imx.c?h=imx_5.4.70_2.3.0" target="_blank"&gt;https://source.codeaurora.org/external/imx/linux-imx/tree/drivers/mmc/host/sdhci-esdhc-imx.c?h=imx_5.4.70_2.3.0&lt;/A&gt;&lt;BR /&gt;&lt;A href="https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci.c" target="_blank"&gt;https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci.c&lt;/A&gt;&lt;BR /&gt;&lt;A href="https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci-esdhc-imx.c" target="_blank"&gt;https://github.com/torvalds/linux/blob/master/drivers/mmc/host/sdhci-esdhc-imx.c&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;・i.MX 6ULL Reference Manual Rev.1 p4036&lt;BR /&gt;-------------------------------------------------------------------------------------------------------&lt;BR /&gt;RSTA Software Reset For ALL&lt;/P&gt;&lt;P&gt;This reset effects the entire Host Controller except for the card detection circuit. Register bits of type ROC,&lt;BR /&gt;RW, RW1C, RWAC are cleared. During its initialization, the Host Driver shall set this bit to 1 to reset the&lt;BR /&gt;uSDHC. The uSDHC shall reset this bit to 0 when the capabilities registers are valid and the Host Driver&lt;BR /&gt;can read them. Additional use of Software Reset For All does not affect the value of the Capabilities&lt;BR /&gt;registers. After this bit is set, it is recommended that the Host Driver reset the external card and reinitialize&lt;BR /&gt;it. After this bit is set, SW should wait for self-clear.&lt;BR /&gt;-------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;・We have already checked the post below, but not resolved.&lt;BR /&gt;　&lt;A href="https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-gets-stuck/td-p/617103" target="_blank"&gt;https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-gets-stuck/td-p/617103&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could you please help on fixing this?&lt;/P&gt;</description>
      <pubDate>Wed, 24 Nov 2021 06:38:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1375994#M183464</guid>
      <dc:creator>tomohiroseki</dc:creator>
      <dc:date>2021-11-24T06:38:40Z</dc:date>
    </item>
    <item>
      <title>Re: RSTA bit in the uSDHCx_SYS_CTRL register is not self cleared</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1379427#M183800</link>
      <description>&lt;P&gt;Hi Tomohiro&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;from team:&lt;/P&gt;
&lt;P&gt;--------------------&lt;/P&gt;
&lt;DIV id="bodyDisplay_2" class="lia-message-body lia-component-message-view-widget-body lia-component-body-signature-highlight-escalation lia-component-message-view-widget-body-signature-highlight-escalation"&gt;
&lt;DIV class="lia-message-body-content"&gt;
&lt;P&gt;The suggestions are&lt;/P&gt;
&lt;P&gt;1. Check the power supply to sdhc and SD/eMMC card.&lt;/P&gt;
&lt;P&gt;2.&amp;nbsp;sdhci_reset may be called from&amp;nbsp;sdhci_add_host or other code, check which code cause the first failure of&amp;nbsp;sdhci_reset.&lt;/P&gt;
&lt;P&gt;3. ABA swap test on SD/eMMC card, check if it's card issue.&lt;/P&gt;
&lt;P&gt;4. ABA swap test on the mx6ull chip, check if it's board issue.&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P&gt;--------------------&lt;/P&gt;
&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;</description>
      <pubDate>Wed, 01 Dec 2021 06:52:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1379427#M183800</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2021-12-01T06:52:39Z</dc:date>
    </item>
    <item>
      <title>Re: RSTA bit in the uSDHCx_SYS_CTRL register is not self cleared</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1380967#M183911</link>
      <description>&lt;P&gt;HI Team,&lt;BR /&gt;Thanks your reply.&lt;/P&gt;&lt;P&gt;A1.&lt;BR /&gt;This issue occurs even if without any SD cards.&lt;BR /&gt;We measure power supply 3.3V with an oscilloscope and found its ok.&lt;BR /&gt;The power supply to sdhc controller of soc is as controlled by Linux driver, and we found any defects yet.&lt;/P&gt;&lt;P&gt;A2.&lt;BR /&gt;This issue occurs first time sdhci_add_host called.&lt;/P&gt;&lt;P&gt;A3.&lt;BR /&gt;As shown forward, this issue occurs without any SD cards, so this is not a card issue.&lt;/P&gt;&lt;P&gt;A4.&lt;BR /&gt;This issue is unstable. One day it occurs once in 10~100 times, but other day it doesn't in 4000 times.&lt;BR /&gt;So We assume ABA swap test is not effective.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;On Our custom boards, We believe hardware related this issue are only below..&lt;/P&gt;&lt;P&gt;i.MX6ULL chip&lt;BR /&gt;eMMC(boot) chip&lt;BR /&gt;boad(power supply / signals between 2 chips)&lt;/P&gt;&lt;P&gt;What are the other possible causes?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;We afraid this is a sdhc controller issue of soc.&lt;BR /&gt;Is there any idea or information of such a errata?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Best Regards,&lt;BR /&gt;Tomohiro seki&lt;/P&gt;</description>
      <pubDate>Fri, 03 Dec 2021 03:49:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1380967#M183911</guid>
      <dc:creator>tomohiroseki</dc:creator>
      <dc:date>2021-12-03T03:49:09Z</dc:date>
    </item>
    <item>
      <title>Re: RSTA bit in the uSDHCx_SYS_CTRL register is not self cleared</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1381016#M183919</link>
      <description>&lt;P&gt;&amp;gt;What are the other possible causes?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;it was already answered:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;1. Check the power supply to sdhc and SD/eMMC card.&lt;/P&gt;
&lt;P&gt;2. sdhci_reset may be called from sdhci_add_host or other code, check which code cause the first failure of sdhci_reset.&lt;/P&gt;
&lt;P&gt;3. ABA swap test on SD/eMMC card, check if it's card issue.&lt;/P&gt;
&lt;P&gt;4. ABA swap test on the mx6ull chip, check if it's board issue.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&amp;gt;We afraid this is a sdhc controller issue of soc.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;it was suggested before : " 4. ABA swap test on the mx6ull chip, check if it's board issue."&lt;/P&gt;
&lt;P&gt;Please try it.&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&amp;gt;Is there any idea or information of such a errata?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;no&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 03 Dec 2021 06:33:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/RSTA-bit-in-the-uSDHCx-SYS-CTRL-register-is-not-self-cleared/m-p/1381016#M183919</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2021-12-03T06:33:06Z</dc:date>
    </item>
  </channel>
</rss>

