sdhci: pci: only apply hardcoded override to non-removable devices
This makes the PCI mode SDHCI driver behave like the MMIO driver.
BUG=chrome-os-partner:42065
BRANCH=none
TEST=emerge-glados depthcharge
Change-Id: I4579849d7fbbee49d3bcd4c3eaece76bbaa65be8
Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/284621
Reviewed-by: Eric Caruso <ejcaruso@chromium.org>
diff --git a/src/drivers/storage/pci_sdhci.c b/src/drivers/storage/pci_sdhci.c
index f816bed..720c09a 100644
--- a/src/drivers/storage/pci_sdhci.c
+++ b/src/drivers/storage/pci_sdhci.c
@@ -78,11 +78,14 @@
host->sdhci_host.clock_f_max = clock_max;
host->sdhci_host.removable = removable;
- /*
- * The value translates to 'block access mode, supporting 1.7..1.95
- * and 2.7..3.6 voltage ranges, which is typical for eMMC devices.
- */
- host->sdhci_host.mmc_ctrlr.hardcoded_voltage = 0x40ff8080;
+ if (!removable)
+ /*
+ * The value translates to 'block access mode, supporting
+ * 1.7..1.95 and 2.7..3.6 voltage ranges, which is typical for
+ * eMMC devices.
+ */
+ host->sdhci_host.mmc_ctrlr.hardcoded_voltage = 0x40ff8080;
+
/*
* Need to program host->ioaddr for SD/MMC read/write operation
*/