Message ID | 1408347129-733-1-git-send-email-yunpeng.gao@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 18 August 2014 09:32, Yunpeng Gao <yunpeng.gao@intel.com> wrote: > Due to HW issue, SDHCI host controller on Intel > Baytrail/Merrifield platforms can not use preset > register. So, disable preset registers for them by quirks. > > Signed-off-by: Yunpeng Gao <yunpeng.gao@intel.com> > Signed-off-by: Chuanxiao Dong <chuanxiao.dong@intel.com> Hi Yunpeng, Could you please rebase this patch, it didn't apply to my next branch. Kind regards Uffe > --- > drivers/mmc/host/sdhci-pci.c | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/drivers/mmc/host/sdhci-pci.c b/drivers/mmc/host/sdhci-pci.c > index 52c42fc..98187ae 100644 > --- a/drivers/mmc/host/sdhci-pci.c > +++ b/drivers/mmc/host/sdhci-pci.c > @@ -277,18 +277,21 @@ static int byt_sdio_probe_slot(struct sdhci_pci_slot *slot) > } > > static const struct sdhci_pci_fixes sdhci_intel_byt_emmc = { > + .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN, > .allow_runtime_pm = true, > .probe_slot = byt_emmc_probe_slot, > }; > > static const struct sdhci_pci_fixes sdhci_intel_byt_sdio = { > - .quirks2 = SDHCI_QUIRK2_HOST_OFF_CARD_ON, > + .quirks2 = SDHCI_QUIRK2_HOST_OFF_CARD_ON | > + SDHCI_QUIRK2_PRESET_VALUE_BROKEN, > .allow_runtime_pm = true, > .probe_slot = byt_sdio_probe_slot, > }; > > static const struct sdhci_pci_fixes sdhci_intel_byt_sd = { > - .quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON, > + .quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON | > + SDHCI_QUIRK2_PRESET_VALUE_BROKEN, > .allow_runtime_pm = true, > .own_cd_for_runtime_pm = true, > }; > @@ -312,7 +315,8 @@ static int intel_mrfl_mmc_probe_slot(struct sdhci_pci_slot *slot) > > static const struct sdhci_pci_fixes sdhci_intel_mrfl_mmc = { > .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC, > - .quirks2 = SDHCI_QUIRK2_BROKEN_HS200, > + .quirks2 = SDHCI_QUIRK2_BROKEN_HS200 | > + SDHCI_QUIRK2_PRESET_VALUE_BROKEN, > .probe_slot = intel_mrfl_mmc_probe_slot, > }; > > -- > 1.7.9.5 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-mmc" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogVWxmIEhhbnNzb24gW21h aWx0bzp1bGYuaGFuc3NvbkBsaW5hcm8ub3JnXQ0KPiBTZW50OiBUdWVzZGF5LCBTZXB0ZW1iZXIg MDIsIDIwMTQgNjowNiBQTQ0KPiBUbzogR2FvLCBZdW5wZW5nDQo+IENjOiBsaW51eC1tbWM7IERv bmcsIENodWFueGlhbw0KPiBTdWJqZWN0OiBSZTogW1BBVENIXSBtbWM6IHNkaGNpLXBjaTogZGlz YWJsZSBwcmVzZXQgcmVnaXN0ZXIgZm9yIEJheXRyYWlsIGFuZA0KPiBNZXJyaWZpZWxkDQo+IA0K PiBPbiAxOCBBdWd1c3QgMjAxNCAwOTozMiwgWXVucGVuZyBHYW8gPHl1bnBlbmcuZ2FvQGludGVs LmNvbT4gd3JvdGU6DQo+ID4gRHVlIHRvIEhXIGlzc3VlLCBTREhDSSBob3N0IGNvbnRyb2xsZXIg b24gSW50ZWwgQmF5dHJhaWwvTWVycmlmaWVsZA0KPiA+IHBsYXRmb3JtcyBjYW4gbm90IHVzZSBw cmVzZXQgcmVnaXN0ZXIuIFNvLCBkaXNhYmxlIHByZXNldCByZWdpc3RlcnMNCj4gPiBmb3IgdGhl bSBieSBxdWlya3MuDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBZdW5wZW5nIEdhbyA8eXVucGVu Zy5nYW9AaW50ZWwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IENodWFueGlhbyBEb25nIDxjaHVh bnhpYW8uZG9uZ0BpbnRlbC5jb20+DQo+IA0KPiBIaSBZdW5wZW5nLA0KPiANCj4gQ291bGQgeW91 IHBsZWFzZSByZWJhc2UgdGhpcyBwYXRjaCwgaXQgZGlkbid0IGFwcGx5IHRvIG15IG5leHQgYnJh bmNoLg0KDQpPSy4gSSdsbCBnaXQgY2xvbmUgbXkgbW1jX25leHQgdHJlZSBhbmQgcmViYXNlIHRo ZSBwYXRjaC4gQW5kIHdpbGwgc3VibWl0IGl0IGFnYWluIG9uY2UgZG9uZS4NClRoYW5rcyBmb3Ig dGhlIHJldmlldy4NCg0KVGhhbmtzLg0KDQpSZWdhcmRzLA0KWXVucGVuZw0KDQo+IEtpbmQgcmVn YXJkcw0KPiBVZmZlDQo+IA0KPiA+IC0tLQ0KPiA+ICBkcml2ZXJzL21tYy9ob3N0L3NkaGNpLXBj aS5jIHwgICAxMCArKysrKysrLS0tDQo+ID4gIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tbWMvaG9z dC9zZGhjaS1wY2kuYw0KPiA+IGIvZHJpdmVycy9tbWMvaG9zdC9zZGhjaS1wY2kuYyBpbmRleCA1 MmM0MmZjLi45ODE4N2FlIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvbW1jL2hvc3Qvc2RoY2kt cGNpLmMNCj4gPiArKysgYi9kcml2ZXJzL21tYy9ob3N0L3NkaGNpLXBjaS5jDQo+ID4gQEAgLTI3 NywxOCArMjc3LDIxIEBAIHN0YXRpYyBpbnQgYnl0X3NkaW9fcHJvYmVfc2xvdChzdHJ1Y3QNCj4g PiBzZGhjaV9wY2lfc2xvdCAqc2xvdCkgIH0NCj4gPg0KPiA+ICBzdGF0aWMgY29uc3Qgc3RydWN0 IHNkaGNpX3BjaV9maXhlcyBzZGhjaV9pbnRlbF9ieXRfZW1tYyA9IHsNCj4gPiArICAgICAgIC5x dWlya3MyICAgICAgICA9IFNESENJX1FVSVJLMl9QUkVTRVRfVkFMVUVfQlJPS0VOLA0KPiA+ICAg ICAgICAgLmFsbG93X3J1bnRpbWVfcG0gPSB0cnVlLA0KPiA+ICAgICAgICAgLnByb2JlX3Nsb3Qg ICAgID0gYnl0X2VtbWNfcHJvYmVfc2xvdCwNCj4gPiAgfTsNCj4gPg0KPiA+ICBzdGF0aWMgY29u c3Qgc3RydWN0IHNkaGNpX3BjaV9maXhlcyBzZGhjaV9pbnRlbF9ieXRfc2RpbyA9IHsNCj4gPiAt ICAgICAgIC5xdWlya3MyICAgICAgICA9IFNESENJX1FVSVJLMl9IT1NUX09GRl9DQVJEX09OLA0K PiA+ICsgICAgICAgLnF1aXJrczIgICAgICAgID0gU0RIQ0lfUVVJUksyX0hPU1RfT0ZGX0NBUkRf T04gfA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIFNESENJX1FVSVJLMl9QUkVTRVRfVkFM VUVfQlJPS0VOLA0KPiA+ICAgICAgICAgLmFsbG93X3J1bnRpbWVfcG0gPSB0cnVlLA0KPiA+ICAg ICAgICAgLnByb2JlX3Nsb3QgICAgID0gYnl0X3NkaW9fcHJvYmVfc2xvdCwNCj4gPiAgfTsNCj4g Pg0KPiA+ICBzdGF0aWMgY29uc3Qgc3RydWN0IHNkaGNpX3BjaV9maXhlcyBzZGhjaV9pbnRlbF9i eXRfc2QgPSB7DQo+ID4gLSAgICAgICAucXVpcmtzMiAgICAgICAgPSBTREhDSV9RVUlSSzJfQ0FS RF9PTl9ORUVEU19CVVNfT04sDQo+ID4gKyAgICAgICAucXVpcmtzMiAgICAgICAgPSBTREhDSV9R VUlSSzJfQ0FSRF9PTl9ORUVEU19CVVNfT04gfA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAg IFNESENJX1FVSVJLMl9QUkVTRVRfVkFMVUVfQlJPS0VOLA0KPiA+ICAgICAgICAgLmFsbG93X3J1 bnRpbWVfcG0gPSB0cnVlLA0KPiA+ICAgICAgICAgLm93bl9jZF9mb3JfcnVudGltZV9wbSA9IHRy dWUsICB9OyBAQCAtMzEyLDcgKzMxNSw4IEBADQo+IHN0YXRpYw0KPiA+IGludCBpbnRlbF9tcmZs X21tY19wcm9iZV9zbG90KHN0cnVjdCBzZGhjaV9wY2lfc2xvdCAqc2xvdCkNCj4gPg0KPiA+ICBz dGF0aWMgY29uc3Qgc3RydWN0IHNkaGNpX3BjaV9maXhlcyBzZGhjaV9pbnRlbF9tcmZsX21tYyA9 IHsNCj4gPiAgICAgICAgIC5xdWlya3MgICAgICAgICA9IFNESENJX1FVSVJLX05PX0VOREFUVFJf SU5fTk9QREVTQywNCj4gPiAtICAgICAgIC5xdWlya3MyICAgICAgICA9IFNESENJX1FVSVJLMl9C Uk9LRU5fSFMyMDAsDQo+ID4gKyAgICAgICAucXVpcmtzMiAgICAgICAgPSBTREhDSV9RVUlSSzJf QlJPS0VOX0hTMjAwIHwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICBTREhDSV9RVUlSSzJf UFJFU0VUX1ZBTFVFX0JST0tFTiwNCj4gPiAgICAgICAgIC5wcm9iZV9zbG90ICAgICA9IGludGVs X21yZmxfbW1jX3Byb2JlX3Nsb3QsDQo+ID4gIH07DQo+ID4NCj4gPiAtLQ0KPiA+IDEuNy45LjUN Cj4gPg0KPiA+IC0tDQo+ID4gVG8gdW5zdWJzY3JpYmUgZnJvbSB0aGlzIGxpc3Q6IHNlbmQgdGhl IGxpbmUgInVuc3Vic2NyaWJlIGxpbnV4LW1tYyINCj4gPiBpbiB0aGUgYm9keSBvZiBhIG1lc3Nh Z2UgdG8gbWFqb3Jkb21vQHZnZXIua2VybmVsLm9yZyBNb3JlIG1ham9yZG9tbw0KPiA+IGluZm8g YXQgIGh0dHA6Ly92Z2VyLmtlcm5lbC5vcmcvbWFqb3Jkb21vLWluZm8uaHRtbA0K -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/mmc/host/sdhci-pci.c b/drivers/mmc/host/sdhci-pci.c index 52c42fc..98187ae 100644 --- a/drivers/mmc/host/sdhci-pci.c +++ b/drivers/mmc/host/sdhci-pci.c @@ -277,18 +277,21 @@ static int byt_sdio_probe_slot(struct sdhci_pci_slot *slot) } static const struct sdhci_pci_fixes sdhci_intel_byt_emmc = { + .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN, .allow_runtime_pm = true, .probe_slot = byt_emmc_probe_slot, }; static const struct sdhci_pci_fixes sdhci_intel_byt_sdio = { - .quirks2 = SDHCI_QUIRK2_HOST_OFF_CARD_ON, + .quirks2 = SDHCI_QUIRK2_HOST_OFF_CARD_ON | + SDHCI_QUIRK2_PRESET_VALUE_BROKEN, .allow_runtime_pm = true, .probe_slot = byt_sdio_probe_slot, }; static const struct sdhci_pci_fixes sdhci_intel_byt_sd = { - .quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON, + .quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON | + SDHCI_QUIRK2_PRESET_VALUE_BROKEN, .allow_runtime_pm = true, .own_cd_for_runtime_pm = true, }; @@ -312,7 +315,8 @@ static int intel_mrfl_mmc_probe_slot(struct sdhci_pci_slot *slot) static const struct sdhci_pci_fixes sdhci_intel_mrfl_mmc = { .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC, - .quirks2 = SDHCI_QUIRK2_BROKEN_HS200, + .quirks2 = SDHCI_QUIRK2_BROKEN_HS200 | + SDHCI_QUIRK2_PRESET_VALUE_BROKEN, .probe_slot = intel_mrfl_mmc_probe_slot, };