From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 765EF6E326 for ; Mon, 4 May 2020 07:37:31 +0000 (UTC) From: Arkadiusz Hiler Date: Mon, 4 May 2020 10:37:05 +0300 Message-ID: <20200504073707.268608-1-arkadiusz.hiler@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 1/3] lib: Support multiple filters List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Petri Latvala List-ID: VGhpcyBwYXRjaCBicmluZ3MgYmFjayBzdXBwb3J0IGZvciBtdWx0aXBsZSBmaWx0ZXJzIHRoYXQg d2FzIGluIHRoZQpvcmlnaW5hbCBzZXJpZXMgYnkgWmJ5c3play4KCldlIGNhbiBub3cgdGFrZSBt dWx0aXBsZSwgc2VtaWNvbG9uIHNlcGFyYXRlZCBmaWx0ZXJzLiBSaWdodCBub3cgdGhlCnRlc3Rz IGFyZSB1c2luZyBvbmx5IHRoZSBmaXJzdCBmaWx0ZXIuCgp2MjogZHJvcCB1bm5lY2Vzc2FyeSBj aGVjayBiZWZvcmUgZm9yLWxvb3AgKFBldHJpKQoKQ2M6IFBldHJpIExhdHZhbGEgPHBldHJpLmxh dHZhbGFAaW50ZWwuY29tPgpDYzogWmJpZ25pZXcgS2VtcGN6ecWEc2tpIDx6Ymlnbmlldy5rZW1w Y3p5bnNraUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IEFya2FkaXVzeiBIaWxlciA8YXJrYWRp dXN6LmhpbGVyQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFBldHJpIExhdHZhbGEgPHBldHJpLmxh dHZhbGFAaW50ZWwuY29tPgotLS0KIGxpYi9kcm10ZXN0LmMgICAgICAgICAgfCAgOCArKy0tCiBs aWIvaWd0X2NvcmUuYyAgICAgICAgIHwgMTQgKysrLS0tLQogbGliL2lndF9kZXZpY2Vfc2Nhbi5j ICB8IDg3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQogbGliL2ln dF9kZXZpY2Vfc2Nhbi5oICB8ICA4ICsrLS0KIHRlc3RzL2NvcmVfaG90dW5wbHVnLmMgfCAgMyAr LQogNSBmaWxlcyBjaGFuZ2VkLCA4MSBpbnNlcnRpb25zKCspLCAzOSBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9saWIvZHJtdGVzdC5jIGIvbGliL2RybXRlc3QuYwppbmRleCAxZmMzOTkyNS4u N2IyZmQzMzcgMTAwNjQ0Ci0tLSBhL2xpYi9kcm10ZXN0LmMKKysrIGIvbGliL2RybXRlc3QuYwpA QCAtMzI0LDggKzMyNCw4IEBAIHN0YXRpYyBib29sIF9fZ2V0X3RoZV9maXJzdF9jYXJkKHN0cnVj dCBpZ3RfZGV2aWNlX2NhcmQgKmNhcmQpCiB7CiAJY29uc3QgY2hhciAqZmlsdGVyOwogCi0JaWYg KGlndF9kZXZpY2VfaXNfZmlsdGVyX3NldCgpKSB7Ci0JCWZpbHRlciA9IGlndF9kZXZpY2VfZmls dGVyX2dldCgpOworCWlmIChpZ3RfZGV2aWNlX2ZpbHRlcl9jb3VudCgpID4gMCkgeworCQlmaWx0 ZXIgPSBpZ3RfZGV2aWNlX2ZpbHRlcl9nZXQoMCk7CiAJCWlndF9pbmZvKCJMb29raW5nIGZvciBk ZXZpY2VzIHRvIG9wZW4gdXNpbmcgZmlsdGVyOiAlc1xuIiwgZmlsdGVyKTsKIAogCQlpZiAoaWd0 X2RldmljZV9jYXJkX21hdGNoKGZpbHRlciwgY2FyZCkpIHsKQEAgLTM1NCw3ICszNTQsNyBAQCBz dGF0aWMgYm9vbCBfX2dldF90aGVfZmlyc3RfY2FyZChzdHJ1Y3QgaWd0X2RldmljZV9jYXJkICpj YXJkKQogICovCiBpbnQgX19kcm1fb3Blbl9kcml2ZXIoaW50IGNoaXBzZXQpCiB7Ci0JaWYgKGln dF9kZXZpY2VfaXNfZmlsdGVyX3NldCgpKSB7CisJaWYgKGlndF9kZXZpY2VfZmlsdGVyX2NvdW50 KCkgPiAwKSB7CiAJCWJvb2wgZm91bmQ7CiAJCXN0cnVjdCBpZ3RfZGV2aWNlX2NhcmQgY2FyZDsK IApAQCAtMzcxLDcgKzM3MSw3IEBAIGludCBfX2RybV9vcGVuX2RyaXZlcihpbnQgY2hpcHNldCkK IAogaW50IF9fZHJtX29wZW5fZHJpdmVyX3JlbmRlcihpbnQgY2hpcHNldCkKIHsKLQlpZiAoaWd0 X2RldmljZV9pc19maWx0ZXJfc2V0KCkpIHsKKwlpZiAoaWd0X2RldmljZV9maWx0ZXJfY291bnQo KSA+IDApIHsKIAkJYm9vbCBmb3VuZDsKIAkJc3RydWN0IGlndF9kZXZpY2VfY2FyZCBjYXJkOwog CmRpZmYgLS1naXQgYS9saWIvaWd0X2NvcmUuYyBiL2xpYi9pZ3RfY29yZS5jCmluZGV4IDNmN2I5 ZjY4Li5iYjhkMDE3NyAxMDA2NDQKLS0tIGEvbGliL2lndF9jb3JlLmMKKysrIGIvbGliL2lndF9j b3JlLmMKQEAgLTI0OSw3ICsyNDksNyBAQAogICoJRnJhbWVEdW1wUGF0aD0vdG1wICMgVGhlIHBh dGggdG8gZHVtcCBmcmFtZXMgdGhhdCBmYWlsIGNvbXBhcmlzb24gY2hlY2tzCiAgKgogICoJJm51 bTsgRGV2aWNlIHNlbGVjdGlvbiBmaWx0ZXIKLSAqCURldmljZT1wY2k6dmVuZG9yPTgwODYsY2Fy ZD0wO3ZnZW06CisgKglEZXZpY2U9cGNpOnZlbmRvcj04MDg2LGNhcmQ9MDtzeXM6L3N5cy9kZXZp Y2VzL3BsYXRmb3JtL3ZnZW0KICAqCiAgKgkmbnVtOyBUaGUgZm9sbG93aW5nIHNlY3Rpb24gaXMg dXNlZCBmb3IgY29uZmlndXJpbmcgdGhlIERldmljZSBVbmRlciBUZXN0LgogICoJJm51bTsgSXQg aXMgbm90IG1hbmRhdG9yeSBhbmQgYWxsb3dzIG92ZXJyaWRpbmcgZGVmYXVsdCB2YWx1ZXMuCkBA IC02ODUsNyArNjg1LDcgQEAgc3RhdGljIHZvaWQgcHJpbnRfdXNhZ2UoY29uc3QgY2hhciAqaGVs cF9zdHIsIGJvb2wgb3V0cHV0X29uX3N0ZGVycikKIAkJICAgIiAgLS1za2lwLWNyYy1jb21wYXJl XG4iCiAJCSAgICIgIC0taGVscC1kZXNjcmlwdGlvblxuIgogCQkgICAiICAtLWRlc2NyaWJlXG4i Ci0JCSAgICIgIC0tZGV2aWNlIGZpbHRlclxuIgorCQkgICAiICAtLWRldmljZSBmaWx0ZXJzXG4i CiAJCSAgICIgIC0tdmVyc2lvblxuIgogCQkgICAiICAtLWhlbHB8LWhcbiIpOwogCWlmIChoZWxw X3N0cikKQEAgLTc3OCw3ICs3NzgsNyBAQCBzdGF0aWMgdm9pZCBjb21tb25faW5pdF9jb25maWco dm9pZCkKIAkJaWd0X3NldF9hdXRvcmVzdW1lX2RlbGF5KHJldCk7CiAKIAkvKiBBZGRpbmcgZmls dGVycywgb3JkZXIgLmlndHJjLCBJR1RfREVWSUNFLCAtLWRldmljZSBmaWx0ZXIgKi8KLQlpZiAo aWd0X2RldmljZV9pc19maWx0ZXJfc2V0KCkpCisJaWYgKGlndF9kZXZpY2VfZmlsdGVyX2NvdW50 KCkgPiAwKQogCQlpZ3RfZGVidWcoIk5vdGljZTogdXNpbmcgLS1kZXZpY2UgZmlsdGVyczpcbiIp OwogCWVsc2UgewogCQlpZiAoaWd0X3JjX2RldmljZSkgewpAQCAtNzkzLDE0ICs3OTMsMTQgQEAg c3RhdGljIHZvaWQgY29tbW9uX2luaXRfY29uZmlnKHZvaWQpCiAJCQkJCSAgIkNvbW1vbjo6RGV2 aWNlOlxuIik7CiAJCX0KIAkJaWYgKGlndF9yY19kZXZpY2UpIHsKLQkJCWlndF9kZXZpY2VfZmls dGVyX3NldChpZ3RfcmNfZGV2aWNlKTsKKwkJCWlndF9kZXZpY2VfZmlsdGVyX2FkZChpZ3RfcmNf ZGV2aWNlKTsKIAkJCWZyZWUoaWd0X3JjX2RldmljZSk7CiAJCQlpZ3RfcmNfZGV2aWNlID0gTlVM TDsKIAkJfQogCX0KIAotCWlmIChpZ3RfZGV2aWNlX2lzX2ZpbHRlcl9zZXQoKSkKLQkJaWd0X2Rl YnVnKCJbJXNdXG4iLCBpZ3RfZGV2aWNlX2ZpbHRlcl9nZXQoKSk7CisJZm9yIChpbnQgaSA9IDA7 IGkgPCBpZ3RfZGV2aWNlX2ZpbHRlcl9jb3VudCgpOyBpKyspCisJCWlndF9kZWJ1ZygiWyVzXVxu IiwgaWd0X2RldmljZV9maWx0ZXJfZ2V0KGkpKTsKIH0KIAogc3RhdGljIHZvaWQgY29tbW9uX2lu aXRfZW52KHZvaWQpCkBAIC05OTksNyArOTk5LDcgQEAgc3RhdGljIGludCBjb21tb25faW5pdChp bnQgKmFyZ2MsIGNoYXIgKiphcmd2LAogCQkJCWZyZWUoaWd0X3JjX2RldmljZSk7CiAJCQkJaWd0 X3JjX2RldmljZSA9IE5VTEw7CiAJCQl9Ci0JCQlpZ3RfZGV2aWNlX2ZpbHRlcl9zZXQob3B0YXJn KTsKKwkJCWlndF9kZXZpY2VfZmlsdGVyX2FkZChvcHRhcmcpOwogCQkJYnJlYWs7CiAJCWNhc2Ug T1BUX1ZFUlNJT046CiAJCQlwcmludF92ZXJzaW9uKCk7CmRpZmYgLS1naXQgYS9saWIvaWd0X2Rl dmljZV9zY2FuLmMgYi9saWIvaWd0X2RldmljZV9zY2FuLmMKaW5kZXggMzBhOTcwNGEuLjYwMWQ2 ZmIwIDEwMDY0NAotLS0gYS9saWIvaWd0X2RldmljZV9zY2FuLmMKKysrIGIvbGliL2lndF9kZXZp Y2Vfc2Nhbi5jCkBAIC0xMDE0LDE2ICsxMDE0LDIxIEBAIHZvaWQgaWd0X2RldmljZV9wcmludF9m aWx0ZXJfdHlwZXModm9pZCkKIAl9CiB9CiAKLXN0YXRpYyBjaGFyICpkZXZpY2VfZmlsdGVyOwor c3RydWN0IGRldmljZV9maWx0ZXIgeworCWNoYXIgZmlsdGVyW05BTUVfTUFYXTsKKwlzdHJ1Y3Qg aWd0X2xpc3RfaGVhZCBsaW5rOworfTsKKworc3RhdGljIElHVF9MSVNUX0hFQUQoZGV2aWNlX2Zp bHRlcnMpOwogCiAvKioKLSAqIGlndF9kZXZpY2VfaXNfZmlsdGVyX3NldAorICogaWd0X2Rldmlj ZV9maWx0ZXJfY291bnQKICAqCi0gKiBSZXR1cm5zIHdoZXRoZXIgd2UgaGF2ZSBhIGZpbHRlciBz ZXQuCisgKiBSZXR1cm5zIG51bWJlciBvZiBmaWx0ZXJzIGNvbGxlY3RlZCBpbiB0aGUgZmlsdGVy IGxpc3QuCiAgKi8KLWJvb2wgaWd0X2RldmljZV9pc19maWx0ZXJfc2V0KHZvaWQpCitpbnQgaWd0 X2RldmljZV9maWx0ZXJfY291bnQodm9pZCkKIHsKLQlyZXR1cm4gZGV2aWNlX2ZpbHRlciAhPSBO VUxMOworCXJldHVybiBpZ3RfbGlzdF9sZW5ndGgoJmRldmljZV9maWx0ZXJzKTsKIH0KIAogLyog Q2hlY2sgZG9lcyBmaWx0ZXIgaXMgdmFsaWQuIEl0IGNoZWNrczoKQEAgLTEwNTQsNDMgKzEwNTks NzkgQEAgc3RhdGljIGJvb2wgaXNfZmlsdGVyX3ZhbGlkKGNvbnN0IGNoYXIgKmZzdHIpCiB9CiAK IC8qKgotICogaWd0X2RldmljZV9maWx0ZXJfc2V0Ci0gKiBAZmlsdGVyOiBmaWx0ZXIgdGhhdCBz aG91bGQgYmUgc2V0IGdsb2JhbGx5CisgKiBpZ3RfZGV2aWNlX2ZpbHRlcl9hZGQKKyAqIEBmaWx0 ZXJzOiBmaWx0ZXIocykgdG8gYmUgc3RvcmVkIGluIGZpbHRlciBhcnJheQorICoKKyAqIEZ1bmN0 aW9uIGFsbG93cyBwYXNzaW5nIHNpbmdsZSBvciBtb3JlIGZpbHRlcnMgd2l0aGluIG9uZSBzdHJp bmcuIFRoaXMgaXMKKyAqIGZvciBDSSB3aGVuIGl0IGNhbiBleHRyYWN0IGZpbHRlciBmcm9tIGVu dmlyb25tZW50IHZhcmlhYmxlIChhbmQgaXQgbXVzdAorICogYmUgc2luZ2xlIHN0cmluZykuIFNv IGlmIEBmaWx0ZXIgY29udGFpbnMgc2VtaWNvbG9uICc7JyBpdCB0cmVhdHMKKyAqIGVhY2ggcGFy dCBhcyBzZXBhcmF0ZSBmaWx0ZXIgYW5kIGFkZHMgdG8gdGhlIGZpbHRlciBhcnJheS4KKyAqCisg KiBSZXR1cm5zIG51bWJlciBvZiBmaWx0ZXJzIGFkZGVkIHRvIGZpbHRlciBhcnJheS4gQ2FuIGJl IGdyZWF0ZXIgdGhhbgorICogMSBpZiBAZmlsdGVycyBjb250YWlucyBtb3JlIHRoYW4gb25lIGZp bHRlciBzZXBhcmF0ZWQgYnkgc2VtaWNvbG9uLgogICovCi12b2lkIGlndF9kZXZpY2VfZmlsdGVy X3NldChjb25zdCBjaGFyICpmaWx0ZXIpCitpbnQgaWd0X2RldmljZV9maWx0ZXJfYWRkKGNvbnN0 IGNoYXIgKmZpbHRlcnMpCiB7Ci0JaWYgKCFpc19maWx0ZXJfdmFsaWQoZmlsdGVyKSkgewotCQlp Z3Rfd2FybigiSW52YWxpZCBmaWx0ZXI6ICVzXG4iLCBmaWx0ZXIpOwotCQlyZXR1cm47CisJY2hh ciAqZHVwLCAqZHVwX29yaWcsICpmaWx0ZXI7CisJaW50IGNvdW50ID0gMDsKKworCWR1cCA9IHN0 cmR1cChmaWx0ZXJzKTsKKwlkdXBfb3JpZyA9IGR1cDsKKworCXdoaWxlICgoZmlsdGVyID0gc3Ry c2VwKCZkdXAsICI7IikpKSB7CisJCWJvb2wgaXNfdmFsaWQgPSBpc19maWx0ZXJfdmFsaWQoZmls dGVyKTsKKwkJaWd0X3dhcm5fb24oIWlzX3ZhbGlkKTsKKwkJaWYgKGlzX3ZhbGlkKSB7CisJCQlz dHJ1Y3QgZGV2aWNlX2ZpbHRlciAqZGYgPSBtYWxsb2Moc2l6ZW9mKCpkZikpOworCQkJc3RybmNw eShkZi0+ZmlsdGVyLCBmaWx0ZXIsIHNpemVvZihkZi0+ZmlsdGVyKS0xKTsKKwkJCWlndF9saXN0 X2FkZF90YWlsKCZkZi0+bGluaywgJmRldmljZV9maWx0ZXJzKTsKKwkJCWNvdW50Kys7CisJCX0K IAl9CiAKLQlpZiAoZGV2aWNlX2ZpbHRlciAhPSBOVUxMKQotCQlmcmVlKGRldmljZV9maWx0ZXIp OworCWZyZWUoZHVwX29yaWcpOwogCi0JZGV2aWNlX2ZpbHRlciA9IHN0cmR1cChmaWx0ZXIpOwor CXJldHVybiBjb3VudDsKIH0KIAogLyoqCi0gKiBpZ3RfZGV2aWNlX2ZpbHRlcl9mcmVlCisgKiBp Z3RfZGV2aWNlX2ZpbHRlcl9mcmVlX2FsbAogICoKLSAqIEZyZWUgdGhlIGZpbHRlciB0aGF0IHdl IHN0b3JlIGludGVybmFsbHksIGVmZmVjdGl2ZWx5IHVuc2V0dGluZyBpdC4KKyAqIEZyZWUgYWxs IGZpbHRlcnMgd2l0aGluIGFycmF5LgogICovCi12b2lkIGlndF9kZXZpY2VfZmlsdGVyX2ZyZWUo dm9pZCkKK3ZvaWQgaWd0X2RldmljZV9maWx0ZXJfZnJlZV9hbGwodm9pZCkKIHsKLQlpZiAoZGV2 aWNlX2ZpbHRlciAhPSBOVUxMKQotCQlmcmVlKGRldmljZV9maWx0ZXIpOworCXN0cnVjdCBkZXZp Y2VfZmlsdGVyICpmaWx0ZXIsICp0bXA7CiAKLQlkZXZpY2VfZmlsdGVyID0gTlVMTDsKKwlpZ3Rf bGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKGZpbHRlciwgdG1wLCAmZGV2aWNlX2ZpbHRlcnMsIGxp bmspIHsKKwkJaWd0X2xpc3RfZGVsKCZmaWx0ZXItPmxpbmspOworCQlmcmVlKGZpbHRlcik7CisJ fQogfQogCiAvKioKICAqIGlndF9kZXZpY2VfZmlsdGVyX2dldAorICogQG51bTogTnVtYmVyIG9m IGZpbHRlciBmcm9tIGZpbHRlciBhcnJheQogICoKLSAqIFJldHVybnMgZmlsdGVyIHN0cmluZyBv ciBOVUxMIGlmIG5vdCBzZXQKKyAqIFJldHVybnMgZmlsdGVyIHN0cmluZyBvciBOVUxMIGlmIEBu dW0gaXMgb3V0IG9mIHJhbmdlIG9mIGZpbHRlciBhcnJheS4KICAqLwotY29uc3QgY2hhciAqaWd0 X2RldmljZV9maWx0ZXJfZ2V0KHZvaWQpCitjb25zdCBjaGFyICppZ3RfZGV2aWNlX2ZpbHRlcl9n ZXQoaW50IG51bSkKIHsKLQlyZXR1cm4gZGV2aWNlX2ZpbHRlcjsKKwlzdHJ1Y3QgZGV2aWNlX2Zp bHRlciAqZmlsdGVyOworCWludCBpID0gMDsKKworCWlmIChudW0gPCAwKQorCQlyZXR1cm4gTlVM TDsKKworCisJaWd0X2xpc3RfZm9yX2VhY2hfZW50cnkoZmlsdGVyLCAmZGV2aWNlX2ZpbHRlcnMs IGxpbmspIHsKKwkJaWYgKGkgPT0gbnVtKQorCQkJcmV0dXJuIGZpbHRlci0+ZmlsdGVyOworCQlp Kys7CisJfQorCisKKwlyZXR1cm4gTlVMTDsKIH0KIAogc3RhdGljIGJvb2wgaWd0X2RldmljZV9m aWx0ZXJfYXBwbHkoY29uc3QgY2hhciAqZnN0cikKZGlmZiAtLWdpdCBhL2xpYi9pZ3RfZGV2aWNl X3NjYW4uaCBiL2xpYi9pZ3RfZGV2aWNlX3NjYW4uaAppbmRleCA0NGM5OWRlYy4uMjRlYWZlNjIg MTAwNjQ0Ci0tLSBhL2xpYi9pZ3RfZGV2aWNlX3NjYW4uaAorKysgYi9saWIvaWd0X2RldmljZV9z Y2FuLmgKQEAgLTUwLDEwICs1MCwxMCBAQCB2b2lkIGlndF9kZXZpY2VfcHJpbnRfZmlsdGVyX3R5 cGVzKHZvaWQpOwogICogSUdUIGNhbiBzdG9yZS9yZXRyaWV2ZSBmaWx0ZXJzIHBhc3NlZCBieSB1 c2VyIHVzaW5nICctLWRldmljZScgYXJncy4KICAqLwogCi1ib29sIGlndF9kZXZpY2VfaXNfZmls dGVyX3NldCh2b2lkKTsKLXZvaWQgaWd0X2RldmljZV9maWx0ZXJfc2V0KGNvbnN0IGNoYXIgKmZp bHRlcik7Ci12b2lkIGlndF9kZXZpY2VfZmlsdGVyX2ZyZWUodm9pZCk7Ci1jb25zdCBjaGFyICpp Z3RfZGV2aWNlX2ZpbHRlcl9nZXQodm9pZCk7CitpbnQgaWd0X2RldmljZV9maWx0ZXJfY291bnQo dm9pZCk7CitpbnQgaWd0X2RldmljZV9maWx0ZXJfYWRkKGNvbnN0IGNoYXIgKmZpbHRlcik7Cit2 b2lkIGlndF9kZXZpY2VfZmlsdGVyX2ZyZWVfYWxsKHZvaWQpOworY29uc3QgY2hhciAqaWd0X2Rl dmljZV9maWx0ZXJfZ2V0KGludCBudW0pOwogCiAvKiBVc2UgZmlsdGVyIHRvIG1hdGNoIHRoZSBk ZXZpY2UgYW5kIGZpbGwgY2FyZCBzdHJ1Y3R1cmUgKi8KIGJvb2wgaWd0X2RldmljZV9jYXJkX21h dGNoKGNvbnN0IGNoYXIgKmZpbHRlciwgc3RydWN0IGlndF9kZXZpY2VfY2FyZCAqY2FyZCk7CmRp ZmYgLS1naXQgYS90ZXN0cy9jb3JlX2hvdHVucGx1Zy5jIGIvdGVzdHMvY29yZV9ob3R1bnBsdWcu YwppbmRleCBmOWNmYzhjMy4uZGVkNTNmZDUgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2NvcmVfaG90dW5w bHVnLmMKKysrIGIvdGVzdHMvY29yZV9ob3R1bnBsdWcuYwpAQCAtMTY3LDcgKzE2Nyw4IEBAIHN0 YXRpYyB2b2lkIHNldF9maWx0ZXJfZnJvbV9kZXZpY2UoaW50IGZkKQogCXN0cm5jYXQocGF0aCwg Ii9kZXZpY2UiLCBQQVRIX01BWCAtIHN0cmxlbihwYXRoKSk7CiAJaWd0X2Fzc2VydChyZWFscGF0 aChwYXRoLCBkc3QpKTsKIAotCWlndF9kZXZpY2VfZmlsdGVyX3NldChmaWx0ZXIpOworCWlndF9k ZXZpY2VfZmlsdGVyX2ZyZWVfYWxsKCk7CisJaWd0X2RldmljZV9maWx0ZXJfYWRkKGZpbHRlcik7 CiB9CiAKIC8qIFN1YnRlc3RzICovCi0tIAoyLjI1LjIKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaWd0LWRldgo=