mb/siemens/mc_ehl2: Limit eMMC speed mode to DDR50

Due to layout restrictions on mc_ehl2, the eMMC interface is limited to
operate in DDR50 mode. The alternative modes SDR104 and SDR50 are not
supported. Limit the capabilities in the eMMC controller to DDR50 mode
only so that the eMMC driver in OS will choose the right mode for
operation even if the attached eMMC card supports higher modes.

BUG=none
TEST=Boot into Linux and check dmesg output for mmc modes

Change-Id: I668bb5b0b3197497920b36bcf283c25d2a0c00ba
Signed-off-by: Mario Scheithauer <mario.scheithauer@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/85881
Reviewed-by: Uwe Poeche <uwe.poeche@siemens.com>
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Mario Scheithauer 2025-01-07 14:42:49 +01:00 committed by Werner Zeh
commit 9e39acc3c1

View file

@ -50,6 +50,15 @@ void variant_mainboard_final(void)
/* Use preset driver strength from preset value registers. */
clrsetbits16(res2mmio(res, HOSTCTRL2, 0), 0, HOSTCTRL2_PRESET);
}
dev = pcidev_path_on_root(PCH_DEVFN_EMMC);
if (dev) {
struct resource *res = probe_resource(dev, PCI_BASE_ADDRESS_0);
if (!res)
return;
disable_sdr_modes(res);
}
}
static void finalize_boot(void *unused)