From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 14/45] drm/i915: Make engine_mask & num_engines static Date: Thu, 25 Apr 2019 12:30:59 +0300 Message-ID: <87d0latorw.fsf@intel.com> References: <20190425092004.9995-1-chris@chris-wilson.co.uk> <20190425092004.9995-14-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id E497589057 for ; Thu, 25 Apr 2019 09:28:43 +0000 (UTC) In-Reply-To: <20190425092004.9995-14-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCAyNSBBcHIgMjAxOSwgQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28u dWs+IHdyb3RlOgo+IEhhdmluZyByZW1vdmVkIHRoZSB1cmdlIHRvIG1vZGlmeSB0aGUgZW5naW5l X21hc2sgYXQgcnVudGltZSwgd2UgY2FuCj4gcHJvbW90ZSB0aGUgbnVtX2VuZ2luZXMgZnJvbSBh IHJ1bnRpbWUgY2FsY3VsYXRpb24gdG8gYSBzdGF0aWMgYW5kIHB1c2gKPiBpdCBpbnRvIHRoZSBk ZXZpY2VfaW5mbyB0YWJsZXMuCgpcby8KCkFja2VkLWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1 bGFAaW50ZWwuY29tPgoKCgoKPgo+IFNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNA Y2hyaXMtd2lsc29uLmNvLnVrPgo+IENjOiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5A aW50ZWwuY29tPgo+IENjOiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgo+IC0t LQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfY3MuYyAgICAgfCAgMyAt LQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yaW5nYnVmZmVyLmMgICAgfCAgMiAr LQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9zZWxmdGVzdF9scmMuYyAgICAgICAgfCAgNCAr LQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jICAgICAgICAgICAgICAgfCA0NSAr KysrKysrKystLS0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9p bmZvLmggICAgICB8ICAzICstCj4gIC4uLi9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL2k5MTVfZ2Vt X2NvbnRleHQuYyB8ICA0ICstCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1 X3JlcXVlc3QuYyB8ICAyICstCj4gIDcgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwg MzYgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qv aW50ZWxfZW5naW5lX2NzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVf Y3MuYwo+IGluZGV4IDg2MmNmMTA0MGY4OC4uYjJjZDZjNjc4NWJlIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2VuZ2luZV9jcy5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX2NzLmMKPiBAQCAtMzgzLDkgKzM4Myw2IEBAIGlu dCBpbnRlbF9lbmdpbmVzX2luaXRfbW1pbyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkK PiAgCQlnb3RvIGNsZWFudXA7Cj4gIAl9Cj4gIAo+IC0JUlVOVElNRV9JTkZPKGk5MTUpLT5udW1f ZW5naW5lcyA9Cj4gLQkJaHdlaWdodDMyKElOVEVMX0lORk8oaTkxNSktPmVuZ2luZV9tYXNrKTsK PiAtCj4gIAlpOTE1X2NoZWNrX2FuZF9jbGVhcl9mYXVsdHMoaTkxNSk7Cj4gIAo+ICAJcmV0dXJu IDA7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3JpbmdidWZm ZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3JpbmdidWZmZXIuYwo+IGluZGV4 IDdhNDgwNGM0NzQ2Ni4uMmVkZWVkYjc0OGVkIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2d0L2ludGVsX3JpbmdidWZmZXIuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2d0L2ludGVsX3JpbmdidWZmZXIuYwo+IEBAIC0xNTY4LDcgKzE1NjgsNyBAQCBzdGF0aWMgaW5s aW5lIGludCBtaV9zZXRfY29udGV4dChzdHJ1Y3QgaTkxNV9yZXF1ZXN0ICpycSwgdTMyIGZsYWdz KQo+ICAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lID0gcnEtPmVuZ2luZTsKPiAgCWVu dW0gaW50ZWxfZW5naW5lX2lkIGlkOwo+ICAJY29uc3QgaW50IG51bV9lbmdpbmVzID0KPiAtCQlJ U19IU1dfR1QxKGk5MTUpID8gUlVOVElNRV9JTkZPKGk5MTUpLT5udW1fZW5naW5lcyAtIDEgOiAw Owo+ICsJCUlTX0hTV19HVDEoaTkxNSkgPyBJTlRFTF9JTkZPKGk5MTUpLT5udW1fZW5naW5lcyAt IDEgOiAwOwo+ICAJYm9vbCBmb3JjZV9yZXN0b3JlID0gZmFsc2U7Cj4gIAlpbnQgbGVuOwo+ICAJ dTMyICpjczsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3Rf bHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9zZWxmdGVzdF9scmMuYwo+IGluZGV4IDg0 NTM4ZjY5MTg1Yi4uNmYyMjNmN2ZhY2RlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2d0L3NlbGZ0ZXN0X2xyYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2Vs ZnRlc3RfbHJjLmMKPiBAQCAtMTE4NSw3ICsxMTg1LDcgQEAgc3RhdGljIGludCBzbW9rZV9jcmVz Y2VuZG8oc3RydWN0IHByZWVtcHRfc21va2UgKnNtb2tlLCB1bnNpZ25lZCBpbnQgZmxhZ3MpCj4g IAo+ICAJcHJfaW5mbygiU3VibWl0dGVkICVsdSBjcmVzY2VuZG86JXggcmVxdWVzdHMgYWNyb3Nz ICVkIGVuZ2luZXMgYW5kICVkIGNvbnRleHRzXG4iLAo+ICAJCWNvdW50LCBmbGFncywKPiAtCQlS VU5USU1FX0lORk8oc21va2UtPmk5MTUpLT5udW1fZW5naW5lcywgc21va2UtPm5jb250ZXh0KTsK PiArCQlJTlRFTF9JTkZPKHNtb2tlLT5pOTE1KS0+bnVtX2VuZ2luZXMsIHNtb2tlLT5uY29udGV4 dCk7Cj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBAQCAtMTIxMyw3ICsxMjEzLDcgQEAgc3RhdGlj IGludCBzbW9rZV9yYW5kb20oc3RydWN0IHByZWVtcHRfc21va2UgKnNtb2tlLCB1bnNpZ25lZCBp bnQgZmxhZ3MpCj4gIAo+ICAJcHJfaW5mbygiU3VibWl0dGVkICVsdSByYW5kb206JXggcmVxdWVz dHMgYWNyb3NzICVkIGVuZ2luZXMgYW5kICVkIGNvbnRleHRzXG4iLAo+ICAJCWNvdW50LCBmbGFn cywKPiAtCQlSVU5USU1FX0lORk8oc21va2UtPmk5MTUpLT5udW1fZW5naW5lcywgc21va2UtPm5j b250ZXh0KTsKPiArCQlJTlRFTF9JTkZPKHNtb2tlLT5pOTE1KS0+bnVtX2VuZ2luZXMsIHNtb2tl LT5uY29udGV4dCk7Cj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9wY2kuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGNp LmMKPiBpbmRleCBmZmEyZWU3MGEwM2QuLjQzMWE0YTJjMjBlMSAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9wY2kuYwo+IEBAIC0zNSw2ICszNSw3IEBACj4gIAo+ICAjZGVmaW5lIFBMQVRGT1JNKHgp IC5wbGF0Zm9ybSA9ICh4KQo+ICAjZGVmaW5lIEdFTih4KSAuZ2VuID0gKHgpLCAuZ2VuX21hc2sg PSBCSVQoKHgpIC0gMSkKPiArI2RlZmluZSBFTkdJTkVTKHgpIC5lbmdpbmVfbWFzayA9ICh4KSwg Lm51bV9lbmdpbmVzID0gaHdlaWdodDgoeCkKPiAgCj4gICNkZWZpbmUgSTg0NV9QSVBFX09GRlNF VFMgXAo+ICAJLnBpcGVfb2Zmc2V0cyA9IHsgXAo+IEBAIC0xNDUsNiArMTQ2LDcgQEAKPiAgCj4g ICNkZWZpbmUgSTgzMF9GRUFUVVJFUyBcCj4gIAlHRU4oMiksIFwKPiArCUVOR0lORVMoQklUKFJD UzApKSwgXAo+ICAJLmlzX21vYmlsZSA9IDEsIFwKPiAgCS5udW1fcGlwZXMgPSAyLCBcCj4gIAku ZGlzcGxheS5oYXNfb3ZlcmxheSA9IDEsIFwKPiBAQCAtMTU0LDcgKzE1Niw2IEBACj4gIAkuZ3B1 X3Jlc2V0X2Nsb2JiZXJzX2Rpc3BsYXkgPSB0cnVlLCBcCj4gIAkuaHdzX25lZWRzX3BoeXNpY2Fs ID0gMSwgXAo+ICAJLnVuZmVuY2VkX25lZWRzX2FsaWdubWVudCA9IDEsIFwKPiAtCS5lbmdpbmVf bWFzayA9IEJJVChSQ1MwKSwgXAo+ICAJLmhhc19zbm9vcCA9IHRydWUsIFwKPiAgCS5oYXNfY29o ZXJlbnRfZ2d0dCA9IGZhbHNlLCBcCj4gIAlJOVhYX1BJUEVfT0ZGU0VUUywgXAo+IEBAIC0xNjQs NiArMTY1LDcgQEAKPiAgCj4gICNkZWZpbmUgSTg0NV9GRUFUVVJFUyBcCj4gIAlHRU4oMiksIFwK PiArCUVOR0lORVMoQklUKFJDUzApKSwgXAo+ICAJLm51bV9waXBlcyA9IDEsIFwKPiAgCS5kaXNw bGF5Lmhhc19vdmVybGF5ID0gMSwgXAo+ICAJLmRpc3BsYXkub3ZlcmxheV9uZWVkc19waHlzaWNh bCA9IDEsIFwKPiBAQCAtMTcxLDcgKzE3Myw2IEBACj4gIAkuZ3B1X3Jlc2V0X2Nsb2JiZXJzX2Rp c3BsYXkgPSB0cnVlLCBcCj4gIAkuaHdzX25lZWRzX3BoeXNpY2FsID0gMSwgXAo+ICAJLnVuZmVu Y2VkX25lZWRzX2FsaWdubWVudCA9IDEsIFwKPiAtCS5lbmdpbmVfbWFzayA9IEJJVChSQ1MwKSwg XAo+ICAJLmhhc19zbm9vcCA9IHRydWUsIFwKPiAgCS5oYXNfY29oZXJlbnRfZ2d0dCA9IGZhbHNl LCBcCj4gIAlJODQ1X1BJUEVfT0ZGU0VUUywgXAo+IEBAIC0yMDIsMTAgKzIwMywxMCBAQCBzdGF0 aWMgY29uc3Qgc3RydWN0IGludGVsX2RldmljZV9pbmZvIGludGVsX2k4NjVnX2luZm8gPSB7Cj4g IAo+ICAjZGVmaW5lIEdFTjNfRkVBVFVSRVMgXAo+ICAJR0VOKDMpLCBcCj4gKwlFTkdJTkVTKEJJ VChSQ1MwKSksIFwKPiAgCS5udW1fcGlwZXMgPSAyLCBcCj4gIAkuZGlzcGxheS5oYXNfZ21jaCA9 IDEsIFwKPiAgCS5ncHVfcmVzZXRfY2xvYmJlcnNfZGlzcGxheSA9IHRydWUsIFwKPiAtCS5lbmdp bmVfbWFzayA9IEJJVChSQ1MwKSwgXAo+ICAJLmhhc19zbm9vcCA9IHRydWUsIFwKPiAgCS5oYXNf Y29oZXJlbnRfZ2d0dCA9IHRydWUsIFwKPiAgCUk5WFhfUElQRV9PRkZTRVRTLCBcCj4gQEAgLTI4 NiwxMSArMjg3LDExIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50 ZWxfcGluZXZpZXdfbV9pbmZvID0gewo+ICAKPiAgI2RlZmluZSBHRU40X0ZFQVRVUkVTIFwKPiAg CUdFTig0KSwgXAo+ICsJRU5HSU5FUyhCSVQoUkNTMCkpLCBcCj4gIAkubnVtX3BpcGVzID0gMiwg XAo+ICAJLmRpc3BsYXkuaGFzX2hvdHBsdWcgPSAxLCBcCj4gIAkuZGlzcGxheS5oYXNfZ21jaCA9 IDEsIFwKPiAgCS5ncHVfcmVzZXRfY2xvYmJlcnNfZGlzcGxheSA9IHRydWUsIFwKPiAtCS5lbmdp bmVfbWFzayA9IEJJVChSQ1MwKSwgXAo+ICAJLmhhc19zbm9vcCA9IHRydWUsIFwKPiAgCS5oYXNf Y29oZXJlbnRfZ2d0dCA9IHRydWUsIFwKPiAgCUk5WFhfUElQRV9PRkZTRVRTLCBcCj4gQEAgLTMy MCwyNSArMzIxLDI1IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50 ZWxfaTk2NWdtX2luZm8gPSB7Cj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2lu Zm8gaW50ZWxfZzQ1X2luZm8gPSB7Cj4gIAlHRU40X0ZFQVRVUkVTLAo+ICAJUExBVEZPUk0oSU5U RUxfRzQ1KSwKPiAtCS5lbmdpbmVfbWFzayA9IEJJVChSQ1MwKSB8IEJJVChWQ1MwKSwKPiArCUVO R0lORVMoQklUKFJDUzApIHwgQklUKFZDUzApKSwKPiAgCS5ncHVfcmVzZXRfY2xvYmJlcnNfZGlz cGxheSA9IGZhbHNlLAo+ICB9Owo+ICAKPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZp Y2VfaW5mbyBpbnRlbF9nbTQ1X2luZm8gPSB7Cj4gIAlHRU40X0ZFQVRVUkVTLAo+ICAJUExBVEZP Uk0oSU5URUxfR000NSksCj4gKwlFTkdJTkVTKEJJVChSQ1MwKSB8IEJJVChWQ1MwKSksCj4gIAku aXNfbW9iaWxlID0gMSwKPiAgCS5kaXNwbGF5Lmhhc19mYmMgPSAxLAo+ICAJLmRpc3BsYXkuc3Vw cG9ydHNfdHYgPSAxLAo+IC0JLmVuZ2luZV9tYXNrID0gQklUKFJDUzApIHwgQklUKFZDUzApLAo+ ICAJLmdwdV9yZXNldF9jbG9iYmVyc19kaXNwbGF5ID0gZmFsc2UsCj4gIH07Cj4gIAo+ICAjZGVm aW5lIEdFTjVfRkVBVFVSRVMgXAo+ICAJR0VOKDUpLCBcCj4gKwlFTkdJTkVTKEJJVChSQ1MwKSB8 IEJJVChWQ1MwKSksIFwKPiAgCS5udW1fcGlwZXMgPSAyLCBcCj4gIAkuZGlzcGxheS5oYXNfaG90 cGx1ZyA9IDEsIFwKPiAtCS5lbmdpbmVfbWFzayA9IEJJVChSQ1MwKSB8IEJJVChWQ1MwKSwgXAo+ ICAJLmhhc19zbm9vcCA9IHRydWUsIFwKPiAgCS5oYXNfY29oZXJlbnRfZ2d0dCA9IHRydWUsIFwK PiAgCS8qIGlsayBkb2VzIHN1cHBvcnQgcmM2LCBidXQgd2UgZG8gbm90IGltcGxlbWVudCBbcG93 ZXJdIGNvbnRleHRzICovIFwKPiBAQCAtMzYyLDEwICszNjMsMTAgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyBpbnRlbF9pcm9ubGFrZV9tX2luZm8gPSB7Cj4gIAo+ICAj ZGVmaW5lIEdFTjZfRkVBVFVSRVMgXAo+ICAJR0VOKDYpLCBcCj4gKwlFTkdJTkVTKEJJVChSQ1Mw KSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSksIFwKPiAgCS5udW1fcGlwZXMgPSAyLCBcCj4gIAku ZGlzcGxheS5oYXNfaG90cGx1ZyA9IDEsIFwKPiAgCS5kaXNwbGF5Lmhhc19mYmMgPSAxLCBcCj4g LQkuZW5naW5lX21hc2sgPSBCSVQoUkNTMCkgfCBCSVQoVkNTMCkgfCBCSVQoQkNTMCksIFwKPiAg CS5oYXNfY29oZXJlbnRfZ2d0dCA9IHRydWUsIFwKPiAgCS5oYXNfbGxjID0gMSwgXAo+ICAJLmhh c19yYzYgPSAxLCBcCj4gQEAgLTQxMCwxMCArNDExLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg aW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfc2FuZHlicmlkZ2VfbV9ndDJfaW5mbyA9IHsKPiAgCj4g ICNkZWZpbmUgR0VON19GRUFUVVJFUyAgXAo+ICAJR0VOKDcpLCBcCj4gKwlFTkdJTkVTKEJJVChS Q1MwKSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSksIFwKPiAgCS5udW1fcGlwZXMgPSAzLCBcCj4g IAkuZGlzcGxheS5oYXNfaG90cGx1ZyA9IDEsIFwKPiAgCS5kaXNwbGF5Lmhhc19mYmMgPSAxLCBc Cj4gLQkuZW5naW5lX21hc2sgPSBCSVQoUkNTMCkgfCBCSVQoVkNTMCkgfCBCSVQoQkNTMCksIFwK PiAgCS5oYXNfY29oZXJlbnRfZ2d0dCA9IHRydWUsIFwKPiAgCS5oYXNfbGxjID0gMSwgXAo+ICAJ Lmhhc19yYzYgPSAxLCBcCj4gQEAgLTQ2OCw2ICs0NjksNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0 IGludGVsX2RldmljZV9pbmZvIGludGVsX2l2eWJyaWRnZV9xX2luZm8gPSB7Cj4gIHN0YXRpYyBj b25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfdmFsbGV5dmlld19pbmZvID0gewo+ ICAJUExBVEZPUk0oSU5URUxfVkFMTEVZVklFVyksCj4gIAlHRU4oNyksCj4gKwlFTkdJTkVTKEJJ VChSQ1MwKSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSksCj4gIAkuaXNfbHAgPSAxLAo+ICAJLm51 bV9waXBlcyA9IDIsCj4gIAkuaGFzX3J1bnRpbWVfcG0gPSAxLAo+IEBAIC00NzksNyArNDgxLDYg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyBpbnRlbF92YWxsZXl2aWV3 X2luZm8gPSB7Cj4gIAkucHBndHRfc2l6ZSA9IDMxLAo+ICAJLmhhc19zbm9vcCA9IHRydWUsCj4g IAkuaGFzX2NvaGVyZW50X2dndHQgPSBmYWxzZSwKPiAtCS5lbmdpbmVfbWFzayA9IEJJVChSQ1Mw KSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSwKPiAgCS5kaXNwbGF5X21taW9fb2Zmc2V0ID0gVkxW X0RJU1BMQVlfQkFTRSwKPiAgCUk5WFhfUElQRV9PRkZTRVRTLAo+ICAJSTlYWF9DVVJTT1JfT0ZG U0VUUywKPiBAQCAtNDg5LDcgKzQ5MCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2 aWNlX2luZm8gaW50ZWxfdmFsbGV5dmlld19pbmZvID0gewo+ICAKPiAgI2RlZmluZSBHNzVfRkVB VFVSRVMgIFwKPiAgCUdFTjdfRkVBVFVSRVMsIFwKPiAtCS5lbmdpbmVfbWFzayA9IEJJVChSQ1Mw KSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSB8IEJJVChWRUNTMCksIFwKPiArCUVOR0lORVMoQklU KFJDUzApIHwgQklUKFZDUzApIHwgQklUKEJDUzApIHwgQklUKFZFQ1MwKSksIFwKPiAgCS5kaXNw bGF5Lmhhc19kZGkgPSAxLCBcCj4gIAkuaGFzX2ZwZ2FfZGJnID0gMSwgXAo+ICAJLmRpc3BsYXku aGFzX3BzciA9IDEsIFwKPiBAQCAtNTUzLDE4ICs1NTQsMTcgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBpbnRlbF9kZXZpY2VfaW5mbyBpbnRlbF9icm9hZHdlbGxfcnN2ZF9pbmZvID0gewo+ICAKPiAg c3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyBpbnRlbF9icm9hZHdlbGxfZ3Qz X2luZm8gPSB7Cj4gIAlCRFdfUExBVEZPUk0sCj4gKwlFTkdJTkVTKEJJVChSQ1MwKSB8IEJJVChW Q1MwKSB8IEJJVChCQ1MwKSB8IEJJVChWRUNTMCkgfCBCSVQoVkNTMSkpLAo+ICAJLmd0ID0gMywK PiAtCS5lbmdpbmVfbWFzayA9Cj4gLQkJQklUKFJDUzApIHwgQklUKFZDUzApIHwgQklUKEJDUzAp IHwgQklUKFZFQ1MwKSB8IEJJVChWQ1MxKSwKPiAgfTsKPiAgCj4gIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfY2hlcnJ5dmlld19pbmZvID0gewo+ICAJUExBVEZP Uk0oSU5URUxfQ0hFUlJZVklFVyksCj4gIAlHRU4oOCksCj4gKwlFTkdJTkVTKEJJVChSQ1MwKSB8 IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSB8IEJJVChWRUNTMCkpLAo+ICAJLm51bV9waXBlcyA9IDMs Cj4gIAkuZGlzcGxheS5oYXNfaG90cGx1ZyA9IDEsCj4gIAkuaXNfbHAgPSAxLAo+IC0JLmVuZ2lu ZV9tYXNrID0gQklUKFJDUzApIHwgQklUKFZDUzApIHwgQklUKEJDUzApIHwgQklUKFZFQ1MwKSwK PiAgCS5oYXNfNjRiaXRfcmVsb2MgPSAxLAo+ICAJLmhhc19ydW50aW1lX3BtID0gMSwKPiAgCS5o YXNfcmM2ID0gMSwKPiBAQCAtNjE2LDkgKzYxNiw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50 ZWxfZGV2aWNlX2luZm8gaW50ZWxfc2t5bGFrZV9ndDJfaW5mbyA9IHsKPiAgCj4gICNkZWZpbmUg U0tMX0dUM19QTFVTX1BMQVRGT1JNIFwKPiAgCVNLTF9QTEFURk9STSwgXAo+IC0JLmVuZ2luZV9t YXNrID0gXAo+IC0JCUJJVChSQ1MwKSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSB8IEJJVChWRUNT MCkgfCBCSVQoVkNTMSkKPiAtCj4gKwlFTkdJTkVTKEJJVChSQ1MwKSB8IEJJVChWQ1MwKSB8IEJJ VChCQ1MwKSB8IEJJVChWRUNTMCkgfCBCSVQoVkNTMSkpCj4gIAo+ICBzdGF0aWMgY29uc3Qgc3Ry dWN0IGludGVsX2RldmljZV9pbmZvIGludGVsX3NreWxha2VfZ3QzX2luZm8gPSB7Cj4gIAlTS0xf R1QzX1BMVVNfUExBVEZPUk0sCj4gQEAgLTYzMiw5ICs2MzAsOSBAQCBzdGF0aWMgY29uc3Qgc3Ry dWN0IGludGVsX2RldmljZV9pbmZvIGludGVsX3NreWxha2VfZ3Q0X2luZm8gPSB7Cj4gIAo+ICAj ZGVmaW5lIEdFTjlfTFBfRkVBVFVSRVMgXAo+ICAJR0VOKDkpLCBcCj4gKwlFTkdJTkVTKEJJVChS Q1MwKSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSB8IEJJVChWRUNTMCkpLCBcCj4gIAkuaXNfbHAg PSAxLCBcCj4gIAkuZGlzcGxheS5oYXNfaG90cGx1ZyA9IDEsIFwKPiAtCS5lbmdpbmVfbWFzayA9 IEJJVChSQ1MwKSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSB8IEJJVChWRUNTMCksIFwKPiAgCS5u dW1fcGlwZXMgPSAzLCBcCj4gIAkuaGFzXzY0Yml0X3JlbG9jID0gMSwgXAo+ICAJLmRpc3BsYXku aGFzX2RkaSA9IDEsIFwKPiBAQCAtNjg5LDkgKzY4Nyw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg aW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfa2FieWxha2VfZ3QyX2luZm8gPSB7Cj4gIAo+ICBzdGF0 aWMgY29uc3Qgc3RydWN0IGludGVsX2RldmljZV9pbmZvIGludGVsX2thYnlsYWtlX2d0M19pbmZv ID0gewo+ICAJS0JMX1BMQVRGT1JNLAo+ICsJRU5HSU5FUyhCSVQoUkNTMCkgfCBCSVQoVkNTMCkg fCBCSVQoQkNTMCkgfCBCSVQoVkVDUzApIHwgQklUKFZDUzEpKSwKPiAgCS5ndCA9IDMsCj4gLQku ZW5naW5lX21hc2sgPQo+IC0JCUJJVChSQ1MwKSB8IEJJVChWQ1MwKSB8IEJJVChCQ1MwKSB8IEJJ VChWRUNTMCkgfCBCSVQoVkNTMSksCj4gIH07Cj4gIAo+ICAjZGVmaW5lIENGTF9QTEFURk9STSBc Cj4gQEAgLTcxMCw5ICs3MDcsOCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVsX2RldmljZV9p bmZvIGludGVsX2NvZmZlZWxha2VfZ3QyX2luZm8gPSB7Cj4gIAo+ICBzdGF0aWMgY29uc3Qgc3Ry dWN0IGludGVsX2RldmljZV9pbmZvIGludGVsX2NvZmZlZWxha2VfZ3QzX2luZm8gPSB7Cj4gIAlD RkxfUExBVEZPUk0sCj4gKwlFTkdJTkVTKEJJVChSQ1MwKSB8IEJJVChWQ1MwKSB8IEJJVChCQ1Mw KSB8IEJJVChWRUNTMCkgfCBCSVQoVkNTMSkpLAo+ICAJLmd0ID0gMywKPiAtCS5lbmdpbmVfbWFz ayA9Cj4gLQkJQklUKFJDUzApIHwgQklUKFZDUzApIHwgQklUKEJDUzApIHwgQklUKFZFQ1MwKSB8 IEJJVChWQ1MxKSwKPiAgfTsKPiAgCj4gICNkZWZpbmUgR0VOMTBfRkVBVFVSRVMgXAo+IEBAIC03 NTQsMTUgKzc1MCwxNCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVsX2RldmljZV9pbmZvIGlu dGVsX2Nhbm5vbmxha2VfaW5mbyA9IHsKPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZp Y2VfaW5mbyBpbnRlbF9pY2VsYWtlXzExX2luZm8gPSB7Cj4gIAlHRU4xMV9GRUFUVVJFUywKPiAg CVBMQVRGT1JNKElOVEVMX0lDRUxBS0UpLAo+IC0JLmVuZ2luZV9tYXNrID0KPiAtCQlCSVQoUkNT MCkgfCBCSVQoQkNTMCkgfCBCSVQoVkVDUzApIHwgQklUKFZDUzApIHwgQklUKFZDUzIpLAo+ICsJ RU5HSU5FUyhCSVQoUkNTMCkgfCBCSVQoQkNTMCkgfCBCSVQoVkVDUzApIHwgQklUKFZDUzApIHwg QklUKFZDUzIpKSwKPiAgfTsKPiAgCj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNl X2luZm8gaW50ZWxfZWxraGFydGxha2VfaW5mbyA9IHsKPiAgCUdFTjExX0ZFQVRVUkVTLAo+ICAJ UExBVEZPUk0oSU5URUxfRUxLSEFSVExBS0UpLAo+ICsJRU5HSU5FUyhCSVQoUkNTMCkgfCBCSVQo QkNTMCkgfCBCSVQoVkNTMCkpLAo+ICAJLmlzX2FscGhhX3N1cHBvcnQgPSAxLAo+IC0JLmVuZ2lu ZV9tYXNrID0gQklUKFJDUzApIHwgQklUKEJDUzApIHwgQklUKFZDUzApLAo+ICAJLnBwZ3R0X3Np emUgPSAzNiwKPiAgfTsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2RldmljZV9pbmZvLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZXZpY2VfaW5m by5oCj4gaW5kZXggNWEyZTE3ZDYxNDZiLi4wZGVkYTFlZmQzN2QgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uaAo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmgKPiBAQCAtMTQ5LDYgKzE0OSw3IEBAIHN0cnVj dCBpbnRlbF9kZXZpY2VfaW5mbyB7Cj4gIAl1OCBnZW47Cj4gIAl1OCBndDsgLyogR1QgbnVtYmVy LCAwIGlmIHVuZGVmaW5lZCAqLwo+ICAJaW50ZWxfZW5naW5lX21hc2tfdCBlbmdpbmVfbWFzazsg LyogRW5naW5lcyBzdXBwb3J0ZWQgYnkgdGhlIEhXICovCj4gKwl1OCBudW1fZW5naW5lczsKPiAg Cj4gIAllbnVtIGludGVsX3BsYXRmb3JtIHBsYXRmb3JtOwo+ICAKPiBAQCAtMjAyLDggKzIwMyw2 IEBAIHN0cnVjdCBpbnRlbF9ydW50aW1lX2luZm8gewo+ICAJdTggbnVtX3Nwcml0ZXNbSTkxNV9N QVhfUElQRVNdOwo+ICAJdTggbnVtX3NjYWxlcnNbSTkxNV9NQVhfUElQRVNdOwo+ICAKPiAtCXU4 IG51bV9lbmdpbmVzOwo+IC0KPiAgCS8qIFNsaWNlL3N1YnNsaWNlL0VVIGluZm8gKi8KPiAgCXN0 cnVjdCBzc2V1X2Rldl9pbmZvIHNzZXU7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9nZW1fY29udGV4dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvc2VsZnRlc3RzL2k5MTVfZ2VtX2NvbnRleHQuYwo+IGluZGV4IGI2MmYwMDVlNGQ1MC4uNDNk MDE0NDcyYWM2IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9p OTE1X2dlbV9jb250ZXh0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMv aTkxNV9nZW1fY29udGV4dC5jCj4gQEAgLTEyNTcsNyArMTI1Nyw3IEBAIHN0YXRpYyBpbnQgaWd0 X2N0eF9yZWFkb25seSh2b2lkICphcmcpCj4gIAkJfQo+ICAJfQo+ICAJcHJfaW5mbygiU3VibWl0 dGVkICVsdSBkd29yZHMgKGFjcm9zcyAldSBlbmdpbmVzKVxuIiwKPiAtCQluZHdvcmRzLCBSVU5U SU1FX0lORk8oaTkxNSktPm51bV9lbmdpbmVzKTsKPiArCQluZHdvcmRzLCBJTlRFTF9JTkZPKGk5 MTUpLT5udW1fZW5naW5lcyk7Cj4gIAo+ICAJZHcgPSAwOwo+ICAJaWR4ID0gMDsKPiBAQCAtMTU4 Niw3ICsxNTg2LDcgQEAgc3RhdGljIGludCBpZ3Rfdm1faXNvbGF0aW9uKHZvaWQgKmFyZykKPiAg CQljb3VudCArPSB0aGlzOwo+ICAJfQo+ICAJcHJfaW5mbygiQ2hlY2tlZCAlbHUgc2NyYXRjaCBv ZmZzZXRzIGFjcm9zcyAlZCBlbmdpbmVzXG4iLAo+IC0JCWNvdW50LCBSVU5USU1FX0lORk8oaTkx NSktPm51bV9lbmdpbmVzKTsKPiArCQljb3VudCwgSU5URUxfSU5GTyhpOTE1KS0+bnVtX2VuZ2lu ZXMpOwo+ICAKPiAgb3V0X3JwbToKPiAgCWludGVsX3J1bnRpbWVfcG1fcHV0KGk5MTUsIHdha2Vy ZWYpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9y ZXF1ZXN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9yZXF1ZXN0LmMK PiBpbmRleCBiNjA1OTE1MzFlNGEuLjhmZTlhNDNjOTlkOSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9yZXF1ZXN0LmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9yZXF1ZXN0LmMKPiBAQCAtMTIxMSw3ICsxMjExLDcg QEAgc3RhdGljIGludCBsaXZlX2JyZWFkY3J1bWJzX3Ntb2tldGVzdCh2b2lkICphcmcpCj4gIAkJ bnVtX2ZlbmNlcyArPSBhdG9taWNfbG9uZ19yZWFkKCZ0W2lkXS5udW1fZmVuY2VzKTsKPiAgCX0K PiAgCXByX2luZm8oIkNvbXBsZXRlZCAlbHUgd2FpdHMgZm9yICVsdSBmZW5jZXMgYWNyb3NzICVk IGVuZ2luZXMgYW5kICVkIGNwdXNcbiIsCj4gLQkJbnVtX3dhaXRzLCBudW1fZmVuY2VzLCBSVU5U SU1FX0lORk8oaTkxNSktPm51bV9lbmdpbmVzLCBuY3B1cyk7Cj4gKwkJbnVtX3dhaXRzLCBudW1f ZmVuY2VzLCBJTlRFTF9JTkZPKGk5MTUpLT5udW1fZW5naW5lcywgbmNwdXMpOwo+ICAKPiAgCW11 dGV4X2xvY2soJmk5MTUtPmRybS5zdHJ1Y3RfbXV0ZXgpOwo+ICAJcmV0ID0gaWd0X2xpdmVfdGVz dF9lbmQoJmxpdmUpID86IHJldDsKCi0tIApKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2Ug R3JhcGhpY3MgQ2VudGVyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeA==