drm: Branch 'master' - 3 commits

[email protected] (GitLab Mirror) Mon, 1 Jul 2019 09:52:15 +0000 (UTC)
Newsgroups gmane.comp.video.dri.patches
Message-ID <[email protected]>
IGFtZGdwdS9hbWRncHVfYm8uYyAgICAgfCAgIDY3ICsrKysrKysrKysrKysrKysrKystLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGFtZGdwdS9hbWRncHVfZGV2aWNlLmMgfCAgIDMwICsr
KysrKysrKystLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCA1
NSBkZWxldGlvbnMoLSkKCk5ldyBjb21taXRzOgpjb21taXQgMWVjMGRmOGEyNTRkZWY1MTk1ZWY3
N2IyYTIwMjI3MjBhZmIyNGM0OQpBdXRob3I6IE1pY2hlbCBEw6RuemVyIDxtaWNoZWwuZGFlbnpl
ckBhbWQuY29tPgpEYXRlOiAgIFRodSBKdW4gMjAgMTA6NDk6MDEgMjAxOSArMDIwMAoKICAgIGFt
ZGdwdTogUmVuYW1lIGZkX211dGV4L2xpc3QgdG8gZGV2X211dGV4L2xpc3QKICAgIAogICAgU2Vl
bXMgdG8gYmV0dGVyIHJlZmxlY3Qgd2hhdCB0aGV5J3JlIGZvci4KICAgIAogICAgUmV2aWV3ZWQt
Ynk6IEVtaWwgVmVsaWtvdiA8ZW1pbC5sLnZlbGlrb3ZAZ21haWwuY29tPgoKZGlmZiAtLWdpdCBh
L2FtZGdwdS9hbWRncHVfZGV2aWNlLmMgYi9hbWRncHUvYW1kZ3B1X2RldmljZS5jCmluZGV4IDM2
MjQ5NGIxLi43NmI0ZTVlYiAxMDA2NDQKLS0tIGEvYW1kZ3B1L2FtZGdwdV9kZXZpY2UuYworKysg
Yi9hbWRncHUvYW1kZ3B1X2RldmljZS5jCkBAIC00Myw4ICs0Myw4IEBACiAKICNkZWZpbmUgUFRS
X1RPX1VJTlQoeCkgKCh1bnNpZ25lZCkoKGludHB0cl90KSh4KSkpCiAKLXN0YXRpYyBwdGhyZWFk
X211dGV4X3QgZmRfbXV0ZXggPSBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSOwotc3RhdGljIGFt
ZGdwdV9kZXZpY2VfaGFuZGxlIGZkX2xpc3Q7CitzdGF0aWMgcHRocmVhZF9tdXRleF90IGRldl9t
dXRleCA9IFBUSFJFQURfTVVURVhfSU5JVElBTElaRVI7CitzdGF0aWMgYW1kZ3B1X2RldmljZV9o
YW5kbGUgZGV2X2xpc3Q7CiAKIHN0YXRpYyBpbnQgZmRfY29tcGFyZShpbnQgZmQxLCBpbnQgZmQy
KQogewpAQCAtOTUsMTMgKzk1LDEzIEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2dldF9hdXRoKGludCBm
ZCwgaW50ICphdXRoKQogCiBzdGF0aWMgdm9pZCBhbWRncHVfZGV2aWNlX2ZyZWVfaW50ZXJuYWwo
YW1kZ3B1X2RldmljZV9oYW5kbGUgZGV2KQogewotCWFtZGdwdV9kZXZpY2VfaGFuZGxlICpub2Rl
ID0gJmZkX2xpc3Q7CisJYW1kZ3B1X2RldmljZV9oYW5kbGUgKm5vZGUgPSAmZGV2X2xpc3Q7CiAK
LQlwdGhyZWFkX211dGV4X2xvY2soJmZkX211dGV4KTsKKwlwdGhyZWFkX211dGV4X2xvY2soJmRl
dl9tdXRleCk7CiAJd2hpbGUgKCpub2RlICE9IGRldiAmJiAoKm5vZGUpLT5uZXh0KQogCQlub2Rl
ID0gJigqbm9kZSktPm5leHQ7CiAJKm5vZGUgPSAoKm5vZGUpLT5uZXh0OwotCXB0aHJlYWRfbXV0
ZXhfdW5sb2NrKCZmZF9tdXRleCk7CisJcHRocmVhZF9tdXRleF91bmxvY2soJmRldl9tdXRleCk7
CiAKIAljbG9zZShkZXYtPmZkKTsKIAlpZiAoKGRldi0+ZmxpbmtfZmQgPj0gMCkgJiYgKGRldi0+
ZmQgIT0gZGV2LT5mbGlua19mZCkpCkBAIC0xNTUsMTYgKzE1NSwxNiBAQCBkcm1fcHVibGljIGlu
dCBhbWRncHVfZGV2aWNlX2luaXRpYWxpemUoaW50IGZkLAogCiAJKmRldmljZV9oYW5kbGUgPSBO
VUxMOwogCi0JcHRocmVhZF9tdXRleF9sb2NrKCZmZF9tdXRleCk7CisJcHRocmVhZF9tdXRleF9s
b2NrKCZkZXZfbXV0ZXgpOwogCXIgPSBhbWRncHVfZ2V0X2F1dGgoZmQsICZmbGFnX2F1dGgpOwog
CWlmIChyKSB7CiAJCWZwcmludGYoc3RkZXJyLCAiJXM6IGFtZGdwdV9nZXRfYXV0aCAoMSkgZmFp
bGVkICglaSlcbiIsCiAJCQlfX2Z1bmNfXywgcik7Ci0JCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZm
ZF9tdXRleCk7CisJCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZkZXZfbXV0ZXgpOwogCQlyZXR1cm4g
cjsKIAl9CiAKLQlmb3IgKGRldiA9IGZkX2xpc3Q7IGRldjsgZGV2ID0gZGV2LT5uZXh0KQorCWZv
ciAoZGV2ID0gZGV2X2xpc3Q7IGRldjsgZGV2ID0gZGV2LT5uZXh0KQogCQlpZiAoZmRfY29tcGFy
ZShkZXYtPmZkLCBmZCkgPT0gMCkKIAkJCWJyZWFrOwogCkBAIC0xNzMsNyArMTczLDcgQEAgZHJt
X3B1YmxpYyBpbnQgYW1kZ3B1X2RldmljZV9pbml0aWFsaXplKGludCBmZCwKIAkJaWYgKHIpIHsK
IAkJCWZwcmludGYoc3RkZXJyLCAiJXM6IGFtZGdwdV9nZXRfYXV0aCAoMikgZmFpbGVkICglaSlc
biIsCiAJCQkJX19mdW5jX18sIHIpOwotCQkJcHRocmVhZF9tdXRleF91bmxvY2soJmZkX211dGV4
KTsKKwkJCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZkZXZfbXV0ZXgpOwogCQkJcmV0dXJuIHI7CiAJ
CX0KIAkJaWYgKChmbGFnX2F1dGgpICYmICghZmxhZ19hdXRoZXhpc3QpKSB7CkBAIC0xODIsMTQg
KzE4MiwxNCBAQCBkcm1fcHVibGljIGludCBhbWRncHVfZGV2aWNlX2luaXRpYWxpemUoaW50IGZk
LAogCQkqbWFqb3JfdmVyc2lvbiA9IGRldi0+bWFqb3JfdmVyc2lvbjsKIAkJKm1pbm9yX3ZlcnNp
b24gPSBkZXYtPm1pbm9yX3ZlcnNpb247CiAJCWFtZGdwdV9kZXZpY2VfcmVmZXJlbmNlKGRldmlj
ZV9oYW5kbGUsIGRldik7Ci0JCXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZmZF9tdXRleCk7CisJCXB0
aHJlYWRfbXV0ZXhfdW5sb2NrKCZkZXZfbXV0ZXgpOwogCQlyZXR1cm4gMDsKIAl9CiAKIAlkZXYg
PSBjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCBhbWRncHVfZGV2aWNlKSk7CiAJaWYgKCFkZXYpIHsK
IAkJZnByaW50ZihzdGRlcnIsICIlczogY2FsbG9jIGZhaWxlZFxuIiwgX19mdW5jX18pOwotCQlw
dGhyZWFkX211dGV4X3VubG9jaygmZmRfbXV0ZXgpOworCQlwdGhyZWFkX211dGV4X3VubG9jaygm
ZGV2X211dGV4KTsKIAkJcmV0dXJuIC1FTk9NRU07CiAJfQogCkBAIC0yNjUsOSArMjY1LDkgQEAg
ZHJtX3B1YmxpYyBpbnQgYW1kZ3B1X2RldmljZV9pbml0aWFsaXplKGludCBmZCwKIAkqbWFqb3Jf
dmVyc2lvbiA9IGRldi0+bWFqb3JfdmVyc2lvbjsKIAkqbWlub3JfdmVyc2lvbiA9IGRldi0+bWlu
b3JfdmVyc2lvbjsKIAkqZGV2aWNlX2hhbmRsZSA9IGRldjsKLQlkZXYtPm5leHQgPSBmZF9saXN0
OwotCWZkX2xpc3QgPSBkZXY7Ci0JcHRocmVhZF9tdXRleF91bmxvY2soJmZkX211dGV4KTsKKwlk
ZXYtPm5leHQgPSBkZXZfbGlzdDsKKwlkZXZfbGlzdCA9IGRldjsKKwlwdGhyZWFkX211dGV4X3Vu
bG9jaygmZGV2X211dGV4KTsKIAogCXJldHVybiAwOwogCkBAIC0yNzUsNyArMjc1LDcgQEAgY2xl
YW51cDoKIAlpZiAoZGV2LT5mZCA+PSAwKQogCQljbG9zZShkZXYtPmZkKTsKIAlmcmVlKGRldik7
Ci0JcHRocmVhZF9tdXRleF91bmxvY2soJmZkX211dGV4KTsKKwlwdGhyZWFkX211dGV4X3VubG9j
aygmZGV2X211dGV4KTsKIAlyZXR1cm4gcjsKIH0KIApjb21taXQgYTFiZGU5YjZkODY5YjY1ZmM5
MTE4NDNmOWVmMGYzZTJlNjRkNTc5NwpBdXRob3I6IE1pY2hlbCBEw6RuemVyIDxtaWNoZWwuZGFl
bnplckBhbWQuY29tPgpEYXRlOiAgIEZyaSBKdW4gMTQgMTg6NDM6MzAgMjAxOSArMDIwMAoKICAg
IGFtZGdwdTogQWRkIEJPIGhhbmRsZSB0byB0YWJsZSBpbiBhbWRncHVfYm9fY3JlYXRlCiAgICAK
ICAgIFNpbXBsaWZpZXMgaXRzIGNhbGxlcnMuCiAgICAKICAgIGRldi0+Ym9fdGFibGVfbXV0ZXgg
aXMgbm93IGFsd2F5cyBoZWxkIHdoZW4gYW1kZ3B1X2JvX2NyZWF0ZSBpcyBjYWxsZWQKICAgICh0
aGlzIHdhcyBhbHJlYWR5IHRoZSBjYXNlIGluIGFtZGdwdV9ib19pbXBvcnQpLgogICAgCiAgICBS
ZXZpZXdlZC1ieTogRW1pbCBWZWxpa292IDxlbWlsLmwudmVsaWtvdkBnbWFpbC5jb20+CgpkaWZm
IC0tZ2l0IGEvYW1kZ3B1L2FtZGdwdV9iby5jIGIvYW1kZ3B1L2FtZGdwdV9iby5jCmluZGV4IDZj
MGI4NTE3Li41YmRiOGZlOCAxMDA2NDQKLS0tIGEvYW1kZ3B1L2FtZGdwdV9iby5jCisrKyBiL2Ft
ZGdwdS9hbWRncHVfYm8uYwpAQCAtNTMsMTEgKzUzLDE4IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2Jv
X2NyZWF0ZShhbWRncHVfZGV2aWNlX2hhbmRsZSBkZXYsCiAJCQkgICAgYW1kZ3B1X2JvX2hhbmRs
ZSAqYnVmX2hhbmRsZSkKIHsKIAlzdHJ1Y3QgYW1kZ3B1X2JvICpibzsKKwlpbnQgcjsKIAogCWJv
ID0gY2FsbG9jKDEsIHNpemVvZihzdHJ1Y3QgYW1kZ3B1X2JvKSk7CiAJaWYgKCFibykKIAkJcmV0
dXJuIC1FTk9NRU07CiAKKwlyID0gaGFuZGxlX3RhYmxlX2luc2VydCgmZGV2LT5ib19oYW5kbGVz
LCBoYW5kbGUsIGJvKTsKKwlpZiAocikgeworCQlmcmVlKGJvKTsKKwkJcmV0dXJuIHI7CisJfQor
CiAJYXRvbWljX3NldCgmYm8tPnJlZmNvdW50LCAxKTsKIAliby0+ZGV2ID0gZGV2OwogCWJvLT5h
bGxvY19zaXplID0gc2l6ZTsKQEAgLTg5LDE5ICs5NiwxNCBAQCBkcm1fcHVibGljIGludCBhbWRn
cHVfYm9fYWxsb2MoYW1kZ3B1X2RldmljZV9oYW5kbGUgZGV2LAogCWlmIChyKQogCQlnb3RvIG91
dDsKIAorCXB0aHJlYWRfbXV0ZXhfbG9jaygmZGV2LT5ib190YWJsZV9tdXRleCk7CiAJciA9IGFt
ZGdwdV9ib19jcmVhdGUoZGV2LCBhbGxvY19idWZmZXItPmFsbG9jX3NpemUsIGFyZ3Mub3V0Lmhh
bmRsZSwKIAkJCSAgICAgYnVmX2hhbmRsZSk7CisJcHRocmVhZF9tdXRleF91bmxvY2soJmRldi0+
Ym9fdGFibGVfbXV0ZXgpOwogCWlmIChyKSB7CiAJCWFtZGdwdV9jbG9zZV9rbXNfaGFuZGxlKGRl
di0+ZmQsIGFyZ3Mub3V0LmhhbmRsZSk7Ci0JCWdvdG8gb3V0OwogCX0KIAotCXB0aHJlYWRfbXV0
ZXhfbG9jaygmZGV2LT5ib190YWJsZV9tdXRleCk7Ci0JciA9IGhhbmRsZV90YWJsZV9pbnNlcnQo
JmRldi0+Ym9faGFuZGxlcywgKCpidWZfaGFuZGxlKS0+aGFuZGxlLAotCQkJCSpidWZfaGFuZGxl
KTsKLQlwdGhyZWFkX211dGV4X3VubG9jaygmZGV2LT5ib190YWJsZV9tdXRleCk7Ci0JaWYgKHIp
Ci0JCWFtZGdwdV9ib19mcmVlKCpidWZfaGFuZGxlKTsKIG91dDoKIAlyZXR1cm4gcjsKIH0KQEAg
LTM2MywxNSArMzY1LDEyIEBAIGRybV9wdWJsaWMgaW50IGFtZGdwdV9ib19pbXBvcnQoYW1kZ3B1
X2RldmljZV9oYW5kbGUgZGV2LAogCWlmIChyKQogCQlnb3RvIGZyZWVfYm9faGFuZGxlOwogCi0J
ciA9IGhhbmRsZV90YWJsZV9pbnNlcnQoJmRldi0+Ym9faGFuZGxlcywgYm8tPmhhbmRsZSwgYm8p
OwotCWlmIChyKQotCQlnb3RvIGZyZWVfYm9faGFuZGxlOwogCWlmIChmbGlua19uYW1lKSB7CiAJ
CWJvLT5mbGlua19uYW1lID0gZmxpbmtfbmFtZTsKIAkJciA9IGhhbmRsZV90YWJsZV9pbnNlcnQo
JmRldi0+Ym9fZmxpbmtfbmFtZXMsIGZsaW5rX25hbWUsCiAJCQkJCWJvKTsKIAkJaWYgKHIpCi0J
CQlnb3RvIHJlbW92ZV9oYW5kbGU7CisJCQlnb3RvIGZyZWVfYm9faGFuZGxlOwogCiAJfQogCkBA
IC0zODAsOCArMzc5LDYgQEAgZHJtX3B1YmxpYyBpbnQgYW1kZ3B1X2JvX2ltcG9ydChhbWRncHVf
ZGV2aWNlX2hhbmRsZSBkZXYsCiAJcHRocmVhZF9tdXRleF91bmxvY2soJmRldi0+Ym9fdGFibGVf
bXV0ZXgpOwogCXJldHVybiAwOwogCi1yZW1vdmVfaGFuZGxlOgotCWhhbmRsZV90YWJsZV9yZW1v
dmUoJmRldi0+Ym9faGFuZGxlcywgYm8tPmhhbmRsZSk7CiBmcmVlX2JvX2hhbmRsZToKIAlpZiAo
ZmxpbmtfbmFtZSAmJiBvcGVuX2FyZy5oYW5kbGUpCiAJCWFtZGdwdV9jbG9zZV9rbXNfaGFuZGxl
KGRldi0+ZmxpbmtfZmQsIG9wZW5fYXJnLmhhbmRsZSk7CkBAIC01OTcsMTggKzU5NCwxMyBAQCBk
cm1fcHVibGljIGludCBhbWRncHVfY3JlYXRlX2JvX2Zyb21fdXNlcl9tZW0oYW1kZ3B1X2Rldmlj
ZV9oYW5kbGUgZGV2LAogCWlmIChyKQogCQlnb3RvIG91dDsKIAorCXB0aHJlYWRfbXV0ZXhfbG9j
aygmZGV2LT5ib190YWJsZV9tdXRleCk7CiAJciA9IGFtZGdwdV9ib19jcmVhdGUoZGV2LCBzaXpl
LCBhcmdzLmhhbmRsZSwgYnVmX2hhbmRsZSk7CisJcHRocmVhZF9tdXRleF91bmxvY2soJmRldi0+
Ym9fdGFibGVfbXV0ZXgpOwogCWlmIChyKSB7CiAJCWFtZGdwdV9jbG9zZV9rbXNfaGFuZGxlKGRl
di0+ZmQsIGFyZ3MuaGFuZGxlKTsKLQkJZ290byBvdXQ7CiAJfQogCi0JcHRocmVhZF9tdXRleF9s
b2NrKCZkZXYtPmJvX3RhYmxlX211dGV4KTsKLQlyID0gaGFuZGxlX3RhYmxlX2luc2VydCgmZGV2
LT5ib19oYW5kbGVzLCAoKmJ1Zl9oYW5kbGUpLT5oYW5kbGUsCi0JCQkJKmJ1Zl9oYW5kbGUpOwot
CXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZkZXYtPmJvX3RhYmxlX211dGV4KTsKLQlpZiAocikKLQkJ
YW1kZ3B1X2JvX2ZyZWUoKmJ1Zl9oYW5kbGUpOwogb3V0OgogCXJldHVybiByOwogfQpjb21taXQg
YjEyMjgyZGI5Y2VmNGFhNGY5MDM4ZjAyNDhlY2RkMzBmMDJiYjQzOQpBdXRob3I6IE1pY2hlbCBE
w6RuemVyIDxtaWNoZWwuZGFlbnplckBhbWQuY29tPgpEYXRlOiAgIFRodSBKdW4gMTMgMTc6MDY6
NDIgMjAxOSArMDIwMAoKICAgIGFtZGdwdTogUGFzcyBmaWxlIGRlc2NyaXB0b3IgZGlyZWN0bHkg
dG8gYW1kZ3B1X2Nsb3NlX2ttc19oYW5kbGUKICAgIAogICAgQW5kIHByb3BhZ2F0ZSBkcm1Jb2N0
bCdzIHJldHVybiB2YWx1ZS4KICAgIAogICAgVGhpcyBhbGxvd3MgcmVwbGFjaW5nIGFsbCByZW1h
aW5pbmcgb3Blbi1jb2RlZCBEUk1fSU9DVExfR0VNX0NMT1NFCiAgICBpb2N0bCBjYWxscyB3aXRo
IGFtZGdwdV9jbG9zZV9rbXNfaGFuZGxlIGNhbGxzLgogICAgCiAgICBSZXZpZXdlZC1ieTogRW1p
bCBWZWxpa292IDxlbWlsLmwudmVsaWtvdkBnbWFpbC5jb20+CgpkaWZmIC0tZ2l0IGEvYW1kZ3B1
L2FtZGdwdV9iby5jIGIvYW1kZ3B1L2FtZGdwdV9iby5jCmluZGV4IDMyZWUzNThmLi42YzBiODUx
NyAxMDA2NDQKLS0tIGEvYW1kZ3B1L2FtZGdwdV9iby5jCisrKyBiL2FtZGdwdS9hbWRncHVfYm8u
YwpAQCAtMzksMTMgKzM5LDEyIEBACiAjaW5jbHVkZSAiYW1kZ3B1X2ludGVybmFsLmgiCiAjaW5j
bHVkZSAidXRpbF9tYXRoLmgiCiAKLXN0YXRpYyB2b2lkIGFtZGdwdV9jbG9zZV9rbXNfaGFuZGxl
KGFtZGdwdV9kZXZpY2VfaGFuZGxlIGRldiwKLQkJCQkgICAgIHVpbnQzMl90IGhhbmRsZSkKK3N0
YXRpYyBpbnQgYW1kZ3B1X2Nsb3NlX2ttc19oYW5kbGUoaW50IGZkLCB1aW50MzJfdCBoYW5kbGUp
CiB7CiAJc3RydWN0IGRybV9nZW1fY2xvc2UgYXJncyA9IHt9OwogCiAJYXJncy5oYW5kbGUgPSBo
YW5kbGU7Ci0JZHJtSW9jdGwoZGV2LT5mZCwgRFJNX0lPQ1RMX0dFTV9DTE9TRSwgJmFyZ3MpOwor
CXJldHVybiBkcm1Jb2N0bChmZCwgRFJNX0lPQ1RMX0dFTV9DTE9TRSwgJmFyZ3MpOwogfQogCiBz
dGF0aWMgaW50IGFtZGdwdV9ib19jcmVhdGUoYW1kZ3B1X2RldmljZV9oYW5kbGUgZGV2LApAQCAt
OTMsNyArOTIsNyBAQCBkcm1fcHVibGljIGludCBhbWRncHVfYm9fYWxsb2MoYW1kZ3B1X2Rldmlj
ZV9oYW5kbGUgZGV2LAogCXIgPSBhbWRncHVfYm9fY3JlYXRlKGRldiwgYWxsb2NfYnVmZmVyLT5h
bGxvY19zaXplLCBhcmdzLm91dC5oYW5kbGUsCiAJCQkgICAgIGJ1Zl9oYW5kbGUpOwogCWlmIChy
KSB7Ci0JCWFtZGdwdV9jbG9zZV9rbXNfaGFuZGxlKGRldiwgYXJncy5vdXQuaGFuZGxlKTsKKwkJ
YW1kZ3B1X2Nsb3NlX2ttc19oYW5kbGUoZGV2LT5mZCwgYXJncy5vdXQuaGFuZGxlKTsKIAkJZ290
byBvdXQ7CiAJfQogCkBAIC0yMTQsMTEgKzIxMyw4IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2JvX2V4
cG9ydF9mbGluayhhbWRncHVfYm9faGFuZGxlIGJvKQogCiAJYm8tPmZsaW5rX25hbWUgPSBmbGlu
ay5uYW1lOwogCi0JaWYgKGJvLT5kZXYtPmZsaW5rX2ZkICE9IGJvLT5kZXYtPmZkKSB7Ci0JCXN0
cnVjdCBkcm1fZ2VtX2Nsb3NlIGFyZ3MgPSB7fTsKLQkJYXJncy5oYW5kbGUgPSBoYW5kbGU7Ci0J
CWRybUlvY3RsKGJvLT5kZXYtPmZsaW5rX2ZkLCBEUk1fSU9DVExfR0VNX0NMT1NFLCAmYXJncyk7
Ci0JfQorCWlmIChiby0+ZGV2LT5mbGlua19mZCAhPSBiby0+ZGV2LT5mZCkKKwkJYW1kZ3B1X2Ns
b3NlX2ttc19oYW5kbGUoYm8tPmRldi0+ZmxpbmtfZmQsIGhhbmRsZSk7CiAKIAlwdGhyZWFkX211
dGV4X2xvY2soJmJvLT5kZXYtPmJvX3RhYmxlX211dGV4KTsKIAlyID0gaGFuZGxlX3RhYmxlX2lu
c2VydCgmYm8tPmRldi0+Ym9fZmxpbmtfbmFtZXMsIGJvLT5mbGlua19uYW1lLCBibyk7CkBAIC0y
NjEsNyArMjU3LDYgQEAgZHJtX3B1YmxpYyBpbnQgYW1kZ3B1X2JvX2ltcG9ydChhbWRncHVfZGV2
aWNlX2hhbmRsZSBkZXYsCiAJCSAgICAgc3RydWN0IGFtZGdwdV9ib19pbXBvcnRfcmVzdWx0ICpv
dXRwdXQpCiB7CiAJc3RydWN0IGRybV9nZW1fb3BlbiBvcGVuX2FyZyA9IHt9OwotCXN0cnVjdCBk
cm1fZ2VtX2Nsb3NlIGNsb3NlX2FyZyA9IHt9OwogCXN0cnVjdCBhbWRncHVfYm8gKmJvID0gTlVM
TDsKIAl1aW50MzJfdCBoYW5kbGUgPSAwLCBmbGlua19uYW1lID0gMDsKIAl1aW50NjRfdCBhbGxv
Y19zaXplID0gMDsKQEAgLTM0NSwxMiArMzQwLDEyIEBAIGRybV9wdWJsaWMgaW50IGFtZGdwdV9i
b19pbXBvcnQoYW1kZ3B1X2RldmljZV9oYW5kbGUgZGV2LAogCQkJY2xvc2UoZG1hX2ZkKTsKIAkJ
CWlmIChyKQogCQkJCWdvdG8gZnJlZV9ib19oYW5kbGU7Ci0JCQljbG9zZV9hcmcuaGFuZGxlID0g
b3Blbl9hcmcuaGFuZGxlOwotCQkJciA9IGRybUlvY3RsKGRldi0+ZmxpbmtfZmQsIERSTV9JT0NU
TF9HRU1fQ0xPU0UsCi0JCQkJICAgICAmY2xvc2VfYXJnKTsKKwkJCXIgPSBhbWRncHVfY2xvc2Vf
a21zX2hhbmRsZShkZXYtPmZsaW5rX2ZkLAorCQkJCQkJICAgIG9wZW5fYXJnLmhhbmRsZSk7CiAJ
CQlpZiAocikKIAkJCQlnb3RvIGZyZWVfYm9faGFuZGxlOwogCQl9CisJCW9wZW5fYXJnLmhhbmRs
ZSA9IDA7CiAJCWJyZWFrOwogCiAJY2FzZSBhbWRncHVfYm9faGFuZGxlX3R5cGVfZG1hX2J1Zl9m
ZDoKQEAgLTM4OCwxNCArMzgzLDEzIEBAIGRybV9wdWJsaWMgaW50IGFtZGdwdV9ib19pbXBvcnQo
YW1kZ3B1X2RldmljZV9oYW5kbGUgZGV2LAogcmVtb3ZlX2hhbmRsZToKIAloYW5kbGVfdGFibGVf
cmVtb3ZlKCZkZXYtPmJvX2hhbmRsZXMsIGJvLT5oYW5kbGUpOwogZnJlZV9ib19oYW5kbGU6Ci0J
aWYgKGZsaW5rX25hbWUgJiYgIWNsb3NlX2FyZy5oYW5kbGUgJiYgb3Blbl9hcmcuaGFuZGxlKSB7
Ci0JCWNsb3NlX2FyZy5oYW5kbGUgPSBvcGVuX2FyZy5oYW5kbGU7Ci0JCWRybUlvY3RsKGRldi0+
ZmxpbmtfZmQsIERSTV9JT0NUTF9HRU1fQ0xPU0UsICZjbG9zZV9hcmcpOwotCX0KKwlpZiAoZmxp
bmtfbmFtZSAmJiBvcGVuX2FyZy5oYW5kbGUpCisJCWFtZGdwdV9jbG9zZV9rbXNfaGFuZGxlKGRl
di0+ZmxpbmtfZmQsIG9wZW5fYXJnLmhhbmRsZSk7CisKIAlpZiAoYm8pCiAJCWFtZGdwdV9ib19m
cmVlKGJvKTsKIAllbHNlCi0JCWFtZGdwdV9jbG9zZV9rbXNfaGFuZGxlKGRldiwgaGFuZGxlKTsK
KwkJYW1kZ3B1X2Nsb3NlX2ttc19oYW5kbGUoZGV2LT5mZCwgaGFuZGxlKTsKIHVubG9jazoKIAlw
dGhyZWFkX211dGV4X3VubG9jaygmZGV2LT5ib190YWJsZV9tdXRleCk7CiAJcmV0dXJuIHI7CkBA
IC00MjQsMTIgKzQxOCwxMyBAQCBkcm1fcHVibGljIGludCBhbWRncHVfYm9fZnJlZShhbWRncHVf
Ym9faGFuZGxlIGJ1Zl9oYW5kbGUpCiAJCQlhbWRncHVfYm9fY3B1X3VubWFwKGJvKTsKIAkJfQog
Ci0JCWFtZGdwdV9jbG9zZV9rbXNfaGFuZGxlKGRldiwgYm8tPmhhbmRsZSk7CisJCWFtZGdwdV9j
bG9zZV9rbXNfaGFuZGxlKGRldi0+ZmQsIGJvLT5oYW5kbGUpOwogCQlwdGhyZWFkX211dGV4X2Rl
c3Ryb3koJmJvLT5jcHVfYWNjZXNzX211dGV4KTsKIAkJZnJlZShibyk7CiAJfQogCiAJcHRocmVh
ZF9tdXRleF91bmxvY2soJmRldi0+Ym9fdGFibGVfbXV0ZXgpOworCiAJcmV0dXJuIDA7CiB9CiAK
QEAgLTYwNCw3ICs1OTksNyBAQCBkcm1fcHVibGljIGludCBhbWRncHVfY3JlYXRlX2JvX2Zyb21f
dXNlcl9tZW0oYW1kZ3B1X2RldmljZV9oYW5kbGUgZGV2LAogCiAJciA9IGFtZGdwdV9ib19jcmVh
dGUoZGV2LCBzaXplLCBhcmdzLmhhbmRsZSwgYnVmX2hhbmRsZSk7CiAJaWYgKHIpIHsKLQkJYW1k
Z3B1X2Nsb3NlX2ttc19oYW5kbGUoZGV2LCBhcmdzLmhhbmRsZSk7CisJCWFtZGdwdV9jbG9zZV9r
bXNfaGFuZGxlKGRldi0+ZmQsIGFyZ3MuaGFuZGxlKTsKIAkJZ290byBvdXQ7CiAJfQogCgoKLS0K
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRHJpLXBhdGNo
ZXMgbWFpbGluZyBsaXN0CkRyaS1wYXRjaGVzQGxpc3RzLnNvdXJjZWZvcmdlLm5ldApodHRwczov
L2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9kcmktcGF0Y2hlcwo=