From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: [i-g-t PATCH 06/10] tools/intel_vbt_decode: migrate child device dumping to kernel struct Date: Mon, 28 Aug 2017 15:19:58 +0300 Message-ID: <4acba3a9bf2c2eb112cd96802aca472668fad0df.1503922610.git.jani.nikula@intel.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 653B86E2D2 for ; Mon, 28 Aug 2017 12:20:41 +0000 (UTC) In-Reply-To: In-Reply-To: References: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: jani.nikula@intel.com List-Id: intel-gfx@lists.freedesktop.org UmV0YWluIHRoZSBsZWdhY3kgZGVmaW5pdGlvbiBmb3IgdGhlIG9ic29sZXRlIGNoaWxkIGRldmlj ZSBibG9jaywgYXQKbGVhc3QgZm9yIG5vdy4gTm8gZnVuY3Rpb25hbCBjaGFuZ2VzLgoKU2lnbmVk LW9mZi1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KLS0tCiB0b29scy9p bnRlbF9iaW9zLmggICAgICAgfCA1OCArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogdG9v bHMvaW50ZWxfdmJ0X2RlY29kZS5jIHwgNDUgKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIHRvb2xz L2ludGVsX3ZidF9kZWZzLmggICB8IDk2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAxMTggaW5zZXJ0aW9ucygrKSwgODEg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvaW50ZWxfYmlvcy5oIGIvdG9vbHMvaW50 ZWxfYmlvcy5oCmluZGV4IDhkMWJmN2FlMGM4MS4uM2Y0NDFhNmRhMTdiIDEwMDY0NAotLS0gYS90 b29scy9pbnRlbF9iaW9zLmgKKysrIGIvdG9vbHMvaW50ZWxfYmlvcy5oCkBAIC03Miw3ICs3Miw3 IEBACiAjZGVmaW5lIERFVklDRV9QT1JUX0RQQwkJOAogI2RlZmluZSBERVZJQ0VfUE9SVF9EUEQJ CTkKIAotc3RydWN0IGNoaWxkX2RldmljZV9jb25maWcgeworc3RydWN0IGxlZ2FjeV9jaGlsZF9k ZXZpY2VfY29uZmlnIHsKIAl1aW50MTZfdCBoYW5kbGU7CiAJdWludDE2X3QgZGV2aWNlX3R5cGU7 CS8qIFNlZSBERVZJQ0VfVFlQRV8qIGFib3ZlICovCiAJdWludDhfdCBkZXZpY2VfaWRbMTBdOwpA QCAtOTQsNjUgKzk0LDExIEBAIHN0cnVjdCBjaGlsZF9kZXZpY2VfY29uZmlnIHsKIAl1aW50OF90 IGR2b19mdW5jdGlvbjsKIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOwogCi1zdHJ1Y3QgZWZw X2NoaWxkX2RldmljZV9jb25maWcgewotCXVpbnQxNl90IGhhbmRsZTsKLQl1aW50MTZfdCBkZXZp Y2VfdHlwZTsKLQl1aW50OF90IGkyY19zcGVlZDsKLQl1aW50OF90IGRwX29uYm9hcmRfcmVkcml2 ZXI7IC8qIDE1OCAqLwotCXVpbnQ4X3QgZHBfb25kb2NrX3JlZHJpdmVyOyAvKiAxNTggKi8KLQl1 aW50OF90IGhkbWlfbGV2ZWxfc2hpZnRlcl92YWx1ZTo0OyAvKiAxNjkgKi8KLQl1aW50OF90IGhk bWlfbWF4X2RhdGFfcmF0ZTo0OyAvKiAyMDQgKi8KLQl1aW50MTZfdCBkdGRfYnVmX3B0cjsgLyog MTYxICovCi0JdWludDhfdCBlZGlkbGVzc19lZnA6MTsgLyogMTYxICovCi0JdWludDhfdCBjb21w cmVzc2lvbl9lbmFibGU6MTsgLyogMTk4ICovCi0JdWludDhfdCBjb21wcmVzc2lvbl9tZXRob2Q6 MTsgLyogMTk4ICovCi0JdWludDhfdCBnYW5nZWRfZWRwOjE7IC8qIDIwMiAqLwotCXVpbnQ4X3Qg c2tpcDA6NDsKLQl1aW50OF90IGNvbXByZXNzaW9uX3N0cnVjdHVyZV9pbmRleDo0OyAvKiAxOTgg Ki8KLQl1aW50OF90IHNraXAxOjQ7Ci0JdWludDhfdCBzbGF2ZV9wb3J0OyAvKiAgMjAyICovCi0J dWludDhfdCBza2lwMjsKLQl1aW50MTZfdCBhZGRpbl9vZmZzZXQ7Ci0JdWludDhfdCBwb3J0Owot CXVpbnQ4X3QgaTJjX3BpbjsgLyogZm9yIGFkZC1pbiBjYXJkICovCi0JdWludDhfdCBzbGF2ZV9h ZGRyOyAvKiBmb3IgYWRkLWluIGNhcmQgKi8KLQl1aW50OF90IGRkY19waW47Ci0JdWludDE2X3Qg ZWRpZF9wdHI7Ci0JdWludDhfdCBkdm9fY29uZmlnOwotCXVpbnQ4X3QgZWZwX2RvY2tlZF9wb3J0 OjE7IC8qIDE1OCAqLwotCXVpbnQ4X3QgbGFuZV9yZXZlcnNhbDoxOyAvKiAxODQgKi8KLQl1aW50 OF90IG9uYm9hcmRfbHNwY29uOjE7IC8qIDE5MiAqLwotCXVpbnQ4X3QgaWJvb3N0X2VuYWJsZTox OyAvKiAxOTYgKi8KLQl1aW50OF90IGhwZF9pbnZlcnQ6MTsgLyogQlhUIDE5NiAqLwotCXVpbnQ4 X3Qgc2xpcDM6MzsKLQl1aW50OF90IGhkbWlfY29tcGF0OjE7Ci0JdWludDhfdCBkcF9jb21wYXQ6 MTsKLQl1aW50OF90IHRtZHNfY29tcGF0OjE7Ci0JdWludDhfdCBza2lwNDo1OwotCXVpbnQ4X3Qg YXV4X2NoYW47Ci0JdWludDhfdCBkb25nbGVfZGV0ZWN0OwotCXVpbnQ4X3QgcGlwZV9jYXA6MjsK LQl1aW50OF90IHNkdm9fc3RhbGw6MTsgLyogMTU4ICovCi0JdWludDhfdCBocGRfc3RhdHVzOjI7 Ci0JdWludDhfdCBpbnRlZ3JhdGVkX2VuY29kZXI6MTsKLQl1aW50OF90IHNraXA1OjI7Ci0JdWlu dDhfdCBkdm9fd2lyaW5nOwotCXVpbnQ4X3QgbWlwaV9icmlkZ2VfdHlwZTsgLyogMTcxICovCi0J dWludDE2X3QgZGV2aWNlX2NsYXNzX2V4dDsKLQl1aW50OF90IGR2b19mdW5jdGlvbjsKLQl1aW50 OF90IGRwX3VzYl90eXBlX2M6MTsgLyogMTk1ICovCi0JdWludDhfdCBza2lwNjo3OwotCXVpbnQ4 X3QgZHBfdXNiX3R5cGVfY18yeF9ncGlvX2luZGV4OyAvKiAxOTUgKi8KLQl1aW50MTZfdCBkcF91 c2JfdHlwZV9jXzJ4X2dwaW9fcGluOyAvKiAxOTUgKi8KLQl1aW50OF90IGlib29zdF9kcDo0OyAv KiAxOTYgKi8KLQl1aW50OF90IGlib29zdF9oZG1pOjQ7IC8qIDE5NiAqLwotfSBfX2F0dHJpYnV0 ZV9fICgocGFja2VkKSk7Ci0KICNkZWZpbmUgREVWSUNFX0NISUxEX1NJWkUgNwogCiBzdHJ1Y3Qg YmRiX2NoaWxkX2RldmljZXMgewogCXVpbnQ4X3QgY2hpbGRfc3RydWN0dXJlX3NpemU7Ci0Jc3Ry dWN0IGNoaWxkX2RldmljZV9jb25maWcgY2hpbGRyZW5bREVWSUNFX0NISUxEX1NJWkVdOworCXN0 cnVjdCBsZWdhY3lfY2hpbGRfZGV2aWNlX2NvbmZpZyBjaGlsZHJlbltERVZJQ0VfQ0hJTERfU0la RV07CiB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKIAogc3RydWN0IGJsY19zdHJ1Y3Qgewpk aWZmIC0tZ2l0IGEvdG9vbHMvaW50ZWxfdmJ0X2RlY29kZS5jIGIvdG9vbHMvaW50ZWxfdmJ0X2Rl Y29kZS5jCmluZGV4IGJlYjMzNjcyODM1ZS4uNzExZjI5OTc5NDE4IDEwMDY0NAotLS0gYS90b29s cy9pbnRlbF92YnRfZGVjb2RlLmMKKysrIGIvdG9vbHMvaW50ZWxfdmJ0X2RlY29kZS5jCkBAIC0z ODMsNiArMzgzLDcgQEAgc3RhdGljIGNvbnN0IGNoYXIgKmVmcF9wb3J0KHVpbnQ4X3QgdHlwZSkK IHN0YXRpYyB2b2lkIGR1bXBfY2hpbGRfZGV2aWNlKHN0cnVjdCBjb250ZXh0ICpjb250ZXh0LAog CQkJICAgICAgY29uc3Qgc3RydWN0IGNoaWxkX2RldmljZV9jb25maWcgKmNoaWxkKQogeworCWNv bnN0IHN0cnVjdCBjaGlsZF9kZXZpY2VfY29uZmlnICplZnAgPSBjaGlsZDsKIAljaGFyIGNoaWxk X2lkWzExXTsKIAogCWlmICghY2hpbGQtPmRldmljZV90eXBlKQpAQCAtMzk5LDggKzQwMCw2IEBA IHN0YXRpYyB2b2lkIGR1bXBfY2hpbGRfZGV2aWNlKHN0cnVjdCBjb250ZXh0ICpjb250ZXh0LAog CQlwcmludGYoIlx0XHRBSU0gb2Zmc2V0OiAlZFxuIiwgY2hpbGQtPmFkZGluX29mZnNldCk7CiAJ CXByaW50ZigiXHRcdERWTyBwb3J0OiAweCUwMnhcbiIsIGNoaWxkLT5kdm9fcG9ydCk7CiAJfSBl bHNlIHsgLyogMTUyKyBoYXZlIEVGUCBibG9ja3MgaGVyZSAqLwotCQljb25zdCBzdHJ1Y3QgZWZw X2NoaWxkX2RldmljZV9jb25maWcgKmVmcCA9Ci0JCQkoY29uc3Qgc3RydWN0IGVmcF9jaGlsZF9k ZXZpY2VfY29uZmlnICopY2hpbGQ7CiAJCXByaW50ZigiXHRFRlAgZGV2aWNlIGluZm86XG4iKTsK IAkJcHJpbnRmKCJcdFx0RGV2aWNlIGhhbmRsZTogMHglMDR4ICglcylcbiIsIGVmcC0+aGFuZGxl LAogCQkgICAgICAgY2hpbGRfZGV2aWNlX2hhbmRsZShlZnAtPmhhbmRsZSkpOwpAQCAtNDIwLDIx ICs0MTksMjEgQEAgc3RhdGljIHZvaWQgZHVtcF9jaGlsZF9kZXZpY2Uoc3RydWN0IGNvbnRleHQg KmNvbnRleHQsCiAJCXByaW50ZigiXHRcdENvbXByZXNzaW9uIHN0cnVjdHVyZSBpbmRleDogMHgl MDJ4KVxuIiwgZWZwLT5jb21wcmVzc2lvbl9zdHJ1Y3R1cmVfaW5kZXgpOwogCQlwcmludGYoIlx0 XHRTbGF2ZSBEREkgcG9ydDogMHglMDJ4ICglcylcbiIsIGVmcC0+c2xhdmVfcG9ydCwgZWZwX3Bv cnQoZWZwLT5zbGF2ZV9wb3J0KSk7CiAJCXByaW50ZigiXHRcdEFJTSBvZmZzZXQ6ICVkXG4iLCBj aGlsZC0+YWRkaW5fb2Zmc2V0KTsKLQkJcHJpbnRmKCJcdFx0UG9ydDogMHglMDJ4ICglcylcbiIs IGVmcC0+cG9ydCwgZWZwX3BvcnQoZWZwLT5wb3J0KSk7CisJCXByaW50ZigiXHRcdFBvcnQ6IDB4 JTAyeCAoJXMpXG4iLCBlZnAtPmR2b19wb3J0LCBlZnBfcG9ydChlZnAtPmR2b19wb3J0KSk7CiAJ CXByaW50ZigiXHRcdEFJTSBJMkMgcGluOiAweCUwMnhcbiIsIGVmcC0+aTJjX3Bpbik7CiAJCXBy aW50ZigiXHRcdEFJTSBTbGF2ZSBhZGRyZXNzOiAweCUwMnhcbiIsIGVmcC0+c2xhdmVfYWRkcik7 CiAJCXByaW50ZigiXHRcdEREQyBwaW46IDB4JTAyeFxuIiwgZWZwLT5kZGNfcGluKTsKIAkJcHJp bnRmKCJcdFx0RURJRCBidWZmZXIgcHRyOiAweCUwMnhcbiIsIGVmcC0+ZWRpZF9wdHIpOwotCQlw cmludGYoIlx0XHREVk8gY29uZmlnOiAweCUwMnhcbiIsIGVmcC0+ZHZvX2NvbmZpZyk7CisJCXBy aW50ZigiXHRcdERWTyBjb25maWc6IDB4JTAyeFxuIiwgZWZwLT5kdm9fY2ZnKTsKIAkJcHJpbnRm KCJcdFx0SFBEIHNlbnNlIGludmVydDogJXNcbiIsIFlFU05PKGVmcC0+aHBkX2ludmVydCkpOwot CQlwcmludGYoIlx0XHRJYm9vc3QgZW5hYmxlOiAlc1xuIiwgWUVTTk8oZWZwLT5pYm9vc3RfZW5h YmxlKSk7Ci0JCXByaW50ZigiXHRcdE9uYm9hcmQgTFNQQ09OOiAlc1xuIiwgWUVTTk8oZWZwLT5v bmJvYXJkX2xzcGNvbikpOworCQlwcmludGYoIlx0XHRJYm9vc3QgZW5hYmxlOiAlc1xuIiwgWUVT Tk8oZWZwLT5pYm9vc3QpKTsKKwkJcHJpbnRmKCJcdFx0T25ib2FyZCBMU1BDT046ICVzXG4iLCBZ RVNOTyhlZnAtPmxzcGNvbikpOwogCQlwcmludGYoIlx0XHRMYW5lIHJldmVyc2FsOiAlc1xuIiwg WUVTTk8oZWZwLT5sYW5lX3JldmVyc2FsKSk7Ci0JCXByaW50ZigiXHRcdEVGUCByb3V0ZWQgdGhy b3VnaCBkb2NrOiAlc1xuIiwgWUVTTk8oZWZwLT5lZnBfZG9ja2VkX3BvcnQpKTsKLQkJcHJpbnRm KCJcdFx0SERNSSBjb21wYXRpYmxlPyAlc1xuIiwgWUVTTk8oZWZwLT5oZG1pX2NvbXBhdCkpOwot CQlwcmludGYoIlx0XHREUCBjb21wYXRpYmxlPyAlc1xuIiwgWUVTTk8oZWZwLT5kcF9jb21wYXQp KTsKLQkJcHJpbnRmKCJcdFx0VE1EUyBjb21wYXRpYmxlPyAlc1xuIiwgWUVTTk8oZWZwLT50bWRz X2NvbXBhdCkpOwotCQlwcmludGYoIlx0XHRBdXggY2hhbm5lbDogMHglMDJ4XG4iLCBlZnAtPmF1 eF9jaGFuKTsKKwkJcHJpbnRmKCJcdFx0RUZQIHJvdXRlZCB0aHJvdWdoIGRvY2s6ICVzXG4iLCBZ RVNOTyhlZnAtPmVmcF9yb3V0ZWQpKTsKKwkJcHJpbnRmKCJcdFx0SERNSSBjb21wYXRpYmxlPyAl c1xuIiwgWUVTTk8oZWZwLT5oZG1pX3N1cHBvcnQpKTsKKwkJcHJpbnRmKCJcdFx0RFAgY29tcGF0 aWJsZT8gJXNcbiIsIFlFU05PKGVmcC0+ZHBfc3VwcG9ydCkpOworCQlwcmludGYoIlx0XHRUTURT IGNvbXBhdGlibGU/ICVzXG4iLCBZRVNOTyhlZnAtPnRtZHNfc3VwcG9ydCkpOworCQlwcmludGYo Ilx0XHRBdXggY2hhbm5lbDogMHglMDJ4XG4iLCBlZnAtPmF1eF9jaGFubmVsKTsKIAkJcHJpbnRm KCJcdFx0RG9uZ2xlIGRldGVjdDogMHglMDJ4XG4iLCBlZnAtPmRvbmdsZV9kZXRlY3QpOwogCQlw cmludGYoIlx0XHRJbnRlZ3JhdGVkIGVuY29kZXIgaW5zdGVhZCBvZiBTRFZPOiAlc1xuIiwgWUVT Tk8oZWZwLT5pbnRlZ3JhdGVkX2VuY29kZXIpKTsKIAkJcHJpbnRmKCJcdFx0SG90cGx1IGNvbm5l Y3Qgc3RhdHVzOiAweCUwMnhcbiIsIGVmcC0+aHBkX3N0YXR1cyk7CkBAIC00NTYsMjMgKzQ1NSwx OSBAQCBzdGF0aWMgdm9pZCBkdW1wX2NoaWxkX2RldmljZShzdHJ1Y3QgY29udGV4dCAqY29udGV4 dCwKIAkJCXByaW50ZigiKHVua25vd24gdmFsdWUgJWQpXG4iLCBlZnAtPm1pcGlfYnJpZGdlX3R5 cGUpOwogCQkJYnJlYWs7CiAJCX0KLQkJcHJpbnRmKCJcdFx0RGV2aWNlIGNsYXNzIGV4dGVuZHNp b246IDB4JTAyeFxuIiwgZWZwLT5kZXZpY2VfY2xhc3NfZXh0KTsKKwkJcHJpbnRmKCJcdFx0RGV2 aWNlIGNsYXNzIGV4dGVuZHNpb246IDB4JTAyeFxuIiwgZWZwLT5leHRlbmRlZF90eXBlKTsKIAkJ cHJpbnRmKCJcdFx0RFZPIGZ1bmN0aW9uOiAweCUwMnhcbiIsIGVmcC0+ZHZvX2Z1bmN0aW9uKTsK IAl9CiAKIAlpZiAoY29udGV4dC0+YmRiLT52ZXJzaW9uID49IDE5NSkgewotCQljb25zdCBzdHJ1 Y3QgZWZwX2NoaWxkX2RldmljZV9jb25maWcgKmVmcCA9Ci0JCQkoY29uc3Qgc3RydWN0IGVmcF9j aGlsZF9kZXZpY2VfY29uZmlnICopY2hpbGQ7CiAJCXByaW50ZigiXHRcdERQIFVTQiB0eXBlIEMg c3VwcG9ydDogJXNcbiIsIFlFU05PKGVmcC0+ZHBfdXNiX3R5cGVfYykpOwotCQlwcmludGYoIlx0 XHQyWCBEUCBHUElPIGluZGV4OiAweCUwMnhcbiIsIGVmcC0+ZHBfdXNiX3R5cGVfY18yeF9ncGlv X2luZGV4KTsKLQkJcHJpbnRmKCJcdFx0MlggRFAgR1BJTyBwaW4gbnVtYmVyOiAweCUwMnhcbiIs IGVmcC0+ZHBfdXNiX3R5cGVfY18yeF9ncGlvX3Bpbik7CisJCXByaW50ZigiXHRcdDJYIERQIEdQ SU8gaW5kZXg6IDB4JTAyeFxuIiwgZWZwLT5kcF9ncGlvX2luZGV4KTsKKwkJcHJpbnRmKCJcdFx0 MlggRFAgR1BJTyBwaW4gbnVtYmVyOiAweCUwMnhcbiIsIGVmcC0+ZHBfZ3Bpb19waW5fbnVtKTsK IAl9CiAKIAlpZiAoY29udGV4dC0+YmRiLT52ZXJzaW9uID49IDE5NikgewotCQljb25zdCBzdHJ1 Y3QgZWZwX2NoaWxkX2RldmljZV9jb25maWcgKmVmcCA9Ci0JCQkoY29uc3Qgc3RydWN0IGVmcF9j aGlsZF9kZXZpY2VfY29uZmlnICopY2hpbGQ7Ci0JCXByaW50ZigiXHRcdElCb29zdCBsZXZlbCBm b3IgSERNSTogMHglMDJ4XG4iLCBlZnAtPmlib29zdF9oZG1pKTsKLQkJcHJpbnRmKCJcdFx0SUJv b3N0IGxldmVsIGZvciBEUC9lRFA6IDB4JTAyeFxuIiwgZWZwLT5pYm9vc3RfZHApOworCQlwcmlu dGYoIlx0XHRJQm9vc3QgbGV2ZWwgZm9yIEhETUk6IDB4JTAyeFxuIiwgZWZwLT5oZG1pX2lib29z dF9sZXZlbCk7CisJCXByaW50ZigiXHRcdElCb29zdCBsZXZlbCBmb3IgRFAvZURQOiAweCUwMnhc biIsIGVmcC0+ZHBfaWJvb3N0X2xldmVsKTsKIAl9CiB9CiAKQEAgLTQ5OCwxMSArNDkzLDExIEBA IHN0YXRpYyB2b2lkIGR1bXBfZ2VuZXJhbF9kZWZpbml0aW9ucyhzdHJ1Y3QgY29udGV4dCAqY29u dGV4dCwKIAkJZHVtcF9jaGlsZF9kZXZpY2UoY29udGV4dCwgKGNvbnN0IHZvaWQqKSZkZWZzLT5k ZXZpY2VzW2kgKiBkZWZzLT5jaGlsZF9kZXZfc2l6ZV0pOwogfQogCi1zdGF0aWMgdm9pZCBkdW1w X2NoaWxkX2RldmljZXMoc3RydWN0IGNvbnRleHQgKmNvbnRleHQsCi0JCQkgICAgICAgY29uc3Qg c3RydWN0IGJkYl9ibG9jayAqYmxvY2spCitzdGF0aWMgdm9pZCBkdW1wX2xlZ2FjeV9jaGlsZF9k ZXZpY2VzKHN0cnVjdCBjb250ZXh0ICpjb250ZXh0LAorCQkJCSAgICAgIGNvbnN0IHN0cnVjdCBi ZGJfYmxvY2sgKmJsb2NrKQogewogCWNvbnN0IHN0cnVjdCBiZGJfY2hpbGRfZGV2aWNlcyAqY2hp bGRfZGV2cyA9IGJsb2NrLT5kYXRhOwotCWNvbnN0IHN0cnVjdCBjaGlsZF9kZXZpY2VfY29uZmln ICpjaGlsZDsKKwljb25zdCBzdHJ1Y3QgbGVnYWN5X2NoaWxkX2RldmljZV9jb25maWcgKmNoaWxk OwogCWludCBpOwogCiAJZm9yIChpID0gMDsgaSA8IERFVklDRV9DSElMRF9TSVpFOyBpKyspIHsK QEAgLTE1MTcsOCArMTUxMiw4IEBAIHN0cnVjdCBkdW1wZXIgZHVtcGVyc1tdID0gewogCX0sCiAJ ewogCQkuaWQgPSBCREJfQ0hJTERfREVWSUNFX1RBQkxFLAotCQkubmFtZSA9ICJDaGlsZCBkZXZp Y2VzIGJsb2NrIiwKLQkJLmR1bXAgPSBkdW1wX2NoaWxkX2RldmljZXMsCisJCS5uYW1lID0gIkxl Z2FjeSBjaGlsZCBkZXZpY2VzIGJsb2NrIiwKKwkJLmR1bXAgPSBkdW1wX2xlZ2FjeV9jaGlsZF9k ZXZpY2VzLAogCX0sCiAJewogCQkuaWQgPSBCREJfTFZEU19PUFRJT05TLApkaWZmIC0tZ2l0IGEv dG9vbHMvaW50ZWxfdmJ0X2RlZnMuaCBiL3Rvb2xzL2ludGVsX3ZidF9kZWZzLmgKaW5kZXggOGJk YjIyOTI3NDdiLi5kY2I2ZjM2NDQzYWQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2ludGVsX3ZidF9kZWZz LmgKKysrIGIvdG9vbHMvaW50ZWxfdmJ0X2RlZnMuaApAQCAtMjkwLDYgKzI5MCwxMDIgQEAgc3Ry dWN0IGJkYl9nZW5lcmFsX2ZlYXR1cmVzIHsKIAogI2RlZmluZSBMRUdBQ1lfQ0hJTERfREVWSUNF X0NPTkZJR19TSVpFCQkzMwogCisvKgorICogVGhlIGNoaWxkIGRldmljZSBjb25maWcsIGFrYSB0 aGUgZGlzcGxheSBkZXZpY2UgZGF0YSBzdHJ1Y3R1cmUsIHByb3ZpZGVzIGEKKyAqIGRlc2NyaXB0 aW9uIG9mIGEgcG9ydCBhbmQgaXRzIGNvbmZpZ3VyYXRpb24gb24gdGhlIHBsYXRmb3JtLgorICoK KyAqIFRoZSBjaGlsZCBkZXZpY2UgY29uZmlnIHNpemUgaGFzIGJlZW4gaW5jcmVhc2VkLCBhbmQg ZmllbGRzIGhhdmUgYmVlbiBhZGRlZAorICogYW5kIHRoZWlyIG1lYW5pbmcgaGFzIGNoYW5nZWQg b3ZlciB0aW1lLiBDYXJlIG11c3QgYmUgdGFrZW4gd2hlbiBhY2Nlc3NpbmcKKyAqIGJhc2ljYWxs eSBhbnkgb2YgdGhlIGZpZWxkcyB0byBlbnN1cmUgdGhlIGNvcnJlY3QgaW50ZXJwcmV0YXRpb24g Zm9yIHRoZSBCREIKKyAqIHZlcnNpb24gaW4gcXVlc3Rpb24uCisgKgorICogV2hlbiB3ZSBjb3B5 IHRoZSBjaGlsZCBkZXZpY2UgY29uZmlncyB0byBkZXZfcHJpdi0+dmJ0LmNoaWxkX2Rldiwgd2Ug cmVzZXJ2ZQorICogc3BhY2UgZm9yIHRoZSBmdWxsIHN0cnVjdHVyZSBiZWxvdywgYW5kIGluaXRp YWxpemUgdGhlIHRhaWwgbm90IGFjdHVhbGx5CisgKiBwcmVzZW50IGluIFZCVCB0byB6ZXJvcy4g QWNjZXNzaW5nIHRob3NlIGZpZWxkcyBpcyBmaW5lLCBhcyBsb25nIGFzIHRoZQorICogZGVmYXVs dCB6ZXJvIGlzIHRha2VuIGludG8gYWNjb3VudCwgYWdhaW4gYWNjb3JkaW5nIHRvIHRoZSBCREIg dmVyc2lvbi4KKyAqCisgKiBCREIgdmVyc2lvbnMgMTU1IGFuZCBiZWxvdyBhcmUgY29uc2lkZXJl ZCBsZWdhY3ksIGFuZCB2ZXJzaW9uIDE1NSBzZWVtcyB0byBiZQorICogYSBiYXNlbGluZSBmb3Ig c29tZSBvZiB0aGUgVkJUIGRvY3VtZW50YXRpb24uIFdoZW4gYWRkaW5nIG5ldyBmaWVsZHMsIHBs ZWFzZQorICogaW5jbHVkZSB0aGUgQkRCIHZlcnNpb24gd2hlbiB0aGUgZmllbGQgd2FzIGFkZGVk LCBpZiBpdCdzIGFib3ZlIHRoYXQuCisgKi8KK3N0cnVjdCBjaGlsZF9kZXZpY2VfY29uZmlnIHsK Kwl1MTYgaGFuZGxlOworCXUxNiBkZXZpY2VfdHlwZTsgLyogU2VlIERFVklDRV9UWVBFXyogYWJv dmUgKi8KKworCXVuaW9uIHsKKwkJdTggIGRldmljZV9pZFsxMF07IC8qIGFzY2lpIHN0cmluZyAq LworCQlzdHJ1Y3QgeworCQkJdTggaTJjX3NwZWVkOworCQkJdTggZHBfb25ib2FyZF9yZWRyaXZl cjsJCQkvKiAxNTggKi8KKwkJCXU4IGRwX29uZG9ja19yZWRyaXZlcjsJCQkvKiAxNTggKi8KKwkJ CXU4IGhkbWlfbGV2ZWxfc2hpZnRlcl92YWx1ZTo0OwkJLyogMTY5ICovCisJCQl1OCBoZG1pX21h eF9kYXRhX3JhdGU6NDsJCS8qIDIwNCAqLworCQkJdTE2IGR0ZF9idWZfcHRyOwkJCS8qIDE2MSAq LworCQkJdTggZWRpZGxlc3NfZWZwOjE7CQkJLyogMTYxICovCisJCQl1OCBjb21wcmVzc2lvbl9l bmFibGU6MTsJCS8qIDE5OCAqLworCQkJdTggY29tcHJlc3Npb25fbWV0aG9kOjE7CQkvKiAxOTgg Ki8KKwkJCXU4IGdhbmdlZF9lZHA6MTsJCQkvKiAyMDIgKi8KKwkJCXU4IHJlc2VydmVkMDo0Owor CQkJdTggY29tcHJlc3Npb25fc3RydWN0dXJlX2luZGV4OjQ7CS8qIDE5OCAqLworCQkJdTggcmVz ZXJ2ZWQxOjQ7CisJCQl1OCBzbGF2ZV9wb3J0OwkJCQkvKiAyMDIgKi8KKwkJCXU4IHJlc2VydmVk MjsKKwkJfSBfX3BhY2tlZDsKKwl9IF9fcGFja2VkOworCisJdTE2IGFkZGluX29mZnNldDsKKwl1 OCBkdm9fcG9ydDsgLyogU2VlIERFVklDRV9QT1JUXyogYW5kIERWT19QT1JUXyogYWJvdmUgKi8K Kwl1OCBpMmNfcGluOworCXU4IHNsYXZlX2FkZHI7CisJdTggZGRjX3BpbjsKKwl1MTYgZWRpZF9w dHI7CisJdTggZHZvX2NmZzsgLyogU2VlIERFVklDRV9DRkdfKiBhYm92ZSAqLworCisJdW5pb24g eworCQlzdHJ1Y3QgeworCQkJdTggZHZvMl9wb3J0OworCQkJdTggaTJjMl9waW47CisJCQl1OCBz bGF2ZTJfYWRkcjsKKwkJCXU4IGRkYzJfcGluOworCQl9IF9fcGFja2VkOworCQlzdHJ1Y3Qgewor CQkJdTggZWZwX3JvdXRlZDoxOwkJCS8qIDE1OCAqLworCQkJdTggbGFuZV9yZXZlcnNhbDoxOwkJ CS8qIDE4NCAqLworCQkJdTggbHNwY29uOjE7CQkJCS8qIDE5MiAqLworCQkJdTggaWJvb3N0OjE7 CQkJCS8qIDE5NiAqLworCQkJdTggaHBkX2ludmVydDoxOwkJCS8qIDE5NiAqLworCQkJdTggZmxh Z19yZXNlcnZlZDozOworCQkJdTggaGRtaV9zdXBwb3J0OjE7CQkJLyogMTU4ICovCisJCQl1OCBk cF9zdXBwb3J0OjE7CQkJLyogMTU4ICovCisJCQl1OCB0bWRzX3N1cHBvcnQ6MTsJCQkvKiAxNTgg Ki8KKwkJCXU4IHN1cHBvcnRfcmVzZXJ2ZWQ6NTsKKwkJCXU4IGF1eF9jaGFubmVsOworCQkJdTgg ZG9uZ2xlX2RldGVjdDsKKwkJfSBfX3BhY2tlZDsKKwl9IF9fcGFja2VkOworCisJdTggcGlwZV9j YXA6MjsKKwl1OCBzZHZvX3N0YWxsOjE7CQkJCQkvKiAxNTggKi8KKwl1OCBocGRfc3RhdHVzOjI7 CisJdTggaW50ZWdyYXRlZF9lbmNvZGVyOjE7CisJdTggY2FwYWJpbGl0aWVzX3Jlc2VydmVkOjI7 CisJdTggZHZvX3dpcmluZzsgLyogU2VlIERFVklDRV9XSVJFXyogYWJvdmUgKi8KKworCXVuaW9u IHsKKwkJdTggZHZvMl93aXJpbmc7CisJCXU4IG1pcGlfYnJpZGdlX3R5cGU7CQkJCS8qIDE3MSAq LworCX0gX19wYWNrZWQ7CisKKwl1MTYgZXh0ZW5kZWRfdHlwZTsKKwl1OCBkdm9fZnVuY3Rpb247 CisJdTggZHBfdXNiX3R5cGVfYzoxOwkJCQkJLyogMTk1ICovCisJdTggZmxhZ3MyX3Jlc2VydmVk Ojc7CQkJCQkvKiAxOTUgKi8KKwl1OCBkcF9ncGlvX2luZGV4OwkJCQkJLyogMTk1ICovCisJdTE2 IGRwX2dwaW9fcGluX251bTsJCQkJCS8qIDE5NSAqLworCXU4IGRwX2lib29zdF9sZXZlbDo0OwkJ CQkJLyogMTk2ICovCisJdTggaGRtaV9pYm9vc3RfbGV2ZWw6NDsJCQkJCS8qIDE5NiAqLworfSBf X3BhY2tlZDsKKwogc3RydWN0IGJkYl9nZW5lcmFsX2RlZmluaXRpb25zIHsKIAkvKiBEREMgR1BJ TyAqLwogCXU4IGNydF9kZGNfZ21idXNfcGluOwotLSAKMi4xMS4wCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK