Hi Shawn. On 03/01/2016 04:12 PM, Shawn Lin wrote: > Without MMC_CAP_ERASE support, we fail to mount partition > with "discard" option since mmc_queue_setup_discard is limited > for checking mmc_can_erase. Without doing mmc_queue_setup_discard, > blk_queue_discard fails to test QUEUE_FLAG_DISCARD flag, so we get > the following log from f2fs(actually similar to other file system): > > mounting with "discard" option, but the device does not support discard We can enable MMC_CAP_ERASE by default, since other SoC also needs this capability. I had sent some patch for enabling by default, but at that time i didn't remember why not enabled by default. I will check that reason..and share the information. Best Regards, Jaehoon Chung > > Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx> > --- > > drivers/mmc/host/dw_mmc-rockchip.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/mmc/host/dw_mmc-rockchip.c b/drivers/mmc/host/dw_mmc-rockchip.c > index 84e50f3..2eda118 100644 > --- a/drivers/mmc/host/dw_mmc-rockchip.c > +++ b/drivers/mmc/host/dw_mmc-rockchip.c > @@ -234,11 +234,20 @@ static int dw_mci_rockchip_init(struct dw_mci *host) > return 0; > } > > +/* Common capabilities of RK3288 SoC */ > +static unsigned long dw_mci_rk3288_dwmmc_caps[4] = { > + MMC_CAP_ERASE, > + MMC_CAP_ERASE, > + MMC_CAP_ERASE, > + MMC_CAP_ERASE, > +}; > + > static const struct dw_mci_drv_data rk2928_drv_data = { > .init = dw_mci_rockchip_init, > }; > > static const struct dw_mci_drv_data rk3288_drv_data = { > + .caps = dw_mci_rk3288_dwmmc_caps, > .set_ios = dw_mci_rk3288_set_ios, > .execute_tuning = dw_mci_rk3288_execute_tuning, > .parse_dt = dw_mci_rk3288_parse_dt, > -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html