[PATCH 0/3] Add phase map support in dw_mmc-rockchip
Shawn Lin
shawn.lin at rock-chips.com
Sun Mar 8 20:29:00 PDT 2026
Hi Ulf and Jeahoon,
Currently, in dw_mmc-rockchip, the rockchip,default-sample-phase is only used
for some lower speed sampling, while the output-phase configurations are fixed
based on timing settings for all SoCs and boards.
Subsequent validation shows that this approach fails to achieve optimal timing
performance on many chips and development boards, failing to meet test requirements.
Since different timing profiles demand distinct phase configurations, we introduce
phase map support to dw_mmc-rockchip to address this issue.
Additionally, given that dw_mmc-hi3798mv200 already utilizes phase map functionality,
we avoid reinventing the wheel by moving the phase map parsing logic into the core
dw_mmc framework (similar to how mmc_of_parse() is implemented), rather than duplicating
code in the rockchip driver.
This change maintains backward compatibility: the original default_sample_phase and fixed
drv phase configurations for different modes are preserved, with phase map values taking
precedence when configured.
Shawn Lin (3):
mmc: dw_mmc: Add parsing mmc_clk_phase_map support
mmc: dw_mmc-hi3798mv200: Using phase map from dw_mmc core
mmc: dw_mmc-rockchip: Add phase map support
drivers/mmc/host/dw_mmc-hi3798mv200.c | 11 ++++-------
drivers/mmc/host/dw_mmc-rockchip.c | 27 ++++++++++++++++++---------
drivers/mmc/host/dw_mmc.c | 2 ++
drivers/mmc/host/dw_mmc.h | 2 ++
4 files changed, 26 insertions(+), 16 deletions(-)
--
2.7.4
More information about the Linux-rockchip
mailing list