From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v4 2/3] drm/atomic-helper: Implement subsystem-level suspend/resume Date: Tue, 1 Dec 2015 11:09:33 +0100 Message-ID: <20151201100933.GQ17050@phenom.ffwll.local> References: <1448963821-18936-1-git-send-email-thierry.reding@gmail.com> <1448963821-18936-2-git-send-email-thierry.reding@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f50.google.com (mail-wm0-f50.google.com [74.125.82.50]) by gabe.freedesktop.org (Postfix) with ESMTPS id 814256E79A for ; Tue, 1 Dec 2015 02:09:37 -0800 (PST) Received: by wmec201 with SMTP id c201so197230540wme.0 for ; Tue, 01 Dec 2015 02:09:36 -0800 (PST) Content-Disposition: inline In-Reply-To: <1448963821-18936-2-git-send-email-thierry.reding@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Thierry Reding Cc: Daniel Vetter , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBEZWMgMDEsIDIwMTUgYXQgMTA6NTc6MDBBTSArMDEwMCwgVGhpZXJyeSBSZWRpbmcg d3JvdGU6Cj4gRnJvbTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KPiAKPiBQ cm92aWRlIHN1YnN5c3RlbS1sZXZlbCBzdXNwZW5kIGFuZCByZXN1bWUgaGVscGVycyB0aGF0IGNh biBiZSB1c2VkIHRvCj4gaW1wbGVtZW50IHN1c3BlbmQvcmVzdW1lIG9uIGF0b21pYyBtb2RlLXNl dHRpbmcgZW5hYmxlZCBkcml2ZXJzLgo+IAo+IHYyOiBzaW1wbGlmeSBsb2NraW5nLCBlbmhhbmNl IGtlcm5lbGRvYyBjb21tZW50cwo+IHYzOiBwYXNzIGxvY2sgYWNxdWlzaXRpb24gY29udGV4dCBi eSBwYXJhbWV0ZXIsIGltcHJvdmUga2VybmVsZG9jCj4gdjQ6IC0gcmVtb3ZlIHJlZHVuZGFudCBj b2RlIChhbHJlYWR5IHByb3ZpZGVkIGJ5IGF0b21pYyBoZWxwZXJzKQo+ICAgICAgIChNYWFydGVu IExhbmtob3JzdCkKPiAgICAgLSBtb3ZlIGJhY2tvZmYgZGFuY2UgZnJvbSBkcm1fbW9kZXNldF9s b2NrX2FsbF9jdHgoKSBpbnRvIHN1c3BlbmQKPiAgICAgICBoZWxwZXIgKERhbmllbCBWZXR0ZXIp Cj4gCj4gU2lnbmVkLW9mZi1ieTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4K PiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgfCAxNjMgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKystCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0 Y19oZWxwZXIuYyAgIHwgICA2ICsrCj4gIGluY2x1ZGUvZHJtL2RybV9hdG9taWNfaGVscGVyLmgg ICAgIHwgICA2ICsrCj4gIDMgZmlsZXMgY2hhbmdlZCwgMTc0IGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVs cGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwo+IGluZGV4IDM3MzFh MjY5NzliYy4uMWI1MTcyMmIyYTAwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1f YXRvbWljX2hlbHBlci5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVy LmMKPiBAQCAtMTgxOCw2ICsxODE4LDE2MiBAQCBjb21taXQ6Cj4gIH0KPiAgCj4gIC8qKgo+ICsg KiBkcm1fYXRvbWljX2hlbHBlcl9kaXNhYmxlX2FsbCAtIGRpc2FibGUgYWxsIGN1cnJlbnRseSBh Y3RpdmUgb3V0cHV0cwo+ICsgKiBAZGV2OiBEUk0gZGV2aWNlCj4gKyAqIEBjdHg6IGxvY2sgYWNx dWlzaXRpb24gY29udGV4dAo+ICsgKgo+ICsgKiBMb29wcyB0aHJvdWdoIGFsbCBjb25uZWN0b3Jz LCBmaW5kaW5nIHRob3NlIHRoYXQgYXJlbid0IHR1cm5lZCBvZmYgYW5kIHRoZW4KPiArICogdHVy bnMgdGhlbSBvZmYgYnkgc2V0dGluZyB0aGVpciBEUE1TIG1vZGUgdG8gT0ZGIGFuZCBkZWFjdGl2 YXRpbmcgdGhlIENSVEMKPiArICogdGhhdCB0aGV5IGFyZSBjb25uZWN0ZWQgdG8uCj4gKyAqCj4g KyAqIFRoaXMgaXMgdXNlZCBmb3IgZXhhbXBsZSBpbiBzdXNwZW5kL3Jlc3VtZSB0byBkaXNhYmxl IGFsbCBjdXJyZW50bHkgYWN0aXZlCj4gKyAqIGZ1bmN0aW9ucyB3aGVuIHN1c3BlbmRpbmcuCj4g KyAqCj4gKyAqIE5vdGUgdGhhdCBpZiBjYWxsZXJzIGhhdmVuJ3QgYWxyZWFkeSBhY3F1aXJlZCBh bGwgbW9kZXNldCBsb2NrcyB0aGlzIG1pZ2h0Cj4gKyAqIHJldHVybiAtRURFQURMSywgd2hpY2gg bXVzdCBiZSBoYW5kbGVkIGJ5IGNhbGxpbmcgZHJtX21vZGVzZXRfYmFja29mZigpLgo+ICsgKgo+ ICsgKiBSZXR1cm5zOgo+ICsgKiAwIG9uIHN1Y2Nlc3Mgb3IgYSBuZWdhdGl2ZSBlcnJvciBjb2Rl IG9uIGZhaWx1cmUuCj4gKyAqCj4gKyAqIFNlZSBhbHNvOgo+ICsgKiBkcm1fYXRvbWljX2hlbHBl cl9zdXNwZW5kKCksIGRybV9hdG9taWNfaGVscGVyX3Jlc3VtZSgpCj4gKyAqLwo+ICtpbnQgZHJt X2F0b21pY19oZWxwZXJfZGlzYWJsZV9hbGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiArCQkJ CSAgc3RydWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4ICpjdHgpCj4gK3sKPiArCXN0cnVjdCBk cm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKPiArCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uOwo+ ICsJaW50IGVycjsKPiArCj4gKwlzdGF0ZSA9IGRybV9hdG9taWNfc3RhdGVfYWxsb2MoZGV2KTsK PiArCWlmICghc3RhdGUpCj4gKwkJcmV0dXJuIC1FTk9NRU07Cj4gKwo+ICsJc3RhdGUtPmFjcXVp cmVfY3R4ID0gY3R4Owo+ICsKPiArCWRybV9mb3JfZWFjaF9jb25uZWN0b3IoY29ubiwgZGV2KSB7 Cj4gKwkJc3RydWN0IGRybV9jcnRjICpjcnRjID0gY29ubi0+c3RhdGUtPmNydGM7Cj4gKwkJc3Ry dWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwo+ICsKPiArCQlpZiAoIWNydGMgfHwgY29u bi0+ZHBtcyAhPSBEUk1fTU9ERV9EUE1TX09OKQo+ICsJCQljb250aW51ZTsKPiArCj4gKwkJY3J0 Y19zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X2NydGNfc3RhdGUoc3RhdGUsIGNydGMpOwo+ICsJCWlm IChJU19FUlIoY3J0Y19zdGF0ZSkpIHsKPiArCQkJZXJyID0gUFRSX0VSUihjcnRjX3N0YXRlKTsK PiArCQkJZ290byBmcmVlOwo+ICsJCX0KPiArCj4gKwkJY3J0Y19zdGF0ZS0+YWN0aXZlID0gZmFs c2U7Cj4gKwl9Cj4gKwo+ICsJZXJyID0gZHJtX2F0b21pY19jb21taXQoc3RhdGUpOwo+ICsKPiAr ZnJlZToKPiArCWlmIChlcnIgPCAwKQo+ICsJCWRybV9hdG9taWNfc3RhdGVfZnJlZShzdGF0ZSk7 Cj4gKwo+ICsJcmV0dXJuIGVycjsKPiArfQo+ICtFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfaGVs cGVyX2Rpc2FibGVfYWxsKTsKPiArCj4gKy8qKgo+ICsgKiBkcm1fYXRvbWljX2hlbHBlcl9zdXNw ZW5kIC0gc3Vic3lzdGVtLWxldmVsIHN1c3BlbmQgaGVscGVyCj4gKyAqIEBkZXY6IERSTSBkZXZp Y2UKPiArICoKPiArICogRHVwbGljYXRlcyB0aGUgY3VycmVudCBhdG9taWMgc3RhdGUsIGRpc2Fi bGVzIGFsbCBhY3RpdmUgb3V0cHV0cyBhbmQgdGhlbgo+ICsgKiByZXR1cm5zIGEgcG9pbnRlciB0 byB0aGUgb3JpZ2luYWwgYXRvbWljIHN0YXRlIHRvIHRoZSBjYWxsZXIuIERyaXZlcnMgY2FuCj4g KyAqIHBhc3MgdGhpcyBwb2ludGVyIHRvIHRoZSBkcm1fYXRvbWljX2hlbHBlcl9yZXN1bWUoKSBo ZWxwZXIgdXBvbiByZXN1bWUgdG8KPiArICogcmVzdG9yZSB0aGUgb3V0cHV0IGNvbmZpZ3VyYXRp b24gdGhhdCB3YXMgYWN0aXZlIGF0IHRoZSB0aW1lIHRoZSBzeXN0ZW0KPiArICogZW50ZXJlZCBz dXNwZW5kLgo+ICsgKgo+ICsgKiBOb3RlIHRoYXQgaXQgaXMgcG90ZW50aWFsbHkgdW5zYWZlIHRv IHVzZSB0aGlzLiBUaGUgYXRvbWljIHN0YXRlIG9iamVjdAo+ICsgKiByZXR1cm5lZCBieSB0aGlz IGZ1bmN0aW9uIGlzIGFzc3VtZWQgdG8gYmUgcGVyc2lzdGVudC4gRHJpdmVycyBtdXN0IGVuc3Vy ZQo+ICsgKiB0aGF0IHRoaXMgaG9sZHMgdHJ1ZS4gQmVmb3JlIGNhbGxpbmcgdGhpcyBmdW5jdGlv biwgZHJpdmVycyBtdXN0IG1ha2Ugc3VyZQo+ICsgKiB0byBzdXNwZW5kIGZiZGV2IGVtdWxhdGlv biBzbyB0aGF0IG5vdGhpbmcgY2FuIGJlIHVzaW5nIHRoZSBkZXZpY2UuCj4gKyAqCj4gKyAqIFJl dHVybnM6Cj4gKyAqIEEgcG9pbnRlciB0byBhIGNvcHkgb2YgdGhlIHN0YXRlIGJlZm9yZSBzdXNw ZW5kIG9uIHN1Y2Nlc3Mgb3IgYW4gRVJSX1BUUigpLQo+ICsgKiBlbmNvZGVkIGVycm9yIGNvZGUg b24gZmFpbHVyZS4gRHJpdmVycyBzaG91bGQgc3RvcmUgdGhlIHJldHVybmVkIGF0b21pYwo+ICsg KiBzdGF0ZSBvYmplY3QgYW5kIHBhc3MgaXQgdG8gdGhlIGRybV9hdG9taWNfaGVscGVyX3Jlc3Vt ZSgpIGhlbHBlciB1cG9uCj4gKyAqIHJlc3VtZS4KPiArICoKPiArICogU2VlIGFsc286Cj4gKyAq IGRybV9hdG9taWNfaGVscGVyX2R1cGxpY2F0ZV9zdGF0ZSgpLCBkcm1fYXRvbWljX2hlbHBlcl9k aXNhYmxlX2FsbCgpLAo+ICsgKiBkcm1fYXRvbWljX2hlbHBlcl9yZXN1bWUoKQo+ICsgKi8KPiAr c3RydWN0IGRybV9hdG9taWNfc3RhdGUgKmRybV9hdG9taWNfaGVscGVyX3N1c3BlbmQoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKPiArewo+ICsJc3RydWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4 IGN0eDsKPiArCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKPiArCWludCBlcnI7Cj4g Kwo+ICsJZHJtX21vZGVzZXRfYWNxdWlyZV9pbml0KCZjdHgsIDApOwo+ICsKPiArcmV0cnk6Cj4g KwllcnIgPSBkcm1fbW9kZXNldF9sb2NrX2FsbF9jdHgoZGV2LCAmY3R4KTsKPiArCWlmIChlcnIg PCAwKSB7Cj4gKwkJaWYgKGVyciA9PSAtRURFQURMSykgewo+ICsJCQlkcm1fbW9kZXNldF9iYWNr b2ZmKCZjdHgpOwo+ICsJCQlnb3RvIHJldHJ5Owo+ICsJCX0KPiArCj4gKwkJc3RhdGUgPSBFUlJf UFRSKGVycik7Cj4gKwkJZ290byBmaW5pOwo+ICsJfQo+ICsKPiArCXN0YXRlID0gZHJtX2F0b21p Y19oZWxwZXJfZHVwbGljYXRlX3N0YXRlKGRldiwgJmN0eCk7Cj4gKwlpZiAoSVNfRVJSKHN0YXRl KSkKPiArCQlnb3RvIHVubG9jazsKPiArCj4gKwllcnIgPSBkcm1fYXRvbWljX2hlbHBlcl9kaXNh YmxlX2FsbChkZXYsICZjdHgpOwoKSWYgdGhlIGRyaXZlciBoYXMgc29tZSBpbnRlcm5hbCBzdGF0 ZSBwcm90ZWN0ZWQgd2l0aCBpdCdzIG93biBsb2NraW5nIHRoZQphYm92ZSB0d28gZnVuY3Rpb24g bWlnaHQgcmV0dXJuIC1FREVBRExLIHRvby4gS2VybmVsZG9jIGZvciB0aGF0IGZ1bmN0aW9uCmV2 ZW4gbWVudGlvbnMgdGhhdC4gQnV0IHNpbmNlIHdlIGRvbid0IGN1cnJlbnRseSBoYXZlIHN1Y2gg YSBkcml2ZXIgaXQncwpub3QgY3JpdGljYWwsIGJ1dCBzdGlsbCB3b3VsZCBiZSBnb29kIHRvIGZp eC4KCkVpdGhlciB3YXkgdGhpcyBsb29rcyByZWFsbHkgZ29vZCBub3cgaW1vLgoKUmV2aWV3ZWQt Ynk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cgo+ICsJaWYgKGVyciA8 IDApIHsKPiArCQlkcm1fYXRvbWljX3N0YXRlX2ZyZWUoc3RhdGUpOwo+ICsJCXN0YXRlID0gRVJS X1BUUihlcnIpOwo+ICsJCWdvdG8gdW5sb2NrOwo+ICsJfQo+ICsKPiArdW5sb2NrOgo+ICsJZHJt X21vZGVzZXRfZHJvcF9sb2NrcygmY3R4KTsKPiArZmluaToKPiArCWRybV9tb2Rlc2V0X2FjcXVp cmVfZmluaSgmY3R4KTsKPiArCXJldHVybiBzdGF0ZTsKPiArfQo+ICtFWFBPUlRfU1lNQk9MKGRy bV9hdG9taWNfaGVscGVyX3N1c3BlbmQpOwo+ICsKPiArLyoqCj4gKyAqIGRybV9hdG9taWNfaGVs cGVyX3Jlc3VtZSAtIHN1YnN5c3RlbS1sZXZlbCByZXN1bWUgaGVscGVyCj4gKyAqIEBkZXY6IERS TSBkZXZpY2UKPiArICogQHN0YXRlOiBhdG9taWMgc3RhdGUgdG8gcmVzdW1lIHRvCj4gKyAqCj4g KyAqIENhbGxzIGRybV9tb2RlX2NvbmZpZ19yZXNldCgpIHRvIHN5bmNocm9uaXplIGhhcmR3YXJl IGFuZCBzb2Z0d2FyZSBzdGF0ZXMsCj4gKyAqIGdyYWJzIGFsbCBtb2Rlc2V0IGxvY2tzIGFuZCBj b21taXRzIHRoZSBhdG9taWMgc3RhdGUgb2JqZWN0LiBUaGlzIGNhbiBiZQo+ICsgKiB1c2VkIGlu IGNvbmp1bmN0aW9uIHdpdGggdGhlIGRybV9hdG9taWNfaGVscGVyX3N1c3BlbmQoKSBoZWxwZXIg dG8KPiArICogaW1wbGVtZW50IHN1c3BlbmQvcmVzdW1lIGZvciBkcml2ZXJzIHRoYXQgc3VwcG9y dCBhdG9taWMgbW9kZS1zZXR0aW5nLgo+ICsgKgo+ICsgKiBSZXR1cm5zOgo+ICsgKiAwIG9uIHN1 Y2Nlc3Mgb3IgYSBuZWdhdGl2ZSBlcnJvciBjb2RlIG9uIGZhaWx1cmUuCj4gKyAqCj4gKyAqIFNl ZSBhbHNvOgo+ICsgKiBkcm1fYXRvbWljX2hlbHBlcl9zdXNwZW5kKCkKPiArICovCj4gK2ludCBk cm1fYXRvbWljX2hlbHBlcl9yZXN1bWUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiArCQkJICAg ICBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gK3sKPiArCXN0cnVjdCBkcm1fbW9k ZV9jb25maWcgKmNvbmZpZyA9ICZkZXYtPm1vZGVfY29uZmlnOwo+ICsJaW50IGVycjsKPiArCj4g Kwlkcm1fbW9kZV9jb25maWdfcmVzZXQoZGV2KTsKPiArCWRybV9tb2Rlc2V0X2xvY2tfYWxsKGRl dik7Cj4gKwlzdGF0ZS0+YWNxdWlyZV9jdHggPSBjb25maWctPmFjcXVpcmVfY3R4Owo+ICsJZXJy ID0gZHJtX2F0b21pY19jb21taXQoc3RhdGUpOwo+ICsJZHJtX21vZGVzZXRfdW5sb2NrX2FsbChk ZXYpOwo+ICsKPiArCXJldHVybiBlcnI7Cj4gK30KPiArRVhQT1JUX1NZTUJPTChkcm1fYXRvbWlj X2hlbHBlcl9yZXN1bWUpOwo+ICsKPiArLyoqCj4gICAqIGRybV9hdG9taWNfaGVscGVyX2NydGNf c2V0X3Byb3BlcnR5IC0gaGVscGVyIGZvciBjcnRjIHByb3BlcnRpZXMKPiAgICogQGNydGM6IERS TSBjcnRjCj4gICAqIEBwcm9wZXJ0eTogRFJNIHByb3BlcnR5Cj4gQEAgLTI0MjksNyArMjU4NSw5 IEBAIEVYUE9SVF9TWU1CT0woZHJtX2F0b21pY19oZWxwZXJfY29ubmVjdG9yX2R1cGxpY2F0ZV9z dGF0ZSk7Cj4gICAqIEBjdHg6IGxvY2sgYWNxdWlzaXRpb24gY29udGV4dAo+ICAgKgo+ICAgKiBN YWtlcyBhIGNvcHkgb2YgdGhlIGN1cnJlbnQgYXRvbWljIHN0YXRlIGJ5IGxvb3Bpbmcgb3ZlciBh bGwgb2JqZWN0cyBhbmQKPiAtICogZHVwbGljYXRpbmcgdGhlaXIgcmVzcGVjdGl2ZSBzdGF0ZXMu Cj4gKyAqIGR1cGxpY2F0aW5nIHRoZWlyIHJlc3BlY3RpdmUgc3RhdGVzLiBUaGlzIGlzIHVzZWQg Zm9yIGV4YW1wbGUgYnkgc3VzcGVuZC8KPiArICogcmVzdW1lIHN1cHBvcnQgY29kZSB0byBzYXZl IHRoZSBzdGF0ZSBwcmlvciB0byBzdXNwZW5kIHN1Y2ggdGhhdCBpdCBjYW4KPiArICogYmUgcmVz dG9yZWQgdXBvbiByZXN1bWUuCj4gICAqCj4gICAqIE5vdGUgdGhhdCB0aGlzIHRyZWF0cyBhdG9t aWMgc3RhdGUgYXMgcGVyc2lzdGVudCBiZXR3ZWVuIHNhdmUgYW5kIHJlc3RvcmUuCj4gICAqIERy aXZlcnMgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGlzIGlzIHBvc3NpYmxlIGFuZCB3b24ndCByZXN1 bHQgaW4gY29uZnVzaW9uCj4gQEAgLTI0NDEsNiArMjU5OSw5IEBAIEVYUE9SVF9TWU1CT0woZHJt X2F0b21pY19oZWxwZXJfY29ubmVjdG9yX2R1cGxpY2F0ZV9zdGF0ZSk7Cj4gICAqIFJldHVybnM6 Cj4gICAqIEEgcG9pbnRlciB0byB0aGUgY29weSBvZiB0aGUgYXRvbWljIHN0YXRlIG9iamVjdCBv biBzdWNjZXNzIG9yIGFuCj4gICAqIEVSUl9QVFIoKS1lbmNvZGVkIGVycm9yIGNvZGUgb24gZmFp bHVyZS4KPiArICoKPiArICogU2VlIGFsc286Cj4gKyAqIGRybV9hdG9taWNfaGVscGVyX3N1c3Bl bmQoKSwgZHJtX2F0b21pY19oZWxwZXJfcmVzdW1lKCkKPiAgICovCj4gIHN0cnVjdCBkcm1fYXRv bWljX3N0YXRlICoKPiAgZHJtX2F0b21pY19oZWxwZXJfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19o ZWxwZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYwo+IGluZGV4IDZiNGNm MjVmZWQxMi4uMTBkMDk4OWRiMjczIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1f Y3J0Y19oZWxwZXIuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19oZWxwZXIuYwo+ IEBAIC04NTUsNiArODU1LDEyIEBAIEVYUE9SVF9TWU1CT0woZHJtX2hlbHBlcl9tb2RlX2ZpbGxf ZmJfc3RydWN0KTsKPiAgICogZHVlIHRvIHNsaWdodCBkaWZmZXJlbmNlcyBpbiBhbGxvY2F0aW5n IHNoYXJlZCByZXNvdXJjZXMgd2hlbiB0aGUKPiAgICogY29uZmlndXJhdGlvbiBpcyByZXN0b3Jl ZCBpbiBhIGRpZmZlcmVudCBvcmRlciB0aGFuIHdoZW4gdXNlcnNwYWNlIHNldCBpdCB1cCkKPiAg ICogbmVlZCB0byB1c2UgdGhlaXIgb3duIHJlc3RvcmUgbG9naWMuCj4gKyAqCj4gKyAqIFRoaXMg ZnVuY3Rpb24gaXMgZGVwcmVjYXRlZC4gTmV3IGRyaXZlcnMgc2hvdWxkIGltcGxlbWVudCBhdG9t aWMgbW9kZS0KPiArICogc2V0dGluZyBhbmQgdXNlIHRoZSBhdG9taWMgc3VzcGVuZC9yZXN1bWUg aGVscGVycy4KPiArICoKPiArICogU2VlIGFsc286Cj4gKyAqIGRybV9hdG9taWNfaGVscGVyX3N1 c3BlbmQoKSwgZHJtX2F0b21pY19oZWxwZXJfcmVzdW1lKCkKPiAgICovCj4gIHZvaWQgZHJtX2hl bHBlcl9yZXN1bWVfZm9yY2VfbW9kZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICB7Cj4gZGlm ZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9hdG9taWNfaGVscGVyLmggYi9pbmNsdWRlL2RybS9k cm1fYXRvbWljX2hlbHBlci5oCj4gaW5kZXggOGNiYTU0YTJhMGEwLi44MDQ1Y2RlYThjYzkgMTAw NjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2F0b21pY19oZWxwZXIuaAo+ICsrKyBiL2luY2x1 ZGUvZHJtL2RybV9hdG9taWNfaGVscGVyLmgKPiBAQCAtODEsNiArODEsMTIgQEAgaW50IGRybV9h dG9taWNfaGVscGVyX3NldF9jb25maWcoc3RydWN0IGRybV9tb2RlX3NldCAqc2V0KTsKPiAgaW50 IF9fZHJtX2F0b21pY19oZWxwZXJfc2V0X2NvbmZpZyhzdHJ1Y3QgZHJtX21vZGVfc2V0ICpzZXQs Cj4gIAkJc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKTsKPiAgCj4gK2ludCBkcm1fYXRv bWljX2hlbHBlcl9kaXNhYmxlX2FsbChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICsJCQkJICBz dHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggKmN0eCk7Cj4gK3N0cnVjdCBkcm1fYXRvbWlj X3N0YXRlICpkcm1fYXRvbWljX2hlbHBlcl9zdXNwZW5kKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp Owo+ICtpbnQgZHJtX2F0b21pY19oZWxwZXJfcmVzdW1lKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs Cj4gKwkJCSAgICAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKTsKPiArCj4gIGludCBk cm1fYXRvbWljX2hlbHBlcl9jcnRjX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2NydGMgKmNydGMs Cj4gIAkJCQkJc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcGVydHksCj4gIAkJCQkJdWludDY0X3Qg dmFsKTsKPiAtLSAKPiAyLjUuMAo+IAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5l ZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QK ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==