From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm/rcar-du: Convert drm_atomic_helper_suspend/resume() Date: Tue, 23 Oct 2018 15:40:41 +0200 Message-ID: <20181023134041.GO324@phenom.ffwll.local> References: <20180918163903.GA11172@jordon-HP-15-Notebook-PC> <20809880.gF2CxujBy3@avalon> <20181001065220.GE11082@phenom.ffwll.local> <26527911.hs5tlrnKDc@avalon> <042a6076-62e2-c029-2a09-f1123d9ac403@tronnes.org> <20181011081849.GR31561@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x541.google.com (mail-ed1-x541.google.com [IPv6:2a00:1450:4864:20::541]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5B3DC89EA3 for ; Tue, 23 Oct 2018 13:40:46 +0000 (UTC) Received: by mail-ed1-x541.google.com with SMTP id t10-v6so1647683eds.12 for ; Tue, 23 Oct 2018 06:40:46 -0700 (PDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Souptick Joarder Cc: airlied@linux.ie, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, Laurent Pinchart , sean@poorly.run List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBPY3QgMjIsIDIwMTggYXQgMDE6NTE6MzVQTSArMDUzMCwgU291cHRpY2sgSm9hcmRl ciB3cm90ZToKPiBIaSBMYXVyZW50LAo+IAo+IE9uIFRodSwgT2N0IDExLCAyMDE4IGF0IDE6NDgg UE0gRGFuaWVsIFZldHRlciA8ZGFuaWVsQGZmd2xsLmNoPiB3cm90ZToKPiA+Cj4gPiBPbiBNb24s IE9jdCAwOCwgMjAxOCBhdCAwOTo1Nzo1MlBNICswNTMwLCBTb3VwdGljayBKb2FyZGVyIHdyb3Rl Ogo+ID4gPiBIaSBMYXVyZW50LAo+ID4gPiBPbiBNb24sIE9jdCAxLCAyMDE4IGF0IDY6MTIgUE0g Tm9yYWxmIFRyw7hubmVzIDxub3JhbGZAdHJvbm5lcy5vcmc+IHdyb3RlOgo+ID4gPiA+Cj4gPiA+ ID4KPiA+ID4gPiBEZW4gMDEuMTAuMjAxOCAxMy41Niwgc2tyZXYgTGF1cmVudCBQaW5jaGFydDoK PiA+ID4gPiA+IEhpIERhbmllbCwKPiA+ID4gPiA+Cj4gPiA+ID4gPiBPbiBNb25kYXksIDEgT2N0 b2JlciAyMDE4IDA5OjUyOjIwIEVFU1QgRGFuaWVsIFZldHRlciB3cm90ZToKPiA+ID4gPiA+PiBP biBGcmksIFNlcCAyOCwgMjAxOCBhdCAwNjozMDozNVBNICswMzAwLCBMYXVyZW50IFBpbmNoYXJ0 IHdyb3RlOgo+ID4gPiA+ID4+PiBPbiBGcmlkYXksIDI4IFNlcHRlbWJlciAyMDE4IDE4OjA1OjE4 IEVFU1QgTGF1cmVudCBQaW5jaGFydCB3cm90ZToKPiA+ID4gPiA+Pj4+IE9uIFRodXJzZGF5LCAy NyBTZXB0ZW1iZXIgMjAxOCAwOTozNDoxOCBFRVNUIFNvdXB0aWNrIEpvYXJkZXIgd3JvdGU6Cj4g PiA+ID4gPj4+Pj4gT24gVHVlLCBTZXAgMTgsIDIwMTggYXQgMTA6MDUgUE0gU291cHRpY2sgSm9h cmRlciB3cm90ZToKPiA+ID4gPiA+Pj4+Pj4gY29udmVydCBkcm1fYXRvbWljX2hlbHBlcl9zdXNw ZW5kL3Jlc3VtZSgpIHRvIHVzZQo+ID4gPiA+ID4+Pj4+PiBkcm1fbW9kZV9jb25maWdfaGVscGVy X3N1c3BlbmQvcmVzdW1lKCkuCj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+IHJlbW92ZSBz dXNwZW5kX3N0YXRlIGZpZWxkIGZyb20gdGhlIHJjYXJfZHVfZGV2aWNlCj4gPiA+ID4gPj4+Pj4+ IHN0cnVjdHVyZSBhcyBpdCBpcyBubyBtb3JlIHJlcXVpcmVkLgo+ID4gPiA+ID4+Pj4+Pgo+ID4g PiA+ID4+Pj4+PiBXaXRoIHRoaXMgY29udmVyc2lvbiwgYWxzbyBkcm1fZmJkZXZfY21hX3NldF9z dXNwZW5kX3VubG9ja2VkKCkKPiA+ID4gPiA+Pj4+Pj4gd2lsbCBsZWZ0IHdpdGggbm8gY29uc3Vt ZXIuIFNvIHRoaXMgZnVuY3Rpb24gY2FuIGJlIHJlbW92ZWQuCj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ ID4gPj4+Pj4+IFNpZ25lZC1vZmYtYnk6IFNvdXB0aWNrIEpvYXJkZXIgPGpyZHIubGludXhAZ21h aWwuY29tPgo+ID4gPiA+ID4+Pj4+IExhdXJlbnQsIGFueSBjb21tZW50IG9uIHRoaXMgcGF0Y2gg Pz8KPiA+ID4gPiA+Pj4+IFNvcnJ5IGZvciB0aGUgZGVsYXksIGFuZCB0aGFua3MgZm9yIHBpbmdp bmcgbWUuCj4gPiA+ID4gPj4+Pgo+ID4gPiA+ID4+Pj4gUmV2aWV3ZWQtYnk6IExhdXJlbnQgUGlu Y2hhcnQgPGxhdXJlbnQucGluY2hhcnRAaWRlYXNvbmJvYXJkLmNvbT4KPiA+ID4gPiA+Pj4+Cj4g PiA+ID4gPj4+PiBTaG91bGQgSSBhcHBseSB0aGlzIHRvIG15IHRyZWUgb3IgZG8geW91IHBsYW4g dG8gbWVyZ2UgaXQgdGhyb3VnaAo+ID4gPiA+ID4+Pj4gZHJtLW1pc2MKPiA+ID4gPiA+Pj4+IGFz IGl0IHRvdWNoZXMgZHJtX2ZiX2NtYV9oZWxwZXIuYyA/Cj4gPiA+ID4gPj4+IEkganVzdCByZWFs aXplZCB0aGF0IHRoZSBzYW1lIHBhdGNoIGdvdCBzdXBwbGllZCBieSBOb3JhbGYgVHLDuG5uZXMg bmVhcmx5Cj4gPiA+ID4gPj4+IGEKPiA+ID4gPiA+Pj4geWVhciBhZ28sIGFuZCB3YXMgbGF0ZXIg c3VwZXJzZWRlZCBieQo+ID4gPiA+ID4+PiBodHRwczovL3BhdGNod29yay5mcmVlZGVza3RvcC5v cmcvcGF0Y2gvMjQ3ODYxLy4gSSB0aGluayB3ZSBzaG91bGQgdGh1cwo+ID4gPiA+ID4+PiBhcHBs eSBOb3JhbGYncyBwYXRjaGVzIGluc3RlYWQgKG9uY2UgaGUgc2VuZHMgdjQgb3V0KS4KPiA+ID4g PiA+PiBJIGRvbid0IHRoaW5rIE5vcmFsZiBpcyBzdGlsbCBhY3RpdmVseSB3b3JraW5nIG9uIHRo aXMsIGhlJ3MgYnVzeSB3aXRoIHRoZQo+ID4gPiA+ID4+IGZiZGV2IGVtdWxhdGlvbiBzdHVmZi4g UHJvYmFibHkgYmV0dGVyIGlmIHlvdSBwaWNrIHVwIG9uZSBvZiB0aGUgZXhpc3RpbmcKPiA+ID4g PiA+PiBvbmVzLCB0aGFuIHdhaXRpbmcgYW5vdGhlciB5ZWFyIG9yIHNvIDotKQo+ID4gPiA+ID4g SXNuJ3QgaHR0cHM6Ly9wYXRjaHdvcmsuZnJlZWRlc2t0b3Aub3JnL3BhdGNoLzI0Nzg2MS8gcGFy dCBvZiB0aGUgZmJkZXYKPiA+ID4gPiA+IGVtdWxhdGlvbiBzdHVmZiA/IFRoYXQgcGF0Y2ggc2Vy aWVzIGlzIGZyb20gbGVzcyB0aGFuIGEgbW9udGggYWdvLCBzbyBJCj4gPiA+ID4gPiB0aG91Z2h0 IGl0IHdhcyBhY3RpdmVseSBkZXZlbG9wZWQuCj4gPiA+ID4gPgo+ID4gPiA+ID4gTGV0J3MgYXNr IGhpbS4gTm9yYWxmLCBhbnkgY29tbWVudCA/IDotKQo+ID4gPiA+Cj4gPiA+ID4gSSBzZWUgbm93 IHRoYXQgSSd2ZSBjYXVzZWQgc29tZSBjb25mdXNpb24gaGVyZS4KPiA+ID4gPgo+ID4gPiA+IEkg ZGlkIHNvbWUgcmVmYWN0b3Jpbmcgb2YgdGhlIGZiZGV2IHN0dWZmIGluIHRoZSBDTUEgaGVscGVy IGxhc3QgeWVhci4KPiA+ID4gPiBJbiB0aGUgbGFzdCBzZXJpZXMgb2YgdGhhdCB3b3JrIHRoZXJl IGlzIHRoaXMgcGF0Y2g6Cj4gPiA+ID4KPiA+ID4gPiBbdjMsMDcvMTFdIGRybS9yY2FyLWR1OiBV c2UgZHJtX21vZGVfY29uZmlnX2hlbHBlcl9zdXNwZW5kL3Jlc3VtZSgpCj4gPiA+ID4gaHR0cHM6 Ly9wYXRjaHdvcmsuZnJlZWRlc2t0b3Aub3JnL3BhdGNoLzE5MjQxNC8KPiA+ID4gPgo+ID4gPiA+ IER1cmluZyBDaHJpc3RtYXMgSSBnb3QgdGhlIGlkZWEgdGhhdCBtYXliZSBpdCB3YXMgcG9zc2li bGUgdG8gdXNlIGEgZHVtYgo+ID4gPiA+IGJ1ZmZlciB0byBkbyBnZW5lcmljIGZiZGV2IGVtdWxh dGlvbi4gVGhhdCB3b3JrIHRvb2sgbWUgNiBtb250aHMgYmVmb3JlIGEKPiA+ID4gPiBzb2x1dGlv biB1c2luZyBhIGdlbmVyYWwgaW50ZXJuYWwgRFJNIGNsaWVudCB3YXMgaGFtbWVyZWQgb3V0LiBC eSB0aGUKPiA+ID4gPiB0aW1lIEkgc3RhcnRlZCB0byBjb252ZXJ0IGRyaXZlcnMgSSBoYWQgZm9y Z290dGVuIGFib3V0IHRoYXQgcGF0Y2guCj4gPiA+ID4KPiA+ID4gPiBXaGVuIEkgd3JvdGUgdGhl IHBhdGNoICgjMjQ3ODYxKSB0byBjb252ZXJ0IHJjYXIgdG8gdGhlIGdlbmVyaWMgZmJkZXYsIEkK PiA+ID4gPiBqdXN0IGJ1bmRsZWQgdXAgdGhlIHN1c3BlbmQvcmVzdW1lIGNoYW5nZSB3aXRoIHRo ZSBmYmRldiBjb252ZXJzaW9uLgo+ID4gPiA+IExhdXJlbnQgYW5kIFNhbSBjb21tZW50ZWQgb24g dGhhdCBidW5kbGluZywgc28gSSBzYWlkIHRoYXQgSSB3b3VsZCBzcGxpdAo+ID4gPiA+IGl0IHVw IGluIHRoZSBuZXh0IHZlcnNpb24uCj4gPiA+ID4KPiA+ID4gPiBBbGwgdGhhdCBiZWluZyBzYWlk LCBJIHRoaW5rIHRoYXQgdGhpcyBwYXRjaCBzaG91bGQgYmUgYXBwbGllZCBhbmQgSSdsbAo+ID4g PiA+IGp1c3QgcmViYXNlIHRoZSByY2FyIGZiZGV2IGNvbnZlcnNpb24gcGF0Y2ggb24gdG9wIG9m IHRoYXQuCj4gPiA+ID4gSXQncyB0aGUgZWFzaWVzdCBmb3IgbWUgYXQgbGVhc3QgOi0pCj4gPiA+ ID4KPiA+ID4gQW55IGNvbmNsdXNpb24gb24gdGhpcyBwYXRjaCA/IDotKQo+ID4KPiA+IExhdXJl bnQgc2hvdWxkIHBpY2sgaXQgdXAgYW5kIGFwcGx5IHRvIGhpcyByY2FyLWR1IHRyZWUgSSB0aGlu ay4gV2UgY2FuCj4gPiBhbHNvIHN0dWZmIGl0IGludG8gZHJtLW1pc2MgYXMgYSBmYWxsYmFjay4K PiAKPiBDYW4gd2UgZ2V0IHRoaXMgcGF0Y2ggaW4gcXVldWUgZm9yIDQuMjAgPwoKNS4xLCA0LjIw IGlzIGFscmVhZHkgZG9uZS4KCkJ1dCB5ZXMsIEkgcHVsbGVkIHRoaXMgaW50byBkcm0tbWlzYy1u ZXh0LiBUaGFua3MgZm9yIHlvdXIgcGF0Y2guCi1EYW5pZWwKCj4gCj4gPiAtRGFuaWVsCj4gPgo+ ID4gPgo+ID4gPiBlcnMvZ3B1L2RybS9kcm1fZmJfY21hX2hlbHBlci5jICAgfCAxOCAtLS0tLS0t LS0tLS0tLS0tLS0KPiA+ID4gPiA+Pj4+Pj4gICBkcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2Fy X2R1X2Rydi5jIHwgMjEgKystLS0tLS0tLS0tLS0tLS0tLS0tCj4gPiA+ID4gPj4+Pj4+ICAgZHJp dmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9kcnYuaCB8ICAxIC0KPiA+ID4gPiA+Pj4+Pj4g ICBpbmNsdWRlL2RybS9kcm1fZmJfY21hX2hlbHBlci5oICAgICAgIHwgIDIgLS0KPiA+ID4gPiA+ Pj4+Pj4gICA0IGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgNDAgZGVsZXRpb25zKC0p Cj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2ZiX2NtYV9oZWxwZXIuYwo+ID4gPiA+ID4+Pj4+PiBiL2RyaXZlcnMvZ3B1L2RybS9k cm1fZmJfY21hX2hlbHBlci5jIGluZGV4IDQ3ZTBlMmYuLjk2ZWZjODggMTAwNjQ0Cj4gPiA+ID4g Pj4+Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfY21hX2hlbHBlci5jCj4gPiA+ID4g Pj4+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfY21hX2hlbHBlci5jCj4gPiA+ID4g Pj4+Pj4+IEBAIC0yMjQsMjEgKzIyNCwzIEBAIHZvaWQgZHJtX2ZiZGV2X2NtYV9ob3RwbHVnX2V2 ZW50KHN0cnVjdAo+ID4gPiA+ID4+Pj4+PiBkcm1fZmJkZXZfY21hICpmYmRldl9jbWEpCj4gPiA+ ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+ICAgICAgICAgICAgICAgICAgZHJtX2ZiX2hlbHBlcl9o b3RwbHVnX2V2ZW50KCZmYmRldl9jbWEtPmZiX2hlbHBlcik7Cj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ ID4gPj4+Pj4+ICAgfQo+ID4gPiA+ID4+Pj4+PiAgIEVYUE9SVF9TWU1CT0xfR1BMKGRybV9mYmRl dl9jbWFfaG90cGx1Z19ldmVudCk7Cj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+IC0KPiA+ ID4gPiA+Pj4+Pj4gLS8qKgo+ID4gPiA+ID4+Pj4+PiAtICogZHJtX2ZiZGV2X2NtYV9zZXRfc3Vz cGVuZF91bmxvY2tlZCAtIHdyYXBwZXIgYXJvdW5kCj4gPiA+ID4gPj4+Pj4+IC0gKgo+ID4gPiA+ ID4+Pj4+PiBkcm1fZmJfaGVscGVyX3NldF9zdXNwZW5kX3VubG9ja2VkCj4gPiA+ID4gPj4+Pj4+ IC0gKiBAZmJkZXZfY21hOiBUaGUgZHJtX2ZiZGV2X2NtYSBzdHJ1Y3QsIG1heSBiZSBOVUxMCj4g PiA+ID4gPj4+Pj4+IC0gKiBAc3RhdGU6IGRlc2lyZWQgc3RhdGUsIHplcm8gdG8gcmVzdW1lLCBu b24temVybyB0byBzdXNwZW5kCj4gPiA+ID4gPj4+Pj4+IC0gKgo+ID4gPiA+ID4+Pj4+PiAtICog Q2FsbHMgZHJtX2ZiX2hlbHBlcl9zZXRfc3VzcGVuZCwgd2hpY2ggaXMgYSB3cmFwcGVyIGFyb3Vu ZAo+ID4gPiA+ID4+Pj4+PiAtICogZmJfc2V0X3N1c3BlbmQgaW1wbGVtZW50ZWQgYnkgZmJkZXYg Y29yZS4KPiA+ID4gPiA+Pj4+Pj4gLSAqLwo+ID4gPiA+ID4+Pj4+PiAtdm9pZCBkcm1fZmJkZXZf Y21hX3NldF9zdXNwZW5kX3VubG9ja2VkKHN0cnVjdCBkcm1fZmJkZXZfY21hCj4gPiA+ID4gPj4+ Pj4+ICpmYmRldl9jbWEsCj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBib29sIHN0YXRlKQo+ID4gPiA+ID4+Pj4+PiAtewo+ID4gPiA+ID4+Pj4+ PiAtICAgICAgIGlmIChmYmRldl9jbWEpCj4gPiA+ID4gPj4+Pj4+IC0KPiA+ID4gPiA+Pj4+Pj4g ZHJtX2ZiX2hlbHBlcl9zZXRfc3VzcGVuZF91bmxvY2tlZCgmZmJkZXZfY21hLT5mYl9oZWxwZXIs Cj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHN0YXRlKTsKPiA+ID4gPiA+Pj4+Pj4gLX0KPiA+ID4gPiA+Pj4+Pj4gLUVYUE9S VF9TWU1CT0woZHJtX2ZiZGV2X2NtYV9zZXRfc3VzcGVuZF91bmxvY2tlZCk7Cj4gPiA+ID4gPj4+ Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2Rydi5jCj4g PiA+ID4gPj4+Pj4+IGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9kcnYuYyBpbmRl eCAwMmFlZTZjLi4yODgyMjBmIDEwMDY0NAo+ID4gPiA+ID4+Pj4+PiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vcmNhci1kdS9yY2FyX2R1X2Rydi5jCj4gPiA+ID4gPj4+Pj4+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfZHJ2LmMKPiA+ID4gPiA+Pj4+Pj4gQEAgLTM1NywzMiAr MzU3LDE1IEBAIHN0YXRpYyB2b2lkIHJjYXJfZHVfbGFzdGNsb3NlKHN0cnVjdCBkcm1fZGV2aWNl Cj4gPiA+ID4gPj4+Pj4+ICpkZXYpCj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+ICAgc3Rh dGljIGludCByY2FyX2R1X3BtX3N1c3BlbmQoc3RydWN0IGRldmljZSAqZGV2KQo+ID4gPiA+ID4+ Pj4+PiAgIHsKPiA+ID4gPiA+Pj4+Pj4KPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgc3RydWN0IHJj YXJfZHVfZGV2aWNlICpyY2R1ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gPiA+ID4gPj4+Pj4+ Cj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlOwo+ ID4gPiA+ID4+Pj4+Pgo+ID4gPiA+ID4+Pj4+PiAtICAgICAgIGRybV9rbXNfaGVscGVyX3BvbGxf ZGlzYWJsZShyY2R1LT5kZGV2KTsKPiA+ID4gPiA+Pj4+Pj4gLSAgICAgICBkcm1fZmJkZXZfY21h X3NldF9zdXNwZW5kX3VubG9ja2VkKHJjZHUtPmZiZGV2LCB0cnVlKTsKPiA+ID4gPiA+Pj4+Pj4g LQo+ID4gPiA+ID4+Pj4+PiAtICAgICAgIHN0YXRlID0gZHJtX2F0b21pY19oZWxwZXJfc3VzcGVu ZChyY2R1LT5kZGV2KTsKPiA+ID4gPiA+Pj4+Pj4gLSAgICAgICBpZiAoSVNfRVJSKHN0YXRlKSkg ewo+ID4gPiA+ID4+Pj4+PiAtICAgICAgICAgICAgICAgZHJtX2ZiZGV2X2NtYV9zZXRfc3VzcGVu ZF91bmxvY2tlZChyY2R1LT5mYmRldiwKPiA+ID4gPiA+Pj4+Pj4gZmFsc2UpOwo+ID4gPiA+ID4+ Pj4+PiAtICAgICAgICAgICAgICAgZHJtX2ttc19oZWxwZXJfcG9sbF9lbmFibGUocmNkdS0+ZGRl dik7Cj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgICAgICAgICByZXR1cm4gUFRSX0VSUihzdGF0ZSk7 Cj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgfQo+ID4gPiA+ID4+Pj4+PiAtCj4gPiA+ID4gPj4+Pj4+ IC0gICAgICAgcmNkdS0+c3VzcGVuZF9zdGF0ZSA9IHN0YXRlOwo+ID4gPiA+ID4+Pj4+PiAtCj4g PiA+ID4gPj4+Pj4+IC0gICAgICAgcmV0dXJuIDA7Cj4gPiA+ID4gPj4+Pj4+ICsgICAgICAgcmV0 dXJuIGRybV9tb2RlX2NvbmZpZ19oZWxwZXJfc3VzcGVuZChyY2R1LT5kZGV2KTsKPiA+ID4gPiA+ Pj4+Pj4KPiA+ID4gPiA+Pj4+Pj4gICB9Cj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+ICAg c3RhdGljIGludCByY2FyX2R1X3BtX3Jlc3VtZShzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gPiA+ID4g Pj4+Pj4+ICAgewo+ID4gPiA+ID4+Pj4+Pgo+ID4gPiA+ID4+Pj4+PiAgICAgICAgICBzdHJ1Y3Qg cmNhcl9kdV9kZXZpY2UgKnJjZHUgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsKPiA+ID4gPiA+Pj4+ Pj4KPiA+ID4gPiA+Pj4+Pj4gLSAgICAgICBkcm1fYXRvbWljX2hlbHBlcl9yZXN1bWUocmNkdS0+ ZGRldiwgcmNkdS0+c3VzcGVuZF9zdGF0ZSk7Cj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgZHJtX2Zi ZGV2X2NtYV9zZXRfc3VzcGVuZF91bmxvY2tlZChyY2R1LT5mYmRldiwgZmFsc2UpOwo+ID4gPiA+ ID4+Pj4+PiAtICAgICAgIGRybV9rbXNfaGVscGVyX3BvbGxfZW5hYmxlKHJjZHUtPmRkZXYpOwo+ ID4gPiA+ID4+Pj4+PiAtCj4gPiA+ID4gPj4+Pj4+IC0gICAgICAgcmV0dXJuIDA7Cj4gPiA+ID4g Pj4+Pj4+ICsgICAgICAgcmV0dXJuIGRybV9tb2RlX2NvbmZpZ19oZWxwZXJfcmVzdW1lKHJjZHUt PmRkZXYpOwo+ID4gPiA+ID4+Pj4+Pgo+ID4gPiA+ID4+Pj4+PiAgIH0KPiA+ID4gPiA+Pj4+Pj4g ICAjZW5kaWYKPiA+ID4gPiA+Pj4+Pj4KPiA+ID4gPiA+Pj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfZHJ2LmgKPiA+ID4gPiA+Pj4+Pj4gYi9kcml2ZXJz L2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2Rydi5oIGluZGV4IGIzYTI1ZTguLmZmMjVjOGQgMTAw NjQ0Cj4gPiA+ID4gPj4+Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVf ZHJ2LmgKPiA+ID4gPiA+Pj4+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9k dV9kcnYuaAo+ID4gPiA+ID4+Pj4+PiBAQCAtNzgsNyArNzgsNiBAQCBzdHJ1Y3QgcmNhcl9kdV9k ZXZpY2Ugewo+ID4gPiA+ID4+Pj4+Pgo+ID4gPiA+ID4+Pj4+PiAgICAgICAgICBzdHJ1Y3QgZHJt X2RldmljZSAqZGRldjsKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgc3RydWN0IGRybV9mYmRldl9j bWEgKmZiZGV2Owo+ID4gPiA+ID4+Pj4+Pgo+ID4gPiA+ID4+Pj4+PiAtICAgICAgIHN0cnVjdCBk cm1fYXRvbWljX3N0YXRlICpzdXNwZW5kX3N0YXRlOwo+ID4gPiA+ID4+Pj4+Pgo+ID4gPiA+ID4+ Pj4+PiAgICAgICAgICBzdHJ1Y3QgcmNhcl9kdV9jcnRjIGNydGNzW1JDQVJfRFVfTUFYX0NSVENT XTsKPiA+ID4gPiA+Pj4+Pj4gICAgICAgICAgdW5zaWduZWQgaW50IG51bV9jcnRjczsKPiA+ID4g PiA+Pj4+Pj4KPiA+ID4gPiA+Pj4+Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9mYl9j bWFfaGVscGVyLmgKPiA+ID4gPiA+Pj4+Pj4gYi9pbmNsdWRlL2RybS9kcm1fZmJfY21hX2hlbHBl ci5oIGluZGV4IDRhNjVmMGQuLjhkYmJlMWUgMTAwNjQ0Cj4gPiA+ID4gPj4+Pj4+IC0tLSBhL2lu Y2x1ZGUvZHJtL2RybV9mYl9jbWFfaGVscGVyLmgKPiA+ID4gPiA+Pj4+Pj4gKysrIGIvaW5jbHVk ZS9kcm0vZHJtX2ZiX2NtYV9oZWxwZXIuaAo+ID4gPiA+ID4+Pj4+PiBAQCAtMjYsOCArMjYsNiBA QCBzdHJ1Y3QgZHJtX2ZiZGV2X2NtYSAqZHJtX2ZiZGV2X2NtYV9pbml0KHN0cnVjdAo+ID4gPiA+ ID4+Pj4+PiBkcm1fZGV2aWNlICpkZXYsCj4gPiA+ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+ICAg dm9pZCBkcm1fZmJkZXZfY21hX3Jlc3RvcmVfbW9kZShzdHJ1Y3QgZHJtX2ZiZGV2X2NtYSAqZmJk ZXZfY21hKTsKPiA+ID4gPiA+Pj4+Pj4gICB2b2lkIGRybV9mYmRldl9jbWFfaG90cGx1Z19ldmVu dChzdHJ1Y3QgZHJtX2ZiZGV2X2NtYSAqZmJkZXZfY21hKTsKPiA+ID4gPiA+Pj4+Pj4KPiA+ID4g PiA+Pj4+Pj4gLXZvaWQgZHJtX2ZiZGV2X2NtYV9zZXRfc3VzcGVuZF91bmxvY2tlZChzdHJ1Y3Qg ZHJtX2ZiZGV2X2NtYQo+ID4gPiA+ID4+Pj4+PiAqZmJkZXZfY21hLAo+ID4gPiA+ID4+Pj4+PiAt ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBzdGF0ZSk7Cj4gPiA+ ID4gPj4+Pj4+Cj4gPiA+ID4gPj4+Pj4+ICAgc3RydWN0IGRybV9nZW1fY21hX29iamVjdCAqZHJt X2ZiX2NtYV9nZXRfZ2VtX29iaihzdHJ1Y3QKPiA+ID4gPiA+Pj4+Pj4gICBkcm1fZnJhbWVidWZm ZXIgKmZiLAo+ID4gPiA+ID4+Pj4+Pgo+ID4gPiA+ID4+Pj4+PiAgICAgICAgICB1bnNpZ25lZCBp bnQgcGxhbmUpOwo+ID4gPiA+Cj4gPgo+ID4gLS0KPiA+IERhbmllbCBWZXR0ZXIKPiA+IFNvZnR3 YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgo+ID4gaHR0cDovL2Jsb2cuZmZ3bGwuY2gK Ci0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpo dHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK