From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 05/10] drm/i915: retrieve current fb config into new plane_config structure at init v8 Date: Wed, 18 Dec 2013 12:36:14 +0200 Message-ID: <87r49a4fa9.fsf@intel.com> References: <1387320421-857-1-git-send-email-jbarnes@virtuousgeek.org> <1387320421-857-5-git-send-email-jbarnes@virtuousgeek.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 94599FC10A for ; Wed, 18 Dec 2013 02:33:40 -0800 (PST) In-Reply-To: <1387320421-857-5-git-send-email-jbarnes@virtuousgeek.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: Jesse Barnes , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAxOCBEZWMgMjAxMywgSmVzc2UgQmFybmVzIDxqYmFybmVzQHZpcnR1b3VzZ2Vlay5v cmc+IHdyb3RlOgo+IFJlYWQgb3V0IHRoZSBjdXJyZW50IHBsYW5lIGNvbmZpZ3VyYXRpb24gYXQg aW5pdCB0aW1lIGludG8gYSBuZXcKPiBwbGFuZV9jb25maWcgc3RydWN0dXJlLiAgVGhpcyBhbGxv d3MgdXMgdG8gdHJhY2sgYW55IGV4aXN0aW5nCj4gZnJhbWVidWZmZXJzIGF0dGFjaGVkIHRvIHRo ZSBwbGFuZSBhbmQgcG90ZW50aWFsbHkgcmUtdXNlIHRoZW0gaW4gb3VyCj4gZmJkZXYgY29kZSBm b3IgYSBzbW9vdGggaGFuZG9mZi4KPgo+IHYyOiB1cGRhdGUgZm9yIG5ldyBwaXRjaF9mb3Jfd2lk dGggZnVuY3Rpb24gKEplc3NlKQo+ICAgICBjb21tZW50IGhvdyBnZXRfcGxhbmVfY29uZmlnIHdv cmtzIHdpdGggc2hhcmVkIGZicyAoSmVzc2UpCj4gdjM6IHMvQVJHQi9YUkdCIChWaWxsZSkKPiAg ICAgdXNlIHBpcGVzcmMgd2lkdGgvaGVpZ2h0IChWaWxsZSkKPiAgICAgZml4IGZvdXJjYyBjb21t ZW50IChCb2IpCj4gICAgIHVzZSBkcm1fZm9ybWF0X3BsYW5lX2NwcCAoVmlsbGUpCj4gdjQ6IHVz ZSBmYiBmb3IgdHJhY2tpbmcgZmIgZGF0YSBvYmplY3QgKFZpbGxlKQo+IHY1OiBmaXggdXAgZ2Vu MiBwaXRjaCBsaW1pdHMgKFZpbGxlKQo+IHY2OiByZWFkIG91dCBzdHJpZGUgYXMgd2VsbCAoRGFu aWVsKQo+IHY3OiBzcGxpdCBvdXQgaW5pdCBvcmRlcmluZyBjaGFuZ2VzIChEYW5pZWwpCj4gICAg IGRvbid0IGZldGNoIGNvbmZpZyBpZiAhQ09ORklHX0ZCCj4gdjg6IHVzZSBwcm9wZXIgaGVpZ2h0 IGluIGdldF9wbGFuZV9jb25maWcgKENocmlzKQo+Cj4gU2lnbmVkLW9mZi1ieTogSmVzc2UgQmFy bmVzIDxqYmFybmVzQHZpcnR1b3VzZ2Vlay5vcmc+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmggICAgICB8ICAgMyArCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rpc3BsYXkuYyB8IDEzMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgIDggKysrCj4gIDMgZmlsZXMg Y2hhbmdlZCwgMTQxIGluc2VydGlvbnMoKykKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IGlu ZGV4IGVmYzU3ZmUuLjJlYTE1MWQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBAQCAt MzY2LDYgKzM2Niw3IEBAIHN0cnVjdCBkcm1faTkxNV9lcnJvcl9zdGF0ZSB7Cj4gIAo+ICBzdHJ1 Y3QgaW50ZWxfY29ubmVjdG9yOwo+ICBzdHJ1Y3QgaW50ZWxfY3J0Y19jb25maWc7Cj4gK3N0cnVj dCBpbnRlbF9wbGFuZV9jb25maWc7Cj4gIHN0cnVjdCBpbnRlbF9jcnRjOwo+ICBzdHJ1Y3QgaW50 ZWxfbGltaXQ7Cj4gIHN0cnVjdCBkcGxsOwo+IEBAIC00MDQsNiArNDA1LDggQEAgc3RydWN0IGRy bV9pOTE1X2Rpc3BsYXlfZnVuY3Mgewo+ICAJICogZmlsbHMgb3V0IHRoZSBwaXBlLWNvbmZpZyB3 aXRoIHRoZSBodyBzdGF0ZS4gKi8KPiAgCWJvb2wgKCpnZXRfcGlwZV9jb25maWcpKHN0cnVjdCBp bnRlbF9jcnRjICosCj4gIAkJCQlzdHJ1Y3QgaW50ZWxfY3J0Y19jb25maWcgKik7Cj4gKwl2b2lk ICgqZ2V0X3BsYW5lX2NvbmZpZykoc3RydWN0IGludGVsX2NydGMgKiwKPiArCQkJCSBzdHJ1Y3Qg aW50ZWxfcGxhbmVfY29uZmlnICopOwo+ICAJaW50ICgqY3J0Y19tb2RlX3NldCkoc3RydWN0IGRy bV9jcnRjICpjcnRjLAo+ICAJCQkgICAgIGludCB4LCBpbnQgeSwKPiAgCQkJICAgICBzdHJ1Y3Qg ZHJtX2ZyYW1lYnVmZmVyICpvbGRfZmIpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMKPiBpbmRleCAzNjdkNjRkLi42YzM4ZDAzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rpc3BsYXkuYwo+IEBAIC0yMDI1LDYgKzIwMjUsMjcgQEAgdW5zaWduZWQgbG9uZyBpbnRlbF9n ZW40X2NvbXB1dGVfcGFnZV9vZmZzZXQoaW50ICp4LCBpbnQgKnksCj4gIAl9Cj4gIH0KPiAgCj4g K2ludCBpbnRlbF9mb3JtYXRfdG9fZm91cmNjKGludCBmb3JtYXQpCj4gK3sKPiArCXN3aXRjaCAo Zm9ybWF0KSB7Cj4gKwljYXNlIERJU1BQTEFORV84QlBQOgo+ICsJCXJldHVybiBEUk1fRk9STUFU X0M4Owo+ICsJY2FzZSBESVNQUExBTkVfQkdSWDU1NToKPiArCQlyZXR1cm4gRFJNX0ZPUk1BVF9Y UkdCMTU1NTsKPiArCWNhc2UgRElTUFBMQU5FX0JHUlg1NjU6Cj4gKwkJcmV0dXJuIERSTV9GT1JN QVRfUkdCNTY1Owo+ICsJZGVmYXVsdDoKPiArCWNhc2UgRElTUFBMQU5FX0JHUlg4ODg6Cj4gKwkJ cmV0dXJuIERSTV9GT1JNQVRfWFJHQjg4ODg7Cj4gKwljYXNlIERJU1BQTEFORV9SR0JYODg4Ogo+ ICsJCXJldHVybiBEUk1fRk9STUFUX1hCR1I4ODg4Owo+ICsJY2FzZSBESVNQUExBTkVfQkdSWDEw MTAxMDoKPiArCQlyZXR1cm4gRFJNX0ZPUk1BVF9YUkdCMjEwMTAxMDsKPiArCWNhc2UgRElTUFBM QU5FX1JHQlgxMDEwMTA6Cj4gKwkJcmV0dXJuIERSTV9GT1JNQVRfWEJHUjIxMDEwMTA7Cj4gKwl9 Cj4gK30KPiArCj4gIHN0YXRpYyBpbnQgaTl4eF91cGRhdGVfcGxhbmUoc3RydWN0IGRybV9jcnRj ICpjcnRjLCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKPiAgCQkJICAgICBpbnQgeCwgaW50 IHkpCj4gIHsKPiBAQCAtNTQ4MCw2ICs1NTAxLDk2IEBAIHN0YXRpYyB2b2lkIHZsdl9jcnRjX2Ns b2NrX2dldChzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiAgCXBpcGVfY29uZmlnLT5wb3J0X2Ns b2NrID0gY2xvY2suZG90IC8gNTsKPiAgfQo+ICAKPiArc3RhdGljIHZvaWQgaTl4eF9nZXRfcGxh bmVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ICsJCQkJICBzdHJ1Y3QgaW50ZWxf cGxhbmVfY29uZmlnICpwbGFuZV9jb25maWcpCj4gK3sKPiArCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXYgPSBjcnRjLT5iYXNlLmRldjsKPiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2Jq ID0gTlVMTDsKPiArCXN0cnVjdCBkcm1fbW9kZV9mYl9jbWQyIG1vZGVfY21kID0geyAwIH07Cj4g Kwl1MzIgdmFsLCBiYXNlLCBvZmZzZXQ7Cj4gKwlpbnQgcGlwZSA9IGNydGMtPnBpcGUsIHBsYW5l ID0gY3J0Yy0+cGxhbmU7Cj4gKwlpbnQgZm91cmNjLCBwaXhlbF9mb3JtYXQ7Cj4gKwlpbnQgYWxp Z25lZF9oZWlnaHQ7Cj4gKwo+ICsJcGxhbmVfY29uZmlnLT5mYiA9IGt6YWxsb2Moc2l6ZW9mKCpw bGFuZV9jb25maWctPmZiKSwgR0ZQX0tFUk5FTCk7Cj4gKwlpZiAoIXBsYW5lX2NvbmZpZy0+ZmIp IHsKPiArCQlEUk1fREVCVUdfS01TKCJmYWlsZWQgdG8gYWxsb2MgZmJcbiIpOwo+ICsJCXJldHVy bjsKPiArCX0KPiArCj4gKwl2YWwgPSBJOTE1X1JFQUQoRFNQQ05UUihwbGFuZSkpOwo+ICsKPiAr CWlmIChJTlRFTF9JTkZPKGRldiktPmdlbiA+PSA0KQo+ICsJCWlmICh2YWwgJiBESVNQUExBTkVf VElMRUQpCj4gKwkJCXBsYW5lX2NvbmZpZy0+dGlsZWQgPSB0cnVlOwo+ICsKPiArCXBpeGVsX2Zv cm1hdCA9IHZhbCAmIERJU1BQTEFORV9QSVhGT1JNQVRfTUFTSzsKPiArCWZvdXJjYyA9IGludGVs X2Zvcm1hdF90b19mb3VyY2MocGl4ZWxfZm9ybWF0KTsKPiArCXBsYW5lX2NvbmZpZy0+ZmItPmJh c2UucGl4ZWxfZm9ybWF0ID0gZm91cmNjOwo+ICsJcGxhbmVfY29uZmlnLT5mYi0+YmFzZS5iaXRz X3Blcl9waXhlbCA9Cj4gKwkJZHJtX2Zvcm1hdF9wbGFuZV9jcHAoZm91cmNjLCAwKSAqIDg7Cj4g Kwo+ICsJaWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuID49IDQpIHsKPiArCQlpZiAocGxhbmVfY29u ZmlnLT50aWxlZCkKPiArCQkJb2Zmc2V0ID0gSTkxNV9SRUFEKERTUFRJTEVPRkYocGxhbmUpKTsK PiArCQllbHNlCj4gKwkJCW9mZnNldCA9IEk5MTVfUkVBRChEU1BMSU5PRkYocGxhbmUpKTsKPiAr CQliYXNlID0gSTkxNV9SRUFEKERTUFNVUkYocGxhbmUpKSAmIDB4ZmZmZmYwMDA7Cj4gKwl9IGVs c2Ugewo+ICsJCWJhc2UgPSBJOTE1X1JFQUQoRFNQQUREUihwbGFuZSkpOwo+ICsJfQo+ICsKPiAr CXZhbCA9IEk5MTVfUkVBRChQSVBFU1JDKHBpcGUpKTsKPiArCXBsYW5lX2NvbmZpZy0+ZmItPmJh c2Uud2lkdGggPSAoKHZhbCA+PiAxNikgJiAweGZmZikgKyAxOwo+ICsJcGxhbmVfY29uZmlnLT5m Yi0+YmFzZS5oZWlnaHQgPSAoKHZhbCA+PiAwKSAmIDB4ZmZmKSArIDE7Cj4gKwo+ICsJdmFsID0g STkxNV9SRUFEKERTUFNUUklERShwaXBlKSk7Cj4gKwlwbGFuZV9jb25maWctPmZiLT5iYXNlLnBp dGNoZXNbMF0gPSB2YWwgJiAweGZmZmZmZjgwOwo+ICsKPiArCWFsaWduZWRfaGVpZ2h0ID0gaW50 ZWxfYWxpZ25faGVpZ2h0KGRldiwgcGxhbmVfY29uZmlnLT5mYi0+YmFzZS5oZWlnaHQsCj4gKwkJ CQkJICAgIHBsYW5lX2NvbmZpZy0+dGlsZWQpOwo+ICsKPiArCXBsYW5lX2NvbmZpZy0+c2l6ZSA9 IEFMSUdOKHBsYW5lX2NvbmZpZy0+ZmItPmJhc2UucGl0Y2hlc1swXSAqCj4gKwkJCQkgICBhbGln bmVkX2hlaWdodCwgUEFHRV9TSVpFKTsKPiArCj4gKwlEUk1fREVCVUdfS01TKCJwaXBlL3BsYW5l ICVkLyVkIHdpdGggZmI6IHNpemU9JWR4JWRAJWQsIG9mZnNldD0leCwgcGl0Y2ggJWQsIHNpemUg MHgleFxuIiwKPiArCQkgICAgICBwaXBlLCBwbGFuZSwgcGxhbmVfY29uZmlnLT5mYi0+YmFzZS53 aWR0aCwKPiArCQkgICAgICBwbGFuZV9jb25maWctPmZiLT5iYXNlLmhlaWdodCwKPiArCQkgICAg ICBwbGFuZV9jb25maWctPmZiLT5iYXNlLmJpdHNfcGVyX3BpeGVsLCBiYXNlLAo+ICsJCSAgICAg IHBsYW5lX2NvbmZpZy0+ZmItPmJhc2UucGl0Y2hlc1swXSwKPiArCQkgICAgICBwbGFuZV9jb25m aWctPnNpemUpOwo+ICsKPiArCS8qCj4gKwkgKiBJZiB0aGUgZmIgaXMgc2hhcmVkIGJldHdlZW4g bXVsdGlwbGUgaGVhZHMsIHdlJ2xsIGp1c3QgZ2V0IHRoZQo+ICsJICogZmlyc3Qgb25lLgo+ICsJ ICovCj4gKwlvYmogPSBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbl9mb3JfcHJlYWxsb2Nh dGVkKGRldiwgYmFzZSwgYmFzZSwKPiArCQkJCQkJCSAgICAgcGxhbmVfY29uZmlnLT5zaXplKTsK PiArCWlmICghb2JqKQo+ICsJCXJldHVybjsKPiArCj4gKwltb2RlX2NtZC5waXhlbF9mb3JtYXQg PSBmb3VyY2M7Cj4gKwltb2RlX2NtZC53aWR0aCA9IHBsYW5lX2NvbmZpZy0+ZmItPmJhc2Uud2lk dGg7Cj4gKwltb2RlX2NtZC5oZWlnaHQgPSBwbGFuZV9jb25maWctPmZiLT5iYXNlLmhlaWdodDsK PiArCW1vZGVfY21kLnBpdGNoZXNbMF0gPSBwbGFuZV9jb25maWctPmZiLT5iYXNlLnBpdGNoZXNb MF07Cj4gKwo+ICsJbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ICsKPiArCWlmIChp bnRlbF9mcmFtZWJ1ZmZlcl9pbml0KGRldiwgcGxhbmVfY29uZmlnLT5mYiwgJm1vZGVfY21kLCBv YmopKSB7Cj4gKwkJRFJNX0RFQlVHX0tNUygiaW50ZWwgZmIgaW5pdCBmYWlsZWRcbiIpOwo+ICsJ CWdvdG8gb3V0X3VucmVmX29iajsKPiArCX0KPiArCj4gKwltdXRleF91bmxvY2soJmRldi0+c3Ry dWN0X211dGV4KTsKPiArCURSTV9ERUJVR19LTVMoInBsYW5lIGZiIG9iaiAlcFxuIiwgcGxhbmVf Y29uZmlnLT5mYi0+b2JqKTsKPiArCXJldHVybjsKPiArCj4gK291dF91bnJlZl9vYmo6Cj4gKwlk cm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZSgmb2JqLT5iYXNlKTsKPiArCW11dGV4X3VubG9jaygm ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ICt9Cj4gKwo+ICBzdGF0aWMgYm9vbCBpOXh4X2dldF9waXBl X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiAgCQkJCSBzdHJ1Y3QgaW50ZWxfY3J0 Y19jb25maWcgKnBpcGVfY29uZmlnKQo+ICB7Cj4gQEAgLTEwNTY5LDYgKzEwNjgwLDcgQEAgc3Rh dGljIHZvaWQgaW50ZWxfaW5pdF9kaXNwbGF5KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAkJ ZGV2X3ByaXYtPmRpc3BsYXkudXBkYXRlX3BsYW5lID0gaXJvbmxha2VfdXBkYXRlX3BsYW5lOwo+ ICAJfSBlbHNlIGlmIChJU19WQUxMRVlWSUVXKGRldikpIHsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxh eS5nZXRfcGlwZV9jb25maWcgPSBpOXh4X2dldF9waXBlX2NvbmZpZzsKPiArCQlkZXZfcHJpdi0+ ZGlzcGxheS5nZXRfcGxhbmVfY29uZmlnID0gaTl4eF9nZXRfcGxhbmVfY29uZmlnOwo+ICAJCWRl dl9wcml2LT5kaXNwbGF5LmNydGNfbW9kZV9zZXQgPSBpOXh4X2NydGNfbW9kZV9zZXQ7Cj4gIAkJ ZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19lbmFibGUgPSB2YWxsZXl2aWV3X2NydGNfZW5hYmxlOwo+ ICAJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZGlzYWJsZSA9IGk5eHhfY3J0Y19kaXNhYmxlOwo+ IEBAIC0xMDU3Niw2ICsxMDY4OCw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2luaXRfZGlzcGxheShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCWRldl9wcml2LT5kaXNwbGF5LnVwZGF0ZV9wbGFu ZSA9IGk5eHhfdXBkYXRlX3BsYW5lOwo+ICAJfSBlbHNlIHsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxh eS5nZXRfcGlwZV9jb25maWcgPSBpOXh4X2dldF9waXBlX2NvbmZpZzsKPiArCQlkZXZfcHJpdi0+ ZGlzcGxheS5nZXRfcGxhbmVfY29uZmlnID0gaTl4eF9nZXRfcGxhbmVfY29uZmlnOwo+ICAJCWRl dl9wcml2LT5kaXNwbGF5LmNydGNfbW9kZV9zZXQgPSBpOXh4X2NydGNfbW9kZV9zZXQ7Cj4gIAkJ ZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19lbmFibGUgPSBpOXh4X2NydGNfZW5hYmxlOwo+ICAJCWRl dl9wcml2LT5kaXNwbGF5LmNydGNfZGlzYWJsZSA9IGk5eHhfY3J0Y19kaXNhYmxlOwo+IEBAIC0x MDgzMCw2ICsxMDk0Myw3IEBAIHZvaWQgaW50ZWxfbW9kZXNldF9zdXNwZW5kX2h3KHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpCj4gIHZvaWQgaW50ZWxfbW9kZXNldF9pbml0KHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYpCj4gIHsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRl di0+ZGV2X3ByaXZhdGU7Cj4gKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YzsKPiAgCWludCBpLCBq LCByZXQ7Cj4gIAo+ICAJZHJtX21vZGVfY29uZmlnX2luaXQoZGV2KTsKPiBAQCAtMTA4OTQsNiAr MTEwMDgsMjIgQEAgdm9pZCBpbnRlbF9tb2Rlc2V0X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRl dikKPiAgCWRybV9tb2RlX2NvbmZpZ19yZXNldChkZXYpOwo+ICAJaW50ZWxfbW9kZXNldF9zZXR1 cF9od19zdGF0ZShkZXYsIGZhbHNlKTsKPiAgCWRybV9tb2Rlc2V0X3VubG9ja19hbGwoZGV2KTsK PiArCj4gKwlsaXN0X2Zvcl9lYWNoX2VudHJ5KGNydGMsICZkZXYtPm1vZGVfY29uZmlnLmNydGNf bGlzdCwKPiArCQkJICAgIGJhc2UuaGVhZCkgewo+ICsJCWlmICghY3J0Yy0+YWN0aXZlKQo+ICsJ CQljb250aW51ZTsKPiArCj4gKyNpZmRlZiBDT05GSUdfRkIKCkTDqWrDoCB2dSwgSSBqdXN0IHRv bGQgRGFuaWVsIHRoZSBzYW1lIHRoaW5nOgoKI2lmIElTX0VOQUJMRUQoQ09ORklHX0ZCKQoKaWYg eW91IHdhbnQgdGhpcyB0byB3b3JrIGZvciBDT05GSUdfRkI9bSB0b28uCgpCUiwKSmFuaS4KCgo+ ICsJCS8qCj4gKwkJICogV2UgZG9uJ3QgaGF2ZSBhIGdvb2Qgd2F5IG9mIGZyZWVpbmcgdGhlIGJ1 ZmZlciB3L28gdGhlIEZCCj4gKwkJICogbGF5ZXIgb3duaW5nIGl0Li4uCj4gKwkJICovCj4gKwkJ aWYgKGRldl9wcml2LT5kaXNwbGF5LmdldF9wbGFuZV9jb25maWcpCj4gKwkJCWRldl9wcml2LT5k aXNwbGF5LmdldF9wbGFuZV9jb25maWcoY3J0YywKPiArCQkJCQkJCSAgICZjcnRjLT5wbGFuZV9j b25maWcpOwo+ICsjZW5kaWYKPiArCX0KPiAgfQo+ICAKPiAgc3RhdGljIHZvaWQKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcnYuaAo+IGluZGV4IGVhNjI2NzMuLjQ3ODc3NzMgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcnYuaAo+IEBAIC0yMDksNiArMjA5LDEyIEBAIHR5cGVkZWYgc3RydWN0IGRw bGwgewo+ICAJaW50CXA7Cj4gIH0gaW50ZWxfY2xvY2tfdDsKPiAgCj4gK3N0cnVjdCBpbnRlbF9w bGFuZV9jb25maWcgewo+ICsJc3RydWN0IGludGVsX2ZyYW1lYnVmZmVyICpmYjsgLyogZW5kcyB1 cCBtYW5hZ2VkIGJ5IGludGVsX2ZiZGV2LmMgKi8KPiArCWJvb2wgdGlsZWQ7Cj4gKwlpbnQgc2l6 ZTsKPiArfTsKPiArCj4gIHN0cnVjdCBpbnRlbF9jcnRjX2NvbmZpZyB7Cj4gIAkvKioKPiAgCSAq IHF1aXJrcyAtIGJpdGZpZWxkIHdpdGggaHcgc3RhdGUgcmVhZG91dCBxdWlya3MKPiBAQCAtMzU4 LDYgKzM2NCw3IEBAIHN0cnVjdCBpbnRlbF9jcnRjIHsKPiAgCWJvb2wgY3Vyc29yX3Zpc2libGU7 Cj4gIAo+ICAJc3RydWN0IGludGVsX2NydGNfY29uZmlnIGNvbmZpZzsKPiArCXN0cnVjdCBpbnRl bF9wbGFuZV9jb25maWcgcGxhbmVfY29uZmlnOwo+ICAKPiAgCXVpbnQzMl90IGRkaV9wbGxfc2Vs Owo+ICAKPiBAQCAtNzA3LDYgKzcxNCw3IEBAIHZvaWQgaHN3X2VuYWJsZV9pcHMoc3RydWN0IGlu dGVsX2NydGMgKmNydGMpOwo+ICB2b2lkIGhzd19kaXNhYmxlX2lwcyhzdHJ1Y3QgaW50ZWxfY3J0 YyAqY3J0Yyk7Cj4gIHZvaWQgaW50ZWxfZGlzcGxheV9zZXRfaW5pdF9wb3dlcihzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCBib29sIGVuYWJsZSk7Cj4gIGludCB2YWxsZXl2aWV3X2dldF92Y28oc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKPiAraW50IGludGVsX2Zvcm1hdF90b19m b3VyY2MoaW50IGZvcm1hdCk7Cj4gIAo+ICAvKiBpbnRlbF9kcC5jICovCj4gIHZvaWQgaW50ZWxf ZHBfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgb3V0cHV0X3JlZywgZW51bSBwb3J0 IHBvcnQpOwo+IC0tIAo+IDEuOC40LjIKPgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKSmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNl IFRlY2hub2xvZ3kgQ2VudGVyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==