History

mmc: host: Drop redundant MMC_CAP_ERASE

The MMC_CAP_ERASE bit is no longer used by the mmc core as erase, discard and trim operations are now always supported. Therefore, drop the bit and move all mmc hosts away from using it.

Ulf Hansson committed 6 years ago

Commit 1be64c71 parent 94fe25816 files · +12 −25Browse files

Unified · Split

16 files
  1. drivers/mmc/host/bcm2835.c +1 −2
  2. drivers/mmc/host/cavium.c +1 −2
  3. drivers/mmc/host/dw_mmc.c +0 −6
  4. drivers/mmc/host/meson-mx-sdio.c +1 −1
  5. drivers/mmc/host/mtk-sd.c +1 −1
  6. drivers/mmc/host/mvsdio.c +0 −2
  7. drivers/mmc/host/mxs-mmc.c +1 −2
  8. drivers/mmc/host/omap.c +1 −1
  9. drivers/mmc/host/omap_hsmmc.c +1 −1
  10. drivers/mmc/host/rtsx_pci_sdmmc.c +1 −1
  11. drivers/mmc/host/rtsx_usb_sdmmc.c +1 −1
  12. drivers/mmc/host/sdhci.c +1 −1
  13. drivers/mmc/host/sunxi-mmc.c +1 −1
  14. drivers/mmc/host/tmio_mmc_core.c +1 −1
  15. drivers/staging/greybus/sdio.c +0 −1
  16. include/linux/mmc/host.h +0 −1
drivers/mmc/host/bcm2835.c+1−2
@@ -1280,8 +1280,7 @@ static int bcm2835_add_host(struct bcm2835_host *host) · 1279 unmodified lines
12801280
12811281 /* host controller capabilities */
12821282 mmc->caps |= MMC_CAP_SD_HIGHSPEED | MMC_CAP_MMC_HIGHSPEED |
1283− MMC_CAP_NEEDS_POLL | MMC_CAP_HW_RESET | MMC_CAP_ERASE |
1284− MMC_CAP_CMD23;
1283+ MMC_CAP_NEEDS_POLL | MMC_CAP_HW_RESET | MMC_CAP_CMD23;
12851284
12861285 spin_lock_init(&host->lock);
12871286 mutex_init(&host->mutex);
drivers/mmc/host/cavium.c+1−2
@@ -1038,8 +1038,7 @@ int cvm_mmc_of_slot_probe(struct device *dev, struct cvm_mmc_host *host) · 1037 unmodified lines
10381038 * Disable bounce buffers for max_segs = 1
10391039 */
10401040 mmc->caps |= MMC_CAP_MMC_HIGHSPEED | MMC_CAP_SD_HIGHSPEED |
1041− MMC_CAP_ERASE | MMC_CAP_CMD23 | MMC_CAP_POWER_OFF_CARD |
1042− MMC_CAP_3_3V_DDR;
1041+ MMC_CAP_CMD23 | MMC_CAP_POWER_OFF_CARD | MMC_CAP_3_3V_DDR;
10431042
10441043 if (host->use_sg)
10451044 mmc->max_segs = 16;
drivers/mmc/host/dw_mmc.c+0−6
@@ -2751,12 +2751,6 @@ static int dw_mci_init_slot_caps(struct dw_mci_slot *slot) · 2750 unmodified lines
27512751 if (host->pdata->caps)
27522752 mmc->caps = host->pdata->caps;
27532753
2754− /*
2755− * Support MMC_CAP_ERASE by default.
2756− * It needs to use trim/discard/erase commands.
2757− */
2758− mmc->caps |= MMC_CAP_ERASE;
2759−
27602754 if (host->pdata->pm_caps)
27612755 mmc->pm_caps = host->pdata->pm_caps;
27622756
drivers/mmc/host/meson-mx-sdio.c+1−1
@@ -564,7 +564,7 @@ static int meson_mx_mmc_add_host(struct meson_mx_mmc_host *host) · 563 unmodified lines
564564 mmc->f_max = clk_round_rate(host->cfg_div_clk,
565565 clk_get_rate(host->parent_clk));
566566
567− mmc->caps |= MMC_CAP_ERASE | MMC_CAP_CMD23 | MMC_CAP_WAIT_WHILE_BUSY;
567+ mmc->caps |= MMC_CAP_CMD23 | MMC_CAP_WAIT_WHILE_BUSY;
568568 mmc->ops = &meson_mx_mmc_ops;
569569
570570 ret = mmc_of_parse(mmc);
drivers/mmc/host/mtk-sd.c+1−1
@@ -2326,7 +2326,7 @@ static int msdc_drv_probe(struct platform_device *pdev) · 2325 unmodified lines
23262326 if (mmc->caps & MMC_CAP_SDIO_IRQ)
23272327 mmc->caps2 |= MMC_CAP2_SDIO_IRQ_NOTHREAD;
23282328
2329− mmc->caps |= MMC_CAP_ERASE | MMC_CAP_CMD23;
2329+ mmc->caps |= MMC_CAP_CMD23;
23302330 /* MMC core transfer sizes tunable parameters */
23312331 mmc->max_segs = MAX_BD_NUM;
23322332 if (host->dev_comp->support_64g)
drivers/mmc/host/mvsdio.c+0−2
@@ -752,8 +752,6 @@ static int mvsd_probe(struct platform_device *pdev) · 751 unmodified lines
752752 if (maxfreq)
753753 mmc->f_max = maxfreq;
754754
755− mmc->caps |= MMC_CAP_ERASE;
756−
757755 spin_lock_init(&host->lock);
758756
759757 host->base = devm_platform_ioremap_resource(pdev, 0);
drivers/mmc/host/mxs-mmc.c+1−2
@@ -634,8 +634,7 @@ static int mxs_mmc_probe(struct platform_device *pdev) · 633 unmodified lines
634634 /* set mmc core parameters */
635635 mmc->ops = &mxs_mmc_ops;
636636 mmc->caps = MMC_CAP_SD_HIGHSPEED | MMC_CAP_MMC_HIGHSPEED |
637− MMC_CAP_SDIO_IRQ | MMC_CAP_NEEDS_POLL | MMC_CAP_CMD23 |
638− MMC_CAP_ERASE;
637+ MMC_CAP_SDIO_IRQ | MMC_CAP_NEEDS_POLL | MMC_CAP_CMD23;
639638
640639 host->broken_cd = of_property_read_bool(np, "broken-cd");
641640
drivers/mmc/host/omap.c+1−1
@@ -1244,7 +1244,7 @@ static int mmc_omap_new_slot(struct mmc_omap_host *host, int id) · 1243 unmodified lines
12441244
12451245 mmc->caps = 0;
12461246 if (host->pdata->slots[id].wires >= 4)
1247− mmc->caps |= MMC_CAP_4_BIT_DATA | MMC_CAP_ERASE;
1247+ mmc->caps |= MMC_CAP_4_BIT_DATA;
12481248
12491249 mmc->ops = &mmc_omap_ops;
12501250 mmc->f_min = 400000;
drivers/mmc/host/omap_hsmmc.c+1−1
@@ -1922,7 +1922,7 @@ static int omap_hsmmc_probe(struct platform_device *pdev) · 1921 unmodified lines
19221922 mmc->max_req_size = mmc->max_blk_size * mmc->max_blk_count;
19231923
19241924 mmc->caps |= MMC_CAP_MMC_HIGHSPEED | MMC_CAP_SD_HIGHSPEED |
1925− MMC_CAP_WAIT_WHILE_BUSY | MMC_CAP_ERASE | MMC_CAP_CMD23;
1925+ MMC_CAP_WAIT_WHILE_BUSY | MMC_CAP_CMD23;
19261926
19271927 mmc->caps |= mmc_pdata(host)->caps;
19281928 if (mmc->caps & MMC_CAP_8_BIT_DATA)
drivers/mmc/host/rtsx_pci_sdmmc.c+1−1
@@ -1347,7 +1347,7 @@ static void realtek_init_host(struct realtek_pci_sdmmc *host) · 1346 unmodified lines
13471347 mmc->ocr_avail = MMC_VDD_32_33 | MMC_VDD_33_34 | MMC_VDD_165_195;
13481348 mmc->caps = MMC_CAP_4_BIT_DATA | MMC_CAP_SD_HIGHSPEED |
13491349 MMC_CAP_MMC_HIGHSPEED | MMC_CAP_BUS_WIDTH_TEST |
1350− MMC_CAP_UHS_SDR12 | MMC_CAP_UHS_SDR25 | MMC_CAP_ERASE;
1350+ MMC_CAP_UHS_SDR12 | MMC_CAP_UHS_SDR25;
13511351 mmc->caps2 = MMC_CAP2_NO_PRESCAN_POWERUP | MMC_CAP2_FULL_PWR_CYCLE;
13521352 mmc->max_current_330 = 400;
13531353 mmc->max_current_180 = 800;
drivers/mmc/host/rtsx_usb_sdmmc.c+1−1
@@ -1314,7 +1314,7 @@ static void rtsx_usb_init_host(struct rtsx_usb_sdmmc *host) · 1313 unmodified lines
13141314 mmc->caps = MMC_CAP_4_BIT_DATA | MMC_CAP_SD_HIGHSPEED |
13151315 MMC_CAP_MMC_HIGHSPEED | MMC_CAP_BUS_WIDTH_TEST |
13161316 MMC_CAP_UHS_SDR12 | MMC_CAP_UHS_SDR25 | MMC_CAP_UHS_SDR50 |
1317− MMC_CAP_ERASE | MMC_CAP_SYNC_RUNTIME_PM;
1317+ MMC_CAP_SYNC_RUNTIME_PM;
13181318 mmc->caps2 = MMC_CAP2_NO_PRESCAN_POWERUP | MMC_CAP2_FULL_PWR_CYCLE |
13191319 MMC_CAP2_NO_SDIO;
13201320
drivers/mmc/host/sdhci.c+1−1
@@ -4331,7 +4331,7 @@ int sdhci_setup_host(struct sdhci_host *host) · 4330 unmodified lines
43314331 !host->ops->get_max_timeout_count)
43324332 mmc->max_busy_timeout = 0;
43334333
4334− mmc->caps |= MMC_CAP_SDIO_IRQ | MMC_CAP_ERASE | MMC_CAP_CMD23;
4334+ mmc->caps |= MMC_CAP_SDIO_IRQ | MMC_CAP_CMD23;
43354335 mmc->caps2 |= MMC_CAP2_SDIO_IRQ_NOTHREAD;
43364336
43374337 if (host->quirks & SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12)
drivers/mmc/host/sunxi-mmc.c+1−1
@@ -1394,7 +1394,7 @@ static int sunxi_mmc_probe(struct platform_device *pdev) · 1393 unmodified lines
13941394 mmc->f_min = 400000;
13951395 mmc->f_max = 52000000;
13961396 mmc->caps |= MMC_CAP_MMC_HIGHSPEED | MMC_CAP_SD_HIGHSPEED |
1397− MMC_CAP_ERASE | MMC_CAP_SDIO_IRQ;
1397+ MMC_CAP_SDIO_IRQ;
13981398
13991399 /*
14001400 * Some H5 devices do not have signal traces precise enough to
drivers/mmc/host/tmio_mmc_core.c+1−1
@@ -1128,7 +1128,7 @@ int tmio_mmc_host_probe(struct tmio_mmc_host *_host) · 1127 unmodified lines
11281128 if (ret == -EPROBE_DEFER)
11291129 return ret;
11301130
1131− mmc->caps |= MMC_CAP_ERASE | MMC_CAP_4_BIT_DATA | pdata->capabilities;
1131+ mmc->caps |= MMC_CAP_4_BIT_DATA | pdata->capabilities;
11321132 mmc->caps2 |= pdata->capabilities2;
11331133 mmc->max_segs = pdata->max_segs ? : 32;
11341134 mmc->max_blk_size = TMIO_MAX_BLK_SIZE;
drivers/staging/greybus/sdio.c+0−1
@@ -67,7 +67,6 @@ static void _gb_sdio_set_host_caps(struct gb_sdio_host *host, u32 r) · 66 unmodified lines
6767 ((r & GB_SDIO_CAP_8_BIT_DATA) ? MMC_CAP_8_BIT_DATA : 0) |
6868 ((r & GB_SDIO_CAP_MMC_HS) ? MMC_CAP_MMC_HIGHSPEED : 0) |
6969 ((r & GB_SDIO_CAP_SD_HS) ? MMC_CAP_SD_HIGHSPEED : 0) |
70− ((r & GB_SDIO_CAP_ERASE) ? MMC_CAP_ERASE : 0) |
7170 ((r & GB_SDIO_CAP_1_2V_DDR) ? MMC_CAP_1_2V_DDR : 0) |
7271 ((r & GB_SDIO_CAP_1_8V_DDR) ? MMC_CAP_1_8V_DDR : 0) |
7372 ((r & GB_SDIO_CAP_POWER_OFF_CARD) ? MMC_CAP_POWER_OFF_CARD : 0) |
include/linux/mmc/host.h+0−1
@@ -321,7 +321,6 @@ struct mmc_host { · 320 unmodified lines
321321 #define MMC_CAP_AGGRESSIVE_PM (1 << 7) /* Suspend (e)MMC/SD at idle */
322322 #define MMC_CAP_NONREMOVABLE (1 << 8) /* Nonremovable e.g. eMMC */
323323 #define MMC_CAP_WAIT_WHILE_BUSY (1 << 9) /* Waits while card is busy */
324−#define MMC_CAP_ERASE (1 << 10) /* Allow erase/trim commands */
325324 #define MMC_CAP_3_3V_DDR (1 << 11) /* Host supports eMMC DDR 3.3V */
326325 #define MMC_CAP_1_8V_DDR (1 << 12) /* Host supports eMMC DDR 1.8V */
327326 #define MMC_CAP_1_2V_DDR (1 << 13) /* Host supports eMMC DDR 1.2V */