[U-Boot] [PATCH v3 0/4] mmc: Implement central card-detection.

Thierry Reding thierry.reding at avionic-design.de
Tue Dec 20 09:52:39 CET 2011


This series of patches implements central card-detection within the MMC
framework. Before this patch series, many boards actually did implement
the board_mmc_getcd() function, but it wasn't used except by one driver
(fsl_esdhc). Unfortunately, implementations interpreted the meaning of
the cd parameter differently, some taking it to signal card absence and
others using it to detect card presence. Furthermore, the signature of
the board_mmc_getcd() function was not at all consistent with other MMC
related functions.

The first patch in this series therefore changes the board_mmc_getcd()
function signature and consolidates all current implementations. The
second patch adds a central card-detection implementation within the
MMC framework by using the new board_mmc_getcd() function and adds a
hook that can be provided by drivers to serve as a default card-detect
mechanism if no board-specific implementation is provided. The third
and fourth patches implement this driver hook for the fsl_esdhc and the
tegra2 MMC drivers.

For reference, the following email thread contains the discussion that
led to this patch series:

	http://lists.denx.de/pipermail/u-boot/2011-November/110180.html

Changes in v3:
  - reword subject line of patch 1 to be less confusing
  - address coding style issues raised by Marek Vasut

Changes in v2:
  - add a better rationale for the series and a reference to the email
    thread that started it
  - add an explanation to patch 3 why the call to board_mmc_getcd() is
    removed from the fsl_esdhc driver
  - add a cover letter which explains the series' goal

Thierry Reding (4):
  mmc: Change board_mmc_getcd() function prototype.
  mmc: Implement card detection.
  mmc: fsl_esdhc: Implement card-detect hook.
  mmc: tegra2: Implement card-detect hook.

 board/efikamx/efikamx.c             |    9 +++++----
 board/emk/top9000/top9000.c         |   12 ++----------
 board/freescale/mx51evk/mx51evk.c   |    9 +++++----
 board/freescale/mx53ard/mx53ard.c   |    9 +++++----
 board/freescale/mx53evk/mx53evk.c   |    9 +++++----
 board/freescale/mx53loco/mx53loco.c |    9 +++++----
 board/freescale/mx53smd/mx53smd.c   |    6 ++----
 doc/README.atmel_mci                |   12 ++----------
 drivers/mmc/arm_pl180_mmci.c        |    1 +
 drivers/mmc/bfin_sdh.c              |    1 +
 drivers/mmc/davinci_mmc.c           |    1 +
 drivers/mmc/fsl_esdhc.c             |   27 ++++++++++++---------------
 drivers/mmc/ftsdc010_esdhc.c        |    1 +
 drivers/mmc/gen_atmel_mci.c         |    1 +
 drivers/mmc/mmc.c                   |   22 ++++++++++++++++++++--
 drivers/mmc/mmc_spi.c               |    1 +
 drivers/mmc/mxcmmc.c                |    1 +
 drivers/mmc/mxsmmc.c                |    1 +
 drivers/mmc/omap_hsmmc.c            |    1 +
 drivers/mmc/pxa_mmc_gen.c           |    1 +
 drivers/mmc/s5p_mmc.c               |    1 +
 drivers/mmc/sdhci.c                 |    1 +
 drivers/mmc/sh_mmcif.c              |    1 +
 drivers/mmc/tegra2_mmc.c            |   28 +++++++++++++---------------
 include/mmc.h                       |    4 +++-
 25 files changed, 92 insertions(+), 77 deletions(-)

-- 
1.7.8



More information about the U-Boot mailing list