drm: Branch 'master' - 3 commits
GitLab Mirror <[email protected]> Tue, 7 Jan 2020 19:45:19 +0000 (UTC)
| Newsgroups | gmane.comp.video.dri.patches |
|---|---|
| Message-ID | <[email protected]> |
IHRlc3RzL2FtZGdwdS9iYXNpY190ZXN0cy5jICAgfCAgICAyIAogdGVzdHMvYW1kZ3B1L2NzX3Rl c3RzLmMgICAgICB8ICAgIDEgCiB0ZXN0cy9hbWRncHUvcmFzX3Rlc3RzLmMgICAgIHwgIDI4NSAr KysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiB0ZXN0cy9hbWRncHUv c3luY29ial90ZXN0cy5jIHwgICAgMiAKIDQgZmlsZXMgY2hhbmdlZCwgMTQ0IGluc2VydGlvbnMo KyksIDE0NiBkZWxldGlvbnMoLSkKCk5ldyBjb21taXRzOgpjb21taXQgOWViZmFjMTVhNWM0NDNl ODQ3YjQzMjc2NWUzYjNhYTM1Zjc0YzZmMQpBdXRob3I6IE1hcmVrIE9sxaHDoWsgPG1hcmVrLm9s c2FrQGFtZC5jb20+CkRhdGU6ICAgVHVlIEphbiA3IDE0OjQ0OjM1IDIwMjAgLTA1MDAKCiAgICBS ZXZlcnQgInRlc3RzL2FtZGdwdTogRml4IHZhcmlvdXMgd2FybmluZ3MiCiAgICAKICAgIFRoaXMg cmV2ZXJ0cyBjb21taXQgZmIxNjM0NTgzZjNiYTIyYzY3Y2FkMGRmNzAyMmI2YWM0OGE0MGM1Ni4K CmRpZmYgLS1naXQgYS90ZXN0cy9hbWRncHUvYmFzaWNfdGVzdHMuYyBiL3Rlc3RzL2FtZGdwdS9i YXNpY190ZXN0cy5jCmluZGV4IDFmNjg5MGUwLi44NGYzODI3ZCAxMDA2NDQKLS0tIGEvdGVzdHMv YW1kZ3B1L2Jhc2ljX3Rlc3RzLmMKKysrIGIvdGVzdHMvYW1kZ3B1L2Jhc2ljX3Rlc3RzLmMKQEAg LTMzMDYsNyArMzMwNiw3IEBAIHN0YXRpYyB2b2lkIGFtZGdwdV9tZW1jcHlfZHJhdyhhbWRncHVf ZGV2aWNlX2hhbmRsZSBkZXZpY2VfaGFuZGxlLAogCWludCBib19jbWRfc2l6ZSA9IDQwOTY7CiAJ c3RydWN0IGFtZGdwdV9jc19yZXF1ZXN0IGlic19yZXF1ZXN0ID0gezB9OwogCXN0cnVjdCBhbWRn cHVfY3NfaWJfaW5mbyBpYl9pbmZvPSB7MH07Ci0JdWludDMyX3QgZXhwaXJlZDsKKwl1aW50MzJf dCBoYW5nX3N0YXRlLCBoYW5ncywgZXhwaXJlZDsKIAlhbWRncHVfYm9fbGlzdF9oYW5kbGUgYm9f bGlzdDsKIAlzdHJ1Y3QgYW1kZ3B1X2NzX2ZlbmNlIGZlbmNlX3N0YXR1cyA9IHswfTsKIApkaWZm IC0tZ2l0IGEvdGVzdHMvYW1kZ3B1L2NzX3Rlc3RzLmMgYi90ZXN0cy9hbWRncHUvY3NfdGVzdHMu YwppbmRleCBhZTRmNjVmNS4uN2FkMGYwZGMgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2FtZGdwdS9jc190 ZXN0cy5jCisrKyBiL3Rlc3RzL2FtZGdwdS9jc190ZXN0cy5jCkBAIC0zNTgsNyArMzU4LDYgQEAg c3RhdGljIHZvaWQgYW1kZ3B1X2NzX3V2ZF9kZWNvZGUodm9pZCkKIAkJYnNfYWRkciA9IGZiX2Fk ZHIgKyA0KjEwMjQ7CiAJZHBiX2FkZHIgPSBBTElHTihic19hZGRyICsgc2l6ZW9mKHV2ZF9iaXRz dHJlYW0pLCA0KjEwMjQpOwogCi0JY3R4X2FkZHIgPSAwOwogCWlmIChmYW1pbHlfaWQgPj0gQU1E R1BVX0ZBTUlMWV9WSSkgewogCQlpZiAoKGZhbWlseV9pZCA9PSBBTURHUFVfRkFNSUxZX0FJKSB8 fAogCQkgICAgKGNoaXBfaWQgPT0gY2hpcF9yZXYrMHg1MCB8fCBjaGlwX2lkID09IGNoaXBfcmV2 KzB4NUEgfHwKZGlmZiAtLWdpdCBhL3Rlc3RzL2FtZGdwdS9yYXNfdGVzdHMuYyBiL3Rlc3RzL2Ft ZGdwdS9yYXNfdGVzdHMuYwppbmRleCBkNzE0YmU3My4uYzFjNTQzYzEgMTAwNjQ0Ci0tLSBhL3Rl c3RzL2FtZGdwdS9yYXNfdGVzdHMuYworKysgYi90ZXN0cy9hbWRncHUvcmFzX3Rlc3RzLmMKQEAg LTUyMiw2ICs1MjIsMTI0IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X3Jhc19sb29rdXBfaWQoZHJtRGV2 aWNlUHRyIGRldmljZSkKIAlyZXR1cm4gLTE7CiB9CiAKK0NVX0JPT0wgc3VpdGVfcmFzX3Rlc3Rz X2VuYWJsZSh2b2lkKQoreworCWFtZGdwdV9kZXZpY2VfaGFuZGxlIGRldmljZV9oYW5kbGU7CisJ dWludDMyX3QgIG1ham9yX3ZlcnNpb247CisJdWludDMyX3QgIG1pbm9yX3ZlcnNpb247CisJaW50 IGk7CisJZHJtRGV2aWNlUHRyIGRldmljZTsKKworCWZvciAoaSA9IDA7IGkgPCBNQVhfQ0FSRFNf U1VQUE9SVEVEICYmIGRybV9hbWRncHVbaV0gPj0gMDsgaSsrKSB7CisJCWlmIChhbWRncHVfZGV2 aWNlX2luaXRpYWxpemUoZHJtX2FtZGdwdVtpXSwgJm1ham9yX3ZlcnNpb24sCisJCQkJCSZtaW5v cl92ZXJzaW9uLCAmZGV2aWNlX2hhbmRsZSkpCisJCQljb250aW51ZTsKKworCQlpZiAoZHJtR2V0 RGV2aWNlMihkcm1fYW1kZ3B1W2ldLAorCQkJCQlEUk1fREVWSUNFX0dFVF9QQ0lfUkVWSVNJT04s CisJCQkJCSZkZXZpY2UpKQorCQkJY29udGludWU7CisKKwkJaWYgKGRldmljZS0+YnVzdHlwZSA9 PSBEUk1fQlVTX1BDSSAmJgorCQkJCWFtZGdwdV9yYXNfbG9va3VwX2NhcGFiaWxpdHkoZGV2aWNl X2hhbmRsZSkpIHsKKwkJCWFtZGdwdV9kZXZpY2VfZGVpbml0aWFsaXplKGRldmljZV9oYW5kbGUp OworCQkJcmV0dXJuIENVX1RSVUU7CisJCX0KKworCQlpZiAoYW1kZ3B1X2RldmljZV9kZWluaXRp YWxpemUoZGV2aWNlX2hhbmRsZSkpCisJCQljb250aW51ZTsKKwl9CisKKwlyZXR1cm4gQ1VfRkFM U0U7Cit9CisKK2ludCBzdWl0ZV9yYXNfdGVzdHNfaW5pdCh2b2lkKQoreworCWRybURldmljZVB0 ciBkZXZpY2U7CisJYW1kZ3B1X2RldmljZV9oYW5kbGUgZGV2aWNlX2hhbmRsZTsKKwl1aW50MzJf dCAgbWFqb3JfdmVyc2lvbjsKKwl1aW50MzJfdCAgbWlub3JfdmVyc2lvbjsKKwl1aW50MzJfdCAg Y2FwYWJpbGl0eTsKKwlzdHJ1Y3QgcmFzX3Rlc3RfbWFzayB0ZXN0X21hc2s7CisJaW50IGlkOwor CWludCBpOworCWludCByOworCisJZm9yIChpID0gMDsgaSA8IE1BWF9DQVJEU19TVVBQT1JURUQg JiYgZHJtX2FtZGdwdVtpXSA+PSAwOyBpKyspIHsKKwkJciA9IGFtZGdwdV9kZXZpY2VfaW5pdGlh bGl6ZShkcm1fYW1kZ3B1W2ldLCAmbWFqb3JfdmVyc2lvbiwKKwkJCQkmbWlub3JfdmVyc2lvbiwg JmRldmljZV9oYW5kbGUpOworCQlpZiAocikKKwkJCWNvbnRpbnVlOworCisJCWlmIChkcm1HZXRE ZXZpY2UyKGRybV9hbWRncHVbaV0sCisJCQkJCURSTV9ERVZJQ0VfR0VUX1BDSV9SRVZJU0lPTiwK KwkJCQkJJmRldmljZSkpIHsKKwkJCWFtZGdwdV9kZXZpY2VfZGVpbml0aWFsaXplKGRldmljZV9o YW5kbGUpOworCQkJY29udGludWU7CisJCX0KKworCQlpZiAoZGV2aWNlLT5idXN0eXBlICE9IERS TV9CVVNfUENJKSB7CisJCQlhbWRncHVfZGV2aWNlX2RlaW5pdGlhbGl6ZShkZXZpY2VfaGFuZGxl KTsKKwkJCWNvbnRpbnVlOworCQl9CisKKwkJY2FwYWJpbGl0eSA9IGFtZGdwdV9yYXNfbG9va3Vw X2NhcGFiaWxpdHkoZGV2aWNlX2hhbmRsZSk7CisJCWlmIChjYXBhYmlsaXR5ID09IDApIHsKKwkJ CWFtZGdwdV9kZXZpY2VfZGVpbml0aWFsaXplKGRldmljZV9oYW5kbGUpOworCQkJY29udGludWU7 CisKKwkJfQorCisJCWlkID0gYW1kZ3B1X3Jhc19sb29rdXBfaWQoZGV2aWNlKTsKKwkJaWYgKGlk ID09IC0xKSB7CisJCQlhbWRncHVfZGV2aWNlX2RlaW5pdGlhbGl6ZShkZXZpY2VfaGFuZGxlKTsK KwkJCWNvbnRpbnVlOworCQl9CisKKwkJdGVzdF9tYXNrID0gYW1kZ3B1X3Jhc19nZXRfdGVzdF9t YXNrKGRldmljZSk7CisKKwkJZGV2aWNlc1tkZXZpY2VzX2NvdW50KytdID0gKHN0cnVjdCBhbWRn cHVfcmFzX2RhdGEpIHsKKwkJCWRldmljZV9oYW5kbGUsIGlkLCBjYXBhYmlsaXR5LCB0ZXN0X21h c2ssCisJCX07CisJfQorCisJaWYgKGRldmljZXNfY291bnQgPT0gMCkKKwkJcmV0dXJuIENVRV9T SU5JVF9GQUlMRUQ7CisKKwlyZXR1cm4gQ1VFX1NVQ0NFU1M7Cit9CisKK2ludCBzdWl0ZV9yYXNf dGVzdHNfY2xlYW4odm9pZCkKK3sKKwlpbnQgcjsKKwlpbnQgaTsKKwlpbnQgcmV0ID0gQ1VFX1NV Q0NFU1M7CisKKwlmb3IgKGkgPSAwOyBpIDwgZGV2aWNlc19jb3VudDsgaSsrKSB7CisJCXIgPSBh bWRncHVfZGV2aWNlX2RlaW5pdGlhbGl6ZShkZXZpY2VzW2ldLmRldmljZV9oYW5kbGUpOworCQlp ZiAocikKKwkJCXJldCA9IENVRV9TQ0xFQU5fRkFJTEVEOworCX0KKwlyZXR1cm4gcmV0OworfQor CitzdGF0aWMgdm9pZCBhbWRncHVfcmFzX2Rpc2FibGVfdGVzdCh2b2lkKTsKK3N0YXRpYyB2b2lk IGFtZGdwdV9yYXNfZW5hYmxlX3Rlc3Qodm9pZCk7CitzdGF0aWMgdm9pZCBhbWRncHVfcmFzX2lu amVjdF90ZXN0KHZvaWQpOworc3RhdGljIHZvaWQgYW1kZ3B1X3Jhc19xdWVyeV90ZXN0KHZvaWQp Oworc3RhdGljIHZvaWQgYW1kZ3B1X3Jhc19iYXNpY190ZXN0KHZvaWQpOworCitDVV9UZXN0SW5m byByYXNfdGVzdHNbXSA9IHsKKwl7ICJyYXMgYmFzaWMgdGVzdCIsCWFtZGdwdV9yYXNfYmFzaWNf dGVzdCB9LAorCXsgInJhcyBxdWVyeSB0ZXN0IiwJYW1kZ3B1X3Jhc19xdWVyeV90ZXN0IH0sCisJ eyAicmFzIGluamVjdCB0ZXN0IiwJYW1kZ3B1X3Jhc19pbmplY3RfdGVzdCB9LAorCXsgInJhcyBk aXNhYmxlIHRlc3QiLAlhbWRncHVfcmFzX2Rpc2FibGVfdGVzdCB9LAorI2lmIDAKKwl7ICJyYXMg ZW5hYmxlIHRlc3QiLAlhbWRncHVfcmFzX2VuYWJsZV90ZXN0IH0sCisjZW5kaWYKKwlDVV9URVNU X0lORk9fTlVMTCwKK307CisKIC8vaGVscGVycwogCiBzdGF0aWMgaW50IHRlc3RfY2FyZDsKQEAg LTUzMCw4ICs2NDgsMTAgQEAgc3RhdGljIGNoYXIgZGVidWdmc19wYXRoWzEwMjRdOwogc3RhdGlj IHVpbnQzMl90IHJhc19tYXNrOwogc3RhdGljIGFtZGdwdV9kZXZpY2VfaGFuZGxlIGRldmljZV9o YW5kbGU7CiAKLXN0YXRpYyB2b2lkIHNldF90ZXN0X2NhcmQoaW50IGNhcmQpCitzdGF0aWMgaW50 IHNldF90ZXN0X2NhcmQoaW50IGNhcmQpCiB7CisJaW50IGk7CisKIAl0ZXN0X2NhcmQgPSBjYXJk OwogCXNwcmludGYoc3lzZnNfcGF0aCwgIi9zeXMvY2xhc3MvZHJtL2NhcmQlZC9kZXZpY2UvcmFz LyIsIGRldmljZXNbY2FyZF0uaWQpOwogCXNwcmludGYoZGVidWdmc19wYXRoLCAiL3N5cy9rZXJu ZWwvZGVidWcvZHJpLyVkL3Jhcy8iLCBkZXZpY2VzW2NhcmRdLmlkKTsKQEAgLTU0MCw2ICs2NjAs OCBAQCBzdGF0aWMgdm9pZCBzZXRfdGVzdF9jYXJkKGludCBjYXJkKQogCXJhc19ibG9ja19tYXNr X2luamVjdCA9IGRldmljZXNbY2FyZF0udGVzdF9tYXNrLmluamVjdF9tYXNrOwogCXJhc19ibG9j a19tYXNrX3F1ZXJ5ID0gZGV2aWNlc1tjYXJkXS50ZXN0X21hc2sucXVlcnlfbWFzazsKIAlyYXNf YmxvY2tfbWFza19iYXNpYyA9IGRldmljZXNbY2FyZF0udGVzdF9tYXNrLmJhc2ljX21hc2s7CisK KwlyZXR1cm4gMDsKIH0KIAogc3RhdGljIGNvbnN0IGNoYXIgKmdldF9yYXNfc3lzZnNfcm9vdCh2 b2lkKQpAQCAtNjIwLDYgKzc0Miw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X3Jhc19xdWVyeV9lcnJf Y291bnQoZW51bSBhbWRncHVfcmFzX2Jsb2NrIGJsb2NrLAogewogCWNoYXIgYnVmWzY0XTsKIAlj aGFyIG5hbWVbMTAyNF07CisJaW50IHJldDsKIAogCSp1ZSA9ICpjZSA9IDA7CiAKQEAgLTY1Niw3 ICs3NzksNyBAQCBzdGF0aWMgaW50IGFtZGdwdV9yYXNfaW5qZWN0KGVudW0gYW1kZ3B1X3Jhc19i bG9jayBibG9jaywKIAlpbmplY3QtPmhlYWQuYmxvY2sgPSBibG9jazsKIAlpbmplY3QtPmhlYWQu dHlwZSA9IHR5cGU7CiAJaW5qZWN0LT5oZWFkLnN1Yl9ibG9ja19pbmRleCA9IHN1Yl9ibG9jazsK LQlzdHJuY3B5KGluamVjdC0+aGVhZC5uYW1lLCByYXNfYmxvY2tfc3RyKGJsb2NrKSwgc2l6ZW9m KGluamVjdC0+aGVhZC5uYW1lKS0xKTsKKwlzdHJuY3B5KGluamVjdC0+aGVhZC5uYW1lLCByYXNf YmxvY2tfc3RyKGJsb2NrKSwgMzIpOwogCWluamVjdC0+YWRkcmVzcyA9IGFkZHJlc3M7CiAJaW5q ZWN0LT52YWx1ZSA9IHZhbHVlOwogCkBAIC04MzMsNiArOTU2LDggQEAgc3RhdGljIHZvaWQgYW1k Z3B1X3Jhc19xdWVyeV90ZXN0KHZvaWQpCiAKIHN0YXRpYyB2b2lkIGFtZGdwdV9yYXNfYmFzaWNf dGVzdCh2b2lkKQogeworCXVuc2lnbmVkIGxvbmcgdWUsIGNlOworCWNoYXIgbmFtZVsxMDI0XTsK IAlpbnQgcmV0OwogCWludCBpOwogCWludCBqOwpAQCAtODc1LDExNSArMTAwMCwzIEBAIHN0YXRp YyB2b2lkIGFtZGdwdV9yYXNfYmFzaWNfdGVzdCh2b2lkKQogCQl9CiAJfQogfQotCi1DVV9UZXN0 SW5mbyByYXNfdGVzdHNbXSA9IHsKLQl7ICJyYXMgYmFzaWMgdGVzdCIsCWFtZGdwdV9yYXNfYmFz aWNfdGVzdCB9LAotCXsgInJhcyBxdWVyeSB0ZXN0IiwJYW1kZ3B1X3Jhc19xdWVyeV90ZXN0IH0s Ci0JeyAicmFzIGluamVjdCB0ZXN0IiwJYW1kZ3B1X3Jhc19pbmplY3RfdGVzdCB9LAotCXsgInJh cyBkaXNhYmxlIHRlc3QiLAlhbWRncHVfcmFzX2Rpc2FibGVfdGVzdCB9LAotI2lmIDAKLQl7ICJy YXMgZW5hYmxlIHRlc3QiLAlhbWRncHVfcmFzX2VuYWJsZV90ZXN0IH0sCi0jZW5kaWYKLQlDVV9U RVNUX0lORk9fTlVMTCwKLX07Ci0KLUNVX0JPT0wgc3VpdGVfcmFzX3Rlc3RzX2VuYWJsZSh2b2lk KQotewotCWFtZGdwdV9kZXZpY2VfaGFuZGxlIGRldmljZV9oYW5kbGU7Ci0JdWludDMyX3QgIG1h am9yX3ZlcnNpb247Ci0JdWludDMyX3QgIG1pbm9yX3ZlcnNpb247Ci0JaW50IGk7Ci0JZHJtRGV2 aWNlUHRyIGRldmljZTsKLQotCWZvciAoaSA9IDA7IGkgPCBNQVhfQ0FSRFNfU1VQUE9SVEVEICYm IGRybV9hbWRncHVbaV0gPj0gMDsgaSsrKSB7Ci0JCWlmIChhbWRncHVfZGV2aWNlX2luaXRpYWxp emUoZHJtX2FtZGdwdVtpXSwgJm1ham9yX3ZlcnNpb24sCi0JCQkJCSZtaW5vcl92ZXJzaW9uLCAm ZGV2aWNlX2hhbmRsZSkpCi0JCQljb250aW51ZTsKLQotCQlpZiAoZHJtR2V0RGV2aWNlMihkcm1f YW1kZ3B1W2ldLAotCQkJCQlEUk1fREVWSUNFX0dFVF9QQ0lfUkVWSVNJT04sCi0JCQkJCSZkZXZp Y2UpKQotCQkJY29udGludWU7Ci0KLQkJaWYgKGRldmljZS0+YnVzdHlwZSA9PSBEUk1fQlVTX1BD SSAmJgotCQkJCWFtZGdwdV9yYXNfbG9va3VwX2NhcGFiaWxpdHkoZGV2aWNlX2hhbmRsZSkpIHsK LQkJCWFtZGdwdV9kZXZpY2VfZGVpbml0aWFsaXplKGRldmljZV9oYW5kbGUpOwotCQkJcmV0dXJu IENVX1RSVUU7Ci0JCX0KLQotCQlpZiAoYW1kZ3B1X2RldmljZV9kZWluaXRpYWxpemUoZGV2aWNl X2hhbmRsZSkpCi0JCQljb250aW51ZTsKLQl9Ci0KLQlyZXR1cm4gQ1VfRkFMU0U7Ci19Ci0KLWlu dCBzdWl0ZV9yYXNfdGVzdHNfaW5pdCh2b2lkKQotewotCWRybURldmljZVB0ciBkZXZpY2U7Ci0J YW1kZ3B1X2RldmljZV9oYW5kbGUgZGV2aWNlX2hhbmRsZTsKLQl1aW50MzJfdCAgbWFqb3JfdmVy c2lvbjsKLQl1aW50MzJfdCAgbWlub3JfdmVyc2lvbjsKLQl1aW50MzJfdCAgY2FwYWJpbGl0eTsK LQlzdHJ1Y3QgcmFzX3Rlc3RfbWFzayB0ZXN0X21hc2s7Ci0JaW50IGlkOwotCWludCBpOwotCWlu dCByOwotCi0JZm9yIChpID0gMDsgaSA8IE1BWF9DQVJEU19TVVBQT1JURUQgJiYgZHJtX2FtZGdw dVtpXSA+PSAwOyBpKyspIHsKLQkJciA9IGFtZGdwdV9kZXZpY2VfaW5pdGlhbGl6ZShkcm1fYW1k Z3B1W2ldLCAmbWFqb3JfdmVyc2lvbiwKLQkJCQkmbWlub3JfdmVyc2lvbiwgJmRldmljZV9oYW5k bGUpOwotCQlpZiAocikKLQkJCWNvbnRpbnVlOwotCi0JCWlmIChkcm1HZXREZXZpY2UyKGRybV9h bWRncHVbaV0sCi0JCQkJCURSTV9ERVZJQ0VfR0VUX1BDSV9SRVZJU0lPTiwKLQkJCQkJJmRldmlj ZSkpIHsKLQkJCWFtZGdwdV9kZXZpY2VfZGVpbml0aWFsaXplKGRldmljZV9oYW5kbGUpOwotCQkJ Y29udGludWU7Ci0JCX0KLQotCQlpZiAoZGV2aWNlLT5idXN0eXBlICE9IERSTV9CVVNfUENJKSB7 Ci0JCQlhbWRncHVfZGV2aWNlX2RlaW5pdGlhbGl6ZShkZXZpY2VfaGFuZGxlKTsKLQkJCWNvbnRp bnVlOwotCQl9Ci0KLQkJY2FwYWJpbGl0eSA9IGFtZGdwdV9yYXNfbG9va3VwX2NhcGFiaWxpdHko ZGV2aWNlX2hhbmRsZSk7Ci0JCWlmIChjYXBhYmlsaXR5ID09IDApIHsKLQkJCWFtZGdwdV9kZXZp Y2VfZGVpbml0aWFsaXplKGRldmljZV9oYW5kbGUpOwotCQkJY29udGludWU7Ci0KLQkJfQotCi0J CWlkID0gYW1kZ3B1X3Jhc19sb29rdXBfaWQoZGV2aWNlKTsKLQkJaWYgKGlkID09IC0xKSB7Ci0J CQlhbWRncHVfZGV2aWNlX2RlaW5pdGlhbGl6ZShkZXZpY2VfaGFuZGxlKTsKLQkJCWNvbnRpbnVl OwotCQl9Ci0KLQkJdGVzdF9tYXNrID0gYW1kZ3B1X3Jhc19nZXRfdGVzdF9tYXNrKGRldmljZSk7 Ci0KLQkJZGV2aWNlc1tkZXZpY2VzX2NvdW50KytdID0gKHN0cnVjdCBhbWRncHVfcmFzX2RhdGEp IHsKLQkJCWRldmljZV9oYW5kbGUsIGlkLCBjYXBhYmlsaXR5LCB0ZXN0X21hc2ssCi0JCX07Ci0J fQotCi0JaWYgKGRldmljZXNfY291bnQgPT0gMCkKLQkJcmV0dXJuIENVRV9TSU5JVF9GQUlMRUQ7 Ci0KLQlyZXR1cm4gQ1VFX1NVQ0NFU1M7Ci19Ci0KLWludCBzdWl0ZV9yYXNfdGVzdHNfY2xlYW4o dm9pZCkKLXsKLQlpbnQgcjsKLQlpbnQgaTsKLQlpbnQgcmV0ID0gQ1VFX1NVQ0NFU1M7Ci0KLQlm b3IgKGkgPSAwOyBpIDwgZGV2aWNlc19jb3VudDsgaSsrKSB7Ci0JCXIgPSBhbWRncHVfZGV2aWNl X2RlaW5pdGlhbGl6ZShkZXZpY2VzW2ldLmRldmljZV9oYW5kbGUpOwotCQlpZiAocikKLQkJCXJl dCA9IENVRV9TQ0xFQU5fRkFJTEVEOwotCX0KLQlyZXR1cm4gcmV0OwotfQpkaWZmIC0tZ2l0IGEv dGVzdHMvYW1kZ3B1L3N5bmNvYmpfdGVzdHMuYyBiL3Rlc3RzL2FtZGdwdS9zeW5jb2JqX3Rlc3Rz LmMKaW5kZXggM2E3YjM4ZWIuLjg2OWVkODhlIDEwMDY0NAotLS0gYS90ZXN0cy9hbWRncHUvc3lu Y29ial90ZXN0cy5jCisrKyBiL3Rlc3RzL2FtZGdwdS9zeW5jb2JqX3Rlc3RzLmMKQEAgLTk2LDcg Kzk2LDcgQEAgc3RhdGljIGludCBzeW5jb2JqX2NvbW1hbmRfc3VibWlzc2lvbl9oZWxwZXIodWlu dDMyX3Qgc3luY29ial9oYW5kbGUsIGJvb2wKIAlzdHJ1Y3QgYW1kZ3B1X2NzX2ZlbmNlIGZlbmNl X3N0YXR1czsKIAlhbWRncHVfYm9fbGlzdF9oYW5kbGUgYm9fbGlzdDsKIAlhbWRncHVfdmFfaGFu ZGxlIHZhX2hhbmRsZTsKLQl1aW50MzJfdCBleHBpcmVkOworCXVpbnQzMl90IGV4cGlyZWQsIGZs YWdzOwogCWludCBpLCByOwogCXVpbnQ2NF90IHNlcV9ubzsKIAlzdGF0aWMgdWludDMyX3QgKnB0 cjsKY29tbWl0IDU0Yjk4MmRjNmEyM2QxZDQ2MmIwYjgyZmM4OTFkZjYxNTM5MThhMTkKQXV0aG9y OiBNYXJlayBPbMWhw6FrIDxtYXJlay5vbHNha0BhbWQuY29tPgpEYXRlOiAgIFR1ZSBKYW4gNyAx NDo0NDozMSAyMDIwIC0wNTAwCgogICAgUmV2ZXJ0ICJ0ZXN0cy9hbWRncHU6IEZpeCB1bnVzZWQg ZnVuY3Rpb24gd2FybmluZyAodjIpIgogICAgCiAgICBUaGlzIHJldmVydHMgY29tbWl0IDRmZjQ5 OWNkODVmODZhN2I1YjI4ZjM0NDlkZTJmYmFkMWI5MWM3OTUuCgpkaWZmIC0tZ2l0IGEvdGVzdHMv YW1kZ3B1L3Jhc190ZXN0cy5jIGIvdGVzdHMvYW1kZ3B1L3Jhc190ZXN0cy5jCmluZGV4IGY3NDUx NjZiLi5kNzE0YmU3MyAxMDA2NDQKLS0tIGEvdGVzdHMvYW1kZ3B1L3Jhc190ZXN0cy5jCisrKyBi L3Rlc3RzL2FtZGdwdS9yYXNfdGVzdHMuYwpAQCAtODgxLDcgKzg4MSw5IEBAIENVX1Rlc3RJbmZv IHJhc190ZXN0c1tdID0gewogCXsgInJhcyBxdWVyeSB0ZXN0IiwJYW1kZ3B1X3Jhc19xdWVyeV90 ZXN0IH0sCiAJeyAicmFzIGluamVjdCB0ZXN0IiwJYW1kZ3B1X3Jhc19pbmplY3RfdGVzdCB9LAog CXsgInJhcyBkaXNhYmxlIHRlc3QiLAlhbWRncHVfcmFzX2Rpc2FibGVfdGVzdCB9LAorI2lmIDAK IAl7ICJyYXMgZW5hYmxlIHRlc3QiLAlhbWRncHVfcmFzX2VuYWJsZV90ZXN0IH0sCisjZW5kaWYK IAlDVV9URVNUX0lORk9fTlVMTCwKIH07CiAKY29tbWl0IGI5NjAwYmUyMDdmYTFkMzJlNGJkNGYw MzI0ODRjZDQwZDE3N2MzNzgKQXV0aG9yOiBNYXJlayBPbMWhw6FrIDxtYXJlay5vbHNha0BhbWQu Y29tPgpEYXRlOiAgIFR1ZSBKYW4gNyAxNDo0NDoyNyAyMDIwIC0wNTAwCgogICAgUmV2ZXJ0ICJ0 ZXN0cy9hbWRncHU6IEZpeCBidWZmZXIgb3ZlcmZsb3cgKHYzKSIKICAgIAogICAgVGhpcyByZXZl cnRzIGNvbW1pdCA2ODA1NDJjZTA4NmY1ZDBiYTcwMzMxZjhkMzUwZWRmYWUyMGM1MzRmLgoKZGlm ZiAtLWdpdCBhL3Rlc3RzL2FtZGdwdS9yYXNfdGVzdHMuYyBiL3Rlc3RzL2FtZGdwdS9yYXNfdGVz dHMuYwppbmRleCA4MTBiZjE3Mi4uZjc0NTE2NmIgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2FtZGdwdS9y YXNfdGVzdHMuYworKysgYi90ZXN0cy9hbWRncHUvcmFzX3Rlc3RzLmMKQEAgLTMwLDkgKzMwLDYg QEAKICNpbmNsdWRlIDxmY250bC5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSAieGY4 NmRybS5oIgotI2luY2x1ZGUgPGxpbWl0cy5oPgotCi0jZGVmaW5lIFBBVEhfU0laRSBQQVRIX01B WAogCiAjZGVmaW5lIEFSUkFZX1NJWkUoYSkgKHNpemVvZihhKSAvIHNpemVvZigoYSlbMF0pKQog CkBAIC01MDEsNyArNDk4LDcgQEAgc3RhdGljIGludCBnZXRfZmlsZV9jb250ZW50cyhjaGFyICpm aWxlLCBjaGFyICpidWYsIGludCBzaXplKTsKIAogc3RhdGljIGludCBhbWRncHVfcmFzX2xvb2t1 cF9pZChkcm1EZXZpY2VQdHIgZGV2aWNlKQogewotCWNoYXIgcGF0aFtQQVRIX1NJWkVdOworCWNo YXIgcGF0aFsxMDI0XTsKIAljaGFyIHN0clsxMjhdOwogCWRybVBjaUJ1c0luZm8gaW5mbzsKIAlp bnQgaTsKQEAgLTUxMCw3ICs1MDcsNyBAQCBzdGF0aWMgaW50IGFtZGdwdV9yYXNfbG9va3VwX2lk KGRybURldmljZVB0ciBkZXZpY2UpCiAJZm9yIChpID0gMDsgaSA8IE1BWF9DQVJEU19TVVBQT1JU RUQ7IGkrKykgewogCQltZW1zZXQoc3RyLCAwLCBzaXplb2Yoc3RyKSk7CiAJCW1lbXNldCgmaW5m bywgMCwgc2l6ZW9mKGluZm8pKTsKLQkJc25wcmludGYocGF0aCwgUEFUSF9TSVpFLCAiL3N5cy9r ZXJuZWwvZGVidWcvZHJpLyVkL25hbWUiLCBpKTsKKwkJc3ByaW50ZihwYXRoLCAiL3N5cy9rZXJu ZWwvZGVidWcvZHJpLyVkL25hbWUiLCBpKTsKIAkJaWYgKGdldF9maWxlX2NvbnRlbnRzKHBhdGgs IHN0ciwgc2l6ZW9mKHN0cikpIDw9IDApCiAJCQljb250aW51ZTsKIApAQCAtNTI4LDE2ICs1MjUs MTYgQEAgc3RhdGljIGludCBhbWRncHVfcmFzX2xvb2t1cF9pZChkcm1EZXZpY2VQdHIgZGV2aWNl KQogLy9oZWxwZXJzCiAKIHN0YXRpYyBpbnQgdGVzdF9jYXJkOwotc3RhdGljIGNoYXIgc3lzZnNf cGF0aFtQQVRIX1NJWkVdOwotc3RhdGljIGNoYXIgZGVidWdmc19wYXRoW1BBVEhfU0laRV07Citz dGF0aWMgY2hhciBzeXNmc19wYXRoWzEwMjRdOworc3RhdGljIGNoYXIgZGVidWdmc19wYXRoWzEw MjRdOwogc3RhdGljIHVpbnQzMl90IHJhc19tYXNrOwogc3RhdGljIGFtZGdwdV9kZXZpY2VfaGFu ZGxlIGRldmljZV9oYW5kbGU7CiAKIHN0YXRpYyB2b2lkIHNldF90ZXN0X2NhcmQoaW50IGNhcmQp CiB7CiAJdGVzdF9jYXJkID0gY2FyZDsKLQlzbnByaW50ZihzeXNmc19wYXRoLCBQQVRIX1NJWkUs ICIvc3lzL2NsYXNzL2RybS9jYXJkJWQvZGV2aWNlL3Jhcy8iLCBkZXZpY2VzW2NhcmRdLmlkKTsK LQlzbnByaW50ZihkZWJ1Z2ZzX3BhdGgsIFBBVEhfU0laRSwgICIvc3lzL2tlcm5lbC9kZWJ1Zy9k cmkvJWQvcmFzLyIsIGRldmljZXNbY2FyZF0uaWQpOworCXNwcmludGYoc3lzZnNfcGF0aCwgIi9z eXMvY2xhc3MvZHJtL2NhcmQlZC9kZXZpY2UvcmFzLyIsIGRldmljZXNbY2FyZF0uaWQpOworCXNw cmludGYoZGVidWdmc19wYXRoLCAiL3N5cy9rZXJuZWwvZGVidWcvZHJpLyVkL3Jhcy8iLCBkZXZp Y2VzW2NhcmRdLmlkKTsKIAlyYXNfbWFzayA9IGRldmljZXNbY2FyZF0uY2FwYWJpbGl0eTsKIAlk ZXZpY2VfaGFuZGxlID0gZGV2aWNlc1tjYXJkXS5kZXZpY2VfaGFuZGxlOwogCXJhc19ibG9ja19t YXNrX2luamVjdCA9IGRldmljZXNbY2FyZF0udGVzdF9tYXNrLmluamVjdF9tYXNrOwpAQCAtNjA4 LDExICs2MDUsMTAgQEAgc3RhdGljIGludCBhbWRncHVfcmFzX2lzX2ZlYXR1cmVfc3VwcG9ydGVk KGVudW0gYW1kZ3B1X3Jhc19ibG9jayBibG9jaykKIAogc3RhdGljIGludCBhbWRncHVfcmFzX2lu dm9rZShzdHJ1Y3QgcmFzX2RlYnVnX2lmICpkYXRhKQogewotCWNoYXIgcGF0aFtQQVRIX1NJWkVd OworCWNoYXIgcGF0aFsxMDI0XTsKIAlpbnQgcmV0OwogCi0Jc25wcmludGYocGF0aCwgc2l6ZW9m KHBhdGgpLCAiJXMiLCBnZXRfcmFzX2RlYnVnZnNfcm9vdCgpKTsKLQlzdHJuY2F0KHBhdGgsICJy YXNfY3RybCIsIHNpemVvZihwYXRoKSAtIHN0cmxlbihwYXRoKSk7CisJc3ByaW50ZihwYXRoLCAi JXMlcyIsIGdldF9yYXNfZGVidWdmc19yb290KCksICJyYXNfY3RybCIpOwogCiAJcmV0ID0gc2V0 X2ZpbGVfY29udGVudHMocGF0aCwgKGNoYXIgKilkYXRhLCBzaXplb2YoKmRhdGEpKQogCQktIHNp emVvZigqZGF0YSk7CkBAIC02MjMsMTYgKzYxOSwxNCBAQCBzdGF0aWMgaW50IGFtZGdwdV9yYXNf cXVlcnlfZXJyX2NvdW50KGVudW0gYW1kZ3B1X3Jhc19ibG9jayBibG9jaywKIAkJdW5zaWduZWQg bG9uZyAqdWUsIHVuc2lnbmVkIGxvbmcgKmNlKQogewogCWNoYXIgYnVmWzY0XTsKLQljaGFyIG5h bWVbUEFUSF9TSVpFXTsKKwljaGFyIG5hbWVbMTAyNF07CiAKIAkqdWUgPSAqY2UgPSAwOwogCiAJ aWYgKGFtZGdwdV9yYXNfaXNfZmVhdHVyZV9zdXBwb3J0ZWQoYmxvY2spIDw9IDApCiAJCXJldHVy biAtMTsKIAotCXNucHJpbnRmKG5hbWUsIHNpemVvZihuYW1lKSwgIiVzIiwgZ2V0X3Jhc19zeXNm c19yb290KCkpOwotCXN0cm5jYXQobmFtZSwgcmFzX2Jsb2NrX3N0cihibG9jayksIHNpemVvZihu YW1lKSAtIHN0cmxlbihuYW1lKSk7Ci0Jc3RybmNhdChuYW1lLCAiX2Vycl9jb3VudCIsIHNpemVv ZihuYW1lKSAtIHN0cmxlbihuYW1lKSk7CisJc3ByaW50ZihuYW1lLCAiJXMlcyVzIiwgZ2V0X3Jh c19zeXNmc19yb290KCksIHJhc19ibG9ja19zdHIoYmxvY2spLCAiX2Vycl9jb3VudCIpOwogCiAJ aWYgKGlzX2ZpbGVfb2sobmFtZSwgT19SRE9OTFkpKQogCQlyZXR1cm4gMDsKQEAgLTg0Myw3ICs4 MzcsNyBAQCBzdGF0aWMgdm9pZCBhbWRncHVfcmFzX2Jhc2ljX3Rlc3Qodm9pZCkKIAlpbnQgaTsK IAlpbnQgajsKIAl1aW50MzJfdCBmZWF0dXJlczsKLQljaGFyIHBhdGhbUEFUSF9TSVpFXTsKKwlj aGFyIHBhdGhbMTAyNF07CiAKIAlyZXQgPSBpc19maWxlX29rKCIvc3lzL21vZHVsZS9hbWRncHUv cGFyYW1ldGVycy9yYXNfbWFzayIsIE9fUkRPTkxZKTsKIAlDVV9BU1NFUlRfRVFVQUwocmV0LCAw KTsKQEAgLTg1NSwxNSArODQ5LDExIEBAIHN0YXRpYyB2b2lkIGFtZGdwdV9yYXNfYmFzaWNfdGVz dCh2b2lkKQogCQkJCXNpemVvZihmZWF0dXJlcyksICZmZWF0dXJlcyk7CiAJCUNVX0FTU0VSVF9F UVVBTChyZXQsIDApOwogCi0JCXNucHJpbnRmKHBhdGgsIHNpemVvZihwYXRoKSwgIiVzIiwgZ2V0 X3Jhc19kZWJ1Z2ZzX3Jvb3QoKSk7Ci0JCXN0cm5jYXQocGF0aCwgInJhc19jdHJsIiwgc2l6ZW9m KHBhdGgpIC0gc3RybGVuKHBhdGgpKTsKLQorCQlzcHJpbnRmKHBhdGgsICIlcyVzIiwgZ2V0X3Jh c19kZWJ1Z2ZzX3Jvb3QoKSwgInJhc19jdHJsIik7CiAJCXJldCA9IGlzX2ZpbGVfb2socGF0aCwg T19XUk9OTFkpOwogCQlDVV9BU1NFUlRfRVFVQUwocmV0LCAwKTsKIAotCQlzbnByaW50ZihwYXRo LCBzaXplb2YocGF0aCksICIlcyIsIGdldF9yYXNfc3lzZnNfcm9vdCgpKTsKLQkJc3RybmNhdChw YXRoLCAiZmVhdHVyZXMiLCBzaXplb2YocGF0aCkgLSBzdHJsZW4ocGF0aCkpOwotCisJCXNwcmlu dGYocGF0aCwgIiVzJXMiLCBnZXRfcmFzX3N5c2ZzX3Jvb3QoKSwgImZlYXR1cmVzIik7CiAJCXJl dCA9IGlzX2ZpbGVfb2socGF0aCwgT19SRE9OTFkpOwogCQlDVV9BU1NFUlRfRVFVQUwocmV0LCAw KTsKIApAQCAtODc1LDE3ICs4NjUsMTEgQEAgc3RhdGljIHZvaWQgYW1kZ3B1X3Jhc19iYXNpY190 ZXN0KHZvaWQpCiAJCQlpZiAoISgoMSA8PCBqKSAmIHJhc19ibG9ja19tYXNrX2Jhc2ljKSkKIAkJ CQljb250aW51ZTsKIAotCQkJc25wcmludGYocGF0aCwgc2l6ZW9mKHBhdGgpLCAiJXMiLCBnZXRf cmFzX3N5c2ZzX3Jvb3QoKSk7Ci0JCQlzdHJuY2F0KHBhdGgsIHJhc19ibG9ja19zdHIoaiksIHNp emVvZihwYXRoKSAtICBzdHJsZW4ocGF0aCkpOwotCQkJc3RybmNhdChwYXRoLCAiX2Vycl9jb3Vu dCIsIHNpemVvZihwYXRoKSAtIHN0cmxlbihwYXRoKSk7Ci0KKwkJCXNwcmludGYocGF0aCwgIiVz JXMlcyIsIGdldF9yYXNfc3lzZnNfcm9vdCgpLCByYXNfYmxvY2tfc3RyKGopLCAiX2Vycl9jb3Vu dCIpOwogCQkJcmV0ID0gaXNfZmlsZV9vayhwYXRoLCBPX1JET05MWSk7CiAJCQlDVV9BU1NFUlRf RVFVQUwocmV0LCAwKTsKIAotCQkJc25wcmludGYocGF0aCwgc2l6ZW9mKHBhdGgpLCAiJXMiLCBn ZXRfcmFzX2RlYnVnZnNfcm9vdCgpKTsKLQkJCXN0cm5jYXQocGF0aCwgcmFzX2Jsb2NrX3N0cihq KSwgc2l6ZW9mKHBhdGgpIC0gc3RybGVuKHBhdGgpKTsKLQkJCXN0cm5jYXQocGF0aCwgIl9lcnJf aW5qZWN0Iiwgc2l6ZW9mKHBhdGgpIC0gc3RybGVuKHBhdGgpKTsKLQorCQkJc3ByaW50ZihwYXRo LCAiJXMlcyVzIiwgZ2V0X3Jhc19kZWJ1Z2ZzX3Jvb3QoKSwgcmFzX2Jsb2NrX3N0cihqKSwgIl9l cnJfaW5qZWN0Iik7CiAJCQlyZXQgPSBpc19maWxlX29rKHBhdGgsIE9fV1JPTkxZKTsKIAkJCUNV X0FTU0VSVF9FUVVBTChyZXQsIDApOwogCQl9CgoKLS0KX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KRHJpLXBhdGNoZXMgbWFpbGluZyBsaXN0CkRyaS1wYXRj aGVzQGxpc3RzLnNvdXJjZWZvcmdlLm5ldApodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9s aXN0cy9saXN0aW5mby9kcmktcGF0Y2hlcwo=