Re: [PATCH v1 4/6] mmc: sdhci-pci: Remove dead code (struct sdhci_pci_data et al)

From: Adrian Hunter
Date: Fri Oct 08 2021 - 05:42:39 EST


On 05/10/2021 13:24, Andy Shevchenko wrote:
> The last user of this struct gone couple of releases ago. Besides that
> there were not so many users of this API for 10+ years: one is
> implied above Intel Merrifield (added 2016-08-31, removed 2021-02-11),
> and another is Intel Sunrisepoint (added 2015-02-06, removed 2017-03-20).

Wouldn't hurt to identify the commits here if it is not too much trouble.

>
> Effectively this is a revert of the commit 52c506f0bc72 ("mmc: sdhci-pci:
> add platform data").
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> ---
> drivers/mmc/host/Makefile | 1 -
> drivers/mmc/host/sdhci-pci-core.c | 31 ++++--------------------------
> drivers/mmc/host/sdhci-pci-data.c | 6 ------
> drivers/mmc/host/sdhci-pci.h | 1 -
> include/linux/mmc/sdhci-pci-data.h | 18 -----------------
> 5 files changed, 4 insertions(+), 53 deletions(-)
> delete mode 100644 drivers/mmc/host/sdhci-pci-data.c
> delete mode 100644 include/linux/mmc/sdhci-pci-data.h
>
> diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
> index 14004cc09aaa..ea36d379bd3c 100644
> --- a/drivers/mmc/host/Makefile
> +++ b/drivers/mmc/host/Makefile
> @@ -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
> diff --git a/drivers/mmc/host/sdhci-pci-core.c b/drivers/mmc/host/sdhci-pci-core.c
> index 30caa0b325de..8d01285e1b32 100644
> --- a/drivers/mmc/host/sdhci-pci-core.c
> +++ b/drivers/mmc/host/sdhci-pci-core.c
> @@ -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>
> @@ -26,11 +24,13 @@
> #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
> @@ -2116,22 +2116,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 :
> @@ -2218,10 +2202,6 @@ static struct sdhci_pci_slot *sdhci_pci_probe_slot(
> 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);
> @@ -2244,9 +2224,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
> index 18638fb363d8..000000000000
> --- a/drivers/mmc/host/sdhci-pci-data.c
> +++ /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);
> diff --git a/drivers/mmc/host/sdhci-pci.h b/drivers/mmc/host/sdhci-pci.h
> index 8f90c4163bb5..15b36cd47860 100644
> --- a/drivers/mmc/host/sdhci-pci.h
> +++ b/drivers/mmc/host/sdhci-pci.h
> @@ -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
> index 1d42872d22f3..000000000000
> --- a/include/linux/mmc/sdhci-pci-data.h
> +++ /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
>