mmc: sdhci_am654: Add ITAPDLYSEL in sdhci_j721e_4bit_set_clock
[ Upstream commit 9dff65bb5e09903c27d9cff947dff4d22b6ea6a1 ] Add ITAPDLYSEL to sdhci_j721e_4bit_set_clock function. This allows to set the correct ITAPDLY for timings that do not carry out tuning. Fixes: 1accbced1c32 ("mmc: sdhci_am654: Add Support for 4 bit IP on J721E") Signed-off-by: Judith Mendez <jm@ti.com> Acked-by: Adrian Hunter <adrian.hunter@intel.com> Link: https://lore.kernel.org/r/20240320223837.959900-7-jm@ti.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
81360e7fdc
commit
a2ffc95f2c
@ -319,6 +319,7 @@ static void sdhci_j721e_4bit_set_clock(struct sdhci_host *host,
|
||||
unsigned char timing = host->mmc->ios.timing;
|
||||
u32 otap_del_sel;
|
||||
u32 itap_del_ena;
|
||||
u32 itap_del_sel;
|
||||
u32 mask, val;
|
||||
|
||||
/* Setup DLL Output TAP delay */
|
||||
@ -328,13 +329,18 @@ static void sdhci_j721e_4bit_set_clock(struct sdhci_host *host,
|
||||
val = (0x1 << OTAPDLYENA_SHIFT) |
|
||||
(otap_del_sel << OTAPDLYSEL_SHIFT);
|
||||
|
||||
/* Setup Input TAP delay */
|
||||
itap_del_ena = sdhci_am654->itap_del_ena[timing];
|
||||
itap_del_sel = sdhci_am654->itap_del_sel[timing];
|
||||
|
||||
mask |= ITAPDLYENA_MASK;
|
||||
val |= (itap_del_ena << ITAPDLYENA_SHIFT);
|
||||
mask |= ITAPDLYENA_MASK | ITAPDLYSEL_MASK;
|
||||
val |= (itap_del_ena << ITAPDLYENA_SHIFT) |
|
||||
(itap_del_sel << ITAPDLYSEL_SHIFT);
|
||||
|
||||
regmap_update_bits(sdhci_am654->base, PHY_CTRL4, ITAPCHGWIN_MASK,
|
||||
1 << ITAPCHGWIN_SHIFT);
|
||||
regmap_update_bits(sdhci_am654->base, PHY_CTRL4, mask, val);
|
||||
|
||||
regmap_update_bits(sdhci_am654->base, PHY_CTRL4, ITAPCHGWIN_MASK, 0);
|
||||
regmap_update_bits(sdhci_am654->base, PHY_CTRL5, CLKBUFSEL_MASK,
|
||||
sdhci_am654->clkbuf_sel);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user