Fix typo in Driver Type A/C/D capability checks in sdhci.

Use the SDHCI_CAN_DRIVE_TYPE_A/_C/_D masks to check for Driver Type support,
instead of using the SDHCI_CTRL2_DRIVER_TYPE_A/_C/_D values which are meant
for setting the Driver Type in the HOST_CONTROL2 register.

Approved by:	adrian (mentor), jmcneill
Differential Revision:	https://reviews.freebsd.org/D10999
This commit is contained in:
Imre Vadász 2017-05-31 19:20:27 +00:00
parent bf3bb1b028
commit f8b883c132
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=319350

View File

@ -731,11 +731,11 @@ sdhci_init_slot(device_t dev, struct sdhci_slot *slot, int num)
MMC_CAP_MMC_DDR52_180 | MMC_CAP_MMC_HS200_180 |
MMC_CAP_MMC_HS400_180))
host_caps |= MMC_CAP_SIGNALING_180;
if (caps & SDHCI_CTRL2_DRIVER_TYPE_A)
if (caps2 & SDHCI_CAN_DRIVE_TYPE_A)
host_caps |= MMC_CAP_DRIVER_TYPE_A;
if (caps & SDHCI_CTRL2_DRIVER_TYPE_C)
if (caps2 & SDHCI_CAN_DRIVE_TYPE_C)
host_caps |= MMC_CAP_DRIVER_TYPE_C;
if (caps & SDHCI_CTRL2_DRIVER_TYPE_D)
if (caps2 & SDHCI_CAN_DRIVE_TYPE_D)
host_caps |= MMC_CAP_DRIVER_TYPE_D;
slot->host.caps = host_caps;
@ -769,9 +769,9 @@ sdhci_init_slot(device_t dev, struct sdhci_slot *slot, int num)
(caps & SDHCI_CAN_VDD_180) ? " 1.8V" : "",
(host_caps & MMC_CAP_SIGNALING_180) ? " 1.8V" : "",
(host_caps & MMC_CAP_SIGNALING_120) ? " 1.2V" : "",
(caps & SDHCI_CTRL2_DRIVER_TYPE_A) ? "A" : "",
(caps & SDHCI_CTRL2_DRIVER_TYPE_C) ? "C" : "",
(caps & SDHCI_CTRL2_DRIVER_TYPE_D) ? "D" : "",
(caps2 & SDHCI_CAN_DRIVE_TYPE_A) ? "A" : "",
(caps2 & SDHCI_CAN_DRIVE_TYPE_C) ? "C" : "",
(caps2 & SDHCI_CAN_DRIVE_TYPE_D) ? "D" : "",
(slot->opt & SDHCI_HAVE_DMA) ? "DMA" : "PIO");
if (host_caps & (MMC_CAP_MMC_DDR52 | MMC_CAP_MMC_HS200 |
MMC_CAP_MMC_HS400 | MMC_CAP_MMC_ENH_STROBE))