From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan De Oliveira Subject: Re: [PATCH 4/7] drm/i915: Move load time display/audio callback init earlier Date: Thu, 10 Mar 2016 10:58:39 +0200 Message-ID: <1457600319.4631.25.camel@gmail.com> References: <1457537506-12455-1-git-send-email-imre.deak@intel.com> <1457537506-12455-5-git-send-email-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pf0-x241.google.com (mail-pf0-x241.google.com [IPv6:2607:f8b0:400e:c00::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 323C689E39 for ; Thu, 10 Mar 2016 08:58:44 +0000 (UTC) Received: by mail-pf0-x241.google.com with SMTP id u190so2147176pfb.2 for ; Thu, 10 Mar 2016 00:58:44 -0800 (PST) In-Reply-To: <1457537506-12455-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 List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAyMDE2LTAzLTA5IGF0IDE3OjMxICswMjAwLCBJbXJlIERlYWsgd3JvdGU6Cj4gQWxs IG9mIHRoaXMgaXMgU1cgb25seSBpbml0aWFsaXphdGlvbiBzbyB3ZSBjYW4gbW92ZSB0aGVtIGVh cmxpZXIuIE1vdmUKPiB0aGUgbXV0ZXggaW5pdCB3aGVyZSB0aGUgcmVzdCBvZiB0aGUgbG9ja3Mg YXJlIGluaXRlZC4gV2hpbGUgYXQgaXQgYWxzbwo+IGNvbnZlcnQgZGV2IHRvIGRldl9wcml2Lgo+ IAo+IFNpZ25lZC1vZmYtYnk6IEltcmUgRGVhayA8aW1yZS5kZWFrQGludGVsLmNvbT4KPiAtLS0K PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYyAgICAgIHwgIDMgKysKPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYyAgIHwgMTIgKysrLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDc3ICsrKysrKysrKysrKysrKystLS0tLS0tLS0t LS0tLS0tLS0tCj4gLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAg MyArLQo+ICA0IGZpbGVzIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDUwIGRlbGV0aW9ucygt KQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYwo+IGluZGV4IDliM2VkMDAuLjU1YjBjNjIgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMKPiBAQCAtMTAxNiw2ICsxMDE2LDcgQEAgaW50IGk5 MTVfZHJpdmVyX2xvYWQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdW5zaWduZWQKPiBsb25nIGZs YWdzKQo+ICAJbXV0ZXhfaW5pdCgmZGV2X3ByaXYtPm1vZGVzZXRfcmVzdG9yZV9sb2NrKTsKPiAg CW11dGV4X2luaXQoJmRldl9wcml2LT5hdl9tdXRleCk7Cj4gIAltdXRleF9pbml0KCZkZXZfcHJp di0+d20ud21fbXV0ZXgpOwo+ICsJbXV0ZXhfaW5pdCgmZGV2X3ByaXYtPnBwc19tdXRleCk7Cj4g IAo+ICAJcmV0ID0gaTkxNV93b3JrcXVldWVzX2luaXQoZGV2X3ByaXYpOwo+ICAJaWYgKHJldCA8 IDApCj4gQEAgLTEwMjgsNiArMTAyOSw4IEBAIGludCBpOTE1X2RyaXZlcl9sb2FkKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHVuc2lnbmVkCj4gbG9uZyBmbGFncykKPiAgCWludGVsX2luaXRfZHBp byhkZXZfcHJpdik7Cj4gIAlpbnRlbF9wb3dlcl9kb21haW5zX2luaXQoZGV2X3ByaXYpOwo+ICAJ aW50ZWxfaXJxX2luaXQoZGV2X3ByaXYpOwo+ICsJaW50ZWxfaW5pdF9kaXNwbGF5X2NhbGxiYWNr cyhkZXZfcHJpdik7Cj4gKwlpbnRlbF9pbml0X2F1ZGlvX2NhbGxiYWNrcyhkZXZfcHJpdik7Cj4g IAo+ICAJaW50ZWxfcnVudGltZV9wbV9nZXQoZGV2X3ByaXYpOwo+ICAKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYwo+IGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfYXVkaW8uYwo+IGluZGV4IDMwZjkyMTQuLjE5MzY3NTIgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2F1ZGlvLmMKPiBAQCAtNTY3LDIwICs1NjcsMTggQEAgdm9pZCBpbnRlbF9h dWRpb19jb2RlY19kaXNhYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyCj4gKmludGVsX2VuY29kZXIp Cj4gICAqIGludGVsX2luaXRfYXVkaW8gLSBTZXQgdXAgY2hpcCBzcGVjaWZpYyBhdWRpbyBmdW5j dGlvbnMKPiAgICogQGRldjogZHJtIGRldmljZQo+ICAgKi8KPiAtdm9pZCBpbnRlbF9pbml0X2F1 ZGlvKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gK3ZvaWQgaW50ZWxfaW5pdF9hdWRpb19jYWxs YmFja3Moc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICB7Cj4gLQlzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+IC0KPiAtCWlm IChJU19HNFgoZGV2KSkgewo+ICsJaWYgKElTX0c0WChkZXZfcHJpdikpIHsKPiAgCQlkZXZfcHJp di0+ZGlzcGxheS5hdWRpb19jb2RlY19lbmFibGUgPQo+IGc0eF9hdWRpb19jb2RlY19lbmFibGU7 Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuYXVkaW9fY29kZWNfZGlzYWJsZSA9Cj4gZzR4X2F1ZGlv X2NvZGVjX2Rpc2FibGU7Cj4gLQl9IGVsc2UgaWYgKElTX1ZBTExFWVZJRVcoZGV2KSB8fCBJU19D SEVSUllWSUVXKGRldikpIHsKPiArCX0gZWxzZSBpZiAoSVNfVkFMTEVZVklFVyhkZXZfcHJpdikg fHwgSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpIHsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5hdWRp b19jb2RlY19lbmFibGUgPQo+IGlsa19hdWRpb19jb2RlY19lbmFibGU7Cj4gIAkJZGV2X3ByaXYt PmRpc3BsYXkuYXVkaW9fY29kZWNfZGlzYWJsZSA9Cj4gaWxrX2F1ZGlvX2NvZGVjX2Rpc2FibGU7 Cj4gLQl9IGVsc2UgaWYgKElTX0hBU1dFTEwoZGV2KSB8fCBJTlRFTF9JTkZPKGRldiktPmdlbiA+ PSA4KSB7Cj4gKwl9IGVsc2UgaWYgKElTX0hBU1dFTEwoZGV2X3ByaXYpIHx8IElOVEVMX0lORk8o ZGV2X3ByaXYpLT5nZW4gPj0gOCkgewo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmF1ZGlvX2NvZGVj X2VuYWJsZSA9Cj4gaHN3X2F1ZGlvX2NvZGVjX2VuYWJsZTsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxh eS5hdWRpb19jb2RlY19kaXNhYmxlID0KPiBoc3dfYXVkaW9fY29kZWNfZGlzYWJsZTsKPiAtCX0g ZWxzZSBpZiAoSEFTX1BDSF9TUExJVChkZXYpKSB7Cj4gKwl9IGVsc2UgaWYgKEhBU19QQ0hfU1BM SVQoZGV2X3ByaXYpKSB7Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuYXVkaW9fY29kZWNfZW5hYmxl ID0KPiBpbGtfYXVkaW9fY29kZWNfZW5hYmxlOwo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmF1ZGlv X2NvZGVjX2Rpc2FibGUgPQo+IGlsa19hdWRpb19jb2RlY19kaXNhYmxlOwo+ICAJfQo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IGluZGV4IDYyZDM2YTcuLjUxNzA3MTggMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTE1MDk1LDIyICsxNTA5 NSwyMCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9tb2RlX2NvbmZpZ19mdW5jcwo+IGludGVs X21vZGVfZnVuY3MgPSB7Cj4gIH07Cj4gIAo+ICAvKiBTZXQgdXAgY2hpcCBzcGVjaWZpYyBkaXNw bGF5IGZ1bmN0aW9ucyAqLwo+IC1zdGF0aWMgdm9pZCBpbnRlbF9pbml0X2Rpc3BsYXkoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKPiArdm9pZCBpbnRlbF9pbml0X2Rpc3BsYXlfY2FsbGJhY2tzKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAgewo+IC0Jc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiAtCj4gLQlpZiAoSEFTX1BD SF9TUExJVChkZXYpIHx8IElTX0c0WChkZXYpKQo+ICsJaWYgKEhBU19QQ0hfU1BMSVQoZGV2X3By aXYpIHx8IElTX0c0WChkZXZfcHJpdikpCj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuZmluZF9kcGxs ID0gZzR4X2ZpbmRfYmVzdF9kcGxsOwo+IC0JZWxzZSBpZiAoSVNfQ0hFUlJZVklFVyhkZXYpKQo+ ICsJZWxzZSBpZiAoSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpCj4gIAkJZGV2X3ByaXYtPmRpc3Bs YXkuZmluZF9kcGxsID0gY2h2X2ZpbmRfYmVzdF9kcGxsOwo+IC0JZWxzZSBpZiAoSVNfVkFMTEVZ VklFVyhkZXYpKQo+ICsJZWxzZSBpZiAoSVNfVkFMTEVZVklFVyhkZXZfcHJpdikpCj4gIAkJZGV2 X3ByaXYtPmRpc3BsYXkuZmluZF9kcGxsID0gdmx2X2ZpbmRfYmVzdF9kcGxsOwo+IC0JZWxzZSBp ZiAoSVNfUElORVZJRVcoZGV2KSkKPiArCWVsc2UgaWYgKElTX1BJTkVWSUVXKGRldl9wcml2KSkK PiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5maW5kX2RwbGwgPSBwbnZfZmluZF9iZXN0X2RwbGw7Cj4g IAllbHNlCj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuZmluZF9kcGxsID0gaTl4eF9maW5kX2Jlc3Rf ZHBsbDsKPiAgCj4gLQlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0gOSkgewo+ICsJaWYgKElO VEVMX0lORk8oZGV2X3ByaXYpLT5nZW4gPj0gOSkgewo+ICAJCWRldl9wcml2LT5kaXNwbGF5Lmdl dF9waXBlX2NvbmZpZyA9IGhhc3dlbGxfZ2V0X3BpcGVfY29uZmlnOwo+ICAJCWRldl9wcml2LT5k aXNwbGF5LmdldF9pbml0aWFsX3BsYW5lX2NvbmZpZyA9Cj4gIAkJCXNreWxha2VfZ2V0X2luaXRp YWxfcGxhbmVfY29uZmlnOwo+IEBAIC0xNTExOCw3ICsxNTExNiw3IEBAIHN0YXRpYyB2b2lkIGlu dGVsX2luaXRfZGlzcGxheShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCQloYXN3ZWxsX2Ny dGNfY29tcHV0ZV9jbG9jazsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2VuYWJsZSA9IGhh c3dlbGxfY3J0Y19lbmFibGU7Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19kaXNhYmxlID0g aGFzd2VsbF9jcnRjX2Rpc2FibGU7Cj4gLQl9IGVsc2UgaWYgKEhBU19EREkoZGV2KSkgewo+ICsJ fSBlbHNlIGlmIChIQVNfRERJKGRldl9wcml2KSkgewo+ICAJCWRldl9wcml2LT5kaXNwbGF5Lmdl dF9waXBlX2NvbmZpZyA9IGhhc3dlbGxfZ2V0X3BpcGVfY29uZmlnOwo+ICAJCWRldl9wcml2LT5k aXNwbGF5LmdldF9pbml0aWFsX3BsYW5lX2NvbmZpZyA9Cj4gIAkJCWlyb25sYWtlX2dldF9pbml0 aWFsX3BsYW5lX2NvbmZpZzsKPiBAQCAtMTUxMjYsNyArMTUxMjQsNyBAQCBzdGF0aWMgdm9pZCBp bnRlbF9pbml0X2Rpc3BsYXkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQkJaGFzd2VsbF9j cnRjX2NvbXB1dGVfY2xvY2s7Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19lbmFibGUgPSBo YXN3ZWxsX2NydGNfZW5hYmxlOwo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZGlzYWJsZSA9 IGhhc3dlbGxfY3J0Y19kaXNhYmxlOwo+IC0JfSBlbHNlIGlmIChIQVNfUENIX1NQTElUKGRldikp IHsKPiArCX0gZWxzZSBpZiAoSEFTX1BDSF9TUExJVChkZXZfcHJpdikpIHsKPiAgCQlkZXZfcHJp di0+ZGlzcGxheS5nZXRfcGlwZV9jb25maWcgPSBpcm9ubGFrZV9nZXRfcGlwZV9jb25maWc7Cj4g IAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2luaXRpYWxfcGxhbmVfY29uZmlnID0KPiAgCQkJaXJv bmxha2VfZ2V0X2luaXRpYWxfcGxhbmVfY29uZmlnOwo+IEBAIC0xNTEzNCw3ICsxNTEzMiw3IEBA IHN0YXRpYyB2b2lkIGludGVsX2luaXRfZGlzcGxheShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ ICAJCQlpcm9ubGFrZV9jcnRjX2NvbXB1dGVfY2xvY2s7Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXku Y3J0Y19lbmFibGUgPSBpcm9ubGFrZV9jcnRjX2VuYWJsZTsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxh eS5jcnRjX2Rpc2FibGUgPSBpcm9ubGFrZV9jcnRjX2Rpc2FibGU7Cj4gLQl9IGVsc2UgaWYgKElT X1ZBTExFWVZJRVcoZGV2KSB8fCBJU19DSEVSUllWSUVXKGRldikpIHsKPiArCX0gZWxzZSBpZiAo SVNfVkFMTEVZVklFVyhkZXZfcHJpdikgfHwgSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpIHsKPiAg CQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfcGlwZV9jb25maWcgPSBpOXh4X2dldF9waXBlX2NvbmZp ZzsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfaW5pdGlhbF9wbGFuZV9jb25maWcgPQo+ICAJ CQlpOXh4X2dldF9pbml0aWFsX3BsYW5lX2NvbmZpZzsKPiBAQCAtMTUxNTEsODkgKzE1MTQ5LDg5 IEBAIHN0YXRpYyB2b2lkIGludGVsX2luaXRfZGlzcGxheShzdHJ1Y3QgZHJtX2RldmljZQo+ICpk ZXYpCj4gIAl9Cj4gIAo+ICAJLyogUmV0dXJucyB0aGUgY29yZSBkaXNwbGF5IGNsb2NrIHNwZWVk ICovCj4gLQlpZiAoSVNfU0tZTEFLRShkZXYpIHx8IElTX0tBQllMQUtFKGRldikpCj4gKwlpZiAo SVNfU0tZTEFLRShkZXZfcHJpdikgfHwgSVNfS0FCWUxBS0UoZGV2X3ByaXYpKQo+ICAJCWRldl9w cml2LT5kaXNwbGF5LmdldF9kaXNwbGF5X2Nsb2NrX3NwZWVkID0KPiAgCQkJc2t5bGFrZV9nZXRf ZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2UgaWYgKElTX0JST1hUT04oZGV2KSkKPiArCWVs c2UgaWYgKElTX0JST1hUT04oZGV2X3ByaXYpKQo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9k aXNwbGF5X2Nsb2NrX3NwZWVkID0KPiAgCQkJYnJveHRvbl9nZXRfZGlzcGxheV9jbG9ja19zcGVl ZDsKPiAtCWVsc2UgaWYgKElTX0JST0FEV0VMTChkZXYpKQo+ICsJZWxzZSBpZiAoSVNfQlJPQURX RUxMKGRldl9wcml2KSkKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfZGlzcGxheV9jbG9ja19z cGVlZCA9Cj4gIAkJCWJyb2Fkd2VsbF9nZXRfZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2Ug aWYgKElTX0hBU1dFTEwoZGV2KSkKPiArCWVsc2UgaWYgKElTX0hBU1dFTEwoZGV2X3ByaXYpKQo+ ICAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9kaXNwbGF5X2Nsb2NrX3NwZWVkID0KPiAgCQkJaGFz d2VsbF9nZXRfZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2UgaWYgKElTX1ZBTExFWVZJRVco ZGV2KSB8fCBJU19DSEVSUllWSUVXKGRldikpCj4gKwllbHNlIGlmIChJU19WQUxMRVlWSUVXKGRl dl9wcml2KSB8fCBJU19DSEVSUllWSUVXKGRldl9wcml2KSkKPiAgCQlkZXZfcHJpdi0+ZGlzcGxh eS5nZXRfZGlzcGxheV9jbG9ja19zcGVlZCA9Cj4gIAkJCXZhbGxleXZpZXdfZ2V0X2Rpc3BsYXlf Y2xvY2tfc3BlZWQ7Cj4gLQllbHNlIGlmIChJU19HRU41KGRldikpCj4gKwllbHNlIGlmIChJU19H RU41KGRldl9wcml2KSkKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfZGlzcGxheV9jbG9ja19z cGVlZCA9Cj4gIAkJCWlsa19nZXRfZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2UgaWYgKElT X0k5NDVHKGRldikgfHwgSVNfQlJPQURXQVRFUihkZXYpIHx8Cj4gLQkJIElTX0dFTjYoZGV2KSB8 fCBJU19JVllCUklER0UoZGV2KSkKPiArCWVsc2UgaWYgKElTX0k5NDVHKGRldl9wcml2KSB8fCBJ U19CUk9BRFdBVEVSKGRldl9wcml2KSB8fAo+ICsJCSBJU19HRU42KGRldl9wcml2KSB8fCBJU19J VllCUklER0UoZGV2X3ByaXYpKQo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9kaXNwbGF5X2Ns b2NrX3NwZWVkID0KPiAgCQkJaTk0NV9nZXRfZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2Ug aWYgKElTX0dNNDUoZGV2KSkKPiArCWVsc2UgaWYgKElTX0dNNDUoZGV2X3ByaXYpKQo+ICAJCWRl dl9wcml2LT5kaXNwbGF5LmdldF9kaXNwbGF5X2Nsb2NrX3NwZWVkID0KPiAgCQkJZ200NV9nZXRf ZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2UgaWYgKElTX0NSRVNUTElORShkZXYpKQo+ICsJ ZWxzZSBpZiAoSVNfQ1JFU1RMSU5FKGRldl9wcml2KSkKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5n ZXRfZGlzcGxheV9jbG9ja19zcGVlZCA9Cj4gIAkJCWk5NjVnbV9nZXRfZGlzcGxheV9jbG9ja19z cGVlZDsKPiAtCWVsc2UgaWYgKElTX1BJTkVWSUVXKGRldikpCj4gKwllbHNlIGlmIChJU19QSU5F VklFVyhkZXZfcHJpdikpCj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2Rpc3BsYXlfY2xvY2tf c3BlZWQgPQo+ICAJCQlwbnZfZ2V0X2Rpc3BsYXlfY2xvY2tfc3BlZWQ7Cj4gLQllbHNlIGlmIChJ U19HMzMoZGV2KSB8fCBJU19HNFgoZGV2KSkKPiArCWVsc2UgaWYgKElTX0czMyhkZXZfcHJpdikg fHwgSVNfRzRYKGRldl9wcml2KSkKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfZGlzcGxheV9j bG9ja19zcGVlZCA9Cj4gIAkJCWczM19nZXRfZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2Ug aWYgKElTX0k5MTVHKGRldikpCj4gKwllbHNlIGlmIChJU19JOTE1RyhkZXZfcHJpdikpCj4gIAkJ ZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2Rpc3BsYXlfY2xvY2tfc3BlZWQgPQo+ICAJCQlpOTE1X2dl dF9kaXNwbGF5X2Nsb2NrX3NwZWVkOwo+IC0JZWxzZSBpZiAoSVNfSTk0NUdNKGRldikgfHwgSVNf ODQ1RyhkZXYpKQo+ICsJZWxzZSBpZiAoSVNfSTk0NUdNKGRldl9wcml2KSB8fCBJU184NDVHKGRl dl9wcml2KSkKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfZGlzcGxheV9jbG9ja19zcGVlZCA9 Cj4gIAkJCWk5eHhfbWlzY19nZXRfZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2UgaWYgKElT X0k5MTVHTShkZXYpKQo+ICsJZWxzZSBpZiAoSVNfSTkxNUdNKGRldl9wcml2KSkKPiAgCQlkZXZf cHJpdi0+ZGlzcGxheS5nZXRfZGlzcGxheV9jbG9ja19zcGVlZCA9Cj4gIAkJCWk5MTVnbV9nZXRf ZGlzcGxheV9jbG9ja19zcGVlZDsKPiAtCWVsc2UgaWYgKElTX0k4NjVHKGRldikpCj4gKwllbHNl IGlmIChJU19JODY1RyhkZXZfcHJpdikpCj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2Rpc3Bs YXlfY2xvY2tfc3BlZWQgPQo+ICAJCQlpODY1X2dldF9kaXNwbGF5X2Nsb2NrX3NwZWVkOwo+IC0J ZWxzZSBpZiAoSVNfSTg1WChkZXYpKQo+ICsJZWxzZSBpZiAoSVNfSTg1WChkZXZfcHJpdikpCj4g IAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2Rpc3BsYXlfY2xvY2tfc3BlZWQgPQo+ICAJCQlpODV4 X2dldF9kaXNwbGF5X2Nsb2NrX3NwZWVkOwo+ICAJZWxzZSB7IC8qIDgzMCAqLwo+IC0JCVdBUk4o IUlTX0k4MzAoZGV2KSwgIlVua25vd24gcGxhdGZvcm0uIEFzc3VtaW5nIDEzMyBNSHoKPiBDRENM S1xuIik7Cj4gKwkJV0FSTighSVNfSTgzMChkZXZfcHJpdiksICJVbmtub3duIHBsYXRmb3JtLiBB c3N1bWluZyAxMzMgTUh6Cj4gQ0RDTEtcbiIpOwo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9k aXNwbGF5X2Nsb2NrX3NwZWVkID0KPiAgCQkJaTgzMF9nZXRfZGlzcGxheV9jbG9ja19zcGVlZDsK PiAgCX0KPiAgCj4gLQlpZiAoSVNfR0VONShkZXYpKSB7Cj4gKwlpZiAoSVNfR0VONShkZXZfcHJp dikpIHsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5mZGlfbGlua190cmFpbiA9IGlyb25sYWtlX2Zk aV9saW5rX3RyYWluOwo+IC0JfSBlbHNlIGlmIChJU19HRU42KGRldikpIHsKPiArCX0gZWxzZSBp ZiAoSVNfR0VONihkZXZfcHJpdikpIHsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5mZGlfbGlua190 cmFpbiA9IGdlbjZfZmRpX2xpbmtfdHJhaW47Cj4gLQl9IGVsc2UgaWYgKElTX0lWWUJSSURHRShk ZXYpKSB7Cj4gKwl9IGVsc2UgaWYgKElTX0lWWUJSSURHRShkZXZfcHJpdikpIHsKPiAgCQkvKiBG SVhNRTogZGV0ZWN0IEIwKyBzdGVwcGluZyBhbmQgdXNlIGF1dG8gdHJhaW5pbmcgKi8KPiAgCQlk ZXZfcHJpdi0+ZGlzcGxheS5mZGlfbGlua190cmFpbiA9IGl2Yl9tYW51YWxfZmRpX2xpbmtfdHJh aW47Cj4gLQl9IGVsc2UgaWYgKElTX0hBU1dFTEwoZGV2KSB8fCBJU19CUk9BRFdFTEwoZGV2KSkg ewo+ICsJfSBlbHNlIGlmIChJU19IQVNXRUxMKGRldl9wcml2KSB8fCBJU19CUk9BRFdFTEwoZGV2 X3ByaXYpKSB7Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkuZmRpX2xpbmtfdHJhaW4gPSBoc3dfZmRp X2xpbmtfdHJhaW47Cj4gLQkJaWYgKElTX0JST0FEV0VMTChkZXYpKSB7Cj4gKwkJaWYgKElTX0JS T0FEV0VMTChkZXZfcHJpdikpIHsKPiAgCQkJZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jb21t aXRfY2RjbGsgPQo+ICAJCQkJYnJvYWR3ZWxsX21vZGVzZXRfY29tbWl0X2NkY2xrOwo+ICAJCQlk ZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0X2NhbGNfY2RjbGsgPQo+ICAJCQkJYnJvYWR3ZWxsX21v ZGVzZXRfY2FsY19jZGNsazsKPiAgCQl9Cj4gLQl9IGVsc2UgaWYgKElTX1ZBTExFWVZJRVcoZGV2 KSB8fCBJU19DSEVSUllWSUVXKGRldikpIHsKPiArCX0gZWxzZSBpZiAoSVNfVkFMTEVZVklFVyhk ZXZfcHJpdikgfHwgSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpIHsKPiAgCQlkZXZfcHJpdi0+ZGlz cGxheS5tb2Rlc2V0X2NvbW1pdF9jZGNsayA9Cj4gIAkJCXZhbGxleXZpZXdfbW9kZXNldF9jb21t aXRfY2RjbGs7Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jYWxjX2NkY2xrID0KPiAg CQkJdmFsbGV5dmlld19tb2Rlc2V0X2NhbGNfY2RjbGs7Cj4gLQl9IGVsc2UgaWYgKElTX0JST1hU T04oZGV2KSkgewo+ICsJfSBlbHNlIGlmIChJU19CUk9YVE9OKGRldl9wcml2KSkgewo+ICAJCWRl dl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY29tbWl0X2NkY2xrID0KPiAgCQkJYnJveHRvbl9tb2Rl c2V0X2NvbW1pdF9jZGNsazsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0X2NhbGNfY2Rj bGsgPQo+ICAJCQlicm94dG9uX21vZGVzZXRfY2FsY19jZGNsazsKPiAgCX0KCldvdWxkIGl0IG1h a2Ugc2Vuc2UgdG8gY2hhbmdlIHRoZXNlIGlmIGxhZGRlcnMgaW50byBhIHN0cnVjdHMgb2YgZnVu Y3Rpb24KcG9pbnRlcnMgYW5kIHBvaW50IHRvIHRob3NlIGZyb20gc3RydWN0IGludGVsX2Rldmlj ZV9pbmZvPyBUaGUgSEFTX1BDSF9TUExJVCgpCmNoZWNrIGNvdWxkIGJlIGEgYml0IHRyaWNreSwg YnV0IHRob3NlIHVzdWFsbHkgZ28gYXMKCiAgaWYgKEhBU19EREkoKSkKCS4uLgogIGVsc2UgaWYg KEhBU19QQ0hfU1BMSVQoKSkKCS4uLiwKCnNvIHRoZXkgdXN1YWxseSBtZWFuIElMSywgU05CIGFu ZCBJVkIuCgpJJ20gbm90IHNheWluZyB0aGlzIHNob3VsZCBiZSBwYXJ0IG9mIHRoaXMgc2VyaWVz LCBidXQganVzdCB3YW50ZWQgdG8gdGhyb3cgdGhlCmlkZWEgb3V0IHRoZXJlLgoKCkFuZGVyCgoK PiAgCj4gLQlzd2l0Y2ggKElOVEVMX0lORk8oZGV2KS0+Z2VuKSB7Cj4gKwlzd2l0Y2ggKElOVEVM X0lORk8oZGV2X3ByaXYpLT5nZW4pIHsKPiAgCWNhc2UgMjoKPiAgCQlkZXZfcHJpdi0+ZGlzcGxh eS5xdWV1ZV9mbGlwID0gaW50ZWxfZ2VuMl9xdWV1ZV9mbGlwOwo+ICAJCWJyZWFrOwo+IEBAIC0x NTI2MCw4ICsxNTI1OCw2IEBAIHN0YXRpYyB2b2lkIGludGVsX2luaXRfZGlzcGxheShzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KQo+ICAJCS8qIERlZmF1bHQganVzdCByZXR1cm5zIC1FTk9ERVYgdG8g aW5kaWNhdGUgdW5zdXBwb3J0ZWQgKi8KPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5xdWV1ZV9mbGlw ID0gaW50ZWxfZGVmYXVsdF9xdWV1ZV9mbGlwOwo+ICAJfQo+IC0KPiAtCW11dGV4X2luaXQoJmRl dl9wcml2LT5wcHNfbXV0ZXgpOwo+ICB9Cj4gIAo+ICAvKgo+IEBAIC0xNTU4OCw5ICsxNTU4NCw2 IEBAIHZvaWQgaW50ZWxfbW9kZXNldF9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAkJ fQo+ICAJfQo+ICAKPiAtCWludGVsX2luaXRfZGlzcGxheShkZXYpOwo+IC0JaW50ZWxfaW5pdF9h dWRpbyhkZXYpOwo+IC0KPiAgCWlmIChJU19HRU4yKGRldikpIHsKPiAgCQlkZXYtPm1vZGVfY29u ZmlnLm1heF93aWR0aCA9IDIwNDg7Cj4gIAkJZGV2LT5tb2RlX2NvbmZpZy5tYXhfaGVpZ2h0ID0g MjA0ODsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gaW5kZXggN2IyZDY2ZC4uNTI2NDkw MSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTExMTAsNyArMTExMCw3IEBA IHUzMiBpbnRlbF9mYl9zdHJpZGVfYWxpZ25tZW50KGNvbnN0IHN0cnVjdAo+IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAo+ICAJCQkgICAgICB1aW50NjRfdCBmYl9tb2RpZmllciwgdWludDMy X3QgcGl4ZWxfZm9ybWF0KTsKPiAgCj4gIC8qIGludGVsX2F1ZGlvLmMgKi8KPiAtdm9pZCBpbnRl bF9pbml0X2F1ZGlvKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+ICt2b2lkIGludGVsX2luaXRf YXVkaW9fY2FsbGJhY2tzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cj4gIHZv aWQgaW50ZWxfYXVkaW9fY29kZWNfZW5hYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVy KTsKPiAgdm9pZCBpbnRlbF9hdWRpb19jb2RlY19kaXNhYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVy ICplbmNvZGVyKTsKPiAgdm9pZCBpOTE1X2F1ZGlvX2NvbXBvbmVudF9pbml0KHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cj4gQEAgLTExMTgsNiArMTExOCw3IEBAIHZvaWQgaTkx NV9hdWRpb19jb21wb25lbnRfY2xlYW51cChzdHJ1Y3QKPiBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdik7Cj4gIAo+ICAvKiBpbnRlbF9kaXNwbGF5LmMgKi8KPiAgZXh0ZXJuIGNvbnN0IHN0cnVj dCBkcm1fcGxhbmVfZnVuY3MgaW50ZWxfcGxhbmVfZnVuY3M7Cj4gK3ZvaWQgaW50ZWxfaW5pdF9k aXNwbGF5X2NhbGxiYWNrcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwo+ICB1 bnNpZ25lZCBpbnQgaW50ZWxfcm90YXRpb25faW5mb19zaXplKGNvbnN0IHN0cnVjdCBpbnRlbF9y b3RhdGlvbl9pbmZvCj4gKnJvdF9pbmZvKTsKPiAgYm9vbCBpbnRlbF9oYXNfcGVuZGluZ19mYl91 bnBpbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgdm9pZCBpbnRlbF9tYXJrX2J1c3koc3Ry dWN0IGRybV9kZXZpY2UgKmRldik7Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=