Hi Shawn, On 03/18/2016 12:46 AM, Shawn Lin wrote: > Hi jaehoon, > > On 2016/3/2 9:29, Jaehoon Chung wrote: >> 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. >> > > Any good news? :) > Or let add it for dw_mmc by default? Sorry for replying too late..I had other tasks..:( Today or Tomorrow, i will apply the patches related with dw-mmcc controller. And will request to pull to Ulf. I didn't check...but i think this patch will be applied on dw_mmc-rockchip. After then..we can use it by default in future. Refer to below. https://patchwork.kernel.org/patch/4240491/ Best Regards, Jaehoon Chung > >> 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, >>> >> >> >> _______________________________________________ >> Linux-rockchip mailing list >> Linux-rockchip@xxxxxxxxxxxxxxxxxxx >> http://lists.infradead.org/mailman/listinfo/linux-rockchip >> > > -- 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