From mboxrd@z Thu Jan 1 00:00:00 1970
From: Philipp Zabel
Subject: [PATCH v3 9/9] drm/imx: use PRG/PRE when possible
Date: Tue, 14 Mar 2017 11:38:48 +0100
Message-ID: <1489487928-26083-9-git-send-email-p.zabel@pengutronix.de>
References: <1489487928-26083-1-git-send-email-p.zabel@pengutronix.de>
Mime-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Return-path:
In-Reply-To: <1489487928-26083-1-git-send-email-p.zabel@pengutronix.de>
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Errors-To: dri-devel-bounces@lists.freedesktop.org
Sender: "dri-devel"
To: dri-devel@lists.freedesktop.org
Cc: Mark Rutland , devicetree@vger.kernel.org, patchwork-lst@pengutronix.de, Rob Herring , kernel@pengutronix.de
List-Id: devicetree@vger.kernel.org
RnJvbTogTHVjYXMgU3RhY2ggPGwuc3RhY2hAcGVuZ3V0cm9uaXguZGU+CgpBbGxvdyB0aGUgcGxh
bmVzIHRvIHVzZSB0aGUgUFJHL1BSRSB1bml0cyBhcyBsaW5lYXIgcHJlZmV0Y2hlcnMgd2hlbgpw
b3NzaWJsZS4gVGhpcyBpbXByb3ZlcyBEUkFNIGVmZmljaWVuY3kgYSBiaXQgYW5kIHJlZHVjZXMg
dGhlIGNoYW5jZQpmb3IgZGlzcGxheSB1bmRlcmZsb3cgd2hlbiB0aGUgbWVtb3J5IHN1YnN5c3Rl
bSBpcyB1bmRlciBsb2FkLgoKVGhpcyBkb2VzIG5vdCB5ZXQgc3VwcG9ydCBzY2FubmluZyBvdXQg
dGlsZWQgYnVmZmVycyBkaXJlY3RseSwgYXMgdGhpcwpuZWVkcyBtb3JlIHdvcmssIGJ1dCBpdCBh
bHJlYWR5IHdpcmVzIHVwIHRoZSBiYXNpYyBpbnRlcmFjdGlvbiBiZXR3ZWVuCmlteC1kcm0sIHRo
ZSBJUFV2MyBkcml2ZXIgYW5kIHRoZSBQUkcgYW5kIFBSRSBkcml2ZXJzLgoKU2lnbmVkLW9mZi1i
eTogTHVjYXMgU3RhY2ggPGwuc3RhY2hAcGVuZ3V0cm9uaXguZGU+ClNpZ25lZC1vZmYtYnk6IFBo
aWxpcHAgWmFiZWwgPHAuemFiZWxAcGVuZ3V0cm9uaXguZGU+Ci0tLQp2MzogRml4IG1vZHVsYXIg
YnVpbGQgKGV4cG9ydCBpcHVfcGxhbmVzX2Fzc2lnbl9wcmUgc3ltYm9sKQotLS0KIGRyaXZlcnMv
Z3B1L2RybS9pbXgvaW14LWRybS1jb3JlLmMgfCAgIDUgKysKIGRyaXZlcnMvZ3B1L2RybS9pbXgv
aW14LWRybS5oICAgICAgfCAgIDMgKwogZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5j
ICB8IDEyNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiAzIGZpbGVzIGNo
YW5nZWQsIDEyOSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Ry
aXZlcnMvZ3B1L2RybS9pbXgvaW14LWRybS1jb3JlLmMgYi9kcml2ZXJzL2dwdS9kcm0vaW14L2lt
eC1kcm0tY29yZS5jCmluZGV4IGE4ZjA5ZDM4YmRkYjQuLjllNzMxMGUwOWQwMjAgMTAwNjQ0Ci0t
LSBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaW14LWRybS1jb3JlLmMKKysrIGIvZHJpdmVycy9ncHUv
ZHJtL2lteC9pbXgtZHJtLWNvcmUuYwpAQCAtMTEwLDYgKzExMCwxMSBAQCBzdGF0aWMgaW50IGlt
eF9kcm1fYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJaWYgKHJldCkKIAkJ
cmV0dXJuIHJldDsKIAorCS8qIEFzc2lnbiBQUkcvUFJFIGNoYW5uZWxzIGFuZCBjaGVjayBpZiBh
bGwgY29uc3RyYWlucyBhcmUgc2F0aXNmaWVkLiAqLworCXJldCA9IGlwdV9wbGFuZXNfYXNzaWdu
X3ByZShkZXYsIHN0YXRlKTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCiAJcmV0dXJuIHJl
dDsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtZHJtLmggYi9kcml2
ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0uaAppbmRleCBjYzAwMzMzNDUwNWRjLi4yOTU0MzRiMTk5
ZGI5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0uaAorKysgYi9kcml2
ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0uaApAQCAtMzksNCArMzksNyBAQCBpbnQgaW14X2RybV9l
bmNvZGVyX3BhcnNlX29mKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sCiB2b2lkIGlteF9kcm1fY29u
bmVjdG9yX2Rlc3Ryb3koc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiB2b2lkIGlt
eF9kcm1fZW5jb2Rlcl9kZXN0cm95KHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2Rlcik7CiAKK2lu
dCBpcHVfcGxhbmVzX2Fzc2lnbl9wcmUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKKwkJCSAgc3Ry
dWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKTsKKwogI2VuZGlmIC8qIF9JTVhfRFJNX0hfICov
CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmMgYi9kcml2ZXJz
L2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmMKaW5kZXggY2VjYjhlYmE1YzMyMC4uZDYzZTg1M2Ew
MzAwNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5jCisrKyBi
L2RyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuYwpAQCAtMjMsNiArMjMsMTcgQEAKICNp
bmNsdWRlICJ2aWRlby9pbXgtaXB1LXYzLmgiCiAjaW5jbHVkZSAiaXB1djMtcGxhbmUuaCIKIAor
c3RydWN0IGlwdV9wbGFuZV9zdGF0ZSB7CisJc3RydWN0IGRybV9wbGFuZV9zdGF0ZSBiYXNlOwor
CWJvb2wgdXNlX3ByZTsKK307CisKK3N0YXRpYyBpbmxpbmUgc3RydWN0IGlwdV9wbGFuZV9zdGF0
ZSAqCit0b19pcHVfcGxhbmVfc3RhdGUoc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcCkKK3sKKwly
ZXR1cm4gY29udGFpbmVyX29mKHAsIHN0cnVjdCBpcHVfcGxhbmVfc3RhdGUsIGJhc2UpOworfQor
CiBzdGF0aWMgaW5saW5lIHN0cnVjdCBpcHVfcGxhbmUgKnRvX2lwdV9wbGFuZShzdHJ1Y3QgZHJt
X3BsYW5lICpwKQogewogCXJldHVybiBjb250YWluZXJfb2YocCwgc3RydWN0IGlwdV9wbGFuZSwg
YmFzZSk7CkBAIC0yMjMsNiArMjM0LDggQEAgdm9pZCBpcHVfcGxhbmVfZGlzYWJsZShzdHJ1Y3Qg
aXB1X3BsYW5lICppcHVfcGxhbmUsIGJvb2wgZGlzYWJsZV9kcF9jaGFubmVsKQogCWlwdV9kbWZj
X2Rpc2FibGVfY2hhbm5lbChpcHVfcGxhbmUtPmRtZmMpOwogCWlmIChpcHVfcGxhbmUtPmRwKQog
CQlpcHVfZHBfZGlzYWJsZShpcHVfcGxhbmUtPmlwdSk7CisJaWYgKGlwdV9wcmdfcHJlc2VudChp
cHVfcGxhbmUtPmlwdSkpCisJCWlwdV9wcmdfY2hhbm5lbF9kaXNhYmxlKGlwdV9wbGFuZS0+aXB1
X2NoKTsKIH0KIAogdm9pZCBpcHVfcGxhbmVfZGlzYWJsZV9kZWZlcnJlZChzdHJ1Y3QgZHJtX3Bs
YW5lICpwbGFuZSkKQEAgLTI0NiwxMyArMjU5LDU2IEBAIHN0YXRpYyB2b2lkIGlwdV9wbGFuZV9k
ZXN0cm95KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQogCWtmcmVlKGlwdV9wbGFuZSk7CiB9CiAK
K3ZvaWQgaXB1X3BsYW5lX3N0YXRlX3Jlc2V0KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQorewor
CXN0cnVjdCBpcHVfcGxhbmVfc3RhdGUgKmlwdV9zdGF0ZTsKKworCWlmIChwbGFuZS0+c3RhdGUp
IHsKKwkJaXB1X3N0YXRlID0gdG9faXB1X3BsYW5lX3N0YXRlKHBsYW5lLT5zdGF0ZSk7CisJCV9f
ZHJtX2F0b21pY19oZWxwZXJfcGxhbmVfZGVzdHJveV9zdGF0ZShwbGFuZS0+c3RhdGUpOworCQlr
ZnJlZShpcHVfc3RhdGUpOworCX0KKworCWlwdV9zdGF0ZSA9IGt6YWxsb2Moc2l6ZW9mKCppcHVf
c3RhdGUpLCBHRlBfS0VSTkVMKTsKKworCWlmIChpcHVfc3RhdGUpIHsKKwkJaXB1X3N0YXRlLT5i
YXNlLnBsYW5lID0gcGxhbmU7CisJCWlwdV9zdGF0ZS0+YmFzZS5yb3RhdGlvbiA9IERSTV9ST1RB
VEVfMDsKKwl9CisKKwlwbGFuZS0+c3RhdGUgPSAmaXB1X3N0YXRlLT5iYXNlOworfQorCitzdHJ1
Y3QgZHJtX3BsYW5lX3N0YXRlICppcHVfcGxhbmVfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1f
cGxhbmUgKnBsYW5lKQoreworCXN0cnVjdCBpcHVfcGxhbmVfc3RhdGUgKnN0YXRlOworCisJaWYg
KFdBUk5fT04oIXBsYW5lLT5zdGF0ZSkpCisJCXJldHVybiBOVUxMOworCisJc3RhdGUgPSBrbWFs
bG9jKHNpemVvZigqc3RhdGUpLCBHRlBfS0VSTkVMKTsKKwlpZiAoc3RhdGUpCisJCV9fZHJtX2F0
b21pY19oZWxwZXJfcGxhbmVfZHVwbGljYXRlX3N0YXRlKHBsYW5lLCAmc3RhdGUtPmJhc2UpOwor
CisJcmV0dXJuICZzdGF0ZS0+YmFzZTsKK30KKwordm9pZCBpcHVfcGxhbmVfZGVzdHJveV9zdGF0
ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKKwkJCSAgICAgc3RydWN0IGRybV9wbGFuZV9zdGF0
ZSAqc3RhdGUpCit7CisJc3RydWN0IGlwdV9wbGFuZV9zdGF0ZSAqaXB1X3N0YXRlID0gdG9faXB1
X3BsYW5lX3N0YXRlKHN0YXRlKTsKKworCV9fZHJtX2F0b21pY19oZWxwZXJfcGxhbmVfZGVzdHJv
eV9zdGF0ZShzdGF0ZSk7CisJa2ZyZWUoaXB1X3N0YXRlKTsKK30KKwogc3RhdGljIGNvbnN0IHN0
cnVjdCBkcm1fcGxhbmVfZnVuY3MgaXB1X3BsYW5lX2Z1bmNzID0gewogCS51cGRhdGVfcGxhbmUJ
PSBkcm1fYXRvbWljX2hlbHBlcl91cGRhdGVfcGxhbmUsCiAJLmRpc2FibGVfcGxhbmUJPSBkcm1f
YXRvbWljX2hlbHBlcl9kaXNhYmxlX3BsYW5lLAogCS5kZXN0cm95CT0gaXB1X3BsYW5lX2Rlc3Ry
b3ksCi0JLnJlc2V0CQk9IGRybV9hdG9taWNfaGVscGVyX3BsYW5lX3Jlc2V0LAotCS5hdG9taWNf
ZHVwbGljYXRlX3N0YXRlCT0gZHJtX2F0b21pY19oZWxwZXJfcGxhbmVfZHVwbGljYXRlX3N0YXRl
LAotCS5hdG9taWNfZGVzdHJveV9zdGF0ZQk9IGRybV9hdG9taWNfaGVscGVyX3BsYW5lX2Rlc3Ry
b3lfc3RhdGUsCisJLnJlc2V0CQk9IGlwdV9wbGFuZV9zdGF0ZV9yZXNldCwKKwkuYXRvbWljX2R1
cGxpY2F0ZV9zdGF0ZQk9IGlwdV9wbGFuZV9kdXBsaWNhdGVfc3RhdGUsCisJLmF0b21pY19kZXN0
cm95X3N0YXRlCT0gaXB1X3BsYW5lX2Rlc3Ryb3lfc3RhdGUsCiB9OwogCiBzdGF0aWMgaW50IGlw
dV9wbGFuZV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCkBAIC00MjYsMTcg
KzQ4MiwzMyBAQCBzdGF0aWMgdm9pZCBpcHVfcGxhbmVfYXRvbWljX2Rpc2FibGUoc3RydWN0IGRy
bV9wbGFuZSAqcGxhbmUsCiAJaXB1X3BsYW5lLT5kaXNhYmxpbmcgPSB0cnVlOwogfQogCitzdGF0
aWMgaW50IGlwdV9jaGFuX2Fzc2lnbl9heGlfaWQoaW50IGlwdV9jaGFuKQoreworCXN3aXRjaCAo
aXB1X2NoYW4pIHsKKwljYXNlIElQVVYzX0NIQU5ORUxfTUVNX0JHX1NZTkM6CisJCXJldHVybiAx
OworCWNhc2UgSVBVVjNfQ0hBTk5FTF9NRU1fRkdfU1lOQzoKKwkJcmV0dXJuIDI7CisJY2FzZSBJ
UFVWM19DSEFOTkVMX01FTV9EQ19TWU5DOgorCQlyZXR1cm4gMzsKKwlkZWZhdWx0OgorCQlyZXR1
cm4gMDsKKwl9Cit9CisKIHN0YXRpYyB2b2lkIGlwdV9wbGFuZV9hdG9taWNfdXBkYXRlKHN0cnVj
dCBkcm1fcGxhbmUgKnBsYW5lLAogCQkJCSAgICBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpvbGRf
c3RhdGUpCiB7CiAJc3RydWN0IGlwdV9wbGFuZSAqaXB1X3BsYW5lID0gdG9faXB1X3BsYW5lKHBs
YW5lKTsKIAlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSA9IHBsYW5lLT5zdGF0ZTsKKwlz
dHJ1Y3QgaXB1X3BsYW5lX3N0YXRlICppcHVfc3RhdGUgPSB0b19pcHVfcGxhbmVfc3RhdGUoc3Rh
dGUpOwogCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSA9IHN0YXRlLT5jcnRjLT5z
dGF0ZTsKIAlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHN0YXRlLT5mYjsKIAlzdHJ1Y3Qg
ZHJtX3JlY3QgKmRzdCA9ICZzdGF0ZS0+ZHN0OwogCXVuc2lnbmVkIGxvbmcgZWJhLCB1Ym8sIHZi
bzsKIAl1bnNpZ25lZCBsb25nIGFscGhhX2ViYSA9IDA7CiAJZW51bSBpcHVfY29sb3Jfc3BhY2Ug
aWNzOworCXVuc2lnbmVkIGludCBheGlfaWQgPSAwOwogCWludCBhY3RpdmU7CiAKIAlpZiAoaXB1
X3BsYW5lLT5kcF9mbG93ID09IElQVV9EUF9GTE9XX1NZTkNfRkcpCkBAIC00NDQsNyArNTE2LDIz
IEBAIHN0YXRpYyB2b2lkIGlwdV9wbGFuZV9hdG9taWNfdXBkYXRlKHN0cnVjdCBkcm1fcGxhbmUg
KnBsYW5lLAogCiAJZWJhID0gZHJtX3BsYW5lX3N0YXRlX3RvX2ViYShzdGF0ZSwgMCk7CiAKKwkv
KgorCSAqIENvbmZpZ3VyZSBQUkcgY2hhbm5lbCBhbmQgYXR0YWNoZWQgUFJFLCB0aGlzIGNoYW5n
ZXMgdGhlIEVCQSB0byBhbgorCSAqIGludGVybmFsIFNSQU0gbG9jYXRpb24uCisJICovCisJaWYg
KGlwdV9zdGF0ZS0+dXNlX3ByZSkgeworCQlheGlfaWQgPSBpcHVfY2hhbl9hc3NpZ25fYXhpX2lk
KGlwdV9wbGFuZS0+ZG1hKTsKKwkJaXB1X3ByZ19jaGFubmVsX2NvbmZpZ3VyZShpcHVfcGxhbmUt
PmlwdV9jaCwgYXhpX2lkLAorCQkJCQkgIGRybV9yZWN0X3dpZHRoKCZzdGF0ZS0+c3JjKSA+PiAx
NiwKKwkJCQkJICBkcm1fcmVjdF9oZWlnaHQoJnN0YXRlLT5zcmMpID4+IDE2LAorCQkJCQkgIHN0
YXRlLT5mYi0+cGl0Y2hlc1swXSwKKwkJCQkJICBzdGF0ZS0+ZmItPmZvcm1hdC0+Zm9ybWF0LCAm
ZWJhKTsKKwl9CisKIAlpZiAob2xkX3N0YXRlLT5mYiAmJiAhZHJtX2F0b21pY19jcnRjX25lZWRz
X21vZGVzZXQoY3J0Y19zdGF0ZSkpIHsKKwkJLyogbm90aGluZyB0byBkbyBpZiBQUkUgaXMgdXNl
ZCAqLworCQlpZiAoaXB1X3N0YXRlLT51c2VfcHJlKQorCQkJcmV0dXJuOwogCQlhY3RpdmUgPSBp
cHVfaWRtYWNfZ2V0X2N1cnJlbnRfYnVmZmVyKGlwdV9wbGFuZS0+aXB1X2NoKTsKIAkJaXB1X2Nw
bWVtX3NldF9idWZmZXIoaXB1X3BsYW5lLT5pcHVfY2gsICFhY3RpdmUsIGViYSk7CiAJCWlwdV9p
ZG1hY19zZWxlY3RfYnVmZmVyKGlwdV9wbGFuZS0+aXB1X2NoLCAhYWN0aXZlKTsKQEAgLTUwMyw2
ICs1OTEsNyBAQCBzdGF0aWMgdm9pZCBpcHVfcGxhbmVfYXRvbWljX3VwZGF0ZShzdHJ1Y3QgZHJt
X3BsYW5lICpwbGFuZSwKIAlpcHVfY3BtZW1fc2V0X2hpZ2hfcHJpb3JpdHkoaXB1X3BsYW5lLT5p
cHVfY2gpOwogCWlwdV9pZG1hY19zZXRfZG91YmxlX2J1ZmZlcihpcHVfcGxhbmUtPmlwdV9jaCwg
MSk7CiAJaXB1X2NwbWVtX3NldF9zdHJpZGUoaXB1X3BsYW5lLT5pcHVfY2gsIHN0YXRlLT5mYi0+
cGl0Y2hlc1swXSk7CisJaXB1X2NwbWVtX3NldF9heGlfaWQoaXB1X3BsYW5lLT5pcHVfY2gsIGF4
aV9pZCk7CiAJc3dpdGNoIChmYi0+Zm9ybWF0LT5mb3JtYXQpIHsKIAljYXNlIERSTV9GT1JNQVRf
WVVWNDIwOgogCWNhc2UgRFJNX0ZPUk1BVF9ZVlU0MjA6CkBAIC01NzgsNiArNjY3LDM1IEBAIHN0
YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2hlbHBlcl9mdW5jcyBpcHVfcGxhbmVfaGVscGVy
X2Z1bmNzID0gewogCS5hdG9taWNfdXBkYXRlID0gaXB1X3BsYW5lX2F0b21pY191cGRhdGUsCiB9
OwogCitpbnQgaXB1X3BsYW5lc19hc3NpZ25fcHJlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCisJ
CQkgIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKK3sKKwlzdHJ1Y3QgZHJtX3BsYW5l
X3N0YXRlICpwbGFuZV9zdGF0ZTsKKwlzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZTsKKwlpbnQgYXZh
aWxhYmxlX3ByZXMgPSBpcHVfcHJnX21heF9hY3RpdmVfY2hhbm5lbHMoKTsKKwlpbnQgaTsKKwor
CWZvcl9lYWNoX3BsYW5lX2luX3N0YXRlKHN0YXRlLCBwbGFuZSwgcGxhbmVfc3RhdGUsIGkpIHsK
KwkJc3RydWN0IGlwdV9wbGFuZV9zdGF0ZSAqaXB1X3N0YXRlID0KKwkJCQl0b19pcHVfcGxhbmVf
c3RhdGUocGxhbmVfc3RhdGUpOworCQlzdHJ1Y3QgaXB1X3BsYW5lICppcHVfcGxhbmUgPSB0b19p
cHVfcGxhbmUocGxhbmUpOworCisJCWlmIChpcHVfcHJnX3ByZXNlbnQoaXB1X3BsYW5lLT5pcHUp
ICYmIGF2YWlsYWJsZV9wcmVzICYmCisJCSAgICBwbGFuZV9zdGF0ZS0+ZmIgJiYKKwkJICAgIGlw
dV9wcmdfZm9ybWF0X3N1cHBvcnRlZChpcHVfcGxhbmUtPmlwdSwKKwkJCQkJICAgICBwbGFuZV9z
dGF0ZS0+ZmItPmZvcm1hdC0+Zm9ybWF0LAorCQkJCQkgICAgIHBsYW5lX3N0YXRlLT5mYi0+bW9k
aWZpZXIpKSB7CisJCQlpcHVfc3RhdGUtPnVzZV9wcmUgPSB0cnVlOworCQkJYXZhaWxhYmxlX3By
ZXMtLTsKKwkJfSBlbHNlIHsKKwkJCWlwdV9zdGF0ZS0+dXNlX3ByZSA9IGZhbHNlOworCQl9CisJ
fQorCisJcmV0dXJuIDA7Cit9CitFWFBPUlRfU1lNQk9MX0dQTChpcHVfcGxhbmVzX2Fzc2lnbl9w
cmUpOworCiBzdHJ1Y3QgaXB1X3BsYW5lICppcHVfcGxhbmVfaW5pdChzdHJ1Y3QgZHJtX2Rldmlj
ZSAqZGV2LCBzdHJ1Y3QgaXB1X3NvYyAqaXB1LAogCQkJCSBpbnQgZG1hLCBpbnQgZHAsIHVuc2ln
bmVkIGludCBwb3NzaWJsZV9jcnRjcywKIAkJCQkgZW51bSBkcm1fcGxhbmVfdHlwZSB0eXBlKQot
LSAKMi4xMS4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK
aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK