From mboxrd@z Thu Jan 1 00:00:00 1970 From: Brian Masney Subject: [PATCH 6/6] drm/msm/gpu: add ocmem init/cleanup functions Date: Sun, 16 Jun 2019 09:29:30 -0400 Message-ID: <20190616132930.6942-7-masneyb@onstation.org> References: <20190616132930.6942-1-masneyb@onstation.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190616132930.6942-1-masneyb-1iNe0GrtECGEi8DpZVb4nw@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: agross-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, david.brown-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, sean-p7yTbzM4H96eqtR555YLDQ@public.gmane.org, robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org Cc: mark.rutland-5wv7dgnIgG8@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, jonathan-eSc4qw6YbEQ@public.gmane.org, airlied-cv59FeDIM0c@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, bjorn.andersson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, daniel-/w4YWyX8dFk@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: devicetree@vger.kernel.org VGhlIGZpbGVzIGEzeHhfZ3B1LmMgYW5kIGE0eHhfZ3B1LmMgaGF2ZSBpZmRlZnMgZm9yIHRoZSBP Q01FTSBzdXBwb3J0CnRoYXQgd2FzIG1pc3NpbmcgdXBzdHJlYW0uIEFkZCB0d28gbmV3IGZ1bmN0 aW9ucyAoYWRyZW5vX2dwdV9vY21lbV9pbml0CmFuZCBhZHJlbm9fZ3B1X29jbWVtX2NsZWFudXAp IHRoYXQgcmVtb3ZlcyBzb21lIGR1cGxpY2F0ZWQgY29kZS4gV2UgYWxzbwpuZWVkIHRvIGNoYW5n ZSB0aGUgaWZkZWYgY2hlY2sgZm9yIENPTkZJR19NU01fT0NNRU0gdG8gQ09ORklHX1FDT01fT0NN RU0Kbm93IHRoYXQgT0NNRU0gc3VwcG9ydCBpcyB1cHN0cmVhbS4KClNpZ25lZC1vZmYtYnk6IEJy aWFuIE1hc25leSA8bWFzbmV5YkBvbnN0YXRpb24ub3JnPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9t c20vYWRyZW5vL2EzeHhfZ3B1LmMgICB8IDMzICsrKysrKystLS0tLS0tLS0tLS0tCiBkcml2ZXJz L2dwdS9kcm0vbXNtL2FkcmVuby9hM3h4X2dwdS5oICAgfCAgMyArLQogZHJpdmVycy9ncHUvZHJt L21zbS9hZHJlbm8vYTR4eF9ncHUuYyAgIHwgMzAgKysrKysrLS0tLS0tLS0tLS0tCiBkcml2ZXJz L2dwdS9kcm0vbXNtL2FkcmVuby9hNHh4X2dwdS5oICAgfCAgMyArLQogZHJpdmVycy9ncHUvZHJt L21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jIHwgNDEgKysrKysrKysrKysrKysrKysrKysrKysrKwog ZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5oIHwgMTAgKysrKysrCiA2IGZp bGVzIGNoYW5nZWQsIDc0IGluc2VydGlvbnMoKyksIDQ2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2EzeHhfZ3B1LmMgYi9kcml2ZXJzL2dwdS9k cm0vbXNtL2FkcmVuby9hM3h4X2dwdS5jCmluZGV4IGMzYjRiYzZlNDE1NS4uNzI3MjBiYjJhY2Ex IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hM3h4X2dwdS5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2EzeHhfZ3B1LmMKQEAgLTE3LDEwICsxNyw2IEBA CiAgKiB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vu c2VzLz4uCiAgKi8KIAotI2lmZGVmIENPTkZJR19NU01fT0NNRU0KLSMgIGluY2x1ZGUgPG1hY2gv b2NtZW0uaD4KLSNlbmRpZgotCiAjaW5jbHVkZSAiYTN4eF9ncHUuaCIKIAogI2RlZmluZSBBM1hY X0lOVDBfTUFTSyBcCkBAIC0yMDYsOSArMjAyLDkgQEAgc3RhdGljIGludCBhM3h4X2h3X2luaXQo c3RydWN0IG1zbV9ncHUgKmdwdSkKIAkJZ3B1X3dyaXRlKGdwdSwgUkVHX0EzWFhfUkJCTV9HUFIw X0NUTCwgMHgwMDAwMDAwMCk7CiAKIAkvKiBTZXQgdGhlIE9DTUVNIGJhc2UgYWRkcmVzcyBmb3Ig QTMzMCwgZXRjICovCi0JaWYgKGEzeHhfZ3B1LT5vY21lbV9oZGwpIHsKKwlpZiAoYTN4eF9ncHUt Pm9jbWVtLmhkbCkgewogCQlncHVfd3JpdGUoZ3B1LCBSRUdfQTNYWF9SQl9HTUVNX0JBU0VfQURE UiwKLQkJCSh1bnNpZ25lZCBpbnQpKGEzeHhfZ3B1LT5vY21lbV9iYXNlID4+IDE0KSk7CisJCQko dW5zaWduZWQgaW50KShhM3h4X2dwdS0+b2NtZW0uYmFzZSA+PiAxNCkpOwogCX0KIAogCS8qIFR1 cm4gb24gcGVyZm9ybWFuY2UgY291bnRlcnM6ICovCkBAIC0zMjksMTAgKzMyNSw3IEBAIHN0YXRp YyB2b2lkIGEzeHhfZGVzdHJveShzdHJ1Y3QgbXNtX2dwdSAqZ3B1KQogCiAJYWRyZW5vX2dwdV9j bGVhbnVwKGFkcmVub19ncHUpOwogCi0jaWZkZWYgQ09ORklHX01TTV9PQ01FTQotCWlmIChhM3h4 X2dwdS0+b2NtZW1fYmFzZSkKLQkJb2NtZW1fZnJlZShPQ01FTV9HUkFQSElDUywgYTN4eF9ncHUt Pm9jbWVtX2hkbCk7Ci0jZW5kaWYKKwlhZHJlbm9fZ3B1X29jbWVtX2NsZWFudXAoJmEzeHhfZ3B1 LT5vY21lbSk7CiAKIAlrZnJlZShhM3h4X2dwdSk7CiB9CkBAIC01MDcsMTcgKzUwMCwxMCBAQCBz dHJ1Y3QgbXNtX2dwdSAqYTN4eF9ncHVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCiAJ LyogaWYgbmVlZGVkLCBhbGxvY2F0ZSBnbWVtOiAqLwogCWlmIChhZHJlbm9faXNfYTMzMChhZHJl bm9fZ3B1KSkgewotI2lmZGVmIENPTkZJR19NU01fT0NNRU0KLQkJLyogVE9ETyB0aGlzIGlzIGRp ZmZlcmVudC9taXNzaW5nIHVwc3RyZWFtOiAqLwotCQlzdHJ1Y3Qgb2NtZW1fYnVmICpvY21lbV9o ZGwgPQotCQkJCW9jbWVtX2FsbG9jYXRlKE9DTUVNX0dSQVBISUNTLCBhZHJlbm9fZ3B1LT5nbWVt KTsKLQotCQlhM3h4X2dwdS0+b2NtZW1faGRsID0gb2NtZW1faGRsOwotCQlhM3h4X2dwdS0+b2Nt ZW1fYmFzZSA9IG9jbWVtX2hkbC0+YWRkcjsKLQkJYWRyZW5vX2dwdS0+Z21lbSA9IG9jbWVtX2hk bC0+bGVuOwotCQlEQkcoInVzaW5nICVkSyBvZiBPQ01FTSBhdCAweCUwOHgiLCBhZHJlbm9fZ3B1 LT5nbWVtIC8gMTAyNCwKLQkJCQlhM3h4X2dwdS0+b2NtZW1fYmFzZSk7Ci0jZW5kaWYKKwkJcmV0 ID0gYWRyZW5vX2dwdV9vY21lbV9pbml0KCZhZHJlbm9fZ3B1LT5iYXNlLnBkZXYtPmRldiwKKwkJ CQkJICAgIGFkcmVub19ncHUsICZhM3h4X2dwdS0+b2NtZW0pOworCQlpZiAocmV0KQorCQkJZ290 byBmYWlsOwogCX0KIAogCWlmICghZ3B1LT5hc3BhY2UpIHsKQEAgLTUzMCwxMSArNTE2LDE0IEBA IHN0cnVjdCBtc21fZ3B1ICphM3h4X2dwdV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJ CSAqLwogCQlEUk1fREVWX0VSUk9SKGRldi0+ZGV2LCAiTm8gbWVtb3J5IHByb3RlY3Rpb24gd2l0 aG91dCBJT01NVVxuIik7CiAJCXJldCA9IC1FTlhJTzsKLQkJZ290byBmYWlsOworCQlnb3RvIGZh aWxfY2xlYW51cF9vY21lbTsKIAl9CiAKIAlyZXR1cm4gZ3B1OwogCitmYWlsX2NsZWFudXBfb2Nt ZW06CisJYWRyZW5vX2dwdV9vY21lbV9jbGVhbnVwKCZhM3h4X2dwdS0+b2NtZW0pOworCiBmYWls OgogCWlmIChhM3h4X2dwdSkKIAkJYTN4eF9kZXN0cm95KCZhM3h4X2dwdS0+YmFzZS5iYXNlKTsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2EzeHhfZ3B1LmggYi9kcml2 ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hM3h4X2dwdS5oCmluZGV4IGFiNjBkYzllMzQ0ZS4uNzI3 YzM0ZjM4ZjllIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hM3h4X2dw dS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2EzeHhfZ3B1LmgKQEAgLTMwLDgg KzMwLDcgQEAgc3RydWN0IGEzeHhfZ3B1IHsKIAlzdHJ1Y3QgYWRyZW5vX2dwdSBiYXNlOwogCiAJ LyogaWYgT0NNRU0gaXMgdXNlZCBmb3IgR01FTTogKi8KLQl1aW50MzJfdCBvY21lbV9iYXNlOwot CXZvaWQgKm9jbWVtX2hkbDsKKwlzdHJ1Y3QgYWRyZW5vX29jbWVtIG9jbWVtOwogfTsKICNkZWZp bmUgdG9fYTN4eF9ncHUoeCkgY29udGFpbmVyX29mKHgsIHN0cnVjdCBhM3h4X2dwdSwgYmFzZSkK IApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTR4eF9ncHUuYyBiL2Ry aXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E0eHhfZ3B1LmMKaW5kZXggYWIyYjc1MjU2NmQ4Li5i OGY4MjUxMDc3OTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E0eHhf Z3B1LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTR4eF9ncHUuYwpAQCAtMiw5 ICsyLDYgQEAKIC8qIENvcHlyaWdodCAoYykgMjAxNCBUaGUgTGludXggRm91bmRhdGlvbi4gQWxs IHJpZ2h0cyByZXNlcnZlZC4KICAqLwogI2luY2x1ZGUgImE0eHhfZ3B1LmgiCi0jaWZkZWYgQ09O RklHX01TTV9PQ01FTQotIyAgaW5jbHVkZSA8c29jL3Fjb20vb2NtZW0uaD4KLSNlbmRpZgogCiAj ZGVmaW5lIEE0WFhfSU5UMF9NQVNLIFwKIAkoQTRYWF9JTlQwX1JCQk1fQUhCX0VSUk9SIHwgICAg ICAgIFwKQEAgLTE4OCw3ICsxODUsNyBAQCBzdGF0aWMgaW50IGE0eHhfaHdfaW5pdChzdHJ1Y3Qg bXNtX2dwdSAqZ3B1KQogCQkJKDEgPDwgMzApIHwgMHhGRkZGKTsKIAogCWdwdV93cml0ZShncHUs IFJFR19BNFhYX1JCX0dNRU1fQkFTRV9BRERSLAotCQkJKHVuc2lnbmVkIGludCkoYTR4eF9ncHUt Pm9jbWVtX2Jhc2UgPj4gMTQpKTsKKwkJCSh1bnNpZ25lZCBpbnQpKGE0eHhfZ3B1LT5vY21lbS5i YXNlID4+IDE0KSk7CiAKIAkvKiBUdXJuIG9uIHBlcmZvcm1hbmNlIGNvdW50ZXJzOiAqLwogCWdw dV93cml0ZShncHUsIFJFR19BNFhYX1JCQk1fUEVSRkNUUl9DVEwsIDB4MDEpOwpAQCAtMzE4LDEw ICszMTUsNyBAQCBzdGF0aWMgdm9pZCBhNHh4X2Rlc3Ryb3koc3RydWN0IG1zbV9ncHUgKmdwdSkK IAogCWFkcmVub19ncHVfY2xlYW51cChhZHJlbm9fZ3B1KTsKIAotI2lmZGVmIENPTkZJR19NU01f T0NNRU0KLQlpZiAoYTR4eF9ncHUtPm9jbWVtX2Jhc2UpCi0JCW9jbWVtX2ZyZWUoT0NNRU1fR1JB UEhJQ1MsIGE0eHhfZ3B1LT5vY21lbV9oZGwpOwotI2VuZGlmCisJYWRyZW5vX2dwdV9vY21lbV9j bGVhbnVwKCZhNHh4X2dwdS0+b2NtZW0pOwogCiAJa2ZyZWUoYTR4eF9ncHUpOwogfQpAQCAtNTc4 LDE3ICs1NzIsMTAgQEAgc3RydWN0IG1zbV9ncHUgKmE0eHhfZ3B1X2luaXQoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKIAogCS8qIGlmIG5lZWRlZCwgYWxsb2NhdGUgZ21lbTogKi8KIAlpZiAoYWRy ZW5vX2lzX2E0eHgoYWRyZW5vX2dwdSkpIHsKLSNpZmRlZiBDT05GSUdfTVNNX09DTUVNCi0JCS8q IFRPRE8gdGhpcyBpcyBkaWZmZXJlbnQvbWlzc2luZyB1cHN0cmVhbTogKi8KLQkJc3RydWN0IG9j bWVtX2J1ZiAqb2NtZW1faGRsID0KLQkJCQlvY21lbV9hbGxvY2F0ZShPQ01FTV9HUkFQSElDUywg YWRyZW5vX2dwdS0+Z21lbSk7Ci0KLQkJYTR4eF9ncHUtPm9jbWVtX2hkbCA9IG9jbWVtX2hkbDsK LQkJYTR4eF9ncHUtPm9jbWVtX2Jhc2UgPSBvY21lbV9oZGwtPmFkZHI7Ci0JCWFkcmVub19ncHUt PmdtZW0gPSBvY21lbV9oZGwtPmxlbjsKLQkJREJHKCJ1c2luZyAlZEsgb2YgT0NNRU0gYXQgMHgl MDh4IiwgYWRyZW5vX2dwdS0+Z21lbSAvIDEwMjQsCi0JCQkJYTR4eF9ncHUtPm9jbWVtX2Jhc2Up OwotI2VuZGlmCisJCXJldCA9IGFkcmVub19ncHVfb2NtZW1faW5pdChkZXYtPmRldiwgYWRyZW5v X2dwdSwKKwkJCQkJICAgICZhNHh4X2dwdS0+b2NtZW0pOworCQlpZiAocmV0KQorCQkJZ290byBm YWlsOwogCX0KIAogCWlmICghZ3B1LT5hc3BhY2UpIHsKQEAgLTYwMSwxMSArNTg4LDE0IEBAIHN0 cnVjdCBtc21fZ3B1ICphNHh4X2dwdV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCSAq LwogCQlEUk1fREVWX0VSUk9SKGRldi0+ZGV2LCAiTm8gbWVtb3J5IHByb3RlY3Rpb24gd2l0aG91 dCBJT01NVVxuIik7CiAJCXJldCA9IC1FTlhJTzsKLQkJZ290byBmYWlsOworCQlnb3RvIGZhaWxf Y2xlYW51cF9vY21lbTsKIAl9CiAKIAlyZXR1cm4gZ3B1OwogCitmYWlsX2NsZWFudXBfb2NtZW06 CisJYWRyZW5vX2dwdV9vY21lbV9jbGVhbnVwKCZhNHh4X2dwdS0+b2NtZW0pOworCiBmYWlsOgog CWlmIChhNHh4X2dwdSkKIAkJYTR4eF9kZXN0cm95KCZhNHh4X2dwdS0+YmFzZS5iYXNlKTsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E0eHhfZ3B1LmggYi9kcml2ZXJz L2dwdS9kcm0vbXNtL2FkcmVuby9hNHh4X2dwdS5oCmluZGV4IGQ1MDYzMTFlZTI0MC4uYTAxNDQ4 Y2JhMmVhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNHh4X2dwdS5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E0eHhfZ3B1LmgKQEAgLTE2LDggKzE2 LDcgQEAgc3RydWN0IGE0eHhfZ3B1IHsKIAlzdHJ1Y3QgYWRyZW5vX2dwdSBiYXNlOwogCiAJLyog aWYgT0NNRU0gaXMgdXNlZCBmb3IgR01FTTogKi8KLQl1aW50MzJfdCBvY21lbV9iYXNlOwotCXZv aWQgKm9jbWVtX2hkbDsKKwlzdHJ1Y3QgYWRyZW5vX29jbWVtIG9jbWVtOwogfTsKICNkZWZpbmUg dG9fYTR4eF9ncHUoeCkgY29udGFpbmVyX29mKHgsIHN0cnVjdCBhNHh4X2dwdSwgYmFzZSkKIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jIGIvZHJp dmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jCmluZGV4IDZmN2Y0MTE0YWZjZi4u ZTBhOTQwOWM4YTMyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJl bm9fZ3B1LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jCkBA IC0yOSw2ICsyOSwxMCBAQAogI2luY2x1ZGUgIm1zbV9nZW0uaCIKICNpbmNsdWRlICJtc21fbW11 LmgiCiAKKyNpZmRlZiBDT05GSUdfUUNPTV9PQ01FTQorIyAgaW5jbHVkZSA8c29jL3Fjb20vb2Nt ZW0uaD4KKyNlbmRpZgorCiBzdGF0aWMgYm9vbCB6YXBfYXZhaWxhYmxlID0gdHJ1ZTsKIAogc3Rh dGljIGludCB6YXBfc2hhZGVyX2xvYWRfbWR0KHN0cnVjdCBtc21fZ3B1ICpncHUsIGNvbnN0IGNo YXIgKmZ3bmFtZSwKQEAgLTg5Nyw2ICs5MDEsNDMgQEAgc3RhdGljIGludCBhZHJlbm9fZ2V0X3B3 cmxldmVscyhzdHJ1Y3QgZGV2aWNlICpkZXYsCiAJcmV0dXJuIDA7CiB9CiAKK2ludCBhZHJlbm9f Z3B1X29jbWVtX2luaXQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgYWRyZW5vX2dwdSAqYWRy ZW5vX2dwdSwKKwkJCSAgc3RydWN0IGFkcmVub19vY21lbSAqYWRyZW5vX29jbWVtKQoreworI2lm ZGVmIENPTkZJR19RQ09NX09DTUVNCisJc3RydWN0IG9jbWVtX2J1ZiAqb2NtZW1faGRsOworCXN0 cnVjdCBvY21lbSAqb2NtZW07CisKKwlvY21lbSA9IG9mX2dldF9vY21lbShkZXYpOworCWlmICgh b2NtZW0pIHsKKwkJLyogVGhpcyBpcyBhbiBvcHRpb25hbCBwcm9wZXJ0eSBzbyByZXR1cm4gc3Vj Y2Vzcy4gKi8KKwkJcmV0dXJuIDA7CisJfQorCisJb2NtZW1faGRsID0gb2NtZW1fYWxsb2NhdGUo b2NtZW0sIE9DTUVNX0dSQVBISUNTLCBhZHJlbm9fZ3B1LT5nbWVtKTsKKwlpZiAoSVNfRVJSKG9j bWVtX2hkbCkpCisJCXJldHVybiBQVFJfRVJSKG9jbWVtX2hkbCk7CisKKwlhZHJlbm9fb2NtZW0t Pm9jbWVtID0gb2NtZW07CisJYWRyZW5vX29jbWVtLT5iYXNlID0gb2NtZW1faGRsLT5hZGRyOwor CWFkcmVub19vY21lbS0+aGRsID0gb2NtZW1faGRsOworCWFkcmVub19ncHUtPmdtZW0gPSBvY21l bV9oZGwtPmxlbjsKKwlEQkcoInVzaW5nICVkSyBvZiBPQ01FTSBhdCAweCUwOHgiLCBhZHJlbm9f Z3B1LT5nbWVtIC8gMTAyNCwKKwkgICAgYWRyZW5vX29jbWVtLT5iYXNlKTsKKyNlbmRpZgorCisJ cmV0dXJuIDA7Cit9CisKK3ZvaWQgYWRyZW5vX2dwdV9vY21lbV9jbGVhbnVwKHN0cnVjdCBhZHJl bm9fb2NtZW0gKmFkcmVub19vY21lbSkKK3sKKyNpZmRlZiBDT05GSUdfUUNPTV9PQ01FTQorCWlm IChhZHJlbm9fb2NtZW0tPmJhc2UpCisJCW9jbWVtX2ZyZWUoYWRyZW5vX29jbWVtLT5vY21lbSwg T0NNRU1fR1JBUEhJQ1MsCisJCQkgICBhZHJlbm9fb2NtZW0tPmhkbCk7CisjZW5kaWYKK30KKwog aW50IGFkcmVub19ncHVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLCBzdHJ1Y3QgcGxhdGZv cm1fZGV2aWNlICpwZGV2LAogCQlzdHJ1Y3QgYWRyZW5vX2dwdSAqYWRyZW5vX2dwdSwKIAkJY29u c3Qgc3RydWN0IGFkcmVub19ncHVfZnVuY3MgKmZ1bmNzLCBpbnQgbnJfcmluZ3MpCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmggYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmgKaW5kZXggMDkyNTYwNmVjOWI1Li4xY2QxMTU3 MDMyM2IgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19ncHUu aAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmgKQEAgLTEzNiw2 ICsxMzYsMTIgQEAgc3RydWN0IGFkcmVub19ncHUgewogfTsKICNkZWZpbmUgdG9fYWRyZW5vX2dw dSh4KSBjb250YWluZXJfb2YoeCwgc3RydWN0IGFkcmVub19ncHUsIGJhc2UpCiAKK3N0cnVjdCBh ZHJlbm9fb2NtZW0geworCXN0cnVjdCBvY21lbSAqb2NtZW07CisJdWludDMyX3QgYmFzZTsKKwl2 b2lkICpoZGw7Cit9OworCiAvKiBwbGF0Zm9ybSBjb25maWcgZGF0YSAoaWUuIGZyb20gRFQsIG9y IHBkYXRhKSAqLwogc3RydWN0IGFkcmVub19wbGF0Zm9ybV9jb25maWcgewogCXN0cnVjdCBhZHJl bm9fcmV2IHJldjsKQEAgLTI0MSw2ICsyNDcsMTAgQEAgdm9pZCBhZHJlbm9fZHVtcChzdHJ1Y3Qg bXNtX2dwdSAqZ3B1KTsKIHZvaWQgYWRyZW5vX3dhaXRfcmluZyhzdHJ1Y3QgbXNtX3JpbmdidWZm ZXIgKnJpbmcsIHVpbnQzMl90IG5kd29yZHMpOwogc3RydWN0IG1zbV9yaW5nYnVmZmVyICphZHJl bm9fYWN0aXZlX3Jpbmcoc3RydWN0IG1zbV9ncHUgKmdwdSk7CiAKK2ludCBhZHJlbm9fZ3B1X29j bWVtX2luaXQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgYWRyZW5vX2dwdSAqYWRyZW5vX2dw dSwKKwkJCSAgc3RydWN0IGFkcmVub19vY21lbSAqb2NtZW0pOwordm9pZCBhZHJlbm9fZ3B1X29j bWVtX2NsZWFudXAoc3RydWN0IGFkcmVub19vY21lbSAqb2NtZW0pOworCiBpbnQgYWRyZW5vX2dw dV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sIHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYsCiAJCXN0cnVjdCBhZHJlbm9fZ3B1ICpncHUsIGNvbnN0IHN0cnVjdCBhZHJlbm9fZ3B1X2Z1 bmNzICpmdW5jcywKIAkJaW50IG5yX3JpbmdzKTsKLS0gCjIuMjAuMQoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRnJlZWRyZW5vIG1haWxpbmcgbGlzdApG cmVlZHJlbm9AbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vZnJlZWRyZW5v