This series adds eMMC support for the Axiado SCM3005 board, based on the
AX3005 SoC, which uses an Arasan SDHCI controller paired with a dedicated
eMMC PHY.
The series is split as follows:
- Patch 1 adds the eMMC PHY driver (PHY_AXIADO_EMMC). The PHY provides
signal conditioning and DLL functionality required for high-speed
operation with data rates beyond 52MHz, and is based on the Arasan
PHY.
- Patch 2 adds the SDHCI host controller driver (MMC_SDHCI_AXIADO) for
the Arasan controller. It builds on the generic SDHCI framework and
adds SoC-specific signal voltage switching, HS200 tuning and eMMC PHY
power sequencing through the generic PHY API.
- Patch 3 adds the device tree nodes for the SDHCI controller, the eMMC
PHY and their supporting fixed clock (clk_xin) to
ax3005.dtsi, and enables the SDHCI node in ax3005-scm3005.dts.
- Patch 4 enables the new drivers in ax3005_scm3005_defconfig, stores
the environment in MMC and bumps CONFIG_SYS_MALLOC_LEN to 0x400000 to
accommodate MMC operations.
Tested on the Axiado SCM3005 board: the eMMC is detected and enumerated,
and read/write access through the MMC subsystem works, including
high-speed modes exercised by the PHY tuning path.
Signed-off-by: Siu Ming Tong <[email protected]>
---
Siu Ming Tong (4):
phy: Add Axiado eMMC PHY driver
mmc: Add Axiado SDHCI driver
arm: dts: ax3005: Add SDHCI, eMMC PHY and clock node
configs: ax3005_scm3005: Enable eMMC support
MAINTAINERS | 2 +
arch/arm/dts/ax3005-scm3005.dts | 4 +
arch/arm/dts/ax3005.dtsi | 25 ++++
configs/ax3005_scm3005_defconfig | 10 +-
drivers/mmc/Kconfig | 7 +
drivers/mmc/Makefile | 1 +
drivers/mmc/axiado_sdhci.c | 311 +++++++++++++++++++++++++++++++++++++++
drivers/phy/Kconfig | 9 ++
drivers/phy/Makefile | 1 +
drivers/phy/phy-axiado-emmc.c | 208 ++++++++++++++++++++++++++
10 files changed, 576 insertions(+), 2 deletions(-)
---
base-commit: 02f8b8ab6d6095dccf867d899099322f7430d20d
change-id: 20260727-dev-scm3005-d62c69354074
Best regards,
--
Siu Ming Tong <[email protected]>