From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v2 5/9] drm/i915: Pass primary plane size to .update_primary_plane() Date: Fri, 20 Mar 2015 16:26:38 +0200 Message-ID: <20150320142638.GA17419@intel.com> References: <1425986129-15547-6-git-send-email-ville.syrjala@linux.intel.com> <1426775282-24722-1-git-send-email-ville.syrjala@linux.intel.com> <550BED41.9030902@intel.com> <20150320100456.GX17419@intel.com> <550BFC3F.2000104@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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 09ADD6EC49 for ; Fri, 20 Mar 2015 07:27:05 -0700 (PDT) Content-Disposition: inline In-Reply-To: <550BFC3F.2000104@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Jindal, Sonika" Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBNYXIgMjAsIDIwMTUgYXQgMDQ6MjM6NTFQTSArMDUzMCwgSmluZGFsLCBTb25pa2Eg d3JvdGU6Cj4gCj4gCj4gT24gMy8yMC8yMDE1IDM6MzQgUE0sIFZpbGxlIFN5cmrDpGzDpCB3cm90 ZToKPiA+IE9uIEZyaSwgTWFyIDIwLCAyMDE1IGF0IDAzOjE5OjUzUE0gKzA1MzAsIEppbmRhbCwg U29uaWthIHdyb3RlOgo+ID4+Cj4gPj4KPiA+PiBPbiAzLzE5LzIwMTUgNzo1OCBQTSwgdmlsbGUu c3lyamFsYUBsaW51eC5pbnRlbC5jb20gd3JvdGU6Cj4gPj4+IEZyb206IFZpbGxlIFN5cmrDpGzD pCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gPj4+Cj4gPj4+IEluIHByZXBhcmF0 aW9uIHRvIG1vdmFibGUvcmVzaXplYWJsZSBwcmltYXJ5IHBsYW5lcyBwYXNzIHRoZSBjbGlwcGVk Cj4gPj4+IHBsYW5lIHNpemUgdG8gLnVwZGF0ZV9wcmltYXJ5X3BsYW5lKCkuCj4gPj4+Cj4gPj4+ IHYyOiBQYXNzIHNyYyBzaXplIHRvbyBhbmQgdXNlIGl0IGFwcHJvcHJpYXRlbHkgKFNvbmlrYSkK PiA+Pj4KPiA+Pj4gQ2M6IFNvbmlrYSBKaW5kYWwgPHNvbmlrYS5qaW5kYWxAaW50ZWwuY29tPgo+ ID4+PiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXgu aW50ZWwuY29tPgo+ID4+PiAtLS0KPiA+Pj4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaCAgICAgIHwgIDQgKy0KPiA+Pj4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlz cGxheS5jIHwgODEgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCj4gPj4+ICAg IDIgZmlsZXMgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygrKSwgMjggZGVsZXRpb25zKC0pCj4gPj4+ Cj4gPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ID4+PiBpbmRleCBlYzIzMjkwLi4wNTRiZTQy IDEwMDY0NAo+ID4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gPj4+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiA+Pj4gQEAgLTU4MSw3ICs1 ODEsOSBAQCBzdHJ1Y3QgZHJtX2k5MTVfZGlzcGxheV9mdW5jcyB7Cj4gPj4+ICAgIAkJCSAgdWlu dDMyX3QgZmxhZ3MpOwo+ID4+PiAgICAJdm9pZCAoKnVwZGF0ZV9wcmltYXJ5X3BsYW5lKShzdHJ1 Y3QgZHJtX2NydGMgKmNydGMsCj4gPj4+ICAgIAkJCQkgICAgIHN0cnVjdCBkcm1fZnJhbWVidWZm ZXIgKmZiLAo+ID4+PiAtCQkJCSAgICAgaW50IHgsIGludCB5KTsKPiA+Pj4gKwkJCQkgICAgIGlu dCB4LCBpbnQgeSwKPiA+Pj4gKwkJCQkgICAgIGludCBzcmNfdywgaW50IHNyY19oLAo+ID4+PiAr CQkJCSAgICAgaW50IGNydGNfdywgaW50IGNydGNfaCk7Cj4gPj4+ICAgIAl2b2lkICgqaHBkX2ly cV9zZXR1cCkoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gPj4+ICAgIAkvKiBjbG9jayB1cGRh dGVzIGZvciBtb2RlIHNldCAqLwo+ID4+PiAgICAJLyogY3Vyc29yIHVwZGF0ZXMgKi8KPiA+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ID4+PiBpbmRleCA1NDk5YzhlLi4yZTlm ZGFhIDEwMDY0NAo+ID4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMKPiA+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gPj4+ IEBAIC0yNDgyLDcgKzI0ODIsOSBAQCBpbnRlbF9maW5kX3BsYW5lX29iaihzdHJ1Y3QgaW50ZWxf Y3J0YyAqaW50ZWxfY3J0YywKPiA+Pj4KPiA+Pj4gICAgc3RhdGljIHZvaWQgaTl4eF91cGRhdGVf cHJpbWFyeV9wbGFuZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gPj4+ICAgIAkJCQkgICAgICBz dHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKPiA+Pj4gLQkJCQkgICAgICBpbnQgeCwgaW50IHkp Cj4gPj4+ICsJCQkJICAgICAgaW50IHgsIGludCB5LAo+ID4+PiArCQkJCSAgICAgIGludCBzcmNf dywgaW50IHNyY19oLAo+ID4+PiArCQkJCSAgICAgIGludCBjcnRjX3csIGludCBjcnRjX2gpCj4g Pj4+ICAgIHsKPiA+Pj4gICAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4g Pj4+ICAgIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2 YXRlOwo+ID4+PiBAQCAtMjUxNCwyMyArMjUxNiwyMiBAQCBzdGF0aWMgdm9pZCBpOXh4X3VwZGF0 ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+Pj4KPiA+Pj4gICAgCWRz cGNudHIgfD0gRElTUExBWV9QTEFORV9FTkFCTEU7Cj4gPj4+Cj4gPj4+ICsJV0FSTl9PTkNFKHNy Y193ICE9IGNydGNfdyB8fCBzcmNfaCAhPSBjcnRjX2gsCj4gPj4+ICsJCSAgInByaW1hcnkgcGxh bmUgZG9lc24ndCBzdXBwb3J0IHNjYWxpbmdcbiIpOwo+ID4+PiArCj4gPj4+ICAgIAlpZiAoSU5U RUxfSU5GTyhkZXYpLT5nZW4gPCA0KSB7Cj4gPj4+ICAgIAkJaWYgKGludGVsX2NydGMtPnBpcGUg PT0gUElQRV9CKQo+ID4+PiAgICAJCQlkc3BjbnRyIHw9IERJU1BQTEFORV9TRUxfUElQRV9COwo+ ID4+PiAtCj4gPj4+IC0JCS8qIHBpcGVzcmMgYW5kIGRzcHNpemUgY29udHJvbCB0aGUgc2l6ZSB0 aGF0IGlzIHNjYWxlZCBmcm9tLAo+ID4+PiAtCQkgKiB3aGljaCBzaG91bGQgYWx3YXlzIGJlIHRo ZSB1c2VyJ3MgcmVxdWVzdGVkIHNpemUuCj4gPj4+IC0JCSAqLwo+ID4+PiAtCQlJOTE1X1dSSVRF KERTUFNJWkUocGxhbmUpLAo+ID4+PiAtCQkJICAgKChpbnRlbF9jcnRjLT5jb25maWctPnBpcGVf c3JjX2ggLSAxKSA8PCAxNikgfAo+ID4+PiAtCQkJICAgKGludGVsX2NydGMtPmNvbmZpZy0+cGlw ZV9zcmNfdyAtIDEpKTsKPiA+Pj4gKwkJSTkxNV9XUklURShEU1BTSVpFKHBsYW5lKSwgKChjcnRj X2ggLSAxKSA8PCAxNikgfCAoY3J0Y193IC0gMSkpOwo+ID4+IFNob3VsZG4ndCB0aGlzIGJlIHNy Y18qIGhlcmUsIGxpa2UgeW91IGFyZSBkb2luZyBmb3Igc2tsPyBBZ2FpbiBpdAo+ID4+IGRvZXNu J3QgbWF0dGVyIGJlY2F1c2Ugbm8gc2NhbGluZy4gQnV0IHN0aWxsIGl0IHdpbGwgbG9vayBiZXR0 ZXIgaWYgd2UKPiA+PiB1c2Ugc2FtZSBwYXJhbXMgYWNyb3NzLgo+ID4+PiAgICAJCUk5MTVfV1JJ VEUoRFNQUE9TKHBsYW5lKSwgMCk7Cj4gPj4+ICAgIAl9IGVsc2UgaWYgKElTX0NIRVJSWVZJRVco ZGV2KSAmJiBwbGFuZSA9PSBQTEFORV9CKSB7Cj4gPj4+IC0JCUk5MTVfV1JJVEUoUFJJTVNJWkUo cGxhbmUpLAo+ID4+PiAtCQkJICAgKChpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX2ggLSAx KSA8PCAxNikgfAo+ID4+PiAtCQkJICAgKGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfdyAt IDEpKTsKPiA+Pj4gKwkJSTkxNV9XUklURShQUklNU0laRShwbGFuZSksICgoY3J0Y19oIC0gMSkg PDwgMTYpIHwgKGNydGNfdyAtIDEpKTsKPiA+PiBTYW1lIGFzIGFib3ZlLgo+ID4KPiA+IE5vcGUu IE9uIENIViB0aGVyZSBpcyBhIHNjYWxlciBvbiBvbmUgb2YgdGhlIHBsYW5lcyBhbmQgdGhlcmUg d2UnbGwgbmVlZAo+ID4gdG8gd3JpdGUgdGhlIGRzdCBzaXplIGludG8gUFJJTVNJWkUsIGFuZCB0 aGUgc3JjIHNpemUgdG8gYW5vdGhlciByZWdpc3Rlci4KPiA+IFNvIGp1c3QgdXNpbmcgdGhlIGRz dCBzaXplIGZvciBQUklNU0laRSBzZWVtcyBsaWtlIHRoZSByaWdodCBjaG9pY2UuCj4gPgo+ID4g QWxzbyB3aXRoIElMSy1JVkIgc3ByaXRlcyB0aGUgZHN0IHNpemUgaXMgYWxzbyBpbiB0aGUgcGxh bmUgc2l6ZSByZWdpc3RlciwKPiA+IGFuZCB0aGUgc291cmNlIHNpemUgaXMgaW4gdGhlIHBsYW5l IHNjYWxlIHJlZ2lzdGVyIChlZy4gRFZTU0laRSBhbmQKPiA+IERWU1NTQ0FMRSksIHNvIHRoaXMg d2F5IHNlZW1zIG1vcmUgY29uc2lzdGVudCB3aXRoIG1vc3Qgb2YgdGhlIHBsYXRmb3Jtcy4KPiA+ Cj4gVGhlbiBpdCB3b3VsZCBiZSBnb29kIHRvIGhhdmUgc29tZSBjb21tZW50IGhlcmU/CgpEdW5u by4gVG8gbWUgaXQncyBwZXJmZWN0bHkgY2xlYXIuIFNLTCBpcyB0aGUgb2RkYmFsbCByZWFsbHks IHNvIHN1Y2gKYSBjb21tZW50IHdvdWxkIGJlIGJldHRlciBwbGFjZWQgdGhlcmUuIEFsdGhvdWdo IEkgZG9uJ3QgZmVlbCBhIG5lZWQKdG8gaGF2ZSBpdCB0aGVyZSBlaXRoZXIgYXMgdGhlIGNvZGUg ZXhwbGFpbnMgaXQuIEFuZCBpZiB5b3UgZG9uJ3QKYmVsaWV2ZSB0aGUgY29kZSB5b3UgY2FuIGFs d2F5cyBjaGVjayB0aGUgc3BlYyA6KQoKPiA+IEFsdGhvdWdoIGlmIHdlIHdhbnQgdG8gZXhwb3Nl IHRoZSBwaXhlbC9saW5lIGRvdWJsaW5nIGFzIGZpeGVkIDJ4Cj4gPiBzY2FsaW5nIHdlIG1pZ2h0 IG5lZWQgdG8gcmV0aGluayB0aGlzIGFnYWluLiBCdXQgSSdtIGdvaW5nIHRvIHByZXRlbmQKPiA+ IHRoYXQgdGhlcmUncyBubyBzdWNoIHRoaW5nIGZvciBub3cuCj4gPgo+ID4+PiAgICAJCUk5MTVf V1JJVEUoUFJJTVBPUyhwbGFuZSksIDApOwo+ID4+PiAgICAJCUk5MTVfV1JJVEUoUFJJTUNOU1RB TFBIQShwbGFuZSksIDApOwo+ID4+PiArCX0gZWxzZSB7Cj4gPj4+ICsJCVdBUk5fT05DRShjcnRj X3cgIT0gaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX3NyY193IHx8Cj4gPj4+ICsJCQkgIGNydGNf aCAhPSBpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX2gsCj4gPj4+ICsJCQkgICJwcmltYXJ5 IHBsYW5lIHNpemUgZG9lc24ndCBtYXRjaCBwaXBlIHNpemVcbiIpOwo+ID4+PiAgICAJfQo+ID4+ Pgo+ID4+PiAgICAJc3dpdGNoIChmYi0+cGl4ZWxfZm9ybWF0KSB7Cj4gPj4+IEBAIC0yNTg2LDE0 ICsyNTg3LDE0IEBAIHN0YXRpYyB2b2lkIGk5eHhfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0 IGRybV9jcnRjICpjcnRjLAo+ID4+PiAgICAJaWYgKGNydGMtPnByaW1hcnktPnN0YXRlLT5yb3Rh dGlvbiA9PSBCSVQoRFJNX1JPVEFURV8xODApKSB7Cj4gPj4+ICAgIAkJZHNwY250ciB8PSBESVNQ UExBTkVfUk9UQVRFXzE4MDsKPiA+Pj4KPiA+Pj4gLQkJeCArPSAoaW50ZWxfY3J0Yy0+Y29uZmln LT5waXBlX3NyY193IC0gMSk7Cj4gPj4+IC0JCXkgKz0gKGludGVsX2NydGMtPmNvbmZpZy0+cGlw ZV9zcmNfaCAtIDEpOwo+ID4+PiArCQl4ICs9IChzcmNfdyAtIDEpOwo+ID4+PiArCQl5ICs9IChz cmNfaCAtIDEpOwo+ID4+Pgo+ID4+PiAgICAJCS8qIEZpbmRpbmcgdGhlIGxhc3QgcGl4ZWwgb2Yg dGhlIGxhc3QgbGluZSBvZiB0aGUgZGlzcGxheQo+ID4+PiAgICAJCWRhdGEgYW5kIGFkZGluZyB0 byBsaW5lYXJfb2Zmc2V0Ki8KPiA+Pj4gICAgCQlsaW5lYXJfb2Zmc2V0ICs9Cj4gPj4+IC0JCQko aW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX3NyY19oIC0gMSkgKiBmYi0+cGl0Y2hlc1swXSArCj4g Pj4+IC0JCQkoaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX3NyY193IC0gMSkgKiBwaXhlbF9zaXpl Owo+ID4+PiArCQkJKHNyY19oIC0gMSkgKiBmYi0+cGl0Y2hlc1swXSArCj4gPj4+ICsJCQkoc3Jj X3cgLSAxKSAqIHBpeGVsX3NpemU7Cj4gPj4+ICAgIAl9Cj4gPj4+Cj4gPj4+ICAgIAlJOTE1X1dS SVRFKHJlZywgZHNwY250cik7Cj4gPj4+IEBAIC0yNjExLDcgKzI2MTIsOSBAQCBzdGF0aWMgdm9p ZCBpOXh4X3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+Pj4K PiA+Pj4gICAgc3RhdGljIHZvaWQgaXJvbmxha2VfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0 IGRybV9jcnRjICpjcnRjLAo+ID4+PiAgICAJCQkJCSAgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAq ZmIsCj4gPj4+IC0JCQkJCSAgaW50IHgsIGludCB5KQo+ID4+PiArCQkJCQkgIGludCB4LCBpbnQg eSwKPiA+Pj4gKwkJCQkJICBpbnQgc3JjX3csIGludCBzcmNfaCwKPiA+Pj4gKwkJCQkJICBpbnQg Y3J0Y193LCBpbnQgY3J0Y19oKQo+ID4+PiAgICB7Cj4gPj4+ICAgIAlzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2ID0gY3J0Yy0+ZGV2Owo+ID4+PiAgICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiA+Pj4gQEAgLTI2NDMsNiArMjY0NiwxMyBAQCBz dGF0aWMgdm9pZCBpcm9ubGFrZV91cGRhdGVfcHJpbWFyeV9wbGFuZShzdHJ1Y3QgZHJtX2NydGMg KmNydGMsCj4gPj4+ICAgIAlpZiAoSVNfSEFTV0VMTChkZXYpIHx8IElTX0JST0FEV0VMTChkZXYp KQo+ID4+PiAgICAJCWRzcGNudHIgfD0gRElTUFBMQU5FX1BJUEVfQ1NDX0VOQUJMRTsKPiA+Pj4K PiA+Pj4gKwlXQVJOX09OQ0Uoc3JjX3cgIT0gY3J0Y193IHx8IHNyY19oICE9IGNydGNfaCwKPiA+ Pj4gKwkJICAicHJpbWFyeSBwbGFuZSBkb2Vzbid0IHN1cHBvcnQgc2NhbGluZ1xuIik7Cj4gPj4+ ICsKPiA+Pj4gKwlXQVJOX09OQ0UoY3J0Y193ICE9IGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9z cmNfdyB8fAo+ID4+PiArCQkgIGNydGNfaCAhPSBpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3Jj X2gsCj4gPj4+ICsJCSAgInByaW1hcnkgcGxhbmUgc2l6ZSBkb2Vzbid0IG1hdGNoIHBpcGUgc2l6 ZVxuIik7Cj4gPj4+ICsKPiA+PiBJIGZlZWwgdGhpcyBzaG91bGQgYmUgcGFydCBvZiB0aGUgY2hl Y2tfcGxhbmUgZnVuY3Rpb25zIHdoZXJlIHdlIGFscmVhZHkKPiA+PiBwZXJmb3JtIG1hbnkgc2l6 ZSByZWxhdGVkIGNoZWNrcy4KPiA+Cj4gPiBUaGlzIGlzIGp1c3QgYW4gYXNzZXJ0aW9uIHRvIGNh dGNoIGFueW9uZSBwYXNzaW5nIGJvZ3VzIHZhbHVlcyBoZXJlLAo+ID4gYW5kIGEgcmVtaW5kZXIg dG8gcGVvcGxlIHRoYXQgaWYgdGhleSB3YW50IHRvIGV4dGVuZCB0aGUgcHJpbWFyeSBwbGFuZQo+ ID4gY2FwYWJpbGl0aWVzIHRoZXJlJ3MgbW9yZSB3b3JrIHRvIGJlIGRvbmUuCj4gPgo+IEhtbSwg YnV0IHN0aWxsIHRoaXMgY2FuIGJlIHBhcnQgb2YgdGhlIGNoZWNrX3BsYW5lLiBObyBwcm9ibGVt LCB5b3UgY2FsbC4KCldlIHN0aWxsIGNhbGwgdGhlIC51cGRhdGVfcHJpbWFyeV9wbGFuZSgpIGRp cmVjdGx5IGZyb20gc29tZSBwbGFjZXMKd2l0aG91dCBjaGVja19wbGFuZSwgc28gYmV0dGVyIGhh dmUgaXQgaGVyZSBmb3Igbm93LgoKPiA+Pj4gICAgCXN3aXRjaCAoZmItPnBpeGVsX2Zvcm1hdCkg ewo+ID4+PiAgICAJY2FzZSBEUk1fRk9STUFUX0M4Ogo+ID4+PiAgICAJCWRzcGNudHIgfD0gRElT UFBMQU5FXzhCUFA7Cj4gPj4+IEBAIC0yNjg2LDE0ICsyNjk2LDE0IEBAIHN0YXRpYyB2b2lkIGly b25sYWtlX3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+Pj4g ICAgCQlkc3BjbnRyIHw9IERJU1BQTEFORV9ST1RBVEVfMTgwOwo+ID4+Pgo+ID4+PiAgICAJCWlm ICghSVNfSEFTV0VMTChkZXYpICYmICFJU19CUk9BRFdFTEwoZGV2KSkgewo+ID4+PiAtCQkJeCAr PSAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX3NyY193IC0gMSk7Cj4gPj4+IC0JCQl5ICs9IChp bnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX2ggLSAxKTsKPiA+Pj4gKwkJCXggKz0gKHNyY193 IC0gMSk7Cj4gPj4+ICsJCQl5ICs9IChzcmNfaCAtIDEpOwo+ID4+Pgo+ID4+PiAgICAJCQkvKiBG aW5kaW5nIHRoZSBsYXN0IHBpeGVsIG9mIHRoZSBsYXN0IGxpbmUgb2YgdGhlIGRpc3BsYXkKPiA+ Pj4gICAgCQkJZGF0YSBhbmQgYWRkaW5nIHRvIGxpbmVhcl9vZmZzZXQqLwo+ID4+PiAgICAJCQls aW5lYXJfb2Zmc2V0ICs9Cj4gPj4+IC0JCQkJKGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNf aCAtIDEpICogZmItPnBpdGNoZXNbMF0gKwo+ID4+PiAtCQkJCShpbnRlbF9jcnRjLT5jb25maWct PnBpcGVfc3JjX3cgLSAxKSAqIHBpeGVsX3NpemU7Cj4gPj4+ICsJCQkJKHNyY19oIC0gMSkgKiBm Yi0+cGl0Y2hlc1swXSArCj4gPj4+ICsJCQkJKHNyY193IC0gMSkgKiBwaXhlbF9zaXplOwo+ID4+ PiAgICAJCX0KPiA+Pj4gICAgCX0KPiA+Pj4KPiA+Pj4gQEAgLTI3NDcsNyArMjc1Nyw5IEBAIHUz MiBpbnRlbF9mYl9zdHJpZGVfYWxpZ25tZW50KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHVpbnQ2 NF90IGZiX21vZGlmaWVyLAo+ID4+Pgo+ID4+PiAgICBzdGF0aWMgdm9pZCBza3lsYWtlX3VwZGF0 ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+Pj4gICAgCQkJCQkgc3Ry dWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCj4gPj4+IC0JCQkJCSBpbnQgeCwgaW50IHkpCj4gPj4+ ICsJCQkJCSBpbnQgeCwgaW50IHksCj4gPj4+ICsJCQkJCSBpbnQgc3JjX3csIGludCBzcmNfaCwK PiA+Pj4gKwkJCQkJIGludCBjcnRjX3csIGludCBjcnRjX2gpCj4gPj4+ICAgIHsKPiA+Pj4gICAg CXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4gPj4+ICAgIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ID4+PiBAQCAtMjc2 Nyw2ICsyNzc5LDkgQEAgc3RhdGljIHZvaWQgc2t5bGFrZV91cGRhdGVfcHJpbWFyeV9wbGFuZShz dHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gPj4+ICAgIAkJICAgIFBMQU5FX0NUTF9QSVBFX0dBTU1B X0VOQUJMRSB8Cj4gPj4+ICAgIAkJICAgIFBMQU5FX0NUTF9QSVBFX0NTQ19FTkFCTEU7Cj4gPj4+ Cj4gPj4+ICsJV0FSTl9PTkNFKHNyY193ICE9IGNydGNfdyB8fCBzcmNfaCAhPSBjcnRjX2gsCj4g Pj4+ICsJCSAgInByaW1hcnkgcGxhbmUgZG9lc24ndCBzdXBwb3J0IHNjYWxpbmdcbiIpOwo+ID4+ PiArCj4gPj4+ICAgIAlzd2l0Y2ggKGZiLT5waXhlbF9mb3JtYXQpIHsKPiA+Pj4gICAgCWNhc2Ug RFJNX0ZPUk1BVF9SR0I1NjU6Cj4gPj4+ICAgIAkJcGxhbmVfY3RsIHw9IFBMQU5FX0NUTF9GT1JN QVRfUkdCXzU2NTsKPiA+Pj4gQEAgLTI4MjYsOSArMjg0MSw3IEBAIHN0YXRpYyB2b2lkIHNreWxh a2VfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4+Pgo+ID4+ PiAgICAJSTkxNV9XUklURShQTEFORV9QT1MocGlwZSwgMCksIDApOwo+ID4+PiAgICAJSTkxNV9X UklURShQTEFORV9PRkZTRVQocGlwZSwgMCksICh5IDw8IDE2KSB8IHgpOwo+ID4+PiAtCUk5MTVf V1JJVEUoUExBTkVfU0laRShwaXBlLCAwKSwKPiA+Pj4gLQkJICAgKGludGVsX2NydGMtPmNvbmZp Zy0+cGlwZV9zcmNfaCAtIDEpIDw8IDE2IHwKPiA+Pj4gLQkJICAgKGludGVsX2NydGMtPmNvbmZp Zy0+cGlwZV9zcmNfdyAtIDEpKTsKPiA+Pj4gKwlJOTE1X1dSSVRFKFBMQU5FX1NJWkUocGlwZSwg MCksICgoc3JjX2ggLSAxKSA8PCAxNikgfCAoc3JjX3cgLSAxKSk7Cj4gPj4+ICAgIAlJOTE1X1dS SVRFKFBMQU5FX1NUUklERShwaXBlLCAwKSwgZmItPnBpdGNoZXNbMF0gLyBzdHJpZGVfZGl2KTsK PiA+Pj4gICAgCUk5MTVfV1JJVEUoUExBTkVfU1VSRihwaXBlLCAwKSwgaTkxNV9nZW1fb2JqX2dn dHRfb2Zmc2V0KG9iaikpOwo+ID4+Pgo+ID4+PiBAQCAtMjg0NSwxMiArMjg1OCwxOCBAQCBpbnRl bF9waXBlX3NldF9iYXNlX2F0b21pYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHN0cnVjdCBkcm1f ZnJhbWVidWZmZXIgKmZiLAo+ID4+PiAgICB7Cj4gPj4+ICAgIAlzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2ID0gY3J0Yy0+ZGV2Owo+ID4+PiAgICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiA+Pj4gKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxf Y3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7Cj4gPj4+Cj4gPj4+ICAgIAlpZiAoZGV2X3ByaXYt PmRpc3BsYXkuZGlzYWJsZV9mYmMpCj4gPj4+ICAgIAkJZGV2X3ByaXYtPmRpc3BsYXkuZGlzYWJs ZV9mYmMoZGV2KTsKPiA+Pj4KPiA+Pj4gKwkvKiBGSVhNRTogdGhpcyB3aWxsIGdvIGJhZGx5IGlm IHRoZSBmYiBpc24ndCBiaWcgZW5vdWdoICovCj4gPj4+ICAgIAl0b19pbnRlbF9jcnRjKGNydGMp LT5wcmltYXJ5X2VuYWJsZWQgPSB0cnVlOwo+ID4+PiAtCWRldl9wcml2LT5kaXNwbGF5LnVwZGF0 ZV9wcmltYXJ5X3BsYW5lKGNydGMsIGZiLCB4LCB5KTsKPiA+Pj4gKwlkZXZfcHJpdi0+ZGlzcGxh eS51cGRhdGVfcHJpbWFyeV9wbGFuZShjcnRjLCBmYiwgeCwgeSwKPiA+Pj4gKwkJCQkJICAgICAg IGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfdywKPiA+Pj4gKwkJCQkJICAgICAgIGludGVs X2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfaCwKPiA+Pj4gKwkJCQkJICAgICAgIGludGVsX2NydGMt PmNvbmZpZy0+cGlwZV9zcmNfdywKPiA+Pj4gKwkJCQkJICAgICAgIGludGVsX2NydGMtPmNvbmZp Zy0+cGlwZV9zcmNfaCk7Cj4gPj4+Cj4gPj4+ICAgIAlyZXR1cm4gMDsKPiA+Pj4gICAgfQo+ID4+ PiBAQCAtMjg4NSw3ICsyOTA0LDExIEBAIHN0YXRpYyB2b2lkIGludGVsX3VwZGF0ZV9wcmltYXJ5 X3BsYW5lcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ID4+PiAgICAJCQlkZXZfcHJpdi0+ZGlz cGxheS51cGRhdGVfcHJpbWFyeV9wbGFuZShjcnRjLAo+ID4+PiAgICAJCQkJCQkJICAgICAgIHN0 YXRlLT5iYXNlLmZiLAo+ID4+PiAgICAJCQkJCQkJICAgICAgIHN0YXRlLT5zcmMueDEgPj4gMTYs Cj4gPj4+IC0JCQkJCQkJICAgICAgIHN0YXRlLT5zcmMueTEgPj4gMTYpOwo+ID4+PiArCQkJCQkJ CSAgICAgICBzdGF0ZS0+c3JjLnkxID4+IDE2LAo+ID4+PiArCQkJCQkJCSAgICAgICBkcm1fcmVj dF93aWR0aCgmc3RhdGUtPnNyYykgPj4gMTYsCj4gPj4+ICsJCQkJCQkJICAgICAgIGRybV9yZWN0 X2hlaWdodCgmc3RhdGUtPnNyYykgPj4gMTYsCj4gPj4+ICsJCQkJCQkJICAgICAgIGRybV9yZWN0 X3dpZHRoKCZzdGF0ZS0+ZHN0KSwKPiA+Pj4gKwkJCQkJCQkgICAgICAgZHJtX3JlY3RfaGVpZ2h0 KCZzdGF0ZS0+ZHN0KSk7Cj4gPj4gVGhlIG9yZGVyIGluIGludGVsX3Nwcml0ZS5jIGlzIGRzdCB4 LCB5LCBkZXN0IHcsIGgsIHRoZW4gc3JjIHgsIHksIHNyYwo+ID4+IHcsIGguIEJ1dCB3ZSBjYW4g c29ydCBpdCBsYXRlciB3aGVuIHdlIGFyZSBhY3R1YWxseSBtZXJnaW5nIGJvdGggdGhlCj4gPj4g dXBkYXRlIGZ1bmN0aW9ucyBmb3IgcHJpbWFyeSBhbmQgc3ByaXRlcy4KPiA+Cj4gPiBPaC4gRmFp bGVkIHRvIG5vdGljZSB0aGF0LiBCdXQgeWVhaCBlYXN5IGVub3VnaCB0byBmaXggd2hlbiB3ZSB1 bmlmeS4KPiA+Cj4gPj4KPiA+PiBBbHNvLCBJIHRoaW5rIGl0IHdpbGwgYmUgYmV0dGVyIHRvIHBh c3MgY3J0Y194LCBjcnRjX3kgYWxzbyB0byBiZSB1c2VkCj4gPj4gdG8gc2V0IHBsYW5lIHBvc2l0 aW9uLgo+ID4KPiA+IFRoYXQncyBpbiB0aGUgbmV4dCBwYXRjaC4KPiA+Cj4gT29wcywgeWVzIDop Cj4gPj4KPiA+PiAtU29uaWthCj4gPj4+ICAgIAkJfQo+ID4+Pgo+ID4+PiAgICAJCWRybV9tb2Rl c2V0X3VubG9jaygmY3J0Yy0+bXV0ZXgpOwo+ID4+PiBAQCAtMTIwNzAsNyArMTIwOTMsMTEgQEAg aW50ZWxfY29tbWl0X3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gPj4+ ICAgIAkJZGV2X3ByaXYtPmRpc3BsYXkudXBkYXRlX3ByaW1hcnlfcGxhbmUoY3J0YywKPiA+Pj4g ICAgCQkJCQkJICAgICAgIHN0YXRlLT5iYXNlLmZiLAo+ID4+PiAgICAJCQkJCQkgICAgICAgc3Rh dGUtPnNyYy54MSA+PiAxNiwKPiA+Pj4gLQkJCQkJCSAgICAgICBzdGF0ZS0+c3JjLnkxID4+IDE2 KTsKPiA+Pj4gKwkJCQkJCSAgICAgICBzdGF0ZS0+c3JjLnkxID4+IDE2LAo+ID4+PiArCQkJCQkJ ICAgICAgIGRybV9yZWN0X3dpZHRoKCZzdGF0ZS0+c3JjKSA+PiAxNiwKPiA+Pj4gKwkJCQkJCSAg ICAgICBkcm1fcmVjdF9oZWlnaHQoJnN0YXRlLT5zcmMpID4+IDE2LAo+ID4+PiArCQkJCQkJICAg ICAgIGRybV9yZWN0X3dpZHRoKCZzdGF0ZS0+ZHN0KSwKPiA+Pj4gKwkJCQkJCSAgICAgICBkcm1f cmVjdF9oZWlnaHQoJnN0YXRlLT5kc3QpKTsKPiA+Pj4gICAgCX0KPiA+Pj4gICAgfQo+ID4+Pgo+ ID4+Pgo+ID4KCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==