Furquan Shaikh has submitted this change. ( https://review.coreboot.org/c/coreboot/+/43572 )
Change subject: mb/google/zork/variants/dalboz: Use HS200 for eMMC ......................................................................
mb/google/zork/variants/dalboz: Use HS200 for eMMC
Earlier versions of Dalboz did not correctly handle HS400. One fix was to add stitching vias, but these boards did not have them. b/156539551
Another possible fix is to add tuning parameters including drive strength, but that is still a WIP. b/158959725
This should correct OS load failures in the meantime by running the bus slower.
BUG=b:158845662 TEST=build, flash, boot sku 0x5a80000c to OS BRANCH=None Signed-off-by: Eric Peers epeers@google.com Change-Id: Ia3e7a641bde04c5a7be29bf91c38dd8c110ed17a Reviewed-on: https://review.coreboot.org/c/coreboot/+/43572 Reviewed-by: Angel Pons th3fanbus@gmail.com Reviewed-by: Raul Rangel rrangel@chromium.org Tested-by: build bot (Jenkins) no-reply@coreboot.org --- M src/mainboard/google/zork/variants/dalboz/variant.c 1 file changed, 14 insertions(+), 2 deletions(-)
Approvals: build bot (Jenkins): Verified Raul Rangel: Looks good to me, approved Angel Pons: Looks good to me, approved
diff --git a/src/mainboard/google/zork/variants/dalboz/variant.c b/src/mainboard/google/zork/variants/dalboz/variant.c index 0212161..de4338e 100644 --- a/src/mainboard/google/zork/variants/dalboz/variant.c +++ b/src/mainboard/google/zork/variants/dalboz/variant.c @@ -127,9 +127,21 @@ cfg = config_of_soc();
if (sku_has_emmc()) { - if (sku_id() == 0x5A800003) - /* rev0 boards have issues with HS400 */ + if ((sku_id() == 0x5A800003) || (sku_id() == 0x5A80000C)) { + /* + * rev0 and rev1 boards have issues with HS400 + * + * There is a tuning fix with ES which shows promise + * for some boards, and a HW fix with stitching vias. + * There were also concerns that these boards did not + * have good margins for certain skus. + * + * But these original boards have none of these fixes. + * So we keep the speed low here, with the intent that + * other variants implement these corrections. + */ cfg->sd_emmc_config = SD_EMMC_EMMC_HS200; + } } else { cfg->sd_emmc_config = SD_EMMC_DISABLE; }