Skip to contentSkip to conversation

implement eMMC4.4 standard HW reset feature

PATCH Superseded Chuanxiao Dong 2 participants 4 messages Dec 1, 2010 – Dec 7, 2010 MMC, SD and SDIO

v4 of 6 Superseded Latest is v6 →

lore
Share & tools
lore
#0 lore raw

v4 cover implement eMMC4.4 standard HW reset feature

Hi,
These are the version 4 patches to implement eMMC4.4 HW reset feature. Host controller can use this feature by trigger RST_n signal. To enable this, byte 162 of EXT_CSD register should be set. HW reset is implemented in mmc core layer and sdhci host layer, and it will be used after each reading/writing/erasing timeout error occures.

change-log:
This version change the way to detect timeout error conditions. Added a new routine mmc_handle_timeout_error to do this instead to do this in mmc_wait_for_req. Each timeout read/write/erase command can use this routine to do HW reset.

patch1: enable HW reset capability if card support.

patch2: add two new callback to implement HW reset in mmc core layer. In this patch, routine mmc_handle_timeout_error was added.

patch3: implement hardware_reset callback for sdhci host. A new callback reset_emmc was defined which will be each sdhci host controller to implement separately.

patch4: did a HW reset after each read/write/erase command.

Thanks
Chuanxiao

#1 lore raw

Hello all,
How about these patches? It implemented HW reset feature. When card occurred a timeout error during reading/writing/erasing, these patches will allow driver to reset eMMC card by trigger a HW reset signal. Does anyone have any comments about the implementation of these patches? Wolfram and Arnd already pointed out the unsuitable patch headers. Thanks! :)

Quoted 39 lines

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Chuanxiao Dong
Sent: Wednesday, December 01, 2010 8:49 PM
To: [email protected]
Cc: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
Subject: [PATCH v4 0/4]implement eMMC4.4 standard HW reset feature

Hi,
These are the version 4 patches to implement eMMC4.4 HW reset feature. Host controller can use this feature by trigger RST_n signal. To enable this, byte 162 of EXT_CSD register should be set. HW reset is implemented in mmc core layer and sdhci host layer, and it will be used after each reading/writing/erasing timeout error occures.

change-log:
This version change the way to detect timeout error conditions. Added a new routine mmc_handle_timeout_error to do this instead to do this in mmc_wait_for_req. Each timeout read/write/erase command can use this routine to do HW reset.

patch1: enable HW reset capability if card support.

patch2: add two new callback to implement HW reset in mmc core layer. In this patch, routine mmc_handle_timeout_error was added.

patch3: implement hardware_reset callback for sdhci host. A new callback reset_emmc was defined which will be each sdhci host controller to implement separately.

patch4: did a HW reset after each read/write/erase command.

Thanks
Chuanxiao
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

#2 lore raw
Quoted 3 lines · Chuanxiao

Hello all,
How about these patches? It implemented HW reset feature. When card occurred a timeout error during reading/writing/erasing, these patches will allow driver to reset eMMC card by trigger a HW reset signal. Does anyone have any comments about the implementation of these patches? Wolfram and Arnd already pointed out the unsuitable patch headers. Thanks! :)

Hi,
I'm not yet find a reason to use this feature. Now it uses the samsung and sandisk v4.41 but still no problem.
I wonder what's the purpose and effect if it uses or not?

Thank you,
Kyungmin Park

Quoted 46 lines
Quoted 33 lines

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Chuanxiao Dong
Sent: Wednesday, December 01, 2010 8:49 PM
To: [email protected]
Cc: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
Subject: [PATCH v4 0/4]implement eMMC4.4 standard HW reset feature

Hi,
      These are the version 4 patches to implement eMMC4.4 HW reset feature. Host controller can use this feature by trigger RST_n signal. To enable this, byte 162 of EXT_CSD register should be set. HW reset is implemented in mmc core layer and sdhci host layer, and it will be used after each reading/writing/erasing timeout error occures.

      change-log:
      This version change the way to detect timeout error conditions. Added a new routine mmc_handle_timeout_error to do this instead to do this in mmc_wait_for_req. Each timeout read/write/erase command can use this routine to do HW reset.

      patch1: enable HW reset capability if card support.

      patch2: add two new callback to implement HW reset in mmc core layer. In this patch, routine mmc_handle_timeout_error was added.

      patch3: implement hardware_reset callback for sdhci host. A new callback reset_emmc was defined which will be each sdhci host controller to implement separately.

Quoted 8 lines

      patch4: did a HW reset after each read/write/erase command.

Thanks
Chuanxiao
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

#3 lore raw
Quoted 16 lines

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Kyungmin Park
Sent: Tuesday, December 07, 2010 9:34 AM
To: Dong, Chuanxiao
Cc: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; Mai, Leonard; Arnd Bergmann; Wolfram Sang
Subject: Re: [PATCH v4 0/4]implement eMMC4.4 standard HW reset feature

Quoted 2 lines · Chuanxiao

Hello all,
How about these patches? It implemented HW reset feature. When card

occurred a timeout error during reading/writing/erasing, these patches will allow driver to reset eMMC card by trigger a HW reset signal.

Quoted 7 lines
Quoted 1 line

Does anyone have any comments about the implementation of these patches?

Wolfram and Arnd already pointed out the unsuitable patch headers. Thanks! :)

Hi,
I'm not yet find a reason to use this feature. Now it uses the samsung and sandisk v4.41 but still no problem.
I wonder what's the purpose and effect if it uses or not?

This feature will only be used when card occurs a timeout error during reading/writing/erasing.
When host send a command to card, for some reason, if card didn't have any response to host, then host controller will generate a timeout interrupt to indicate this command is timeout. At this time, card maybe cannot response any command unless be reset. If driver did nothing at such scenario, RFC may be crashed. So I think when timeout error occurs, reset card is needed. Host sends CMD0 also can reset the card, but card may be dead and cannot response any command. So this patch will pull up a GPIO line to trigger a reset signal and let eMMC card reset itself, not send a command to do that. That is my understanding of this feature.

Thanks
Chuanxiao