Re: [PATCH 0/5] consolidate sdhci pltfm & OF drivers and get themself registered

From: Shawn Guo
Date: Thu Mar 31 2011 - 00:24:07 EST


On Fri, Mar 25, 2011 at 04:48:46PM +0800, Shawn Guo wrote:
> 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(-)
> --

Any comments? Is this the right direction to move?

--
Regards,
Shawn

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/