mb/siemens/mc_ehl2: Use preset driver strength for SD-Card
The intention of predefining driver strength is to avoid that the OS SD-Card driver changes this setting. Change-Id: I02fdac94462da1cd77f8dc972faf16f28d94c946 Signed-off-by: Mario Scheithauer <mario.scheithauer@siemens.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/68166 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
This commit is contained in:
parent
c8c64c12a5
commit
d78722f2f8
|
@ -9,6 +9,8 @@
|
||||||
#include <soc/pci_devs.h>
|
#include <soc/pci_devs.h>
|
||||||
#include <soc/pcr_ids.h>
|
#include <soc/pcr_ids.h>
|
||||||
|
|
||||||
|
#define HOSTCTRL2 0x3E
|
||||||
|
#define HOSTCTRL2_PRESET (1 << 15)
|
||||||
#define SD_CAP_BYP 0x810
|
#define SD_CAP_BYP 0x810
|
||||||
#define SD_CAP_BYP_EN 0x5A
|
#define SD_CAP_BYP_EN 0x5A
|
||||||
#define SD_CAP_BYP_REG1 0x814
|
#define SD_CAP_BYP_REG1 0x814
|
||||||
|
@ -34,6 +36,7 @@ void variant_mainboard_final(void)
|
||||||
dev = pcidev_path_on_root(PCH_DEVFN_SDCARD);
|
dev = pcidev_path_on_root(PCH_DEVFN_SDCARD);
|
||||||
if (dev) {
|
if (dev) {
|
||||||
uint32_t reg;
|
uint32_t reg;
|
||||||
|
uint16_t reg16;
|
||||||
struct resource *res = probe_resource(dev, PCI_BASE_ADDRESS_0);
|
struct resource *res = probe_resource(dev, PCI_BASE_ADDRESS_0);
|
||||||
if (!res)
|
if (!res)
|
||||||
return;
|
return;
|
||||||
|
@ -43,6 +46,11 @@ void variant_mainboard_final(void)
|
||||||
reg &= ~(SD_CAP_BYP_SDR104 | SD_CAP_BYP_SDR50);
|
reg &= ~(SD_CAP_BYP_SDR104 | SD_CAP_BYP_SDR50);
|
||||||
reg |= SD_CAP_BYP_DDR50;
|
reg |= SD_CAP_BYP_DDR50;
|
||||||
write32(res2mmio(res, SD_CAP_BYP_REG1, 0), reg);
|
write32(res2mmio(res, SD_CAP_BYP_REG1, 0), reg);
|
||||||
|
|
||||||
|
/* Use preset driver strength from preset value registers. */
|
||||||
|
reg16 = read16(res2mmio(res, HOSTCTRL2, 0));
|
||||||
|
reg16 |= HOSTCTRL2_PRESET;
|
||||||
|
write16(res2mmio(res, HOSTCTRL2, 0), reg16);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue