09 Mar, 2020

1 commit


10 Oct, 2019

1 commit


05 Sep, 2019

1 commit


17 Jul, 2019

1 commit

  • Sync the sdhci0 node from kernel. This changes the compatible that is
    required to be there in the driver. Change the same for the SD card node
    which is not yet supported in kernel. This also syncs the main_pmx0 node
    as a side effect.

    Also change the name of the driver to match the compatible in kernel.

    Signed-off-by: Faiz Abbas
    Reviewed-by: Tom Rini

    Faiz Abbas
     

23 Jun, 2019

1 commit

  • The fsl_esdhc driver was for Freescale eSDHC on MPC83XX/MPC85XX
    initially. The later QoriQ series PowerPC processors (which were
    evolutions of MPC83XX/MPC85XX), QorIQ series ARM processors, and
    i.MX series processors were using this driver for their eSDHCs too.

    For the two series processors, the eSDHCs are becoming more and
    more different. We should have split it into two drivers, like them
    (sdhci-of-esdhc.c/sdhci-esdhc-imx.c) in linux kernel.

    This patch is just to create a fsl_esdhc_imx driver which is a copy
    of fsl_esdhc driver for i.MX processors. We will convert i.MX processors
    to use fsl_esdhc_imx, and clean up the two drivers separately in the
    future patches.

    Signed-off-by: Yangbo Lu
    Tested-by: Steffen Dirkwinkel
    Reviewed-by: Peng Fan
    Reviewed-by: Martyn Welch

    Yangbo Lu
     

18 Apr, 2019

1 commit


19 Dec, 2018

1 commit


29 Nov, 2018

1 commit


11 Sep, 2018

1 commit


11 Jul, 2018

1 commit

  • Add support for loading U-Boot on the Broadcom 7445 SoC. This port
    assumes Broadcom's BOLT bootloader is acting as the second stage
    bootloader, and U-Boot is acting as the third stage bootloader, loaded
    as an ELF program by BOLT.

    Signed-off-by: Thomas Fitzsimmons
    Cc: Stefan Roese
    Cc: Tom Rini
    Cc: Florian Fainelli

    Thomas Fitzsimmons
     

07 May, 2018

1 commit

  • When U-Boot started using SPDX tags we were among the early adopters and
    there weren't a lot of other examples to borrow from. So we picked the
    area of the file that usually had a full license text and replaced it
    with an appropriate SPDX-License-Identifier: entry. Since then, the
    Linux Kernel has adopted SPDX tags and they place it as the very first
    line in a file (except where shebangs are used, then it's second line)
    and with slightly different comment styles than us.

    In part due to community overlap, in part due to better tag visibility
    and in part for other minor reasons, switch over to that style.

    This commit changes all instances where we have a single declared
    license in the tag as both the before and after are identical in tag
    contents. There's also a few places where I found we did not have a tag
    and have introduced one.

    Signed-off-by: Tom Rini

    Tom Rini
     

14 Apr, 2018

1 commit


12 Apr, 2018

2 commits

  • Add Kconfig entry for the Renesas SDHI variant of the controller
    and split the Makefile entries accordingly.

    Signed-off-by: Marek Vasut
    Cc: Jaehoon Chung
    Cc: Masahiro Yamada

    Marek Vasut
     
  • Factor out common code from the uniphier SD driver, change the prefix
    of the functions from uniphier_sd_ to matsu_sd_ and create separate
    renesas-sdhi.c driver. Thus far, all the code is still compiled when
    CONFIG_UNIPHIER_MMC is selected and there is no functional change.
    This patch is a preparation for further split of the SoC specific
    parts of the Matsushita SD driver, used both on Uniphier and R-Car.

    Signed-off-by: Marek Vasut
    Cc: Jaehoon Chung
    Cc: Masahiro Yamada

    Marek Vasut
     

30 Mar, 2018

1 commit


29 Jan, 2018

1 commit

  • The BCM2835 family of SoCs has 2 different SD controllers: One based on
    the SDHCI spec and a custom, home-grown one.

    This patch implements a driver for the latter based on the Linux driver.
    This is needed so that we can make use of device trees that assume driver
    presence of both SD controllers.

    Signed-off-by: Alexander Graf

    Alexander Graf
     

12 Jan, 2018

1 commit


30 Nov, 2017

1 commit


28 Sep, 2017

1 commit

  • This patch adds SD/MMC support for STM32H7 SoCs.

    Here is an extraction of SDMMC main features, embedded in
    STM32H7 SoCs.
    The SD/MMC block include the following:
    _ Full compliance with MultiMediaCard System Specification
    Version 4.51. Card support for three different databus modes:
    1-bit (default), 4-bit and 8-bit.
    _ Full compatibility with previous versions of MultiMediaCards
    (backward compatibility).
    _ Full compliance with SD memory card specifications version 4.1.
    (SDR104 SDMMC_CK speed limited to maximum allowed IO speed,
    SPI mode and UHS-II mode not supported).
    _ Full compliance with SDIO card specification version 4.0.
    Card support for two different databus modes: 1-bit (default)
    and 4-bit. (SDR104 SDMMC_CK speed limited to maximum allowed IO
    speed, SPI mode and UHS-II mode not supported).
    _ Data transfer up to 208 Mbyte/s for the 8 bit mode.
    (depending maximum allowed IO speed).
    _ Data and command output enable signals to control external
    bidirectional drivers.

    The current version of the SDMMC supports only one SD/SDIO/MMC card
    at any one time and a stack of MMC Version 4.51 or previous.

    Signed-off-by: Christophe Kerello
    Signed-off-by: Patrice Chotard
    Reviewed-by: Simon Glass

    Patrice Chotard
     

01 Aug, 2017

1 commit

  • At present if U-Boot proper uses driver model for MMC, then SPL has to
    also. While this is desirable, it places a significant barrier to moving
    to driver model in some cases. For example, with a space-constrained SPL
    it may be necessary to enable CONFIG_SPL_OF_PLATDATA which involves
    adjusting some drivers.

    Add new SPL versions of the options for DM_MMC, DM_MMC_OPS and BLK. By
    default these follow their non-SPL versions, but this can be changed by
    boards which need it.

    Signed-off-by: Simon Glass

    Simon Glass
     

05 Jun, 2017

1 commit


15 May, 2017

2 commits


18 Apr, 2017

1 commit


14 Apr, 2017

1 commit

  • This driver implements MMC support on Meson GX (S905) based systems.
    It's based on Carlo Caione's work, changes:
    - BLK support added
    - general refactoring

    Signed-off-by: Carlo Caione
    Signed-off-by: Andreas Färber
    Signed-off-by: Heiner Kallweit
    Tested-by: Vagrant Cascadian

    Carlo Caione
     

21 Mar, 2017

2 commits

  • This patch adds Intel Tangier eMMC/SDHCI driver.

    Intel Tangier SoC contains a hybrid of PCI and non-PCI devices. SDHCI
    controller is one of the devices which are *not* on a PCI and, hence,
    cannot be enumerated by standard PCI means. This driver, allows for
    SDHCI controller on Tangier SoC to work in U-Boot.

    Signed-off-by: Vincent Tinelli
    Signed-off-by: Felipe Balbi
    Signed-off-by: Andy Shevchenko
    Reviewed-by: Bin Meng

    Felipe Balbi
     
  • We don't want pci_mmc to compile every time x86 compiles, only when
    there's a platform that needs it. For that reason, we're adding a new
    CONFIG_MMC_PCI which platforms can choose to enable.

    Suggested-by: Jaehoon Chung
    Reviewed-by: Bin Meng
    Signed-off-by: Felipe Balbi
    Signed-off-by: Andy Shevchenko

    Felipe Balbi
     

15 Mar, 2017

1 commit

  • Add SDHCI host controller found on STMicroelectronics SoCs

    On some ST SoCs, i.e. STiH407/STiH410, the MMC devices can live
    inside a dedicated flashSS sub-system that provides an extend subset
    of registers that can be used to configure the Arasan MMC/SD Host
    Controller.

    This means, that the SDHCI Arasan Controller can be configured to be
    eMMC4.5 or 4.3 spec compliant.

    W/o these settings the SDHCI will configure and use the MMC/SD
    controller with limited features e.g. PIO mode, no DMA, no HS etc.

    Signed-off-by: Patrice Chotard
    Reviewed-by: Simon Glass
    Reviewed-by: Jaehoon Chung

    Patrice Chotard
     

09 Feb, 2017

1 commit


31 Jan, 2017

6 commits


25 Jan, 2017

1 commit

  • This driver implementes platform specific code for the Xenon SDHCI
    controller which is integrated in the Marvell MVEBU Armada 37xx and
    Armada 7k / 8K SoCs.

    History:
    This driver is ported from the Marvell U-Boot version 2015.01 which is
    written by Victor Gu with minor changes ported from
    the Linux driver which is written by Ziji Hu .

    Signed-off-by: Stefan Roese
    Cc: Jaehoon Chung
    Cc: Masahiro Yamada
    Reviewed-by: Jaehoon Chung

    Stefan Roese
     

11 Jan, 2017

4 commits

  • Move (and rename) the following CONFIG options to Kconfig:

    CONFIG_DAVINCI_MMC (renamed to CONFIG_MMC_DAVINCI)
    CONFIG_OMAP_HSMMC (renamed to CONFIG_MMC_OMAP_HS)
    CONFIG_MXC_MMC (renamed to CONFIG_MMC_MXC)
    CONFIG_MXS_MMC (renamed to CONFIG_MMC_MXS)
    CONFIG_TEGRA_MMC (renamed to CONFIG_MMC_SDHCI_TEGRA)
    CONFIG_SUNXI_MMC (renamed to CONFIG_MMC_SUNXI)

    They are the same option names as used in Linux.

    This commit was created as follows:

    [1] Rename the options with the following command:

    find . -name .git -prune -o ! -path ./scripts/config_whitelist.txt \
    -type f -print | xargs sed -i -e '
    s/CONFIG_DAVINCI_MMC/CONFIG_MMC_DAVINCI/g
    s/CONFIG_OMAP_HSMMC/CONFIG_MMC_OMAP_HS/g
    s/CONFIG_MXC_MMC/CONFIG_MMC_MXC/g
    s/CONFIG_MXS_MMC/CONFIG_MMC_MXS/g
    s/CONFIG_TEGRA_MMC/CONFIG_MMC_SDHCI_TEGRA/g
    s/CONFIG_SUNXI_MMC/CONFIG_MMC_SUNXI/g
    '

    [2] Commit the changes

    [3] Create entries in driver/mmc/Kconfig.
    (copied from Linux)

    [4] Move the options with the following command
    tools/moveconfig.py -y -r HEAD \
    MMC_DAVINCI MMC_OMAP_HS MMC_MXC MMC_MXS MMC_SDHCI_TEGRA MMC_SUNXI

    [5] Sort and align drivers/mmc/Makefile for readability

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Marek Vasut

    Masahiro Yamada
     
  • Move (and rename) the following CONFIG options to Kconfig:

    CONFIG_EXYNOS_DWMMC (renamed to CONFIG_MMC_DW_EXYNOS)
    CONFIG_HIKEY_DWMMC (renamed to CONFIG_MMC_DW_K3)
    CONFIG_SOCFPGA_DWMMC (renamed to CONFIG_MMC_DW_SOCFPGA)

    The "HIKEY" is a board name, so it is not suitable for the MMC
    controller name. I am following the name used in Linux.

    This commit was generated as follows:

    [1] Rename the config options with the following command:
    find . -name .git -prune -o ! -path ./scripts/config_whitelist.txt \
    -type f -print | xargs sed -i -e '
    s/CONFIG_EXYNOS_DWMMC/CONFIG_MMC_DW_EXYNOS/g
    s/CONFIG_HIKEY_DWMMC/CONFIG_MMC_DW_K3/g
    s/CONFIG_SOCFPGA_DWMMC/CONFIG_MMC_DW_SOCFPGA/g
    '

    [2] Commit the changes

    [3] Create the entries in drivers/mmc/Kconfig
    (with default y for EXYNOS and SOCFPGA)

    [4] Run the following:
    tools/moveconfig.py -y -r HEAD MMC_DW_EXYNOS MMC_DW_K3 MMC_DW_SOCFPGA

    [5] Sort and align drivers/mmc/Makefile for readability

    [6] Clean-up doc/README.socfpga by hand

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Marek Vasut

    Masahiro Yamada
     
  • This commit was created as follows:

    [1] Rename the option with the following command:
    find . -name .git -prune -o ! -path ./scripts/config_whitelist.txt \
    -type f -print | xargs sed -i -e 's/CONFIG_DWMMC/CONFIG_MMC_DW/g'

    [2] create the entry for MMC_DW in drivers/mmc/Kconfig
    (the prompt and help were copied from Linux)

    [3] run "tools/moveconfig.py -y MMC_DW"

    [4] add "depends on MMC_DW" to the MMC_DW_ROCKCHIP entry

    [5] Clean-up doc/README.socfpga by hand

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Marek Vasut

    Masahiro Yamada
     
  • I am trying to make all DesignWare-based driver options prefixed
    with CONFIG_MMC_DW_.

    This commit was generated as follows:

    find . -name .git -prune -o -type f -print | \
    xargs sed -i -e 's/ROCKCHIP_DWMMC/MMC_DW_ROCKCHIP/g'

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Marek Vasut

    Masahiro Yamada