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
Hi all,
Can these patches be accepted? My SDHCI host controller really needs these patches to use Trim/Erase feature.
If anyone has concern about these patches, do please let me know and I would like to fix them. Thanks.
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Chuanxiao Dong
> Sent: Thursday, December 02, 2010 7:25 PM
> To: [email protected]
> Cc: [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected]
> Subject: [PATVH v3 0/3]mmc: set a suitable max_discard_sectors value for HC
>
> 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
> --
> 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