From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v2,2/6] edac: synopsys: Add platform specific structures for ddrc controller From: Borislav Petkov Message-Id: <20170813113516.GA22812@nazgul.tnic> Date: Sun, 13 Aug 2017 13:35:16 +0200 To: Michal Simek Cc: linux-kernel@vger.kernel.org, monstr@monstr.eu, Naga Sureshkumar Relli , =?utf-8?B?U8O2cmVu?= Brinkmann , Mauro Carvalho Chehab , linux-arm-kernel@lists.infradead.org, linux-edac@vger.kernel.org List-ID: T24gTW9uLCBBdWcgMDcsIDIwMTcgYXQgMDk6Mzk6MjRBTSArMDIwMCwgTWljaGFsIFNpbWVrIHdy b3RlOgo+IEZyb206IE5hZ2EgU3VyZXNoa3VtYXIgUmVsbGkgPG5hZ2Euc3VyZXNoa3VtYXIucmVs bGlAeGlsaW54LmNvbT4KPiAKPiBBZGRzIHBsYXRmb3JtIHNwZWNpZmljIHN0cnVjdHVyZXMsIHNv IHRoYXQgd2UgY2FuIGFkZAoKIkFkZCBwbGF0Zm9ybS1zcGVjaWZpYyBzdHJ1Y3R1cmVzLCAuLi4i CgppLmUuLCAiRG8gdGhpcyBhbmQgZG8gdGhhdCIgZm9ybXVsYXRpb24uIEZpeCB0aGF0IGluIHRo ZSBmb2xsb3dpbmcKcGF0Y2hlcyB0b28gcGxzLgoKPiBkaWZmZXJlbnQgSVAgc3VwcG9ydCBsYXRl ciB1c2luZyBxdWlya3MuCj4gCj4gU2lnbmVkLW9mZi1ieTogTmFnYSBTdXJlc2hrdW1hciBSZWxs aSA8bmFnYXN1cmVAeGlsaW54LmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBNaWNoYWwgU2ltZWsgPG1p Y2hhbC5zaW1la0B4aWxpbnguY29tPgo+IC0tLQo+IAo+IENoYW5nZXMgaW4gdjI6Cj4gLSBVcGRh dGUgY29tbWl0IG1lc3NhZ2UKPiAtIFVwZGF0ZSBwYXRjaCBzdWJqZWN0Cj4gLSBVcGRhdGUga2Vy bmVsLWRvYyBkZXNjcmlwdGlvbiBmb3Igc3RydWN0IHN5bnBzX3BsYXRmb3JtX2RhdGEKPiAtIENo YW5nZSBzeW5wc19wbGF0Zm9ybV9kYXRhIHBvaW50ZXIgbmFtZXMgYW5kIHVwZGF0ZSBjb2RlCj4g Cj4gIGRyaXZlcnMvZWRhYy9zeW5vcHN5c19lZGFjLmMgfCA3MCArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKystLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgNTggaW5zZXJ0aW9u cygrKSwgMTIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZWRhYy9zeW5v cHN5c19lZGFjLmMgYi9kcml2ZXJzL2VkYWMvc3lub3BzeXNfZWRhYy5jCj4gaW5kZXggMGM5YzU5 ZTJiNWEzLi4yOTMzODBmODg0ZmUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9lZGFjL3N5bm9wc3lz X2VkYWMuYwo+ICsrKyBiL2RyaXZlcnMvZWRhYy9zeW5vcHN5c19lZGFjLmMKPiBAQCAtMjIsNiAr MjIsNyBAQAo+ICAjaW5jbHVkZSA8bGludXgvZWRhYy5oPgo+ICAjaW5jbHVkZSA8bGludXgvbW9k dWxlLmg+Cj4gICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kZXZpY2UuaD4KPiArI2luY2x1ZGUg PGxpbnV4L29mLmg+Cj4gIAo+ICAjaW5jbHVkZSAiZWRhY19tb2R1bGUuaCIKPiAgCj4gQEAgLTk1 LDYgKzk2LDkgQEAKPiAgI2RlZmluZSBTQ1JVQl9NT0RFX01BU0sJCTB4Nwo+ICAjZGVmaW5lIFND UlVCX01PREVfU0VDREVECTB4NAo+ICAKPiArLyogRERSIEVDQyBRdWlya3MgKi8KCnF1aXJrcz8K CkhvdyBpcyByZXBvcnRpbmcgRUNDIHdpdGggYW4gaW50ZXJydXB0IGEgcXVpcms/IE9yIHdoYXRl dmVyIHRoYXQgZGVmaW5lCmlzLi4uCgo+ICsjZGVmaW5lIEREUl9FQ0NfSU5UUl9TVVBQT1JUCQlC SVQoMCkKPiArCj4gIC8qKgo+ICAgKiBzdHJ1Y3QgZWNjX2Vycm9yX2luZm8gLSBFQ0MgZXJyb3Ig bG9nIGluZm9ybWF0aW9uCj4gICAqIEByb3c6CVJvdyBudW1iZXIKPiBAQCAtMTMwLDYgKzEzNCw3 IEBAIHN0cnVjdCBzeW5wc19lY2Nfc3RhdHVzIHsKPiAgICogQGJhc2VhZGRyOglCYXNlIGFkZHJl c3Mgb2YgdGhlIEREUiBjb250cm9sbGVyCj4gICAqIEBtZXNzYWdlOglCdWZmZXIgZm9yIGZyYW1p bmcgdGhlIGV2ZW50IHNwZWNpZmljIGluZm8KPiAgICogQHN0YXQ6CUVDQyBzdGF0dXMgaW5mb3Jt YXRpb24KPiArICogQHBfZGF0YToJUG9pbnRlciB0byBwbGF0Zm9ybSBkYXRhCj4gICAqIEBjZV9j bnQ6CUNvcnJlY3RhYmxlIEVycm9yIGNvdW50Cj4gICAqIEB1ZV9jbnQ6CVVuY29ycmVjdGFibGUg RXJyb3IgY291bnQKPiAgICovCj4gQEAgLTEzNywxMSArMTQyLDI5IEBAIHN0cnVjdCBzeW5wc19l ZGFjX3ByaXYgewo+ICAJdm9pZCBfX2lvbWVtICpiYXNlYWRkcjsKPiAgCWNoYXIgbWVzc2FnZVtT WU5QU19FREFDX01TR19TSVpFXTsKPiAgCXN0cnVjdCBzeW5wc19lY2Nfc3RhdHVzIHN0YXQ7Cj4g Kwljb25zdCBzdHJ1Y3Qgc3lucHNfcGxhdGZvcm1fZGF0YSAqcF9kYXRhOwo+ICAJdTMyIGNlX2Nu dDsKPiAgCXUzMiB1ZV9jbnQ7Cj4gIH07Cj4gIAo+ICAvKioKPiArICogc3RydWN0IHN5bnBzX3Bs YXRmb3JtX2RhdGEgLSAgc3lucHMgcGxhdGZvcm0gZGF0YSBzdHJ1Y3R1cmUKPiArICogQGVkYWNf Z2V0ZXJyb3JfaW5mbzoJZnVuY3Rpb24gd2hpY2ggcmV0dXJucyB0aGUgY3VycmVudCBlY2MgZXJy b3IgaW5mbwo+ICsgKiBAZWRhY19nZXRfbXR5cGU6CWZ1bmN0aW9uIHdoaWNoIHJldHVybnMgdGhl IG1lbW9yeSB0eXBlCj4gKyAqIEBlZGFjX2dldF9kdHlwZToJZnVuY3Rpb24gd2hpY2ggcmV0dXJu cyB0aGUgRElNTSB0eXBlCj4gKyAqIEBlZGFjX2dldF9lY2NzdGF0ZToJZnVuY3Rpb24gd2hpY2gg cmV0dXJucyB0aGUgZWNjIGVuYWJsZS9kaXNhYmxlIHN0YXR1cwo+ICsgKiBAcXVpcmtzOgkJYSBi aXRmaWVsZCBvZiBxdWlya3MKPiArICovCj4gK3N0cnVjdCBzeW5wc19wbGF0Zm9ybV9kYXRhIHsK PiArCWludCAoKmVkYWNfZ2V0ZXJyb3JfaW5mbykodm9pZCBfX2lvbWVtICpiYXNlLAo+ICsJCQkJ ICBzdHJ1Y3Qgc3lucHNfZWNjX3N0YXR1cyAqcCk7Cj4gKwllbnVtIG1lbV90eXBlICgqZWRhY19n ZXRfbXR5cGUpKGNvbnN0IHZvaWQgX19pb21lbSAqYmFzZSk7Cj4gKwllbnVtIGRldl90eXBlICgq ZWRhY19nZXRfZHR5cGUpKGNvbnN0IHZvaWQgX19pb21lbSAqYmFzZSk7Cj4gKwlib29sICgqZWRh Y19nZXRfZWNjc3RhdGUpKHZvaWQgX19pb21lbSAqYmFzZSk7Cj4gKwlpbnQgcXVpcmtzOwoKWW91 IGNhbiBqdXN0IGFzIHdlbGwgZHJvcCB0aGUgImVkYWNfIiBwcmVmaXggdG9vIC0gdGhvc2UgYXJl CmRyaXZlci1sb2NhbCB0aGluZ3MgYW5kIG5vdCBFREFDLWNvcmUuCgo+ICt9Owo+ICsKPiArLyoq Cj4gICAqIHN5bnBzX2VkYWNfZ2V0ZXJyb3JfaW5mbyAtIEdldCB0aGUgY3VycmVudCBlY2MgZXJy b3IgaW5mbwo+ICAgKiBAYmFzZToJUG9pbnRlciB0byB0aGUgYmFzZSBhZGRyZXNzIG9mIHRoZSBk ZHIgbWVtb3J5IGNvbnRyb2xsZXIKPiAgICogQHA6CQlQb2ludGVyIHRvIHRoZSBzeW5vcHN5cyBl Y2Mgc3RhdHVzIHN0cnVjdHVyZQo+IEBAIC0yNDIsNyArMjY1LDggQEAgc3RhdGljIHZvaWQgc3lu cHNfZWRhY19jaGVjayhzdHJ1Y3QgbWVtX2N0bF9pbmZvICptY2kpCj4gIAlzdHJ1Y3Qgc3lucHNf ZWRhY19wcml2ICpwcml2ID0gbWNpLT5wdnRfaW5mbzsKPiAgCWludCBzdGF0dXM7Cj4gIAo+IC0J c3RhdHVzID0gc3lucHNfZWRhY19nZXRlcnJvcl9pbmZvKHByaXYtPmJhc2VhZGRyLCAmcHJpdi0+ c3RhdCk7Cj4gKwlzdGF0dXMgPSBwcml2LT5wX2RhdGEtPmVkYWNfZ2V0ZXJyb3JfaW5mbyhwcml2 LT5iYXNlYWRkciwKPiArCQkJCQkJICAmcHJpdi0+c3RhdCk7Cj4gIAlpZiAoc3RhdHVzKQo+ICAJ CXJldHVybjsKPiAgCj4gQEAgLTM3MiwxMCArMzk2LDEyIEBAIHN0YXRpYyBpbnQgc3lucHNfZWRh Y19pbml0X2Nzcm93cyhzdHJ1Y3QgbWVtX2N0bF9pbmZvICptY2kpCj4gIAkJZm9yIChqID0gMDsg aiA8IGNzaS0+bnJfY2hhbm5lbHM7IGorKykgewo+ICAJCQlkaW1tICAgICAgICAgICAgPSBjc2kt PmNoYW5uZWxzW2pdLT5kaW1tOwo+ICAJCQlkaW1tLT5lZGFjX21vZGUgPSBFREFDX0ZMQUdfU0VD REVEOwo+IC0JCQlkaW1tLT5tdHlwZSAgICAgPSBzeW5wc19lZGFjX2dldF9tdHlwZShwcml2LT5i YXNlYWRkcik7Cj4gKwkJCWRpbW0tPm10eXBlICAgICA9IHByaXYtPnBfZGF0YS0+ZWRhY19nZXRf bXR5cGUoCj4gKwkJCQkJCXByaXYtPmJhc2VhZGRyKTsKCkFsd2F5cyBsZXQgaXQgc3RpY2sgb3V0 LCBuZXZlciBicmVhayBvbiB0aGUgb3BlbmluZyBicmFjZS4gY2hlY2twYXRjaApzaG91bGQgY2F0 Y2ggdGhhdCBidXQgaXQgZG9lc24ndCwgZm9yIHNvbWUgcmVhc29uLgoKPiAgCQkJZGltbS0+bnJf cGFnZXMgID0gKHNpemUgPj4gUEFHRV9TSElGVCkgLyBjc2ktPm5yX2NoYW5uZWxzOwo+ICAJCQlk aW1tLT5ncmFpbiAgICAgPSBTWU5QU19FREFDX0VSUl9HUkFJTjsKPiAtCQkJZGltbS0+ZHR5cGUg ICAgID0gc3lucHNfZWRhY19nZXRfZHR5cGUocHJpdi0+YmFzZWFkZHIpOwo+ICsJCQlkaW1tLT5k dHlwZSAgICAgPSBwcml2LT5wX2RhdGEtPmVkYWNfZ2V0X2R0eXBlKAo+ICsJCQkJCQlwcml2LT5i YXNlYWRkcik7Cj4gIAkJfQo+ICAJfQo+ICAKPiBAQCAtNDIzLDYgKzQ0OSwyMSBAQCBzdGF0aWMg aW50IHN5bnBzX2VkYWNfbWNfaW5pdChzdHJ1Y3QgbWVtX2N0bF9pbmZvICptY2ksCj4gIAlyZXR1 cm4gc3RhdHVzOwo+ICB9Cj4gIAo+ICtzdGF0aWMgY29uc3Qgc3RydWN0IHN5bnBzX3BsYXRmb3Jt X2RhdGEgenlucV9lZGFjX2RlZiA9IHsKPiArCS5lZGFjX2dldGVycm9yX2luZm8JPSBzeW5wc19l ZGFjX2dldGVycm9yX2luZm8sCgoJLmdldGVycm9yX2luZm8JPSBzeW5wc19nZXRlcnJvcl9pbmZv LAoKYW5kIHNvIG9uIGxvb2tzIHBlcmZlY3RseSBmaW5lIHRvIG1lLgoKPiArCS5lZGFjX2dldF9t dHlwZQkJPSBzeW5wc19lZGFjX2dldF9tdHlwZSwKPiArCS5lZGFjX2dldF9kdHlwZQkJPSBzeW5w c19lZGFjX2dldF9kdHlwZSwKPiArCS5lZGFjX2dldF9lY2NzdGF0ZQk9IHN5bnBzX2VkYWNfZ2V0 X2VjY3N0YXRlLAo+ICsJLnF1aXJrcwkJCT0gMCwKPiArfTsKPiArCj4gK3N0YXRpYyBjb25zdCBz dHJ1Y3Qgb2ZfZGV2aWNlX2lkIHN5bnBzX2VkYWNfbWF0Y2hbXSA9IHsKPiArCXsgLmNvbXBhdGli bGUgPSAieGxueCx6eW5xLWRkcmMtYTA1IiwgLmRhdGEgPSAodm9pZCAqKSZ6eW5xX2VkYWNfZGVm IH0sCj4gKwl7IC8qIGVuZCBvZiB0YWJsZSAqLyB9Cj4gK307Cj4gKwo+ICtNT0RVTEVfREVWSUNF X1RBQkxFKG9mLCBzeW5wc19lZGFjX21hdGNoKTsKPiArCj4gIC8qKgo+ICAgKiBzeW5wc19lZGFj X21jX3Byb2JlIC0gQ2hlY2sgY29udHJvbGxlciBhbmQgYmluZCBkcml2ZXIKPiAgICogQHBkZXY6 CVBvaW50ZXIgdG8gdGhlIHBsYXRmb3JtX2RldmljZSBzdHJ1Y3QKPiBAQCAtNDQwLDEzICs0ODEs MjIgQEAgc3RhdGljIGludCBzeW5wc19lZGFjX21jX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZp Y2UgKnBkZXYpCj4gIAlpbnQgcmM7Cj4gIAlzdHJ1Y3QgcmVzb3VyY2UgKnJlczsKPiAgCXZvaWQg X19pb21lbSAqYmFzZWFkZHI7Cj4gKwljb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkICptYXRjaDsK PiArCWNvbnN0IHN0cnVjdCBzeW5wc19wbGF0Zm9ybV9kYXRhICpwX2RhdGE7Cj4gIAo+ICAJcmVz ID0gcGxhdGZvcm1fZ2V0X3Jlc291cmNlKHBkZXYsIElPUkVTT1VSQ0VfTUVNLCAwKTsKPiAgCWJh c2VhZGRyID0gZGV2bV9pb3JlbWFwX3Jlc291cmNlKCZwZGV2LT5kZXYsIHJlcyk7Cj4gIAlpZiAo SVNfRVJSKGJhc2VhZGRyKSkKPiAgCQlyZXR1cm4gUFRSX0VSUihiYXNlYWRkcik7Cj4gIAo+IC0J aWYgKCFzeW5wc19lZGFjX2dldF9lY2NzdGF0ZShiYXNlYWRkcikpIHsKPiArCW1hdGNoID0gb2Zf bWF0Y2hfbm9kZShzeW5wc19lZGFjX21hdGNoLCBwZGV2LT5kZXYub2Zfbm9kZSk7Cj4gKwlpZiAo IW1hdGNoICYmICFtYXRjaC0+ZGF0YSkgewo+ICsJCWRldl9lcnIoJnBkZXYtPmRldiwgIm9mX21h dGNoX25vZGUoKSBmYWlsZWRcbiIpOwo+ICsJCXJldHVybiAtRUlOVkFMOwo+ICsJfQo+ICsKPiAr CXBfZGF0YSA9IChzdHJ1Y3Qgc3lucHNfcGxhdGZvcm1fZGF0YSAqKW1hdGNoLT5kYXRhOwo+ICsJ aWYgKCEocF9kYXRhLT5lZGFjX2dldF9lY2NzdGF0ZShiYXNlYWRkcikpKSB7CgpUaGlzIHBhdGNo IGRvZXMgbW9yZSB0aGFuIGp1c3QgYWRkaW5nIHBsYXRmb3JtLXNwZWNpZmljIHN0cnVjdHVyZXMg YW5kCnRoZSBjb21taXQgbWVzc2FnZSBpcyBub3QgdGFsa2luZyBhYm91dCBpdC4KCj4gIAkJZWRh Y19wcmludGsoS0VSTl9JTkZPLCBFREFDX01DLCAiRUNDIG5vdCBlbmFibGVkXG4iKTsKPiAgCQly ZXR1cm4gLUVOWElPOwo+ICAJfQo+IEBAIC00NjgsNiArNTE4LDggQEAgc3RhdGljIGludCBzeW5w c19lZGFjX21jX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAo+ICAJcHJp diA9IG1jaS0+cHZ0X2luZm87Cj4gIAlwcml2LT5iYXNlYWRkciA9IGJhc2VhZGRyOwo+ICsJcHJp di0+cF9kYXRhID0gbWF0Y2gtPmRhdGE7Cj4gKwo+ICAJcmMgPSBzeW5wc19lZGFjX21jX2luaXQo bWNpLCBwZGV2KTsKPiAgCWlmIChyYykgewo+ICAJCWVkYWNfcHJpbnRrKEtFUk5fRVJSLCBFREFD X01DLAo+IEBAIC00ODYsNyArNTM4LDggQEAgc3RhdGljIGludCBzeW5wc19lZGFjX21jX3Byb2Jl KHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAkgKiBTdGFydCBjYXB0dXJpbmcgdGhl IGNvcnJlY3RhYmxlIGFuZCB1bmNvcnJlY3RhYmxlIGVycm9ycy4gQSB3cml0ZSBvZgo+ICAJICog MCBzdGFydHMgdGhlIGNvdW50ZXJzLgo+ICAJICovCj4gLQl3cml0ZWwoMHgwLCBiYXNlYWRkciAr IEVDQ19DVFJMX09GU1QpOwo+ICsJaWYgKCEocHJpdi0+cF9kYXRhLT5xdWlya3MgJiBERFJfRUND X0lOVFJfU1VQUE9SVCkpCj4gKwkJd3JpdGVsKDB4MCwgYmFzZWFkZHIgKyBFQ0NfQ1RSTF9PRlNU KTsKCkRpdHRvLgo=