From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH v3 1/8] drm/i915: Introduce a PV INFO page structure for Intel GVT-g. Date: Thu, 11 Dec 2014 17:33:00 +0000 Message-ID: <5489D54C.5050605@linux.intel.com> References: <1415880169-7656-1-git-send-email-yu.c.zhang@linux.intel.com> <1415880169-7656-2-git-send-email-yu.c.zhang@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 522126E934 for ; Thu, 11 Dec 2014 09:34:22 -0800 (PST) In-Reply-To: <1415880169-7656-2-git-send-email-yu.c.zhang@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Yu Zhang , Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDExLzEzLzIwMTQgMTI6MDIgUE0sIFl1IFpoYW5nIHdyb3RlOgo+IEludHJvZHVjZSBhIFBW IElORk8gc3RydWN0dXJlLCB0byBmYWNpbGl0YXRlIHRoZSBJbnRlbCBHVlQtZwo+IHRlY2hub2xv Z3ksIHdoaWNoIGlzIGEgR1BVIHZpcnR1YWxpemF0aW9uIHNvbHV0aW9uIHdpdGggbWVkaWF0ZWQK PiBwYXNzLXRocm91Z2guIFRoaXMgcGFnZSBjb250YWlucyB0aGUgc2hhcmVkIGluZm9ybWF0aW9u IGJldHdlZW4KPiBpOTE1IGRyaXZlciBhbmQgdGhlIGhvc3QgZW11bGF0b3IuIEZvciBub3csIHRo aXMgc3RydWN0dXJlIHV0aWxpemVzCj4gYW4gYXJlYSBvZiA0SyBieXBlcyBvbiBIU1cgR1BVJ3Mg dW51c2VkIE1NSU8gc3BhY2UgdG8gc3VwcG9ydAoKYnl0ZXMKCj4gZXhpc3RpbmcgcHJvZHVjdGlv bi4gRnV0dXJlIGhhcmR3YXJlIHdpbGwgaGF2ZSB0aGUgcmVzZXJ2ZWQgd2luZG93CgpJdCBpcyBz bGlnaHRseSB1bmNsZWFyIHRvIG1lIHdoYXQgImV4aXN0aW5nIHByb2R1Y3Rpb24iIG1lYW5zPwoK PiBhcmNoaXRlY3R1cmFsbHkgZGVmaW5lZCwgYW5kIGxheW91dCBvZiB0aGUgcGFnZSB3aWxsIGJl IGFkZGVkIGluCj4gZnV0dXJlIEJTcGVjLgo+Cj4gVGhlIGk5MTUgZHJpdmVyIGxvYWQgcm91dGlu ZSBkZXRlY3RzIGlmIGl0IGlzIHJ1bm5pbmcgaW4gYSBWTSBieQo+IHJlYWRpbmcgdGhlIGNvbnRl bnRzIG9mIHRoaXMgUFYgSU5GTyBwYWdlLiBUaGVyZWFmdGVyIGEgZmxhZywKPiB2Z3B1LmFjdGl2 ZSBpcyBzZXQsIGFuZCBpbnRlbF92Z3B1X2FjdGl2ZSgpIGlzIHVzZWQgYnkgY2hlY2tpbmcKPiB0 aGlzIGZsYWcgdG8gY29uY2x1ZGUgaWYgR1BVIGlzIHZpcnR1YWxpemVkIHdpdGggSW50ZWwgR1ZU LWcuIEJ5Cj4gbm93LCBpbnRlbF92Z3B1X2FjdGl2ZSgpIHdpbGwgcmV0dXJuIHRydWUsIG9ubHkg d2hlbiB0aGUgZHJpdmVyCj4gaXMgcnVubmluZyBhcyBhIGd1ZXN0IGluIHRoZSBJbnRlbCBHVlQt ZyBlbmhhbmNlZCBlbnZpcm9ubWVudCBvbgo+IEhTVyBwbGF0Zm9ybS4KPgo+IHYyOgo+IHRha2Ug Q2hyaXMnIGNvbW1lbnRzOgo+IAktIGNhbGwgdGhlIGk5MTVfY2hlY2tfdmdwdSgpIGluIGludGVs X3VuY29yZV9pbml0KCkKPiAJLSBzYW5pdGl6ZSBpOTE1X2NoZWNrX3ZncHUoKSBieSBhZGRpbmcg QlVJTERfQlVHX09OKCkgYW5kIGRlYnVnIGluZm8KPiB0YWtlIERhbmllbCdzIGNvbW1lbnRzOgo+ IAktIHB1dCB0aGUgZGVmaW5pdGlvbiBvZiBQViBJTkZPIGludG8gYSBuZXcgaGVhZGVyIC0gaTkx NV92Z3RfaWYuaAo+IG90aGVyIGNoYW5nZXM6Cj4gCS0gYWNjZXNzIG1taW8gcmVncyBieSByZWFk cS9yZWFkdyBpbiBpOTE1X2NoZWNrX3ZncHUoKQo+Cj4gdjM6Cj4gdGFrZSBEYW5pZWwncyBjb21t ZW50czoKPiAJLSBtb3ZlIHRoZSBpOTE1L3ZndCBpbnRlcmZhY2VzIGludG8gYSBuZXcgaTkxNV92 Z3B1LmMKPiAJLSB1cGRhdGUgbWFrZWZpbGUKPiAJLSBhZGQga2VybmVsZG9jIHRvIGZ1bmN0aW9u cyB3aGljaCBhcmUgbm9uLXN0YXRpYwo+IAktIGFkZCBhIERPQzogc2VjdGlvbiBkZXNjcmliaW5n IHNvbWUgb2YgdGhlIGhpZ2gtbGV2ZWwgZGVzaWduCj4gCS0gdXBkYXRlIGRybSBkb2Nib29rCj4g b3RoZXIgY2hhbmdlczoKPiAJLSByZW5hbWUgaTkxNV92Z3RfaWYuaCB0byBpOTE1X3ZncHUuaAo+ Cj4gU2lnbmVkLW9mZi1ieTogWXUgWmhhbmcgPHl1LmMuemhhbmdAbGludXguaW50ZWwuY29tPgo+ IFNpZ25lZC1vZmYtYnk6IEppa2UgU29uZyA8amlrZS5zb25nQGludGVsLmNvbT4KPiBTaWduZWQt b2ZmLWJ5OiBFZGRpZSBEb25nIDxlZGRpZS5kb25nQGludGVsLmNvbT4KPiAtLS0KPiAgIERvY3Vt ZW50YXRpb24vRG9jQm9vay9kcm0udG1wbCAgICAgIHwgIDUgKysrCj4gICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9NYWtlZmlsZSAgICAgICB8ICAzICsrCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oICAgICB8IDExICsrKysrCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Zn cHUuYyAgICB8IDg1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdwdS5oICAgIHwgODUgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKwo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3Jl LmMgfCAgMyArKwo+ICAgNiBmaWxlcyBjaGFuZ2VkLCAxOTIgaW5zZXJ0aW9ucygrKQo+ICAgY3Jl YXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdwdS5jCj4gICBjcmVh dGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmgKPgo+IGRpZmYg LS1naXQgYS9Eb2N1bWVudGF0aW9uL0RvY0Jvb2svZHJtLnRtcGwgYi9Eb2N1bWVudGF0aW9uL0Rv Y0Jvb2svZHJtLnRtcGwKPiBpbmRleCA2NGQ5YzFlLi5lNGRiNGNmIDEwMDY0NAo+IC0tLSBhL0Rv Y3VtZW50YXRpb24vRG9jQm9vay9kcm0udG1wbAo+ICsrKyBiL0RvY3VtZW50YXRpb24vRG9jQm9v ay9kcm0udG1wbAo+IEBAIC0zODMyLDYgKzM4MzIsMTEgQEAgaW50IG51bV9pb2N0bHM7PC9zeW5v cHNpcz4KPiAgICFGZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYyBpbnRlbF9ydW50aW1l X3BtX2Rpc2FibGVfaW50ZXJydXB0cwo+ICAgIUZkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2ly cS5jIGludGVsX3J1bnRpbWVfcG1fZW5hYmxlX2ludGVycnVwdHMKPiAgICAgICAgIDwvc2VjdDI+ Cj4gKyAgICAgIDxzZWN0Mj4KPiArICAgICAgICA8dGl0bGU+SW50ZWwgR1ZULWcgR3Vlc3QgU3Vw cG9ydCh2R1BVKTwvdGl0bGU+Cj4gKyFQZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmMg SW50ZWwgR1ZULWcgZ3Vlc3Qgc3VwcG9ydAo+ICshSWRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf dmdwdS5jCj4gKyAgICAgIDwvc2VjdDI+Cj4gICAgICAgPC9zZWN0MT4KPiAgICAgICA8c2VjdDE+ Cj4gICAgICAgICA8dGl0bGU+RGlzcGxheSBIYXJkd2FyZSBIYW5kbGluZzwvdGl0bGU+Cj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvTWFrZWZpbGUKPiBpbmRleCA4OTFlNTg0Li5kOWFhNWNhIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv TWFrZWZpbGUKPiBAQCAtNzksNiArNzksOSBAQCBpOTE1LXkgKz0gZHZvX2NoNzAxNy5vIFwKPiAg IAkgIGludGVsX3Nkdm8ubyBcCj4gICAJICBpbnRlbF90di5vCj4KPiArIyB2aXJ0dWFsIGdwdSBj b2RlCj4gK2k5MTUteSArPSBpOTE1X3ZncHUubwo+ICsKPiAgICMgbGVnYWN5IGhvcnJvcnMKPiAg IGk5MTUteSArPSBpOTE1X2RtYS5vIFwKPiAgIAkgIGk5MTVfdW1zLm8KPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmgKPiBpbmRleCA1NDY5MWJjLi5lMWUyMjFlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2Rydi5oCj4gQEAgLTE0NzAsNiArMTQ3MCwxMCBAQCBzdHJ1Y3QgaTkxNV93b3JrYXJvdW5kcyB7 Cj4gICAJdTMyIGNvdW50Owo+ICAgfTsKPgo+ICtzdHJ1Y3QgaTkxNV92aXJ0dWFsX2dwdSB7Cj4g Kwlib29sIGFjdGl2ZTsKPiArfTsKPiArCj4gICBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSB7Cj4g ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKPiAgIAlzdHJ1Y3Qga21lbV9jYWNoZSAqc2xhYjsK PiBAQCAtMTQ4Miw2ICsxNDg2LDggQEAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgewo+Cj4gICAJ c3RydWN0IGludGVsX3VuY29yZSB1bmNvcmU7Cj4KPiArCXN0cnVjdCBpOTE1X3ZpcnR1YWxfZ3B1 IHZncHU7Cj4gKwo+ICAgCXN0cnVjdCBpbnRlbF9nbWJ1cyBnbWJ1c1tHTUJVU19OVU1fUE9SVFNd Owo+Cj4KPiBAQCAtMjMxMSw2ICsyMzE3LDExIEBAIGV4dGVybiB2b2lkIGludGVsX3VuY29yZV9j aGVja19lcnJvcnMoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gICBleHRlcm4gdm9pZCBpbnRl bF91bmNvcmVfZmluaShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgIGV4dGVybiB2b2lkIGlu dGVsX3VuY29yZV9mb3JjZXdha2VfcmVzZXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgYm9vbCBy ZXN0b3JlKTsKPgo+ICtzdGF0aWMgaW5saW5lIGJvb2wgaW50ZWxfdmdwdV9hY3RpdmUoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKPiArewo+ICsJcmV0dXJuIHRvX2k5MTUoZGV2KS0+dmdwdS5hY3Rp dmU7Cj4gK30KPiArCj4gICB2b2lkCj4gICBpOTE1X2VuYWJsZV9waXBlc3RhdChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcGlwZSBwaXBlLAo+ICAgCQkgICAgIHUzMiBz dGF0dXNfbWFzayk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdw dS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmMKPiBuZXcgZmlsZSBtb2RlIDEw MDY0NAo+IGluZGV4IDAwMDAwMDAuLjNmNmI3OTcKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmMKPiBAQCAtMCwwICsxLDg1IEBACj4gKy8qCj4g KyAqIENvcHlyaWdodChjKSAyMDExLTIwMTQgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMg cmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUg b2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhCj4gKyAqIGNvcHkgb2YgdGhpcyBz b2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJl IiksCj4gKyAqIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGlu Y2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24KPiArICogdGhlIHJpZ2h0cyB0byB1c2UsIGNvcHks IG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsCj4gKyAqIGFu ZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0 byB3aG9tIHRoZQo+ICsgKiBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3Qg dG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgo+ICsgKgo+ICsgKiBUaGUgYWJvdmUgY29weXJp Z2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSAoaW5jbHVkaW5nIHRoZSBuZXh0 Cj4gKyAqIHBhcmFncmFwaCkgc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsIGNvcGllcyBvciBzdWJz dGFudGlhbCBwb3J0aW9ucyBvZiB0aGUKPiArICogU29mdHdhcmUuCj4gKyAqCj4gKyAqIFRIRSBT T0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5E LCBFWFBSRVNTIE9SCj4gKyAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8g VEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAo+ICsgKiBGSVRORVNTIEZPUiBBIFBB UlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwK PiArICogVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkg Q0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKPiArICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFD VElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKPiArICog T1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBP VEhFUiBERUFMSU5HUyBJTiBUSEUKPiArICogU09GVFdBUkUuCj4gKyAqLwo+ICsKPiArI2luY2x1 ZGUgImludGVsX2Rydi5oIgo+ICsjaW5jbHVkZSAiaTkxNV92Z3B1LmgiCj4gKwo+ICsKPiArLyoq Cj4gKyAqIERPQzogSW50ZWwgR1ZULWcgZ3Vlc3Qgc3VwcG9ydAo+ICsgKgo+ICsgKiBJbnRlbCBH VlQtZyBpcyBhIGdyYXBoaWNzIHZpcnR1YWxpemF0aW9uIHRlY2hub2xvZ3kgd2hpY2ggc2hhcmVz IHRoZQo+ICsgKiBHUFUgYW1vbmcgbXVsdGlwbGUgdmlydHVhbCBtYWNoaW5lcyBvbiBhIHRpbWUt c2hhcmluZyBiYXNpcy4gRWFjaAo+ICsgKiB2aXJ0dWFsIG1hY2hpbmUgaXMgcHJlc2VudGVkIGEg dmlydHVhbCBHUFUgKHZHUFUpLCB3aGljaCBoYXMgZXF1aXZhbGVudAo+ICsgKiBmZWF0dXJlcyBh cyB0aGUgdW5kZXJseWluZyBwaHlzaWNhbCBHUFUgKHBHUFUpLCBzbyBpOTE1IGRyaXZlciBjYW4g cnVuCj4gKyAqIHNlYW1sZXNzbHkgaW4gYSB2aXJ0dWFsIG1hY2hpbmUuIFRoaXMgZmlsZSBwcm92 aWRlcyB2R1BVIHNwZWNpZmljCj4gKyAqIG9wdGltaXphdGlvbnMgd2hlbiBydW5uaW5nIGluIGEg dmlydHVhbCBtYWNoaW5lLCB0byByZWR1Y2UgdGhlIGNvbXBsZXhpdHkKPiArICogb2YgdkdQVSBl bXVsYXRpb24gYW5kIHRvIGltcHJvdmUgdGhlIG92ZXJhbGwgcGVyZm9ybWFuY2UuCj4gKyAqCj4g KyAqIEEgcHJpbWFyeSBmdW5jdGlvbiBpbnRyb2R1Y2VkIGhlcmUgaXMgc28tY2FsbGVkICJhZGRy ZXNzIHNwYWNlIGJhbGxvb25pbmciCj4gKyAqIHRlY2huaXF1ZS4gSW50ZWwgR1ZULWcgcGFydGl0 aW9ucyBnbG9iYWwgZ3JhcGhpY3MgbWVtb3J5IGFtb25nIG11bHRpcGxlIFZNcywKPiArICogc28g ZWFjaCBWTSBjYW4gZGlyZWN0bHkgYWNjZXNzIGEgcG9ydGlvbiBvZiB0aGUgbWVtb3J5IHcvbyBo eXBlcnZpc29yJ3MKPiArICogaW50ZXJ2ZW50aW9uLCBlLmcuIGZpbGxpbmcgdGV4dHVyZXMgb3Ig cXVldWluZyBjb21tYW5kcy4gSG93ZXZlciB3LyB0aGUKClBlcnNvbmFsIHByZWZlcmVuY2UsIGJ1 dCBJdCBtYXkgYmUgbmljZXIgdG8gYXZvaWQgIncvbyIgYW5kIHNpbWlsYXIgCnNob3J0aGFuZCBp biBkb2N1bWVudGF0aW9uLgoKPiArICogcGFydGl0aW9uaW5nIGFuIHVubW9kaWZpZWQgaTkxNSBk cml2ZXIgd291bGQgYXNzdW1lIGEgc21hbGxlciBncmFwaGljcwo+ICsgKiBtZW1vcnkgc3RhcnRp bmcgZnJvbSBhZGRyZXNzIFpFUk8sIHRoZW4gcmVxdWlyZXMgdkdQVSBlbXVsYXRpb24gbW9kdWxl IHRvCj4gKyAqIHRyYW5zbGF0ZSB0aGUgZ3JhcGhpY3MgYWRkcmVzcyBiZXR3ZWVuICdndWVzdCB2 aWV3JyBhbmQgJ2hvc3QgdmlldycsIGZvcgo+ICsgKiBhbGwgcmVnaXN0ZXJzIGFuZCBjb21tYW5k IG9wY29kZXMgd2hpY2ggY29udGFpbiBhIGdyYXBoaWNzIG1lbW9yeSBhZGRyZXNzLgo+ICsgKiBU byByZWR1Y2UgdGhlIGNvbXBsZXhpdHksIEludGVsIEdWVC1nIGludHJvZHVjZXMgImFkZHJlc3Mg c3BhY2UgYmFsbG9vbmluZyIsCj4gKyAqIGJ5IHRlbGxpbmcgdGhlIGV4YWN0IHBhcnRpdGlvbmlu ZyBrbm93bGVkZ2UgdG8gZWFjaCBndWVzdCBpOTE1IGRyaXZlciwgd2hpY2gKPiArICogdGhlbiBy ZXNlcnZlcyBhbmQgcHJldmVudHMgbm9uLWFsbG9jYXRlZCBwb3J0aW9ucyBmcm9tIGFsbG9jYXRp b24uIFRodXMgdkdQVQo+ICsgKiBlbXVsYXRpb24gbW9kdWxlIG1vZHVsZSBvbmx5IG5lZWRzIHRv IHNjYW4gYW5kIHZhbGlkYXRlIGdyYXBoaWNzIGFkZHJlc3Nlcwo+ICsgKiB3L28gY29tcGxleGl0 eSBvZiBhZGRyZXNzIHRyYW5zbGF0aW9uLgo+ICsgKgo+ICsgKi8KPiArCj4gKy8qKgo+ICsgKiBp OTE1X2NoZWNrX3ZncHUgLSBkZXRlY3QgdmlydHVhbCBHUFUKPiArICogQGRldjogZHJtIGRldmlj ZSAqCj4gKyAqCj4gKyAqIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGF0IHRoZSBpbml0aWFsaXph dGlvbiBzdGFnZSwgdG8gZGV0ZWN0IHdoZXRoZXIKPiArICogcnVubmluZyBvbiBhIHZHUFUuCj4g KyAqLwo+ICt2b2lkIGk5MTVfY2hlY2tfdmdwdShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICt7 Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Cj4g Kwl1aW50NjRfdCBtYWdpYzsKPiArCXVpbnQzMl90IHZlcnNpb247Cj4gKwo+ICsJQlVJTERfQlVH X09OKHNpemVvZihzdHJ1Y3Qgdmd0X2lmKSAhPSBWR1RfUFZJTkZPX1NJWkUpOwo+ICsKPiArCWlm ICghSVNfSEFTV0VMTChkZXYpKQo+ICsJCXJldHVybjsKPiArCj4gKwltYWdpYyA9IHJlYWRxKGRl dl9wcml2LT5yZWdzICsgdmd0aWZfcmVnKG1hZ2ljKSk7Cj4gKwlpZiAobWFnaWMgIT0gVkdUX01B R0lDKQo+ICsJCXJldHVybjsKPiArCj4gKwl2ZXJzaW9uID0gSU5URUxfVkdUX0lGX1ZFUlNJT05f RU5DT0RFKAo+ICsJCXJlYWR3KGRldl9wcml2LT5yZWdzICsgdmd0aWZfcmVnKHZlcnNpb25fbWFq b3IpKSwKPiArCQlyZWFkdyhkZXZfcHJpdi0+cmVncyArIHZndGlmX3JlZyh2ZXJzaW9uX21pbm9y KSkpOwo+ICsJaWYgKHZlcnNpb24gIT0gSU5URUxfVkdUX0lGX1ZFUlNJT04pCj4gKwkJcmV0dXJu OwoKV291bGQgaXQgYmUgdXNlZnVsIHRvIHNvbWV0aGluZyBvbiB2ZXJzaW9uIG1pc21hdGNoPwoK PiArCWRldl9wcml2LT52Z3B1LmFjdGl2ZSA9IHRydWU7Cj4gKwlEUk1fSU5GTygiVmlydHVhbCBH UFUgZm9yIEludGVsIEdWVC1nIGRldGVjdGVkLlxuIik7Cj4gK30KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3ZncHUuaAo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uNWY0MWQwMWMK PiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmgK PiBAQCAtMCwwICsxLDg1IEBACj4gKy8qCj4gKyAqIENvcHlyaWdodChjKSAyMDExLTIwMTQgSW50 ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCj4gKyAqCj4gKyAqIFBlcm1pc3Np b24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFp bmluZyBhCj4gKyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVu dGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksCj4gKyAqIHRvIGRlYWwgaW4gdGhlIFNvZnR3 YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24KPiAr ICogdGhlIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3Ry aWJ1dGUsIHN1YmxpY2Vuc2UsCj4gKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdh cmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQo+ICsgKiBTb2Z0d2FyZSBpcyBm dXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgo+ ICsgKgo+ICsgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9u IG5vdGljZSAoaW5jbHVkaW5nIHRoZSBuZXh0Cj4gKyAqIHBhcmFncmFwaCkgc2hhbGwgYmUgaW5j bHVkZWQgaW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUKPiArICog U29mdHdhcmUuCj4gKyAqCj4gKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBX SVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SCj4gKyAqIElNUExJRUQsIElO Q0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM SVRZLAo+ICsgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklO R0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwKPiArICogVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hU IEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKPiArICog TElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhF UldJU0UsIEFSSVNJTkcgRlJPTSwKPiArICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBU SEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKPiArICogU09G VFdBUkUuCj4gKyAqLwo+ICsKPiArI2lmbmRlZiBfSTkxNV9WR1BVX0hfCj4gKyNkZWZpbmUgX0k5 MTVfVkdQVV9IXwo+ICsKPiArLyogVGhlIE1NSU8gb2Zmc2V0IG9mIHRoZSBzaGFyZWQgaW5mbyBi ZXR3ZWVuIGd1ZXN0IGFuZCBob3N0IGVtdWxhdG9yICovCj4gKyNkZWZpbmUgVkdUX1BWSU5GT19Q QUdFCTB4NzgwMDAKPiArI2RlZmluZSBWR1RfUFZJTkZPX1NJWkUJMHgxMDAwCj4gKwo+ICsvKgo+ ICsgKiBUaGUgZm9sbG93aW5nIHN0cnVjdHVyZSBwYWdlcyBhcmUgZGVmaW5lZCBpbiBHRU4gTU1J TyBzcGFjZQo+ICsgKiBmb3IgdmlydHVhbGl6YXRpb24uIChPbmUgcGFnZSBmb3Igbm93KQo+ICsg Ki8KPiArI2RlZmluZSBWR1RfTUFHSUMgICAgICAgICAweDQ3NzY1NDQ3NzY1NDQ3NzYJLyogJ3ZH VHZHVHZHJyAqLwo+ICsjZGVmaW5lIFZHVF9WRVJTSU9OX01BSk9SIDEKPiArI2RlZmluZSBWR1Rf VkVSU0lPTl9NSU5PUiAwCj4gKwo+ICsjZGVmaW5lIElOVEVMX1ZHVF9JRl9WRVJTSU9OX0VOQ09E RShtYWpvciwgbWlub3IpICgobWFqb3IpIDw8IDE2IHwgKG1pbm9yKSkKPiArI2RlZmluZSBJTlRF TF9WR1RfSUZfVkVSU0lPTiBcCj4gKwlJTlRFTF9WR1RfSUZfVkVSU0lPTl9FTkNPREUoVkdUX1ZF UlNJT05fTUFKT1IsIFZHVF9WRVJTSU9OX01JTk9SKQo+ICsKPiArc3RydWN0IHZndF9pZiB7Cj4g Kwl1aW50NjRfdCBtYWdpYzsJCS8qIFZHVF9NQUdJQyAqLwo+ICsJdWludDE2X3QgdmVyc2lvbl9t YWpvcjsKPiArCXVpbnQxNl90IHZlcnNpb25fbWlub3I7Cj4gKwl1aW50MzJfdCB2Z3RfaWQ7CS8q IElEIG9mIHZHVCBpbnN0YW5jZSAqLwo+ICsJdWludDMyX3QgcnN2MVsxMl07CS8qIHBhZCB0byBv ZmZzZXQgMHg0MCAqLwoKSW4gZ2VuZXJhbCBJIHRob3VnaHQgc3RkaW50IHR5cGVzIHNob3VsZCBi ZSBhdm9pZGVkIGluIHRoZSBrZXJuZWwgaW4gCmZhdm91ciBvZiB1MzIgYW5kIGNvbXBhbnkuIEJ1 dCBJIHNlZSBpOTE1IGlzIGZ1bGwgb2YgdGhlbSBhbHJlYWR5IHNvIAptYXliZSBteSBpbmZvcm1h dGlvbiBpcyBvdXRkYXRlZC4KCj4gKwkvKgo+ICsJICogIERhdGEgc3RydWN0dXJlIHRvIGRlc2Ny aWJlIHRoZSBiYWxvb25pbmcgaW5mbyBvZiByZXNvdXJjZXMuCj4gKwkgKiAgRWFjaCBWTSBjYW4g b25seSBoYXZlIG9uZSBwb3J0aW9uIG9mIGNvbnRpbnVvdXMgYXJlYSBmb3Igbm93Lgo+ICsJICog IChNYXkgc3VwcG9ydCBzY2F0dGVyZWQgcmVzb3VyY2UgaW4gZnV0dXJlKQo+ICsJICogIChzdGFy dGluZyBmcm9tIG9mZnNldCAweDQwKQo+ICsJICovCj4gKwlzdHJ1Y3Qgewo+ICsJCS8qIEFwZXJ0 dXJlIHJlZ2lzdGVyIGJhbG9vbmluZyAqLwo+ICsJCXN0cnVjdCB7Cj4gKwkJCXVpbnQzMl90IG15 X2Jhc2U7Cj4gKwkJCXVpbnQzMl90IG15X3NpemU7Cj4gKwkJfSBsb3dfZ21hZHI7CS8qIGFwZXJ0 dXJlICovCj4gKwkJLyogR01BRFIgcmVnaXN0ZXIgYmFsb29uaW5nICovCj4gKwkJc3RydWN0IHsK PiArCQkJdWludDMyX3QgbXlfYmFzZTsKPiArCQkJdWludDMyX3QgbXlfc2l6ZTsKPiArCQl9IGhp Z2hfZ21hZHI7CS8qIG5vbiBhcGVydHVyZSAqLwo+ICsJCS8qIGFsbG93ZWQgZmVuY2UgcmVnaXN0 ZXJzICovCj4gKwkJdWludDMyX3QgZmVuY2VfbnVtOwo+ICsJCXVpbnQzMl90IHJzdjJbM107Cj4g Kwl9IGF2YWlsX3JzOwkJLyogYXZhaWxhYmxlL2Fzc2lnbmVkIHJlc291cmNlICovCgpJIGRpZG4n dCBmaWd1cmUgb3V0IHlldCB3aHkgdGhlIGNvbmNlcHQgaXMgdG8gcGFzcyBpbiB0d28gcmFuZ2Vz IHRvIG1hcmsgCmFzIHJlc2VydmVkLCBpbnN0ZWFkIG9mIG9uZSB1c2FibGUvYWxsb3dlZCByYW5n ZSBhbmQgdGhlbiBpbXBsaWNpdGx5IGFsbCAKdGhlIHJlc3QgYXMgcmVzZXJ2ZWQ/Cgo+ICsJdWlu dDMyX3QgcnN2M1sweDIwMCAtIDI0XTsJLyogcGFkIHRvIGhhbGYgcGFnZSAqLwo+ICsJLyoKPiAr CSAqIFRoZSBib3R0b20gaGFsZiBwYWdlIGlzIGZvciByZXNwb25zZSBmcm9tIEdmeCBkcml2ZXIg dG8gaHlwZXJ2aXNvci4KPiArCSAqIFNldCB0byByZXNlcnZlZCBmaWVsZHMgdGVtcG9yYXJpbHkg Ynkgbm93Lgo+ICsJICovCj4gKwl1aW50MzJfdCByc3Y0Owo+ICsJdWludDMyX3QgZGlzcGxheV9y ZWFkeTsJLyogcmVhZHkgZm9yIGRpc3BsYXkgb3duZXIgc3dpdGNoICovCj4gKwl1aW50MzJfdCBy c3Y1WzB4MjAwIC0gMl07CS8qIHBhZCB0byBvbmUgcGFnZSAqLwo+ICt9IF9fcGFja2VkOwoKWW91 IHByb2JhYmx5IGRvbid0IG5lZWQgX19wYWNrZWQgc2luY2UgeW91IGhhdmUgQlVJTERfQlVHX09O IG9uIHNpemUgCm1pc21hdGNoIGFuZCBwYWQgdG8gZnVsbCBzaXplIHdpdGggcmVzZXJ2ZWQgZmll bGRzLiBJIGRvbid0IHRoaW5rIGl0IAptYXR0ZXJzIHRob3VnaC4KCj4gKyNkZWZpbmUgdmd0aWZf cmVnKHgpIFwKPiArCShWR1RfUFZJTkZPX1BBR0UgKyAobG9uZykmKChzdHJ1Y3Qgdmd0X2lmICop IE5VTEwpLT54KQo+ICsKPiArZXh0ZXJuIHZvaWQgaTkxNV9jaGVja192Z3B1KHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYpOwo+ICsKPiArI2VuZGlmIC8qIF9JOTE1X1ZHUFVfSF8gKi8KPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF91bmNvcmUuYwo+IGluZGV4IDk0Mjc2NDEuLmNhZTI3YmIgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYwo+IEBAIC0yMyw2ICsyMyw3IEBACj4KPiAgICNp bmNsdWRlICJpOTE1X2Rydi5oIgo+ICAgI2luY2x1ZGUgImludGVsX2Rydi5oIgo+ICsjaW5jbHVk ZSAiaTkxNV92Z3B1LmgiCj4KPiAgICNkZWZpbmUgRk9SQ0VXQUtFX0FDS19USU1FT1VUX01TIDIK Pgo+IEBAIC04NTAsNiArODUxLDggQEAgdm9pZCBpbnRlbF91bmNvcmVfaW5pdChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KQo+ICAgewo+ICAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4KPiArCWk5MTVfY2hlY2tfdmdwdShkZXYpOwo+ICsKPiAg IAlzZXR1cF90aW1lcigmZGV2X3ByaXYtPnVuY29yZS5mb3JjZV93YWtlX3RpbWVyLAo+ICAgCQkg ICAgZ2VuNl9mb3JjZV93YWtlX3RpbWVyLCAodW5zaWduZWQgbG9uZylkZXZfcHJpdik7Cj4KPgoK UmVnYXJkcywKClR2cnRrbwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo=