]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers
authorAdrian Hunter <adrian.hunter@intel.com>
Wed, 22 Apr 2020 11:16:29 +0000 (14:16 +0300)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 22 Apr 2020 15:57:17 +0000 (17:57 +0200)
commitf7bd74a2ff0391220355bbd20f17d1a7b2682bed
tree01e0de0bcd7743bb94b111522b015cf1bc1b39aa
parent88959cac3d28c8a966bfcae08b7258e066ec1e12
mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers

BIOS writers have begun the practice of setting 40 ohm eMMC driver strength
even though the eMMC may not support it, on the assumption that the kernel
will validate the value against the eMMC (Extended CSD DRIVER_STRENGTH
[offset 197]) and revert to the default 50 ohm value if 40 ohm is invalid.

This is done to avoid changing the value for different boards.

Putting aside the merits of this approach, it is clear the eMMC's mask
of supported driver strengths is more reliable than the value provided
by BIOS. Add validation accordingly.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Fixes: 69c69a13f9b1 ("mmc: sdhci-pci: Use ACPI DSM to get driver strength for some Intel devices")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20200422111629.4899-1-adrian.hunter@intel.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/sdhci-pci-core.c