[U-Boot] [PATCH v5 1/1] mmc: Add MMC support for stm32h7 Socs

Simon Glass sjg at chromium.org
Sat Sep 9 04:51:59 UTC 2017


On 4 September 2017 at 09:56,  <patrice.chotard at st.com> wrote:
> From: Patrice Chotard <patrice.chotard at st.com>
>
> 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 <christophe.kerello at st.com>
> Signed-off-by: Patrice Chotard <patrice.chotard at st.com>
> ---
>
> v5: _ give a more meaningful name to stm32_sdmmc2_start_cmd() last param
>     _ use readl_poll_timeout() instead of using while in stm32_sdmmc2_end_cmd()
> v4: _ replace mmc_create() usage by mmc_bind() callback
>     _ rename struct stm32_sdmmc2_host to stm32_sdmmc2_priv
> v3: _ use registers offset instead of registers struct description
>     _ rename clk_reg_add and pwr_reg_add to respectively clk_reg_msk and pwr_reg_msk
>     _ don't exit in error if DT bus-width value is not correct, force it to 1
>       and continue
> v2: _ add .get_cd() callback support
>
>  drivers/mmc/Kconfig        |   8 +
>  drivers/mmc/Makefile       |   1 +
>  drivers/mmc/stm32_sdmmc2.c | 608 +++++++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 617 insertions(+)
>  create mode 100644 drivers/mmc/stm32_sdmmc2.c

Reviewed-by: Simon Glass <sjg at chromium.org>


More information about the U-Boot mailing list