linux-mmc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Shawn Guo <shawn.guo@linaro.org>
To: devicetree-discuss@lists.ozlabs.org, linux-mmc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, sameo@linux.intel.com,
	linaro-dev@lists.linaro.org, patches@linaro.org
Subject: [PATCH 0/5] consolidate sdhci pltfm & OF drivers and get them self registered
Date: Fri, 25 Mar 2011 16:48:46 +0800	[thread overview]
Message-ID: <1301042931-4869-1-git-send-email-shawn.guo@linaro.org> (raw)

Here are what the patch set does.

* Remove .probe and .remove hooks from sdhci-pltfm.c and make it be
  a pure common helper function providers.
* Add .probe and .remove hooks for sdhci pltfm drivers sdhci-cns3xxx,
  sdhci-dove, sdhci-tegra, and sdhci-esdhc-imx to make them self
  registered with calling helper functions created above.
* Migrate the use of sdhci_of_host and sdhci_of_data to
  sdhci_pltfm_host and sdhci_pltfm_data, so that OF version host and
  data structure works can be saved, and pltfm version works for both
  cases.
* Add OF common helper stuff into sdhci-pltfm.c, and make OF version
  sdhci drivers sdhci-of-esdhc and sdhci-of-hlwd become self
  registered as well, so that sdhci-of-core.c and sdhci-of.h can be
  removed.
* Consolidate the OF and pltfm esdhc drivers into one with sharing
  the same pair of .probe and .remove hooks.  As a result,
  sdhci-esdhc-imx.c and sdhci-of-esdhc.c go away, while
  sdhci-esdhc.c comes in and works for both MPCxxx and i.MX.
* Eliminate include/linux/mmc/sdhci-pltfm.h with moving stuff into
  drivers/mmc/host/sdhci-pltfm.h.

And the benefits we gain from the changes are:

* Get the sdhci device driver follow the Linux trend that driver
  makes the registration by its own.
* sdhci-pltfm.c becomes simple and clean as it only has common helper
  stuff there now.
* All sdhci device specific things are going back its own driver.
* The dt and non-dt drivers are consolidated to use the same pair of
  .probe and .remove hooks.
* SDHCI driver for Freescale eSDHC controller found on both MPCxxx
  and i.MX platforms is consolidated to use the same one .probe
  function.

The patch set works against the tree below, and was only tested on
i.mx51 babbage board, all other targets were build tested.

  git://git.secretlab.ca/git/linux-2.6.git devicetree/test

Comments are welcomed and appreciated.

Regards,
Shawn

PS: The first patch is a squashing of the patch set below, which was
posted for review a few days back.

  [PATCH 0/5] make sdhci device drivers self registered

Some patches in this series are relatively large, involving more
changes than expected, I chose to not split considering they are
logically integral, and doing so can reduce the patch quantity much,
and make bisect much easier.  But sorry for that it makes reviewers'
life harder.

Shawn Guo (5):
      mmc: sdhci: make sdhci-pltfm device drivers self registered
      mmc: sdhci: eliminate sdhci_of_host and sdhci_of_data
      mmc: sdhci: make sdhci-of device drivers self registered
      mmc: sdhci: consolidate sdhci-of-esdhc and sdhci-esdhc-imx
      mmc: sdhci: merge two sdhci-pltfm.h into one

 drivers/mmc/host/Kconfig           |   71 ++++---
 drivers/mmc/host/Makefile          |   17 +-
 drivers/mmc/host/sdhci-cns3xxx.c   |   68 ++++++-
 drivers/mmc/host/sdhci-dove.c      |   69 ++++++-
 drivers/mmc/host/sdhci-esdhc-imx.c |  149 -------------
 drivers/mmc/host/sdhci-esdhc.c     |  412 ++++++++++++++++++++++++++++++++++++
 drivers/mmc/host/sdhci-of-core.c   |  247 ---------------------
 drivers/mmc/host/sdhci-of-esdhc.c  |   89 --------
 drivers/mmc/host/sdhci-of-hlwd.c   |   89 +++++++-
 drivers/mmc/host/sdhci-of.h        |   42 ----
 drivers/mmc/host/sdhci-pltfm.c     |  251 +++++++++-------------
 drivers/mmc/host/sdhci-pltfm.h     |   36 +++-
 drivers/mmc/host/sdhci-tegra.c     |  187 ++++++++++-------
 include/linux/mmc/sdhci-pltfm.h    |   35 ---
 14 files changed, 912 insertions(+), 850 deletions(-)

             reply	other threads:[~2011-03-25  8:45 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-25  8:48 Shawn Guo [this message]
     [not found] ` <1301042931-4869-1-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2011-03-25  8:48   ` [PATCH 1/5] mmc: sdhci: make sdhci-pltfm device drivers self registered Shawn Guo
     [not found]     ` <1301042931-4869-2-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2011-03-31 15:33       ` Grant Likely
     [not found]         ` <20110331153322.GA26612-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2011-04-01  6:10           ` Shawn Guo
2011-04-19 10:20       ` Wolfram Sang
2011-04-21  8:03         ` Shawn Guo
2011-04-21  9:57           ` Wolfram Sang
2011-03-25  8:48   ` [PATCH 2/5] mmc: sdhci: eliminate sdhci_of_host and sdhci_of_data Shawn Guo
     [not found]     ` <1301042931-4869-3-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2011-03-31 15:34       ` Grant Likely
2011-04-19 10:20       ` Wolfram Sang
     [not found]         ` <20110419102053.GC4164-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-04-21  8:10           ` Shawn Guo
2011-03-25  8:48   ` [PATCH 3/5] mmc: sdhci: make sdhci-of device drivers self registered Shawn Guo
     [not found]     ` <1301042931-4869-4-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2011-03-31 15:38       ` Grant Likely
2011-04-19 10:21     ` Wolfram Sang
2011-04-21  8:17       ` Shawn Guo
2011-03-25  8:48   ` [PATCH 4/5] mmc: sdhci: consolidate sdhci-of-esdhc and sdhci-esdhc-imx Shawn Guo
2011-03-31 15:53     ` Grant Likely
2011-04-01  6:18       ` Shawn Guo
     [not found]     ` <1301042931-4869-5-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2011-04-19 10:21       ` Wolfram Sang
2011-04-21  8:53         ` Shawn Guo
2011-03-25  8:48   ` [PATCH 5/5] mmc: sdhci: merge two sdhci-pltfm.h into one Shawn Guo
2011-03-31 15:54     ` Grant Likely
2011-04-19 10:21     ` Wolfram Sang
2011-03-31  4:25 ` [PATCH 0/5] consolidate sdhci pltfm & OF drivers and get them self registered Shawn Guo
     [not found]   ` <20110331042507.GA21846-+NayF8gZjK2ctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
2011-03-31  4:56     ` Grant Likely
2011-03-31 16:36 ` Chris Ball
2011-04-13  6:26   ` Shawn Guo
2011-04-19 10:20 ` Wolfram Sang
2011-04-19 12:47   ` Kyungmin Park
2011-04-19 17:47     ` Wolfram Sang
     [not found]       ` <20110419174712.GA29314-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-04-20  4:23         ` Kyungmin Park
2011-04-21  7:48   ` Shawn Guo
2011-04-26 13:20     ` Wolfram Sang

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=1301042931-4869-1-git-send-email-shawn.guo@linaro.org \
    --to=shawn.guo@linaro.org \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=linaro-dev@lists.linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=patches@linaro.org \
    --cc=sameo@linux.intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).