All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sean Anderson <sean.anderson@seco.com>
To: u-boot@lists.denx.de, Peng Fan <peng.fan@nxp.com>,
	Jaehoon Chung <jh80.chung@samsung.com>
Cc: Haibo Chen <haibo.chen@nxp.com>,
	Fabio Estevam <festevam@gmail.com>, Yangbo Lu <yangbo.lu@nxp.com>,
	Michael Walle <michael@walle.cc>,
	Sean Anderson <sean.anderson@seco.com>
Subject: [RESEND PATCH v3 01/12] mmc: fsl_esdhc_imx: make BLK as hard requirement of DM_MMC
Date: Tue, 4 Jan 2022 11:16:43 -0500	[thread overview]
Message-ID: <17862939-c7b1-310e-d98e-ce68f776ee40@seco.com> (raw)
In-Reply-To: <20211123200347.3772343-1-sean.anderson@seco.com>

[ fsl_esdhc commit 41dec2fe99512e941261594f522b2e7d485c314b ]

U-boot prefers DM_MMC + BLK for MMC. Now eSDHC driver has already
support it, so let's force to use it.

- Drop non-BLK support for DM_MMC introduced by below patch.
   66fa035 mmc: fsl_esdhc: fix probe issue without CONFIG_BLK enabled

- Support only DM_MMC + BLK (assuming BLK is always enabled for DM_MMC).

- Use DM_MMC instead of BLK for conditional compile.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Signed-off-by: Sean Anderson <sean.anderson@seco.com>
---

Changes in v3:
- Drop Kconfig BLK dependency

  drivers/mmc/fsl_esdhc_imx.c | 33 +--------------------------------
  1 file changed, 1 insertion(+), 32 deletions(-)

diff --git a/drivers/mmc/fsl_esdhc_imx.c b/drivers/mmc/fsl_esdhc_imx.c
index 4c06361bee..85cd72a796 100644
--- a/drivers/mmc/fsl_esdhc_imx.c
+++ b/drivers/mmc/fsl_esdhc_imx.c
@@ -39,10 +39,6 @@
  #include <dm/ofnode.h>
  #include <linux/iopoll.h>
  -#if !CONFIG_IS_ENABLED(BLK)
-#include "mmc_private.h"
-#endif
-
  #ifndef ESDHCI_QUIRK_BROKEN_TIMEOUT_VALUE
  #ifdef CONFIG_FSL_USDHC
  #define ESDHCI_QUIRK_BROKEN_TIMEOUT_VALUE	1
@@ -58,7 +54,6 @@ DECLARE_GLOBAL_DATA_PTR;
  				IRQSTATEN_DEBE | IRQSTATEN_BRR | IRQSTATEN_BWR | \
  				IRQSTATEN_DINT)
  #define MAX_TUNING_LOOP 40
-#define ESDHC_DRIVER_STAGE_VALUE 0xffffffff
   struct fsl_esdhc {
  	uint    dsaddr;		/* SDMA system address register */
@@ -157,7 +152,7 @@ struct fsl_esdhc_priv {
  	unsigned int clock;
  	unsigned int mode;
  	unsigned int bus_width;
-#if !CONFIG_IS_ENABLED(BLK)
+#if !CONFIG_IS_ENABLED(DM_MMC)
  	struct mmc *mmc;
  #endif
  	struct udevice *dev;
@@ -1510,9 +1505,6 @@ static int fsl_esdhc_probe(struct udevice *dev)
  	struct esdhc_soc_data *data =
  		(struct esdhc_soc_data *)dev_get_driver_data(dev);
  	struct mmc *mmc;
-#if !CONFIG_IS_ENABLED(BLK)
-	struct blk_desc *bdesc;
-#endif
  	int ret;
   #if CONFIG_IS_ENABLED(OF_PLATDATA)
@@ -1611,25 +1603,6 @@ static int fsl_esdhc_probe(struct udevice *dev)
  	mmc = &plat->mmc;
  	mmc->cfg = &plat->cfg;
  	mmc->dev = dev;
-#if !CONFIG_IS_ENABLED(BLK)
-	mmc->priv = priv;
-
-	/* Setup dsr related values */
-	mmc->dsr_imp = 0;
-	mmc->dsr = ESDHC_DRIVER_STAGE_VALUE;
-	/* Setup the universal parts of the block interface just once */
-	bdesc = mmc_get_blk_desc(mmc);
-	bdesc->if_type = IF_TYPE_MMC;
-	bdesc->removable = 1;
-	bdesc->devnum = mmc_get_next_devnum();
-	bdesc->block_read = mmc_bread;
-	bdesc->block_write = mmc_bwrite;
-	bdesc->block_erase = mmc_berase;
-
-	/* setup initial part type */
-	bdesc->part_type = mmc->cfg->part_type;
-	mmc_list_add(mmc);
-#endif
   	upriv->mmc = mmc;
  @@ -1740,14 +1713,12 @@ static const struct udevice_id fsl_esdhc_ids[] = {
  	{ /* sentinel */ }
  };
  -#if CONFIG_IS_ENABLED(BLK)
  static int fsl_esdhc_bind(struct udevice *dev)
  {
  	struct fsl_esdhc_plat *plat = dev_get_plat(dev);
   	return mmc_bind(dev, &plat->mmc, &plat->cfg);
  }
-#endif
   U_BOOT_DRIVER(fsl_esdhc) = {
  	.name	= "fsl_esdhc",
@@ -1755,9 +1726,7 @@ U_BOOT_DRIVER(fsl_esdhc) = {
  	.of_match = fsl_esdhc_ids,
  	.of_to_plat = fsl_esdhc_of_to_plat,
  	.ops	= &fsl_esdhc_ops,
-#if CONFIG_IS_ENABLED(BLK)
  	.bind	= fsl_esdhc_bind,
-#endif
  	.probe	= fsl_esdhc_probe,
  	.plat_auto	= sizeof(struct fsl_esdhc_plat),
  	.priv_auto	= sizeof(struct fsl_esdhc_priv),
-- 
2.25.1


  parent reply	other threads:[~2022-01-04 16:16 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20211123200412epcas1p32bd625558b9aa40fa49cd0b23039e59a@epcas1p3.samsung.com>
2021-11-23 20:03 ` [PATCH v3 00/12] fsl_esdhc_imx: port several patches from fsl_esdhc Sean Anderson
2021-11-23 20:03   ` [PATCH v3 01/12] mmc: fsl_esdhc_imx: make BLK as hard requirement of DM_MMC Sean Anderson
2021-11-23 20:03   ` [PATCH v3 02/12] mmc: fsl_esdhc_imx: remove redundant DM_MMC checking Sean Anderson
2021-11-23 20:03   ` [PATCH v3 03/12] mmc: fsl_esdhc_imx: fix voltage validation Sean Anderson
2021-11-23 20:03   ` [PATCH v3 04/12] mmc: fsl_esdhc_imx: clean up bus width configuration code Sean Anderson
2021-11-23 20:03   ` [PATCH v3 05/12] mmc: fsl_esdhc_imx: drop redundant code for non-removable feature Sean Anderson
2021-11-23 20:03   ` [PATCH v3 06/12] mmc: fsl_esdhc_imx: fix mmc->clock with actual clock Sean Anderson
2021-11-23 20:03   ` [PATCH v3 07/12] mmc: fsl_esdhc_imx: simplify 64bit check for SDMA transfers Sean Anderson
2021-11-23 20:03   ` [PATCH v3 08/12] mmc: fsl_esdhc_imx: use dma-mapping API Sean Anderson
2021-11-23 20:03   ` [PATCH v3 09/12] mmc: fsl_esdhc_imx: simplify esdhc_setup_data() Sean Anderson
2021-11-23 20:03   ` [PATCH v3 10/12] mmc: fsl_esdhc_imx: replace most #ifdefs by IS_ENABLED() Sean Anderson
2021-11-23 20:03   ` [PATCH v3 11/12] mmc: fsl_esdhc_imx: Replace more #ifdefs by if Sean Anderson
2021-11-23 20:03   ` [PATCH v3 12/12] mmc: fsl_esdhc_imx: set sysctl register for clock initialization Sean Anderson
2022-01-03 23:19   ` [PATCH v3 00/12] fsl_esdhc_imx: port several patches from fsl_esdhc Jaehoon Chung
2022-01-04 16:16   ` Sean Anderson [this message]
2022-01-11  1:14     ` [RESEND PATCH v3 01/12] mmc: fsl_esdhc_imx: make BLK as hard requirement of DM_MMC Jaehoon Chung
2022-01-11 16:15       ` Sean Anderson
     [not found] <CGME20220111232902epcas1p1eb1f0919acbe30299305458f881dc175@epcas1p1.samsung.com>
2022-01-11 23:29 ` Jaehoon Chung
2022-01-12  6:53   ` Minkyu Kang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=17862939-c7b1-310e-d98e-ce68f776ee40@seco.com \
    --to=sean.anderson@seco.com \
    --cc=festevam@gmail.com \
    --cc=haibo.chen@nxp.com \
    --cc=jh80.chung@samsung.com \
    --cc=michael@walle.cc \
    --cc=peng.fan@nxp.com \
    --cc=u-boot@lists.denx.de \
    --cc=yangbo.lu@nxp.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.