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: [4/5] EDAC, dsm_edac: Wrap ACPI DSM methods for address translation From: Borislav Petkov Message-Id: <20181009151455.GD16287@zn.tnic> Date: Tue, 9 Oct 2018 17:14:55 +0200 To: "Luck, Tony" Cc: "Rafael J. Wysocki" , Qiuxu Zhuo , Aristeu Rozanski , Mauro Carvalho Chehab , linux-edac@vger.kernel.org, linux-acpi@vger.kernel.org List-ID: T24gTW9uLCBPY3QgMDgsIDIwMTggYXQgMDk6NTc6MDZBTSAtMDcwMCwgTHVjaywgVG9ueSB3cm90 ZToKPiBUaGlzIHNob3VsZG4ndCBjb25mbGljdCB3aXRoIG90aGVyIEJJT1MgInZhbHVlIGFkZCIg Y29kZSBmb3IgZmlybXdhcmUKPiBmaXJzdCBtb2RlLCBldGMuCgoidmFsdWUgYWRkIiwgeWVhaC4g U28gc29tZXRoaW5nIGhhcyBiZWVuIGFkZGVkIC0gZHVubm8gaWYgaXQgaXMgb2YgdmFsdWUuCgo+ ICsvKioKPiArICogYWR4bF9nZXRfY29tcG9uZW50X25hbWVzIC0gZ2V0IGxpc3Qgb2YgbWVtb3J5 IGNvbXBvbmVudCBuYW1lcwo+ICsgKiBSZXR1cm5zIE5VTEwgdGVybWluYXRlZCBsaXN0IG9mIHN0 cmluZyBuYW1lcwo+ICsgKgo+ICsgKiBHaXZlIHRoZSBjYWxsZXIgYSBwb2ludGVyIHRvIHRoZSBs aXN0IG9mIG1lbW9yeSBjb21wb25lbnQgbmFtZXMKPiArICogZS5nLiB7ICJTeXN0ZW1BZGRyZXNz IiwgIlByb2Nlc3NvclNvY2tldElkIiwgIkNoYW5uZWxJZCIsIC4uLiBOVUxMIH0KPiArICogQ2Fs bGVyIHNob3VsZCBjb3VudCBob3cgbWFueSBzdHJpbmdzIGluIG9yZGVyIHRvIGFsbG9jYXRlIGEg YnVmZmVyCj4gKyAqIGZvciB0aGUgcmV0dXJuIGZyb20gYWR4bF9kZWNvZGUoKQoKTml0OiBwbGVh c2UgZW5kIGFsbCB5b3VyIGNvbW1lbnRzJyBzZW50ZW5jZXMgd2l0aCBhIGZ1bGwgc3RvcC4KCk5v dCBzbyBuaXR0eTogdGhlcmUncyBubyBndWFyYW50ZWUgdGhhdCB0aGUgb3JkZXIgYW5kIHN0cmlu ZyBmb3JtYXR0aW5nIG9mCmFsbCB0aG9zZSBpcyBzdGFibGUsIHJpZ2h0PyBJIHRoaW5rIHlvdSBz aG91bGQgc3RhdGUgdGhhdCBpbiB0aGUgZHJpdmVyCnNvIHRoYXQgcGVvcGxlIGRvbid0IGdldCBj cmF6eSBpZGVhcyBvZiByZWx5aW5nIG9uIGFueSBvZiB0aGlzLiBJdCBpcyBhCmJlc3QgZWZmb3J0 IGFuZCBubyBtb3JlLCBJJ2QgYXNzdW1lLgoKQWxzbywgeW91IGNvdWxkIHBvaW50IHRvIGhvdyBz a3hfZWRhYyBpcyB1c2luZyB0aGlzIGludGVyZmFjZSBzbyB0aGF0CnBlb3BsZSBjYW4gZ2V0IGEg Z29vZCBleGFtcGxlLgoKPiArICovCj4gK2NoYXIgKiphZHhsX2dldF9jb21wb25lbnRfbmFtZXMo dm9pZCkKPiArewo+ICsJcmV0dXJuIGFkeGxfY29tcG9uZW50X25hbWVzOwoKU2hvdWxkIHRoaXMg YXJyYXkgYmUgaW1tdXRhYmxlPyBJLmUuLCBjb25zdCBjaGFyICogY29uc3QuIFNvIHRoYXQgcGVv cGxlCmRvbid0IGFjY2lkZW50YWxseSBvdmVyd3JpdGUgaXQgb3IgcG9rZSBmdW5ueSBjaGFycyBp biBpdC4KCj4gK30KPiArRVhQT1JUX1NZTUJPTF9HUEwoYWR4bF9nZXRfY29tcG9uZW50X25hbWVz KTsKPiArCj4gKy8qKgo+ICsgKiBhZHhsX2RlY29kZSAtIGFzayBCSU9TIHRvIGRlY29kZSBhIHN5 c3RlbSBhZGRyZXNzIHRvIG1lbW9yeSBhZGRyZXNzCj4gKyAqIEBhZGRyOiB0aGUgYWRkcmVzcyB0 byBkZWNvZGUKPiArICogQGNvbXBvbmVudF92YWx1ZXM6IHBvaW50ZXIgdG8gYXJyYXkgb2YgdmFs dWVzIGZvciBlYWNoIGNvbXBvbmVudAo+ICsgKiBSZXR1cm5zIDAgb24gc3VjY2VzcywgbmVnYXRp dmUgZXJyb3IgY29kZSBvdGhlcndpc2UKPiArICoKPiArICogVGhlIGluZGV4IG9mIGVhY2ggdmFs dWUgcmV0dXJuZWQgaW4gdGhlIGFycmF5IG1hdGNoZXMgdGhlIGluZGV4IG9mCj4gKyAqIGVhY2gg Y29tcG9uZW50IG5hbWUgcmV0dXJuZWQgYnkgYWR4bF9nZXRfY29tcG9uZW50X25hbWVzKCkuCj4g KyAqIENvbXBvbmVudHMgdGhhdCBhcmUgbm90IGRlZmluZWQgZm9yIHRoaXMgYWRkcmVzcyB0cmFu c2xhdGlvbiAoZS5nLgo+ICsgKiBtaXJyb3IgY2hhbm5lbCBudW1iZXIgZm9yIGEgbm9uLW1pcnJv cmVkIGFkZHJlc3MpIGFyZSBzZXQgdG8gfjB1bGwKPiArICovCj4gK2ludCBhZHhsX2RlY29kZSh1 NjQgYWRkciwgdTY0IGNvbXBvbmVudF92YWx1ZXNbXSkKPiArewo+ICsJdW5pb24gYWNwaV9vYmpl Y3QgYXJndjRbMl0sICpyZXN1bHRzLCAqcjsKPiArCWludCBpLCBjbnQ7Cj4gKwo+ICsJaWYgKCFh ZHhsX2NvbXBvbmVudF9uYW1lcykKPiArCQlyZXR1cm4gLUVPUE5PVFNVUFA7Cj4gKwo+ICsJYXJn djRbMF0udHlwZSA9IEFDUElfVFlQRV9QQUNLQUdFOwo+ICsJYXJndjRbMF0ucGFja2FnZS5jb3Vu dCA9IDE7Cj4gKwlhcmd2NFswXS5wYWNrYWdlLmVsZW1lbnRzID0gJmFyZ3Y0WzFdOwo+ICsJYXJn djRbMV0uaW50ZWdlci50eXBlID0gQUNQSV9UWVBFX0lOVEVHRVI7Cj4gKwlhcmd2NFsxXS5pbnRl Z2VyLnZhbHVlID0gYWRkcjsKPiArCj4gKwlyZXN1bHRzID0gYWR4bF9kc20oQURYTF9JRFhfRk9S V0FSRF9UUkFOU0xBVEUsIGFyZ3Y0KTsKPiArCgpTdXBlcmZsdW91cyBuZXdsaW5lLgoKPiArCWlm ICghcmVzdWx0cykKPiArCQlyZXR1cm4gLUVJTlZBTDsKPiArCj4gKwlyID0gcmVzdWx0cy0+cGFj a2FnZS5lbGVtZW50cyArIDE7Cj4gKwljbnQgPSByLT5wYWNrYWdlLmNvdW50Owo+ICsJciA9IHIt PnBhY2thZ2UuZWxlbWVudHM7Cj4gKwo+ICsJZm9yIChpID0gMDsgaSA8IGNudDsgaSsrKQo+ICsJ CWNvbXBvbmVudF92YWx1ZXNbaV0gPSByW2ldLmludGVnZXIudmFsdWU7Cj4gKwo+ICsJQUNQSV9G UkVFKHJlc3VsdHMpOwo+ICsKPiArCXJldHVybiAwOwo+ICt9Cj4gK0VYUE9SVF9TWU1CT0xfR1BM KGFkeGxfZGVjb2RlKTsKPiArCj4gK3N0YXRpYyBib29sIGFkeGxfZGV0ZWN0KHZvaWQpCj4gK3sK PiArCWNoYXIgKnBhdGggPSBBQ1BJX0FEWExfUEFUSDsKPiArCXVuaW9uIGFjcGlfb2JqZWN0ICpw Owo+ICsJYWNwaV9zdGF0dXMgc3RhdHVzOwo+ICsJaW50IGksIGNudDsKPiArCj4gKwlzdGF0dXMg PSBhY3BpX2dldF9oYW5kbGUoTlVMTCwgcGF0aCwgJmhhbmRsZSk7Cj4gKwlpZiAoQUNQSV9GQUlM VVJFKHN0YXR1cykpIHsKPiArCQlwcl9kZWJ1ZygiTm8gQUNQSSBoYW5kbGUgZm9yIHBhdGggJXNc biIsIHBhdGgpOwoKU2hvdWxkbid0IGFsbCB0aG9zZSBiZSBwcl9pbmZvPwoKV2UgaGFkIHRoZSBz YW1lIHByb2JsZW0gd2l0aCBlaW5qLmtvIGFuZCBub3Qga25vd2luZyB3aHkgaXQgd291bGRuJ3Qg bG9hZC4KCj4gKwkJcmV0dXJuIGZhbHNlOwo+ICsJfQo+ICsKPiArCWlmICghYWNwaV9oYXNfbWV0 aG9kKGhhbmRsZSwgIl9EU00iKSkgewo+ICsJCXByX2RlYnVnKCJObyBEU00gbWV0aG9kXG4iKTsK PiArCQlyZXR1cm4gZmFsc2U7Cj4gKwl9Cj4gKwo+ICsJaWYgKCFhY3BpX2NoZWNrX2RzbShoYW5k bGUsICZhZHhsX2d1aWQsIEFEWExfUkVWSVNJT04sCj4gKwkJCSAgICBBRFhMX0lEWF9HRVRfQURE Ul9QQVJBTVMgfAo+ICsJCQkgICAgQURYTF9JRFhfRk9SV0FSRF9UUkFOU0xBVEUpKSB7Cj4gKwkJ cHJfZGVidWcoIk5vIEFEWEwgRFNNIG1ldGhvZHNcbiIpOwo+ICsJCXJldHVybiBmYWxzZTsKPiAr CX0KPiArCj4gKwlwYXJhbXMgPSBhZHhsX2RzbShBRFhMX0lEWF9HRVRfQUREUl9QQVJBTVMsIE5V TEwpOwo+ICsJaWYgKCFwYXJhbXMpIHsKPiArCQlwcl9kZWJ1ZygiRmFpbGVkIHRvIGdldCBwYXJh bXNcbiIpOwo+ICsJCXJldHVybiBmYWxzZTsKPiArCX0KPiArCj4gKwlwID0gcGFyYW1zLT5wYWNr YWdlLmVsZW1lbnRzICsgMTsKPiArCWNudCA9IHAtPnBhY2thZ2UuY291bnQ7CgpJIGd1ZXNzIHlv dSBuZWVkIHRvIHNhbml0eS1jaGVjayB0aGF0IGNvdW50IC0gd2UgZG9uJ3QgdHJ1c3QgQklPUyBh bmQKeW91IGhhdmUgYSBmaXJtd2FyZS1jb250cm9sbGVkIGFsbG9jYXRpb24gc2l6ZS4KCj4gKwlw ID0gcC0+cGFja2FnZS5lbGVtZW50czsKPiArCj4gKwlhZHhsX2NvbXBvbmVudF9uYW1lcyA9IGtj YWxsb2MoY250ICsgMSwgc2l6ZW9mKGNoYXIgKiksIEdGUF9LRVJORUwpOwo+ICsJaWYgKCFhZHhs X2NvbXBvbmVudF9uYW1lcykgewo+ICsJCUFDUElfRlJFRShwYXJhbXMpOwo+ICsJCXJldHVybiBm YWxzZTsKPiArCX0KPiArCj4gKwlmb3IgKGkgPSAwOyBpIDwgY250OyBpKyspCj4gKwkJYWR4bF9j b21wb25lbnRfbmFtZXNbaV0gPSBwW2ldLnN0cmluZy5wb2ludGVyOwo+ICsKPiArCXJldHVybiB0 cnVlOwo+ICt9Cg==