|
@@ -149,11 +149,11 @@ static const struct sdhci_pci_fixes sdhci_cafe = {
|
|
|
* ADMA operation is disabled for Moorestown platform due to
|
|
|
* hardware bugs.
|
|
|
*/
|
|
|
-static int mrst_hc1_probe(struct sdhci_pci_chip *chip)
|
|
|
+static int mrst_hc_probe(struct sdhci_pci_chip *chip)
|
|
|
{
|
|
|
/*
|
|
|
- * slots number is fixed here for MRST as SDIO3 is never used and has
|
|
|
- * hardware bugs.
|
|
|
+ * slots number is fixed here for MRST as SDIO3/5 are never used and
|
|
|
+ * have hardware bugs.
|
|
|
*/
|
|
|
chip->num_slots = 1;
|
|
|
return 0;
|
|
@@ -163,9 +163,9 @@ static const struct sdhci_pci_fixes sdhci_intel_mrst_hc0 = {
|
|
|
.quirks = SDHCI_QUIRK_BROKEN_ADMA | SDHCI_QUIRK_NO_HISPD_BIT,
|
|
|
};
|
|
|
|
|
|
-static const struct sdhci_pci_fixes sdhci_intel_mrst_hc1 = {
|
|
|
+static const struct sdhci_pci_fixes sdhci_intel_mrst_hc1_hc2 = {
|
|
|
.quirks = SDHCI_QUIRK_BROKEN_ADMA | SDHCI_QUIRK_NO_HISPD_BIT,
|
|
|
- .probe = mrst_hc1_probe,
|
|
|
+ .probe = mrst_hc_probe,
|
|
|
};
|
|
|
|
|
|
static const struct sdhci_pci_fixes sdhci_intel_mfd_sd = {
|
|
@@ -538,7 +538,15 @@ static const struct pci_device_id pci_ids[] __devinitdata = {
|
|
|
.device = PCI_DEVICE_ID_INTEL_MRST_SD1,
|
|
|
.subvendor = PCI_ANY_ID,
|
|
|
.subdevice = PCI_ANY_ID,
|
|
|
- .driver_data = (kernel_ulong_t)&sdhci_intel_mrst_hc1,
|
|
|
+ .driver_data = (kernel_ulong_t)&sdhci_intel_mrst_hc1_hc2,
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ .vendor = PCI_VENDOR_ID_INTEL,
|
|
|
+ .device = PCI_DEVICE_ID_INTEL_MRST_SD2,
|
|
|
+ .subvendor = PCI_ANY_ID,
|
|
|
+ .subdevice = PCI_ANY_ID,
|
|
|
+ .driver_data = (kernel_ulong_t)&sdhci_intel_mrst_hc1_hc2,
|
|
|
},
|
|
|
|
|
|
{
|