From mboxrd@z Thu Jan 1 00:00:00 1970 From: Animesh Manna Subject: Re: [PATCH v3 04/13] drm/i915/gen9: Remove csr.state, csr_lock and related code. Date: Thu, 29 Oct 2015 14:32:35 +0530 Message-ID: <5631E0AB.4060300@intel.com> References: <1446069547-24760-1-git-send-email-imre.deak@intel.com> <1446069547-24760-5-git-send-email-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id C3DA76E21B for ; Thu, 29 Oct 2015 02:02:40 -0700 (PDT) In-Reply-To: <1446069547-24760-5-git-send-email-imre.deak@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Imre Deak , intel-gfx@lists.freedesktop.org Cc: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org CgpPbiAxMC8yOS8yMDE1IDM6MjggQU0sIEltcmUgRGVhayB3cm90ZToKPiBGcm9tOiBEYW5pZWwg VmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KPgo+IFRoaXMgcmVtb3ZlcyB0d28gYW50 aS1wYXR0ZXJuczoKPiAtIExvY2tpbmcgc2hvdWxkbid0IGJlIHVzZWQgdG8gc3luY2hyb25pemUg d2l0aCBhc3luYyB3b3JrIChvZiBhbnkKPiAgICBmb3JtLCB3aGV0aGVyIGNhbGxiYWNrcywgd29y a2VycyBvciBvdGhlciB0aHJlYWRzKS4gVGhpcyBpcyB3aGF0IHRoZQo+ICAgIG11dGV4X2xvY2sv dW5sb2NrIHNlZW1zIHRvIGhhdmUgYmVlbiBmb3IgaW4gaW50ZWxfY3NyX2xvYWRfcHJvZ3JhbS4K PiAgICBJbnN0ZWFkIG9yZGVyaW5nIHNob3VsZCBiZSBlbnN1cmVkIHdpdGggdGhlIGdlbmVyaWMK PiAgICB3YWl0X2Zvcl9jb21wbGV0aW9uKCkvY29tcGxldGUoKS4gT3IgbW9yZSBzcGVjaWZpYyBm dW5jdGlvbnMKPiAgICBwcm92aWRlZCBieSB0aGUgY29yZSBrZXJuZWwgbGlrZSBlLmcuCj4gICAg Zmx1c2hfd29yaygpL2NhbmNlbF93b3JrX3N5bmMoKSBpbiB0aGUgY2FzZSBvZiBzeW5jaHJvbml6 aW5nIHdpdGggYQo+ICAgIHdvcmsgaXRlbS4KPgo+IC0gRG9uJ3QgaW52ZW50IG93biBjb21wbGV0 aW9uIGxpa2UgdGhlIGZvbGxvd2luZyBjb2RlIGRpZCB3aXRoIHRoZQo+ICAgIChhbHJlYWR5IHJl bW92ZWQpIHdhaXRfZm9yKGNzcl9sb2FkX3N0YXR1c19nZXQoKSkgcGF0dGVybiAtIGl0J3MKPiAg ICByZWFsbHkgaGFyZCB0byBnZXQgdGhlc2UgcmlnaHQgd2hlbiB5b3Ugd2FudCB0aGVtIHRvIGJl IF9yZWFsbHlfCj4gICAgY29ycmVjdCAoYW5kIGJlIGZhc3QpIGluIGFsbCBjYXNlcy4gRnVydGhl cm1vcmUgaXQncyBlYXNpZXIgdG8gcmVhZAo+ICAgIGNvZGUgdXNpbmcgdGhlIHdlbGwta25vd24g cHJpbWl0aXZlcyB0aGFuIG5ldyBvbmVzIHVzaW5nCj4gICAgbm9uLXN0YW5kYXJkIG5hbWVzLgo+ Cj4gQmVmb3JlIGVuYWJsaW5nL2Rpc2FibGluZyBEQzYgY2hlY2sgaWYgdGhlIGZpcm13YXJlIGlz IGxvYWRlZAo+IHN1Y2Nlc3NmdWxseS4gVGhpcyBpcyBndWFyYW50ZWVkIGR1cmluZyBydW50aW1l IHMvciwgc2luY2Ugb3RoZXJ3aXNlIHdlCj4gZG9uJ3QgZW5hYmxlIFJQTSwgYnV0IG5vdCBkdXJp bmcgc3lzdGVtIHMvci4KWWVzIGFzIERDNSBhbmQgREM2IGRpc3BsYXkgbG93IHBvd2VyIHN0YXRl IGlzIGNvdXBsZWQgd2l0aCBkbWMgZmlybXdhcmUgCnNvIGl0IGlzIGEgc2FmZQp0byBoYXZlIGEg Y2hlY2sgYmVmb3JlIGVuYWJsZS9kaXNhYmxlIGRjNS9kYzYuCj4KPiBOb3RlIHRoYXQgaXQncyBz dGlsbCB1bmNsZWFyIHdoZXRoZXIgd2UgbmVlZCB0byBlbmFibGUvZGlzYWJsZSBEQzYKPiBkdXJp bmcgc3lzdGVtIHMvciwgdW50aWwgdGhhdCdzIGNsYXJpZmllZCwga2VlcCB0aGUgY3VycmVudCBi ZWhhdmlvciBhbmQKPiBlbmFibGUvZGlzYWJsZSBEQzYuCj4KPiBBbHNvIGFmdGVyIHRoaXMgcGF0 Y2ggdGhlcmUgaXMgYSByYWNlIGR1cmluZyBzeXN0ZW0gcy9yIHdoZXJlIHRoZQo+IGZpcm13YXJl IG1heSBub3QgYmUgbG9hZGVkIHlldCwgdGhhdCdzIGFkZHJlc3NlZCBpbiBhbiB1cGNvbWluZyBw YXRjaC4KPgo+IENjOiBEYW1pZW4gTGVzcGlhdSA8ZGFtaWVuLmxlc3BpYXVAaW50ZWwuY29tPgo+ IENjOiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Cj4gQ2M6IFN1bmlsIEthbWF0aCA8 c3VuaWwua2FtYXRoQGludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxk YW5pZWwudmV0dGVyQGludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBBbmltZXNoIE1hbm5hIDxh bmltZXNoLm1hbm5hQGludGVsLmNvbT4KPiBbaW1yZTogYWRkZWQgY29kZSBhbmQgbm90ZSBhYm91 dCBjaGVja2luZyBpZiB0aGUgZmlybXdhcmUgbG9hZGVkIG9rLAo+ICAgYmVmb3JlIGVuYWJsaW5n L2Rpc2FibGluZyBpdF0KUmV2aWV3ZWQtYnk6IEFuaW1lc2ggTWFubmEgPGFuaW1lc2gubWFubmFA aW50ZWwuY29tPgo+IC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYyAgICAg ICAgIHwgIDEgLQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyAgICAgICAgIHwg MTEgKystLS0tLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgICAgICB8 IDEwIC0tLS0tLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMgICB8 ICAyICstCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jc3IuYyAgICAgICAgfCA0NiAr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rydi5oICAgICAgICB8ICAzIC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcnVudGltZV9wbS5jIHwgMTcgKystLS0tLS0tLS0tCj4gICA3IGZpbGVzIGNoYW5nZWQsIDYg aW5zZXJ0aW9ucygrKSwgODQgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kbWEuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMK PiBpbmRleCA1ZDY4OTQyLi42MjE5MTRjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZG1hLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jCj4g QEAgLTg5Nyw3ICs4OTcsNiBAQCBpbnQgaTkxNV9kcml2ZXJfbG9hZChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCB1bnNpZ25lZCBsb25nIGZsYWdzKQo+ICAgCXNwaW5fbG9ja19pbml0KCZkZXZfcHJp di0+bW1pb19mbGlwX2xvY2spOwo+ICAgCW11dGV4X2luaXQoJmRldl9wcml2LT5zYl9sb2NrKTsK PiAgIAltdXRleF9pbml0KCZkZXZfcHJpdi0+bW9kZXNldF9yZXN0b3JlX2xvY2spOwo+IC0JbXV0 ZXhfaW5pdCgmZGV2X3ByaXYtPmNzcl9sb2NrKTsKPiAgIAltdXRleF9pbml0KCZkZXZfcHJpdi0+ YXZfbXV0ZXgpOwo+ICAgCj4gICAJaW50ZWxfcG1fc2V0dXAoZGV2KTsKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmMKPiBpbmRleCAxMjFjNTM5Li43ZWZjNzk4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2Rydi5jCj4gQEAgLTEwNTAsMTggKzEwNTAsMTEgQEAgc3RhdGljIGludCBpOTE1X3BtX3Jlc3Vt ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gICAKPiAgIHN0YXRpYyBpbnQgc2tsX3N1c3BlbmRfY29t cGxldGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAgewo+IC0JZW51bSBj c3Jfc3RhdGUgc3RhdGU7Cj4gICAJLyogRW5hYmxpbmcgREM2IGlzIG5vdCBhIGhhcmQgcmVxdWly ZW1lbnQgdG8gZW50ZXIgcnVudGltZSBEMyAqLwo+ICAgCj4gICAJc2tsX3VuaW5pdF9jZGNsayhk ZXZfcHJpdik7Cj4gICAKPiAtCS8qIFRPRE86IHdhaXQgZm9yIGEgY29tcGxldGlvbiBldmVudCBv cgo+IC0JICogc2ltaWxhciBoZXJlIGluc3RlYWQgb2YgYnVzeQo+IC0JICogd2FpdGluZyB1c2lu ZyB3YWl0X2ZvciBmdW5jdGlvbi4KPiAtCSAqLwo+IC0Jd2FpdF9mb3IoKHN0YXRlID0gaW50ZWxf Y3NyX2xvYWRfc3RhdHVzX2dldChkZXZfcHJpdikpICE9Cj4gLQkJCUZXX1VOSU5JVElBTElaRUQs IDEwMDApOwo+IC0JaWYgKHN0YXRlID09IEZXX0xPQURFRCkKPiArCWlmIChkZXZfcHJpdi0+Y3Ny LmRtY19wYXlsb2FkKQo+ICAgCQlza2xfZW5hYmxlX2RjNihkZXZfcHJpdik7Cj4gICAKPiAgIAly ZXR1cm4gMDsKPiBAQCAtMTExMCw3ICsxMTAzLDcgQEAgc3RhdGljIGludCBza2xfcmVzdW1lX3By ZXBhcmUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAgewo+ICAgCXN0cnVj dCBkcm1fZGV2aWNlICpkZXYgPSBkZXZfcHJpdi0+ZGV2Owo+ICAgCj4gLQlpZiAoaW50ZWxfY3Ny X2xvYWRfc3RhdHVzX2dldChkZXZfcHJpdikgPT0gRldfTE9BREVEKQo+ICsJaWYgKGRldl9wcml2 LT5jc3IuZG1jX3BheWxvYWQpCj4gICAJCXNrbF9kaXNhYmxlX2RjNihkZXZfcHJpdik7Cj4gICAK PiAgIAlza2xfaW5pdF9jZGNsayhkZXZfcHJpdik7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4g aW5kZXggMGJlZTQzOC4uMGFlYWMwNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IEBA IC03MzgsMTIgKzczOCw2IEBAIHN0cnVjdCBpbnRlbF91bmNvcmUgewo+ICAgI2RlZmluZSBDU1Jf VkVSU0lPTl9NQUpPUih2ZXJzaW9uKQkoKHZlcnNpb24pID4+IDE2KQo+ICAgI2RlZmluZSBDU1Jf VkVSU0lPTl9NSU5PUih2ZXJzaW9uKQkoKHZlcnNpb24pICYgMHhmZmZmKQo+ICAgCj4gLWVudW0g Y3NyX3N0YXRlIHsKPiAtCUZXX1VOSU5JVElBTElaRUQgPSAwLAo+IC0JRldfTE9BREVELAo+IC0J RldfRkFJTEVECj4gLX07Cj4gLQo+ICAgc3RydWN0IGludGVsX2NzciB7Cj4gICAJY29uc3QgY2hh ciAqZndfcGF0aDsKPiAgIAl1aW50MzJfdCAqZG1jX3BheWxvYWQ7Cj4gQEAgLTc1Miw3ICs3NDYs NiBAQCBzdHJ1Y3QgaW50ZWxfY3NyIHsKPiAgIAl1aW50MzJfdCBtbWlvX2NvdW50Owo+ICAgCXVp bnQzMl90IG1taW9hZGRyWzhdOwo+ICAgCXVpbnQzMl90IG1taW9kYXRhWzhdOwo+IC0JZW51bSBj c3Jfc3RhdGUgc3RhdGU7Cj4gICB9Owo+ICAgCj4gICAjZGVmaW5lIERFVl9JTkZPX0ZPUl9FQUNI X0ZMQUcoZnVuYywgc2VwKSBcCj4gQEAgLTE3MjQsOSArMTcxNyw2IEBAIHN0cnVjdCBkcm1faTkx NV9wcml2YXRlIHsKPiAgIAo+ICAgCXN0cnVjdCBpbnRlbF9jc3IgY3NyOwo+ICAgCj4gLQkvKiBE aXNwbGF5IENTUi1yZWxhdGVkIHByb3RlY3Rpb24gKi8KPiAtCXN0cnVjdCBtdXRleCBjc3JfbG9j azsKPiAtCj4gICAJc3RydWN0IGludGVsX2dtYnVzIGdtYnVzW0dNQlVTX05VTV9QSU5TXTsKPiAg IAo+ICAgCS8qKiBnbWJ1c19tdXRleCBwcm90ZWN0cyBhZ2FpbnN0IGNvbmN1cnJlbnQgdXNhZ2Ug b2YgdGhlIHNpbmdsZSBodyBnbWJ1cwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dwdV9lcnJvci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJyb3Iu Ywo+IGluZGV4IGFhZjRhMWYuLjI1ZGM0ZjEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9ncHVfZXJyb3IuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z3B1X2Vycm9yLmMKPiBAQCAtMzcwLDcgKzM3MCw3IEBAIGludCBpOTE1X2Vycm9yX3N0YXRlX3Rv X3N0cihzdHJ1Y3QgZHJtX2k5MTVfZXJyb3Jfc3RhdGVfYnVmICptLAo+ICAgCWlmIChIQVNfQ1NS KGRldikpIHsKPiAgIAkJc3RydWN0IGludGVsX2NzciAqY3NyID0gJmRldl9wcml2LT5jc3I7Cj4g ICAKPiAtCQllcnJfcHJpbnRmKG0sICJETUMgbG9hZCBzdGF0ZTogJWRcbiIsIGNzci0+c3RhdGUp Owo+ICsJCWVycl9wcmludGYobSwgIkRNQyBsb2FkZWQ6ICVzXG4iLCB5ZXNubyhjc3ItPmRtY19w YXlsb2FkKSk7Cj4gICAJCWVycl9wcmludGYobSwgIkRNQyBmdyB2ZXJzaW9uOiAlZC4lZFxuIiwK PiAgIAkJCSAgIENTUl9WRVJTSU9OX01BSk9SKGNzci0+dmVyc2lvbiksCj4gICAJCQkgICBDU1Jf VkVSU0lPTl9NSU5PUihjc3ItPnZlcnNpb24pKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfY3NyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jc3IuYwo+ IGluZGV4IGNkNmZiNThkLi5lZGRhZDYyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Nzci5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY3NyLmMK PiBAQCAtMjAzLDQwICsyMDMsNiBAQCBzdGF0aWMgY2hhciBpbnRlbF9nZXRfc3Vic3RlcHBpbmco c3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgIH0KPiAgIAo+ICAgLyoqCj4gLSAqIGludGVsX2Nz cl9sb2FkX3N0YXR1c19nZXQoKSAtIHRvIGdldCBmaXJtd2FyZSBsb2FkaW5nIHN0YXR1cy4KPiAt ICogQGRldl9wcml2OiBpOTE1IGRldmljZS4KPiAtICoKPiAtICogVGhpcyBmdW5jdGlvbiBoZWxw cyB0byBnZXQgdGhlIGZpcm13YXJlIGxvYWRpbmcgc3RhdHVzLgo+IC0gKgo+IC0gKiBSZXR1cm46 IEZpcm13YXJlIGxvYWRpbmcgc3RhdHVzLgo+IC0gKi8KPiAtZW51bSBjc3Jfc3RhdGUgaW50ZWxf Y3NyX2xvYWRfc3RhdHVzX2dldChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4g LXsKPiAtCWVudW0gY3NyX3N0YXRlIHN0YXRlOwo+IC0KPiAtCW11dGV4X2xvY2soJmRldl9wcml2 LT5jc3JfbG9jayk7Cj4gLQlzdGF0ZSA9IGRldl9wcml2LT5jc3Iuc3RhdGU7Cj4gLQltdXRleF91 bmxvY2soJmRldl9wcml2LT5jc3JfbG9jayk7Cj4gLQo+IC0JcmV0dXJuIHN0YXRlOwo+IC19Cj4g LQo+IC0vKioKPiAtICogaW50ZWxfY3NyX2xvYWRfc3RhdHVzX3NldCgpIC0gaGVscCB0byBzZXQg ZmlybXdhcmUgbG9hZGluZyBzdGF0dXMuCj4gLSAqIEBkZXZfcHJpdjogaTkxNSBkZXZpY2UuCj4g LSAqIEBzdGF0ZTogZW51bWVyYXRpb24gb2YgZmlybXdhcmUgbG9hZGluZyBzdGF0dXMuCj4gLSAq Cj4gLSAqIFNldCB0aGUgZmlybXdhcmUgbG9hZGluZyBzdGF0dXMuCj4gLSAqLwo+IC12b2lkIGlu dGVsX2Nzcl9sb2FkX3N0YXR1c19zZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAo+IC0JCQllbnVtIGNzcl9zdGF0ZSBzdGF0ZSkKPiAtewo+IC0JbXV0ZXhfbG9jaygmZGV2X3By aXYtPmNzcl9sb2NrKTsKPiAtCWRldl9wcml2LT5jc3Iuc3RhdGUgPSBzdGF0ZTsKPiAtCW11dGV4 X3VubG9jaygmZGV2X3ByaXYtPmNzcl9sb2NrKTsKPiAtfQo+IC0KPiAtLyoqCj4gICAgKiBpbnRl bF9jc3JfbG9hZF9wcm9ncmFtKCkgLSB3cml0ZSB0aGUgZmlybXdhcmUgZnJvbSBtZW1vcnkgdG8g cmVnaXN0ZXIuCj4gICAgKiBAZGV2OiBkcm0gZGV2aWNlLgo+ICAgICoKPiBAQCAtMjY0LDcgKzIz MCw2IEBAIHZvaWQgaW50ZWxfY3NyX2xvYWRfcHJvZ3JhbShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 KQo+ICAgCWlmIChJOTE1X1JFQUQoQ1NSX1BST0dSQU0oMCkpKQo+ICAgCQlyZXR1cm47Cj4gICAK PiAtCW11dGV4X2xvY2soJmRldl9wcml2LT5jc3JfbG9jayk7Cj4gICAJZndfc2l6ZSA9IGRldl9w cml2LT5jc3IuZG1jX2Z3X3NpemU7Cj4gICAJZm9yIChpID0gMDsgaSA8IGZ3X3NpemU7IGkrKykK PiAgIAkJSTkxNV9XUklURShDU1JfUFJPR1JBTShpKSwgcGF5bG9hZFtpXSk7Cj4gQEAgLTI3Myw5 ICsyMzgsNiBAQCB2b2lkIGludGVsX2Nzcl9sb2FkX3Byb2dyYW0oc3RydWN0IGRybV9kZXZpY2Ug KmRldikKPiAgIAkJSTkxNV9XUklURShkZXZfcHJpdi0+Y3NyLm1taW9hZGRyW2ldLAo+ICAgCQkJ ZGV2X3ByaXYtPmNzci5tbWlvZGF0YVtpXSk7Cj4gICAJfQo+IC0KPiAtCWRldl9wcml2LT5jc3Iu c3RhdGUgPSBGV19MT0FERUQ7Cj4gLQltdXRleF91bmxvY2soJmRldl9wcml2LT5jc3JfbG9jayk7 Cj4gICB9Cj4gICAKPiAgIHN0YXRpYyB2b2lkIGZpbmlzaF9jc3JfbG9hZChjb25zdCBzdHJ1Y3Qg ZmlybXdhcmUgKmZ3LCB2b2lkICpjb250ZXh0KQo+IEBAIC00MTUsOCArMzc3LDYgQEAgb3V0Ogo+ ICAgCQkJIENTUl9WRVJTSU9OX01BSk9SKGNzci0+dmVyc2lvbiksCj4gICAJCQkgQ1NSX1ZFUlNJ T05fTUlOT1IoY3NyLT52ZXJzaW9uKSk7Cj4gICAJfSBlbHNlIHsKPiAtCQlpbnRlbF9jc3JfbG9h ZF9zdGF0dXNfc2V0KGRldl9wcml2LCBGV19GQUlMRUQpOwo+IC0KPiAgIAkJaTkxNV9maXJtd2Fy ZV9sb2FkX2Vycm9yX3ByaW50KGNzci0+ZndfcGF0aCwgMCk7Cj4gICAJfQo+ICAgCj4gQEAgLTQ0 NSw3ICs0MDUsNiBAQCB2b2lkIGludGVsX2Nzcl91Y29kZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpCj4gICAJCWNzci0+ZndfcGF0aCA9IEk5MTVfQ1NSX0JYVDsKPiAgIAllbHNlIHsKPiAg IAkJRFJNX0VSUk9SKCJVbmV4cGVjdGVkOiBubyBrbm93biBDU1IgZmlybXdhcmUgZm9yIHBsYXRm b3JtXG4iKTsKPiAtCQlpbnRlbF9jc3JfbG9hZF9zdGF0dXNfc2V0KGRldl9wcml2LCBGV19GQUlM RUQpOwo+ICAgCQlyZXR1cm47Cj4gICAJfQo+ICAgCj4gQEAgLTQ2MiwxMCArNDIxLDggQEAgdm9p ZCBpbnRlbF9jc3JfdWNvZGVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAgCQkJCSZk ZXZfcHJpdi0+ZGV2LT5wZGV2LT5kZXYsCj4gICAJCQkJR0ZQX0tFUk5FTCwgZGV2X3ByaXYsCj4g ICAJCQkJZmluaXNoX2Nzcl9sb2FkKTsKPiAtCWlmIChyZXQpIHsKPiArCWlmIChyZXQpCj4gICAJ CWk5MTVfZmlybXdhcmVfbG9hZF9lcnJvcl9wcmludChjc3ItPmZ3X3BhdGgsIHJldCk7Cj4gLQkJ aW50ZWxfY3NyX2xvYWRfc3RhdHVzX3NldChkZXZfcHJpdiwgRldfRkFJTEVEKTsKPiAtCX0KPiAg IH0KPiAgIAo+ICAgLyoqCj4gQEAgLTQ4Miw2ICs0MzksNSBAQCB2b2lkIGludGVsX2Nzcl91Y29k ZV9maW5pKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gICAJaWYgKCFIQVNfQ1NSKGRldikpCj4g ICAJCXJldHVybjsKPiAgIAo+IC0JaW50ZWxfY3NyX2xvYWRfc3RhdHVzX3NldChkZXZfcHJpdiwg RldfRkFJTEVEKTsKPiAgIAlrZnJlZShkZXZfcHJpdi0+Y3NyLmRtY19wYXlsb2FkKTsKPiAgIH0K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+IGluZGV4IDNkMWM3NDQuLjJlNDhiM2YgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+IEBAIC0xMjA2LDkgKzEyMDYsNiBAQCB1MzIgc2ts X3BsYW5lX2N0bF9yb3RhdGlvbih1bnNpZ25lZCBpbnQgcm90YXRpb24pOwo+ICAgCj4gICAvKiBp bnRlbF9jc3IuYyAqLwo+ICAgdm9pZCBpbnRlbF9jc3JfdWNvZGVfaW5pdChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KTsKPiAtZW51bSBjc3Jfc3RhdGUgaW50ZWxfY3NyX2xvYWRfc3RhdHVzX2dldChz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwo+IC12b2lkIGludGVsX2Nzcl9sb2Fk X3N0YXR1c19zZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+IC0JCQkJCWVu dW0gY3NyX3N0YXRlIHN0YXRlKTsKPiAgIHZvaWQgaW50ZWxfY3NyX2xvYWRfcHJvZ3JhbShzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgIHZvaWQgaW50ZWxfY3NyX3Vjb2RlX2Zpbmkoc3RydWN0 IGRybV9kZXZpY2UgKmRldik7Cj4gICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcnVudGltZV9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcnVudGlt ZV9wbS5jCj4gaW5kZXggOTI3NDZlMS4uMzBiNTgwMSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9ydW50aW1lX3BtLmMKPiBAQCAtNjY0LDggKzY2NCw3IEBAIHN0YXRpYyB2b2lkIHNr bF9zZXRfcG93ZXJfd2VsbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gICAJ fSBlbHNlIHsKPiAgIAkJaWYgKGVuYWJsZV9yZXF1ZXN0ZWQpIHsKPiAgIAkJCWlmIChJU19TS1lM QUtFKGRldikgJiYKPiAtCQkJCShwb3dlcl93ZWxsLT5kYXRhID09IFNLTF9ESVNQX1BXXzEpICYm Cj4gLQkJCQkoaW50ZWxfY3NyX2xvYWRfc3RhdHVzX2dldChkZXZfcHJpdikgPT0gRldfTE9BREVE KSkKPiArCQkJCShwb3dlcl93ZWxsLT5kYXRhID09IFNLTF9ESVNQX1BXXzEpKQo+ICAgCQkJCURS TV9ERUJVR19LTVMoIk5vdCBEaXNhYmxpbmcgUFcxLCBkbWMgd2lsbCBoYW5kbGVcbiIpOwo+ICAg CQkJZWxzZSB7Cj4gICAJCQkJSTkxNV9XUklURShIU1dfUFdSX1dFTExfRFJJVkVSLAl0bXAgJiB+ cmVxX21hc2spOwo+IEBAIC02NzQsMjAgKzY3Myw4IEBAIHN0YXRpYyB2b2lkIHNrbF9zZXRfcG93 ZXJfd2VsbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gICAJCQl9Cj4gICAK PiAgIAkJCWlmIChHRU45X0VOQUJMRV9EQzUoZGV2KSAmJgo+IC0JCQkJcG93ZXJfd2VsbC0+ZGF0 YSA9PSBTS0xfRElTUF9QV18yKSB7Cj4gLQkJCQllbnVtIGNzcl9zdGF0ZSBzdGF0ZTsKPiAtCQkJ CS8qIFRPRE86IHdhaXQgZm9yIGEgY29tcGxldGlvbiBldmVudCBvcgo+IC0JCQkJICogc2ltaWxh ciBoZXJlIGluc3RlYWQgb2YgYnVzeQo+IC0JCQkJICogd2FpdGluZyB1c2luZyB3YWl0X2ZvciBm dW5jdGlvbi4KPiAtCQkJCSAqLwo+IC0JCQkJd2FpdF9mb3IoKHN0YXRlID0gaW50ZWxfY3NyX2xv YWRfc3RhdHVzX2dldChkZXZfcHJpdikpICE9Cj4gLQkJCQkJCUZXX1VOSU5JVElBTElaRUQsIDEw MDApOwo+IC0JCQkJaWYgKHN0YXRlICE9IEZXX0xPQURFRCkKPiAtCQkJCQlEUk1fREVCVUcoIkNT UiBmaXJtd2FyZSBub3QgcmVhZHkgKCVkKVxuIiwKPiAtCQkJCQkJCXN0YXRlKTsKPiAtCQkJCWVs c2UKPiArCQkJCXBvd2VyX3dlbGwtPmRhdGEgPT0gU0tMX0RJU1BfUFdfMikKPiAgIAkJCQkJZ2Vu OV9lbmFibGVfZGM1KGRldl9wcml2KTsKPiAtCQkJfQo+ICAgCQl9Cj4gICAJfQo+ICAgCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=