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

Reply via email to