+ Chris Ruehl On Mon, 10 May 2021 at 21:04, Lucas Stach <l.stach@xxxxxxxxxxxxxx> wrote: > > From: Lucas Stach <dev@xxxxxxxxxx> > > On some boards the data strobe line isn't wired up, rendering HS400 > support broken, even if both the controller and the eMMC claim to > support it. Allow to disable HS400 mode via DT. Before I review the series, I just wanted to highlight that quite recently we got a related series posted from Chris [1]. I made some comments, but he hasn't replied yet. In any case, if I understood it correctly, it looks like some controllers may support HS400 ES, but not HS200. Could that be the case here as well? Or is this a different problem? Kind regards Uffe [1] https://patchwork.kernel.org/project/linux-mmc/patch/20201208061839.21163-7-chris.ruehl@xxxxxxxxxxxx/ > > Signed-off-by: Lucas Stach <dev@xxxxxxxxxx> > --- > v2: > - move to core > - actually disable all HS400 modes > --- > drivers/mmc/core/host.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c > index 9b89a91b6b47..0e066c5f5243 100644 > --- a/drivers/mmc/core/host.c > +++ b/drivers/mmc/core/host.c > @@ -351,6 +351,9 @@ int mmc_of_parse(struct mmc_host *host) > host->caps2 |= MMC_CAP2_NO_SD; > if (device_property_read_bool(dev, "no-mmc")) > host->caps2 |= MMC_CAP2_NO_MMC; > + if (device_property_read_bool(dev, "no-mmc-hs400")) > + host->caps2 &= ~(MMC_CAP2_HS400_1_8V | MMC_CAP2_HS400_1_2V | > + MMC_CAP2_HS400_ES); > > /* Must be after "non-removable" check */ > if (device_property_read_u32(dev, "fixed-emmc-driver-type", &drv_type) == 0) { > -- > 2.31.1 >