[PATVH v3 0/3]mmc: set a suitable max_discard_sectors value for HC

Chuanxiao Dong
2010-12-02T11:28:47Z

Hi,
This is the version 3 patch which set a suitable max_discard_sectors
value for SDHCI host controller. In this patch, a new quirk is added for
such controller.

max_discard_sectors is a parameter of MMC driver request queue. This
value can limit how many sectors will be passed down to host for
erasing. The original value for this parameter is UINT_MAX which means
there is no limitation for the count of sectors to pass down for
erasing.

But some SDHCI host controller cannot erase too many sectors at one
time. It may generate a timeout interrupt since the time erasing used is
longer than the timeout time host can wait.

So these patches add a new quirk for such SDHCI host controller and let
it erase only signle eraseblock each time. This will be safe for such
SDHCI host to use.

patch1: add a new quirk for SDHCI host controller. Also add a new
routine mmc_set_discard_limit which is used to set max_discard_sectors
value for such SDHCI host controller.
patch2: set timeout control register for such SDHCI host controller.
patch3: add this quirk for MFLD SDHCI host controller.

Change-log:
patch1: let mmc_set_discard_limit can return value UINT_MAX.
patch2: no change.
patch3: no change.

Thanks
Chuanxiao