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: [v3,1/4] edac: synps: Add platform specific structures for ddrc controller From: Manish Narani Message-Id: <1533214282-9977-2-git-send-email-manish.narani@xilinx.com> Date: Thu, 2 Aug 2018 18:21:19 +0530 To: robh+dt@kernel.org, mark.rutland@arm.com, catalin.marinas@arm.com, will.deacon@arm.com, michal.simek@xilinx.com, bp@alien8.de, mchehab@kernel.org, mdf@kernel.org, edgar.iglesias@xilinx.com, shubhrajyoti.datta@xilinx.com, naga.sureshkumar.relli@xilinx.com, bharat.kumar.gogada@xilinx.com, stefan.krsmanovic@aggios.com Cc: sgoud@xilinx.com, anirudh@xilinx.com, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-edac@vger.kernel.org, Manish Narani List-ID: VGhpcyBwYXRjaCBhZGRzIHBsYXRmb3JtIHNwZWNpZmljIHN0cnVjdHVyZXMsIHNvIHRoYXQgd2Ug Y2FuIGFkZApkaWZmZXJlbnQgSVAgc3VwcG9ydCBsYXRlciB1c2luZyBxdWlya3MuCgpTaWduZWQt b2ZmLWJ5OiBNYW5pc2ggTmFyYW5pIDxtYW5pc2gubmFyYW5pQHhpbGlueC5jb20+Ci0tLQogZHJp dmVycy9lZGFjL3N5bm9wc3lzX2VkYWMuYyB8IDY0ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMTEg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9lZGFjL3N5bm9wc3lzX2VkYWMuYyBi L2RyaXZlcnMvZWRhYy9zeW5vcHN5c19lZGFjLmMKaW5kZXggMGM5YzU5ZS4uZDQ3OThlOCAxMDA2 NDQKLS0tIGEvZHJpdmVycy9lZGFjL3N5bm9wc3lzX2VkYWMuYworKysgYi9kcml2ZXJzL2VkYWMv c3lub3BzeXNfZWRhYy5jCkBAIC0yMiw2ICsyMiw3IEBACiAjaW5jbHVkZSA8bGludXgvZWRhYy5o PgogI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPgogI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2Rl dmljZS5oPgorI2luY2x1ZGUgPGxpbnV4L29mLmg+CiAKICNpbmNsdWRlICJlZGFjX21vZHVsZS5o IgogCkBAIC0xMzAsNiArMTMxLDcgQEAgc3RydWN0IHN5bnBzX2VjY19zdGF0dXMgewogICogQGJh c2VhZGRyOglCYXNlIGFkZHJlc3Mgb2YgdGhlIEREUiBjb250cm9sbGVyCiAgKiBAbWVzc2FnZToJ QnVmZmVyIGZvciBmcmFtaW5nIHRoZSBldmVudCBzcGVjaWZpYyBpbmZvCiAgKiBAc3RhdDoJRUND IHN0YXR1cyBpbmZvcm1hdGlvbgorICogQHBfZGF0YToJUG9pbnRlciB0byBwbGF0Zm9ybSBkYXRh CiAgKiBAY2VfY250OglDb3JyZWN0YWJsZSBFcnJvciBjb3VudAogICogQHVlX2NudDoJVW5jb3Jy ZWN0YWJsZSBFcnJvciBjb3VudAogICovCkBAIC0xMzcsMTEgKzEzOSwyOSBAQCBzdHJ1Y3Qgc3lu cHNfZWRhY19wcml2IHsKIAl2b2lkIF9faW9tZW0gKmJhc2VhZGRyOwogCWNoYXIgbWVzc2FnZVtT WU5QU19FREFDX01TR19TSVpFXTsKIAlzdHJ1Y3Qgc3lucHNfZWNjX3N0YXR1cyBzdGF0OworCWNv bnN0IHN0cnVjdCBzeW5wc19wbGF0Zm9ybV9kYXRhICpwX2RhdGE7CiAJdTMyIGNlX2NudDsKIAl1 MzIgdWVfY250OwogfTsKIAogLyoqCisgKiBzdHJ1Y3Qgc3lucHNfcGxhdGZvcm1fZGF0YSAtICBz eW5wcyBwbGF0Zm9ybSBkYXRhIHN0cnVjdHVyZQorICogQHN5bnBzX2VkYWNfZ2V0ZXJyb3JfaW5m bzoJZnVuY3Rpb24gcG9pbnRlciB0byBzeW5wcyBlZGFjIGVycm9yIGluZm8KKyAqIEBzeW5wc19l ZGFjX2dldF9tdHlwZToJZnVuY3Rpb24gcG9pbnRlciB0byBzeW5wcyBlZGFjIG10eXBlCisgKiBA c3lucHNfZWRhY19nZXRfZHR5cGU6CWZ1bmN0aW9uIHBvaW50ZXIgdG8gc3lucHMgZWRhYyBkdHlw ZQorICogQHN5bnBzX2VkYWNfZ2V0X2VjY3N0YXRlOglmdW5jdGlvbiBwb2ludGVyIHRvIHN5bnBz IGVkYWMgZWNjc3RhdGUKKyAqIEBxdWlya3M6CQkJdG8gZGlmZmVyZW50aWF0ZSBJUHMKKyAqLwor c3RydWN0IHN5bnBzX3BsYXRmb3JtX2RhdGEgeworCWludCAoKnN5bnBzX2VkYWNfZ2V0ZXJyb3Jf aW5mbykodm9pZCBfX2lvbWVtICpiYXNlLAorCQkJCQlzdHJ1Y3Qgc3lucHNfZWNjX3N0YXR1cyAq cCk7CisJZW51bSBtZW1fdHlwZSAoKnN5bnBzX2VkYWNfZ2V0X210eXBlKShjb25zdCB2b2lkIF9f aW9tZW0gKmJhc2UpOworCWVudW0gZGV2X3R5cGUgKCpzeW5wc19lZGFjX2dldF9kdHlwZSkoY29u c3Qgdm9pZCBfX2lvbWVtICpiYXNlKTsKKwlib29sICgqc3lucHNfZWRhY19nZXRfZWNjc3RhdGUp KHZvaWQgX19pb21lbSAqYmFzZSk7CisJaW50IHF1aXJrczsKK307CisKKy8qKgogICogc3lucHNf ZWRhY19nZXRlcnJvcl9pbmZvIC0gR2V0IHRoZSBjdXJyZW50IGVjYyBlcnJvciBpbmZvCiAgKiBA YmFzZToJUG9pbnRlciB0byB0aGUgYmFzZSBhZGRyZXNzIG9mIHRoZSBkZHIgbWVtb3J5IGNvbnRy b2xsZXIKICAqIEBwOgkJUG9pbnRlciB0byB0aGUgc3lub3BzeXMgZWNjIHN0YXR1cyBzdHJ1Y3R1 cmUKQEAgLTI0Miw3ICsyNjIsOCBAQCBzdGF0aWMgdm9pZCBzeW5wc19lZGFjX2NoZWNrKHN0cnVj dCBtZW1fY3RsX2luZm8gKm1jaSkKIAlzdHJ1Y3Qgc3lucHNfZWRhY19wcml2ICpwcml2ID0gbWNp LT5wdnRfaW5mbzsKIAlpbnQgc3RhdHVzOwogCi0Jc3RhdHVzID0gc3lucHNfZWRhY19nZXRlcnJv cl9pbmZvKHByaXYtPmJhc2VhZGRyLCAmcHJpdi0+c3RhdCk7CisJc3RhdHVzID0gcHJpdi0+cF9k YXRhLT5zeW5wc19lZGFjX2dldGVycm9yX2luZm8ocHJpdi0+YmFzZWFkZHIsCisJCQkJCQkJJnBy aXYtPnN0YXQpOwogCWlmIChzdGF0dXMpCiAJCXJldHVybjsKIApAQCAtMzcyLDEwICszOTMsMTIg QEAgc3RhdGljIGludCBzeW5wc19lZGFjX2luaXRfY3Nyb3dzKHN0cnVjdCBtZW1fY3RsX2luZm8g Km1jaSkKIAkJZm9yIChqID0gMDsgaiA8IGNzaS0+bnJfY2hhbm5lbHM7IGorKykgewogCQkJZGlt bSAgICAgICAgICAgID0gY3NpLT5jaGFubmVsc1tqXS0+ZGltbTsKIAkJCWRpbW0tPmVkYWNfbW9k ZSA9IEVEQUNfRkxBR19TRUNERUQ7Ci0JCQlkaW1tLT5tdHlwZSAgICAgPSBzeW5wc19lZGFjX2dl dF9tdHlwZShwcml2LT5iYXNlYWRkcik7CisJCQlkaW1tLT5tdHlwZSAgICAgPSBwcml2LT5wX2Rh dGEtPnN5bnBzX2VkYWNfZ2V0X210eXBlKAorCQkJCQkJcHJpdi0+YmFzZWFkZHIpOwogCQkJZGlt bS0+bnJfcGFnZXMgID0gKHNpemUgPj4gUEFHRV9TSElGVCkgLyBjc2ktPm5yX2NoYW5uZWxzOwog CQkJZGltbS0+Z3JhaW4gICAgID0gU1lOUFNfRURBQ19FUlJfR1JBSU47Ci0JCQlkaW1tLT5kdHlw ZSAgICAgPSBzeW5wc19lZGFjX2dldF9kdHlwZShwcml2LT5iYXNlYWRkcik7CisJCQlkaW1tLT5k dHlwZSAgICAgPSBwcml2LT5wX2RhdGEtPnN5bnBzX2VkYWNfZ2V0X2R0eXBlKAorCQkJCQkJcHJp di0+YmFzZWFkZHIpOwogCQl9CiAJfQogCkBAIC00MjMsNiArNDQ2LDIxIEBAIHN0YXRpYyBpbnQg c3lucHNfZWRhY19tY19pbml0KHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwKIAlyZXR1cm4gc3Rh dHVzOwogfQogCitzdGF0aWMgY29uc3Qgc3RydWN0IHN5bnBzX3BsYXRmb3JtX2RhdGEgenlucV9l ZGFjX2RlZiA9IHsKKwkuc3lucHNfZWRhY19nZXRlcnJvcl9pbmZvCT0gc3lucHNfZWRhY19nZXRl cnJvcl9pbmZvLAorCS5zeW5wc19lZGFjX2dldF9tdHlwZQkJPSBzeW5wc19lZGFjX2dldF9tdHlw ZSwKKwkuc3lucHNfZWRhY19nZXRfZHR5cGUJCT0gc3lucHNfZWRhY19nZXRfZHR5cGUsCisJLnN5 bnBzX2VkYWNfZ2V0X2VjY3N0YXRlCT0gc3lucHNfZWRhY19nZXRfZWNjc3RhdGUsCisJLnF1aXJr cwkJCQk9IDAsCit9OworCitzdGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBzeW5wc19l ZGFjX21hdGNoW10gPSB7CisJeyAuY29tcGF0aWJsZSA9ICJ4bG54LHp5bnEtZGRyYy1hMDUiLCAu ZGF0YSA9ICh2b2lkICopJnp5bnFfZWRhY19kZWYgfSwKKwl7IC8qIGVuZCBvZiB0YWJsZSAqLyB9 Cit9OworCitNT0RVTEVfREVWSUNFX1RBQkxFKG9mLCBzeW5wc19lZGFjX21hdGNoKTsKKwogLyoq CiAgKiBzeW5wc19lZGFjX21jX3Byb2JlIC0gQ2hlY2sgY29udHJvbGxlciBhbmQgYmluZCBkcml2 ZXIKICAqIEBwZGV2OglQb2ludGVyIHRvIHRoZSBwbGF0Zm9ybV9kZXZpY2Ugc3RydWN0CkBAIC00 NDAsMTMgKzQ3OCwyMiBAQCBzdGF0aWMgaW50IHN5bnBzX2VkYWNfbWNfcHJvYmUoc3RydWN0IHBs YXRmb3JtX2RldmljZSAqcGRldikKIAlpbnQgcmM7CiAJc3RydWN0IHJlc291cmNlICpyZXM7CiAJ dm9pZCBfX2lvbWVtICpiYXNlYWRkcjsKKwljb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkICptYXRj aDsKKwljb25zdCBzdHJ1Y3Qgc3lucHNfcGxhdGZvcm1fZGF0YSAqcF9kYXRhOwogCiAJcmVzID0g cGxhdGZvcm1fZ2V0X3Jlc291cmNlKHBkZXYsIElPUkVTT1VSQ0VfTUVNLCAwKTsKIAliYXNlYWRk ciA9IGRldm1faW9yZW1hcF9yZXNvdXJjZSgmcGRldi0+ZGV2LCByZXMpOwogCWlmIChJU19FUlIo YmFzZWFkZHIpKQogCQlyZXR1cm4gUFRSX0VSUihiYXNlYWRkcik7CiAKLQlpZiAoIXN5bnBzX2Vk YWNfZ2V0X2VjY3N0YXRlKGJhc2VhZGRyKSkgeworCW1hdGNoID0gb2ZfbWF0Y2hfbm9kZShzeW5w c19lZGFjX21hdGNoLCBwZGV2LT5kZXYub2Zfbm9kZSk7CisJaWYgKCFtYXRjaCAmJiAhbWF0Y2gt PmRhdGEpIHsKKwkJZGV2X2VycigmcGRldi0+ZGV2LCAib2ZfbWF0Y2hfbm9kZSgpIGZhaWxlZFxu Iik7CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCXBfZGF0YSA9IChzdHJ1Y3Qgc3lucHNfcGxh dGZvcm1fZGF0YSAqKW1hdGNoLT5kYXRhOworCWlmICghKHBfZGF0YS0+c3lucHNfZWRhY19nZXRf ZWNjc3RhdGUoYmFzZWFkZHIpKSkgewogCQllZGFjX3ByaW50ayhLRVJOX0lORk8sIEVEQUNfTUMs ICJFQ0Mgbm90IGVuYWJsZWRcbiIpOwogCQlyZXR1cm4gLUVOWElPOwogCX0KQEAgLTQ2OCw2ICs1 MTUsOCBAQCBzdGF0aWMgaW50IHN5bnBzX2VkYWNfbWNfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2Rl dmljZSAqcGRldikKIAogCXByaXYgPSBtY2ktPnB2dF9pbmZvOwogCXByaXYtPmJhc2VhZGRyID0g YmFzZWFkZHI7CisJcHJpdi0+cF9kYXRhID0gbWF0Y2gtPmRhdGE7CisKIAlyYyA9IHN5bnBzX2Vk YWNfbWNfaW5pdChtY2ksIHBkZXYpOwogCWlmIChyYykgewogCQllZGFjX3ByaW50ayhLRVJOX0VS UiwgRURBQ19NQywKQEAgLTUxMSwxMyArNTYwLDYgQEAgc3RhdGljIGludCBzeW5wc19lZGFjX21j X3JlbW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQogCXJldHVybiAwOwogfQogCi1z dGF0aWMgY29uc3Qgc3RydWN0IG9mX2RldmljZV9pZCBzeW5wc19lZGFjX21hdGNoW10gPSB7Ci0J eyAuY29tcGF0aWJsZSA9ICJ4bG54LHp5bnEtZGRyYy1hMDUiLCB9LAotCXsgLyogZW5kIG9mIHRh YmxlICovIH0KLX07Ci0KLU1PRFVMRV9ERVZJQ0VfVEFCTEUob2YsIHN5bnBzX2VkYWNfbWF0Y2gp OwotCiBzdGF0aWMgc3RydWN0IHBsYXRmb3JtX2RyaXZlciBzeW5wc19lZGFjX21jX2RyaXZlciA9 IHsKIAkuZHJpdmVyID0gewogCQkgICAubmFtZSA9ICJzeW5vcHN5cy1lZGFjIiwK