[PATCH] mci: imx-esdhc: retire esdhc_platform_data
Ahmad Fatoum
a.fatoum at pengutronix.de
Thu May 16 22:59:51 PDT 2024
We have no board in-tree that doesn't probe the imx-esdhc from DT.
The platform data is thus unused as the PBL usage happens without it,
therefore remove that struct definition and the dead code handling it.
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
arch/arm/boards/ls1028ardb/lowlevel.c | 1 -
arch/arm/boards/ls1046ardb/lowlevel.c | 1 -
arch/arm/boards/tqmls1046a/lowlevel.c | 1 -
drivers/mci/imx-esdhc.c | 34 +------------------
include/platform_data/mmc-esdhc-imx.h | 48 ---------------------------
5 files changed, 1 insertion(+), 84 deletions(-)
delete mode 100644 include/platform_data/mmc-esdhc-imx.h
diff --git a/arch/arm/boards/ls1028ardb/lowlevel.c b/arch/arm/boards/ls1028ardb/lowlevel.c
index 00db0b1cf869..e903d9d30196 100644
--- a/arch/arm/boards/ls1028ardb/lowlevel.c
+++ b/arch/arm/boards/ls1028ardb/lowlevel.c
@@ -4,7 +4,6 @@
#include <debug_ll.h>
#include <ddr_spd.h>
#include <image-metadata.h>
-#include <platform_data/mmc-esdhc-imx.h>
#include <soc/fsl/fsl_ddr_sdram.h>
#include <soc/fsl/immap_lsch2.h>
#include <asm/barebox-arm-head.h>
diff --git a/arch/arm/boards/ls1046ardb/lowlevel.c b/arch/arm/boards/ls1046ardb/lowlevel.c
index 408e6017f6cc..56b8320eddb4 100644
--- a/arch/arm/boards/ls1046ardb/lowlevel.c
+++ b/arch/arm/boards/ls1046ardb/lowlevel.c
@@ -4,7 +4,6 @@
#include <debug_ll.h>
#include <ddr_spd.h>
#include <image-metadata.h>
-#include <platform_data/mmc-esdhc-imx.h>
#include <pbl/i2c.h>
#include <soc/fsl/fsl_ddr_sdram.h>
#include <soc/fsl/immap_lsch2.h>
diff --git a/arch/arm/boards/tqmls1046a/lowlevel.c b/arch/arm/boards/tqmls1046a/lowlevel.c
index 4a1496078a61..9fcb52ea3902 100644
--- a/arch/arm/boards/tqmls1046a/lowlevel.c
+++ b/arch/arm/boards/tqmls1046a/lowlevel.c
@@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-2.0+
#include <common.h>
#include <debug_ll.h>
-#include <platform_data/mmc-esdhc-imx.h>
#include <soc/fsl/fsl_ddr_sdram.h>
#include <soc/fsl/immap_lsch2.h>
#include <asm/barebox-arm-head.h>
diff --git a/drivers/mci/imx-esdhc.c b/drivers/mci/imx-esdhc.c
index b05934a20113..54309aec2f74 100644
--- a/drivers/mci/imx-esdhc.c
+++ b/drivers/mci/imx-esdhc.c
@@ -18,7 +18,6 @@
#include <io.h>
#include <linux/clk.h>
#include <linux/err.h>
-#include <platform_data/mmc-esdhc-imx.h>
#include <gpio.h>
#include <of_device.h>
#include <mach/imx/generic.h>
@@ -195,27 +194,7 @@ static void esdhc_set_ios(struct mci_host *mci, struct mci_ios *ios)
static int esdhc_card_present(struct mci_host *mci)
{
- struct fsl_esdhc_host *host = to_fsl_esdhc(mci);
- struct esdhc_platform_data *pdata = host->dev->platform_data;
- int ret;
-
- if (!pdata)
- return 1;
-
- switch (pdata->cd_type) {
- case ESDHC_CD_NONE:
- case ESDHC_CD_PERMANENT:
- return 1;
- case ESDHC_CD_CONTROLLER:
- return !(sdhci_read32(&host->sdhci, SDHCI_PRESENT_STATE) & SDHCI_WRITE_PROTECT);
- case ESDHC_CD_GPIO:
- ret = gpio_direction_input(pdata->cd_gpio);
- if (ret)
- return ret;
- return gpio_get_value(pdata->cd_gpio) ? 0 : 1;
- }
-
- return 0;
+ return 1;
}
static int esdhc_reset(struct fsl_esdhc_host *host)
@@ -302,7 +281,6 @@ static int fsl_esdhc_probe(struct device *dev)
struct mci_host *mci;
int ret;
unsigned long rate;
- struct esdhc_platform_data *pdata = dev->platform_data;
const struct esdhc_soc_data *socdata;
ret = dev_get_drvdata(dev, (const void **)&socdata);
@@ -338,12 +316,6 @@ static int fsl_esdhc_probe(struct device *dev)
esdhc_populate_sdhci(host);
- if (pdata) {
- mci->host_caps = pdata->caps;
- if (pdata->devname)
- mci->devname = pdata->devname;
- }
-
host->mci.ops = fsl_esdhc_ops;
host->mci.hw_dev = dev;
host->sdhci.mci = &host->mci;
@@ -360,10 +332,6 @@ static int fsl_esdhc_probe(struct device *dev)
if (host->mci.f_min < 200000)
host->mci.f_min = 200000;
host->mci.f_max = rate;
- if (pdata) {
- host->mci.use_dsr = pdata->use_dsr;
- host->mci.dsr_val = pdata->dsr_val;
- }
mci_of_parse(&host->mci);
diff --git a/include/platform_data/mmc-esdhc-imx.h b/include/platform_data/mmc-esdhc-imx.h
deleted file mode 100644
index fb7380a18201..000000000000
--- a/include/platform_data/mmc-esdhc-imx.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 2010 Wolfram Sang <w.sang at pengutronix.de>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; version 2
- * of the License.
- */
-
-#ifndef __ASM_ARCH_IMX_ESDHC_H
-#define __ASM_ARCH_IMX_ESDHC_H
-
-enum wp_types {
- ESDHC_WP_NONE, /* no WP, neither controller nor gpio */
- ESDHC_WP_CONTROLLER, /* mmc controller internal WP */
- ESDHC_WP_GPIO, /* external gpio pin for WP */
-};
-
-enum cd_types {
- ESDHC_CD_NONE, /* no CD, neither controller nor gpio */
- ESDHC_CD_CONTROLLER, /* mmc controller internal CD */
- ESDHC_CD_GPIO, /* external gpio pin for CD */
- ESDHC_CD_PERMANENT, /* no CD, card permanently wired to host */
-};
-
-/**
- * struct esdhc_platform_data - platform data for esdhc on i.MX
- *
- * ESDHC_WP(CD)_CONTROLLER type is not available on i.MX25/35.
- *
- * @wp_gpio: gpio for write_protect
- * @cd_gpio: gpio for card_detect interrupt
- * @wp_type: type of write_protect method (see wp_types enum above)
- * @cd_type: type of card_detect method (see cd_types enum above)
- * @caps: supported bus width capabilities (MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA)
- */
-
-struct esdhc_platform_data {
- unsigned int wp_gpio;
- unsigned int cd_gpio;
- enum wp_types wp_type;
- enum cd_types cd_type;
- unsigned caps;
- char *devname;
- unsigned dsr_val;
- int use_dsr;
-};
-#endif /* __ASM_ARCH_IMX_ESDHC_H */
--
2.39.2
More information about the barebox
mailing list