mmc: sdhci-pci: Remove dead code (struct sdhci_pci_data et al)
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Thu, 14 Oct 2021 13:26:11 +0000 (16:26 +0300)
committerUlf Hansson <ulf.hansson@linaro.org>
Tue, 19 Oct 2021 10:43:21 +0000 (12:43 +0200)
The last user of this struct gone a couple of releases ago.
Besides that there were not so many users of this API for
more than 10 years:

1/ The one is Intel Merrifield, that had been added 2016-08-31
   by the commit 3976b0380b31 ("x86/platform/intel-mid: Enable
   SD card detection on Merrifield") and removed 2021-02-11 by
   the commit 4590d98f5a4f ("sfi: Remove framework for deprecated
   firmware").

2/ The other is Intel Sunrisepoint related, that had been added
   2015-02-06 by the commit e1bfad6d936d ("mmc: sdhci-pci: Add
   support for drive strength selection for SPT") and removed
   2017-03-20 by the commit 51ced59cc02e ("mmc: sdhci-pci: Use
   ACPI DSM to get driver strength for some Intel devices").

Effectively this is a revert of the commit 52c506f0bc72 ("mmc:
sdhci-pci: add platform data").

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20211014132613.27861-4-andriy.shevchenko@linux.intel.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/Makefile
drivers/mmc/host/sdhci-pci-core.c
drivers/mmc/host/sdhci-pci-data.c [deleted file]
drivers/mmc/host/sdhci-pci.h
include/linux/mmc/sdhci-pci-data.h [deleted file]

index 14004cc09aaad13e95dc61b265334fe84326761a..ea36d379bd3ca08a6511e284407e66f8a5773da3 100644 (file)
@@ -14,7 +14,6 @@ obj-$(CONFIG_MMC_SDHCI)               += sdhci.o
 obj-$(CONFIG_MMC_SDHCI_PCI)    += sdhci-pci.o
 sdhci-pci-y                    += sdhci-pci-core.o sdhci-pci-o2micro.o sdhci-pci-arasan.o \
                                   sdhci-pci-dwc-mshc.o sdhci-pci-gli.o
-obj-$(subst m,y,$(CONFIG_MMC_SDHCI_PCI))       += sdhci-pci-data.o
 obj-$(CONFIG_MMC_SDHCI_ACPI)   += sdhci-acpi.o
 obj-$(CONFIG_MMC_SDHCI_PXAV3)  += sdhci-pxav3.o
 obj-$(CONFIG_MMC_SDHCI_PXAV2)  += sdhci-pxav2.o
index 19e13dfae59306170f1daf4292cfb52bce1281ab..8938c63b1e773639db1403cbbaf0940b7c9808a2 100644 (file)
@@ -17,8 +17,6 @@
 #include <linux/dma-mapping.h>
 #include <linux/slab.h>
 #include <linux/device.h>
-#include <linux/mmc/host.h>
-#include <linux/mmc/mmc.h>
 #include <linux/scatterlist.h>
 #include <linux/io.h>
 #include <linux/iopoll.h>
 #include <linux/pm_runtime.h>
 #include <linux/pm_qos.h>
 #include <linux/debugfs.h>
-#include <linux/mmc/slot-gpio.h>
-#include <linux/mmc/sdhci-pci-data.h>
 #include <linux/acpi.h>
 #include <linux/dmi.h>
 
+#include <linux/mmc/host.h>
+#include <linux/mmc/mmc.h>
+#include <linux/mmc/slot-gpio.h>
+
 #ifdef CONFIG_X86
 #include <asm/iosf_mbi.h>
 #endif
@@ -2131,22 +2131,6 @@ static struct sdhci_pci_slot *sdhci_pci_probe_slot(
        slot->cd_gpio = -EINVAL;
        slot->cd_idx = -1;
 
-       /* Retrieve platform data if there is any */
-       if (*sdhci_pci_get_data)
-               slot->data = sdhci_pci_get_data(pdev, slotno);
-
-       if (slot->data) {
-               if (slot->data->setup) {
-                       ret = slot->data->setup(slot->data);
-                       if (ret) {
-                               dev_err(&pdev->dev, "platform setup failed\n");
-                               goto free;
-                       }
-               }
-               slot->rst_n_gpio = slot->data->rst_n_gpio;
-               slot->cd_gpio = slot->data->cd_gpio;
-       }
-
        host->hw_name = "PCI";
        host->ops = chip->fixes && chip->fixes->ops ?
                    chip->fixes->ops :
@@ -2233,10 +2217,6 @@ remove:
                chip->fixes->remove_slot(slot, 0);
 
 cleanup:
-       if (slot->data && slot->data->cleanup)
-               slot->data->cleanup(slot->data);
-
-free:
        sdhci_free_host(host);
 
        return ERR_PTR(ret);
@@ -2259,9 +2239,6 @@ static void sdhci_pci_remove_slot(struct sdhci_pci_slot *slot)
        if (slot->chip->fixes && slot->chip->fixes->remove_slot)
                slot->chip->fixes->remove_slot(slot, dead);
 
-       if (slot->data && slot->data->cleanup)
-               slot->data->cleanup(slot->data);
-
        sdhci_free_host(slot->host);
 }
 
diff --git a/drivers/mmc/host/sdhci-pci-data.c b/drivers/mmc/host/sdhci-pci-data.c
deleted file mode 100644 (file)
index 18638fb..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-#include <linux/module.h>
-#include <linux/mmc/sdhci-pci-data.h>
-
-struct sdhci_pci_data *(*sdhci_pci_get_data)(struct pci_dev *pdev, int slotno);
-EXPORT_SYMBOL_GPL(sdhci_pci_get_data);
index 8f90c4163bb5c7a1faf5705af925cc09da193181..15b36cd47860646caa4b85ea5652f3f6562346ef 100644 (file)
@@ -156,7 +156,6 @@ struct sdhci_pci_fixes {
 struct sdhci_pci_slot {
        struct sdhci_pci_chip   *chip;
        struct sdhci_host       *host;
-       struct sdhci_pci_data   *data;
 
        int                     rst_n_gpio;
        int                     cd_gpio;
diff --git a/include/linux/mmc/sdhci-pci-data.h b/include/linux/mmc/sdhci-pci-data.h
deleted file mode 100644 (file)
index 1d42872..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-#ifndef LINUX_MMC_SDHCI_PCI_DATA_H
-#define LINUX_MMC_SDHCI_PCI_DATA_H
-
-struct pci_dev;
-
-struct sdhci_pci_data {
-       struct pci_dev  *pdev;
-       int             slotno;
-       int             rst_n_gpio; /* Set to -EINVAL if unused */
-       int             cd_gpio;    /* Set to -EINVAL if unused */
-       int             (*setup)(struct sdhci_pci_data *data);
-       void            (*cleanup)(struct sdhci_pci_data *data);
-};
-
-extern struct sdhci_pci_data *(*sdhci_pci_get_data)(struct pci_dev *pdev,
-                               int slotno);
-#endif