Hi,
On 02/08/2014 03:39 AM, Puthikorn Voravootivat wrote:
> Force host to have erase capacity to enable trim or
> discard feature in supported eMMC device.
>
> Signed-off-by: Puthikorn Voravootivat <[email protected]>
> ---
> In mmc_init_queue() before setting up the discard function, mmc driver
> will call mmc_can_erase() which will always return 0 because the host
> erase capacity is not set anywhere. So to enable discard function, we
> need to add erase capacity to the host.
>
> drivers/mmc/host/dw_mmc.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
> index 55cd110..f47f1c1 100644
> --- a/drivers/mmc/host/dw_mmc.c
> +++ b/drivers/mmc/host/dw_mmc.c
> @@ -55,6 +55,8 @@
> #define DW_MCI_FREQ_MAX 200000000 /* unit: HZ */
> #define DW_MCI_FREQ_MIN 400000 /* unit: HZ */
>
> +#define DW_MCI_DEFAULT_CAPS (MMC_CAP_ERASE)
> +
This define didn't need.
> #ifdef CONFIG_MMC_DW_IDMAC
> #define IDMAC_INT_CLR (SDMMC_IDMAC_INT_AI |
> SDMMC_IDMAC_INT_NI | \
> SDMMC_IDMAC_INT_CES | SDMMC_IDMAC_INT_DU | \
> @@ -2371,6 +2373,8 @@ static struct dw_mci_board *dw_mci_parse_dt(struct
> dw_mci *host)
> return ERR_PTR(-ENOMEM);
> }
>
> + pdata->caps |= DW_MCI_DEFAULT_CAPS;
> +
I didn't want to enable by default. If it's possible, how about using dt-file?
Well, if need to enable by default, just use the "pdata->caps |=
MMC_CAPS_ERASE;"
Best Regards,
Jaehoon Chung
> /* find out number of slots supported */
> if (of_property_read_u32(dev->of_node, "num-slots",
> &pdata->num_slots)) {
>
--
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