From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 01/11] drm: Add devm_drm_dev_init/register Date: Mon, 21 Jan 2019 10:55:49 +0100 Message-ID: <20190121095549.GR3271@phenom.ffwll.local> References: <20190120114318.49199-1-noralf@tronnes.org> <20190120114318.49199-2-noralf@tronnes.org> <20190121091014.GK3271@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x542.google.com (mail-ed1-x542.google.com [IPv6:2a00:1450:4864:20::542]) by gabe.freedesktop.org (Postfix) with ESMTPS id BBD696E78A for ; Mon, 21 Jan 2019 09:55:53 +0000 (UTC) Received: by mail-ed1-x542.google.com with SMTP id o10so16024921edt.13 for ; Mon, 21 Jan 2019 01:55:53 -0800 (PST) Content-Disposition: inline In-Reply-To: <20190121091014.GK3271@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Noralf =?iso-8859-1?Q?Tr=F8nnes?= Cc: david@lechnology.com, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBKYW4gMjEsIDIwMTkgYXQgMTA6MTA6MTRBTSArMDEwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBTdW4sIEphbiAyMCwgMjAxOSBhdCAxMjo0MzowOFBNICswMTAwLCBOb3JhbGYg VHLDuG5uZXMgd3JvdGU6Cj4gPiBUaGlzIGFkZHMgcmVzb3VyY2UgbWFuYWdlZCAoZGV2cmVzKSB2 ZXJzaW9ucyBvZiBkcm1fZGV2X2luaXQoKSBhbmQKPiA+IGRybV9kZXZfcmVnaXN0ZXIoKS4KPiA+ IAo+ID4gQWxzbyBhZGRlZCBpcyBkZXZtX2RybV9kZXZfcmVnaXN0ZXJfd2l0aF9mYmRldigpIHdo aWNoIHNldHMgdXAgZ2VuZXJpYwo+ID4gZmJkZXYgZW11bGF0aW9uIGFzIHdlbGwuCj4gPiAKPiA+ IGRldm1fZHJtX2Rldl9yZWdpc3RlcigpIGlzbid0IGV4cG9ydGVkIHNpbmNlIHRoZXJlIGFyZSBu byB1c2Vycy4KPiA+IAo+ID4gU2lnbmVkLW9mZi1ieTogTm9yYWxmIFRyw7hubmVzIDxub3JhbGZA dHJvbm5lcy5vcmc+Cj4gCj4gZGV2bV8gY29uc2lkZXJlZCBoYXJtZnVsIHVuZm9ydHVuYXRlbHku IFlvdSBjYW5ub3QgYWxsb2NhdGUgYW55IHN0cnVjdHVyZXMKPiB3aGljaCBtaWdodCBvdXRsaXZl IHRoZSBsaWZldGltZSBvZiB5b3VyIGRldmljZSB1c2luZyBkZXZtXyBvbiB0aGUgZGV2aWNlLgo+ IFNpbmNlIGRybV9kZXZpY2UgaGFzIGl0J3Mgb3duIGxpZmV0aW1lLCB0aGF0IHN0cnVjdHVyZSBh bmQgX2V2ZXJ5dGhpbmdfIHdlCj4gYWxsb2NhdGUgdGllZCB0byBpdCAoaS5lLiBkcm1fZW5jb2Rl ci9wbGFuZS9jb25uZWN0b3IvY3J0Yy93aGF0ZXZlcikKPiBjYW5ub3QgYmUgYWxsb2NhdGVkIHVz aW5nIGRldm1fIGluZnJhc3RydWN0dXJlIHRpZWQgdG8gdGhlIHVuZGVybHlpbmcKPiBwYXJlbnQg ZGV2aWNlLgo+IAo+IFllcyB0aGlzIG1lYW5zIGFsbW9zdCBhbGwgdGhlIGRldm0gdXNhZ2UgaW4g ZHJtIGRyaXZlcnMgaXMgZnVuZGFtZW50YWxseQo+IGJyb2tlbi4gWW91IGFsc28gZ2VuZXJhbGx5 IGRvbid0IHVucGx1ZyBncHVzLCBzbyBubyBvbmUgY2FyZXMgOi0vCj4gCj4gV2hhdCBjb3VsZCBp bnN0ZWFkIGlzIGFkZCBhIHN0cnVjdCBkZXZpY2UgdG8gZHJtX2RldmljZSBzb21laG93LCB1c2Ug dGhhdAo+IHN0cnVjdCBkZXZpY2UgdG8gbWFuYWdlIHRoZSBsaWZldGltZSBvZiB0aGUgZHJtX2Rl dmljZSAod291bGQgc3RpbGwgbmVlZAo+IG91ciBzcGVjaWFsIG9wZW4gY291bnRlciBtYXliZSks IGFuZCB0aGVuIHVzZSBkZXZtIHRvIGFsbG9jYXRlIGFsbCB0aGUgZHJtCj4gYml0cyB0aWVkIHRv IHRoZSBkcm1fZGV2aWNlLgo+IAo+IFRoaXMgaGVyZSB1bmZvcnR1bmF0YWx5IGRvZXNuJ3Qgd29y aywgZXZlbiBpZiBpdCBsb29rcyBsaWtlIGEgcmVhbGx5IG5lYXQKPiBpZGVhLgoKU3RyaWtlIGFs bCB0aGF0LCBiZWNhdXNlIEkgd2Fzbid0IGF3YWsgeWV0LiBTb3JyeSBmb3IgdGhlIGNvbmZ1c2lv bi4KCj4gPiAtLS0KPiA+ICBEb2N1bWVudGF0aW9uL2RyaXZlci1tb2RlbC9kZXZyZXMudHh0IHwg ICA0ICsKPiA+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2Rydi5jICAgICAgICAgICAgIHwgMTA2ICsr KysrKysrKysrKysrKysrKysrKysrKysrCj4gPiAgaW5jbHVkZS9kcm0vZHJtX2Rydi5oICAgICAg ICAgICAgICAgICB8ICAgNiArKwo+ID4gIDMgZmlsZXMgY2hhbmdlZCwgMTE2IGluc2VydGlvbnMo KykKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZHJpdmVyLW1vZGVsL2RldnJl cy50eHQgYi9Eb2N1bWVudGF0aW9uL2RyaXZlci1tb2RlbC9kZXZyZXMudHh0Cj4gPiBpbmRleCBi Mjc3Y2FmY2U3MWUuLjZlZWJjMjhkNGMyMSAxMDA2NDQKPiA+IC0tLSBhL0RvY3VtZW50YXRpb24v ZHJpdmVyLW1vZGVsL2RldnJlcy50eHQKPiA+ICsrKyBiL0RvY3VtZW50YXRpb24vZHJpdmVyLW1v ZGVsL2RldnJlcy50eHQKPiA+IEBAIC0yNTQsNiArMjU0LDEwIEBAIERNQQo+ID4gICAgZG1hbV9w b29sX2NyZWF0ZSgpCj4gPiAgICBkbWFtX3Bvb2xfZGVzdHJveSgpCj4gPiAgCj4gPiArRFJNCj4g PiArICBkZXZtX2RybV9kZXZfaW5pdCgpCj4gPiArICBkZXZtX2RybV9kZXZfcmVnaXN0ZXJfd2l0 aF9mYmRldigpCj4gPiArCj4gPiAgR1BJTwo+ID4gICAgZGV2bV9ncGlvZF9nZXQoKQo+ID4gICAg ZGV2bV9ncGlvZF9nZXRfaW5kZXgoKQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9k cm1fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2Rydi5jCj4gPiBpbmRleCAzODE1ODFiMDFk NDguLjEyMTI5NzcyYmU0NSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHJ2 LmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHJ2LmMKPiA+IEBAIC0zNiw2ICszNiw3 IEBACj4gPiAgCj4gPiAgI2luY2x1ZGUgPGRybS9kcm1fY2xpZW50Lmg+Cj4gPiAgI2luY2x1ZGUg PGRybS9kcm1fZHJ2Lmg+Cj4gPiArI2luY2x1ZGUgPGRybS9kcm1fZmJfaGVscGVyLmg+Cj4gPiAg I2luY2x1ZGUgPGRybS9kcm1QLmg+Cj4gPiAgCj4gPiAgI2luY2x1ZGUgImRybV9jcnRjX2ludGVy bmFsLmgiCj4gPiBAQCAtODcxLDYgKzg3MiwxMTEgQEAgdm9pZCBkcm1fZGV2X3VucmVnaXN0ZXIo c3RydWN0IGRybV9kZXZpY2UgKmRldikKPiA+ICB9Cj4gPiAgRVhQT1JUX1NZTUJPTChkcm1fZGV2 X3VucmVnaXN0ZXIpOwo+ID4gIAo+ID4gK3N0YXRpYyB2b2lkIGRldm1fZHJtX2Rldl9pbml0X3Jl bGVhc2Uodm9pZCAqZGF0YSkKPiA+ICt7Cj4gPiArCWRybV9kZXZfcHV0KGRhdGEpOwoKV2UgbmVl ZCBkcm1fZGV2X3VucGx1ZygpIGhlcmUsIG9yIHRoaXMgaXNuJ3Qgc2FmZS4KCj4gPiArfQo+ID4g Kwo+ID4gKy8qKgo+ID4gKyAqIGRldm1fZHJtX2Rldl9pbml0IC0gUmVzb3VyY2UgbWFuYWdlZCBk cm1fZGV2X2luaXQoKQo+ID4gKyAqIEBwYXJlbnQ6IFBhcmVudCBkZXZpY2Ugb2JqZWN0Cj4gPiAr ICogQGRldjogRFJNIGRldmljZQo+ID4gKyAqIEBkcml2ZXI6IERSTSBkcml2ZXIKPiA+ICsgKgo+ ID4gKyAqIE1hbmFnZWQgZHJtX2Rldl9pbml0KCkuIFRoZSBEUk0gZGV2aWNlIGluaXRpYWxpemVk IHdpdGggdGhpcyBmdW5jdGlvbiBpcwo+ID4gKyAqIGF1dG9tYXRpY2FsbHkgcmVsZWFzZWQgb24g ZHJpdmVyIGRldGFjaC4gWW91IG11c3Qgc3VwcGx5IGEKCkkgdGhpbmsgYSBiaXQgbW9yZSBjbGFy aXR5IGhlcmUgd291bGQgYmUgZ29vZDoKCiIuLi4gYXV0b21hdGljYWxseSByZWxlYXNlZCBvbiBk cml2ZXIgdW5iaW5kIGJ5IGNhbGxpbmQgZHJtX2Rldl91bnBsdWcoKS4iCgo+ID4gKyAqICZkcm1f ZHJpdmVyLnJlbGVhc2UgY2FsbGJhY2sgdG8gY29udHJvbCB0aGUgZmluYWxpemF0aW9uIGV4cGxp Y2l0bHkuCgpJIHRoaW5rIGEgbG91ZCB3YXJuaW5nIGZvciB0aGVzZSBpcyBpbiBvcmRlcjoKCiJX QVJOSU5HOgoKIkluIGdlbmVyYWxseSBpdCBpcyB1bnNhZmUgdG8gdXNlIGRldm0gZnVuY3Rpb25z IGZvciBkcm0gc3RydWN0dXJlcwpiZWNhdXNlIHRoZSBsaWZldGltZXMgb2YgJmRybV9kZXZpY2Ug YW5kIHRoZSB1bmRlcmx5aW5nICZkZXZpY2UgZG8gbm90Cm1hdGNoLiBUaGlzIGhlcmUgd29ya3Mg YmVjYXVzZSBpdCBkb2Vzbid0IGltbWVkaWF0ZWx5IGZyZWUgYW55dGhpbmcsIGJ1dApvbmx5IGNh bGxzIGRybV9kZXZfdW5wbHVnKCksIHdoaWNoIGludGVybmFsbHkgZGVjcmVtZW50cyB0aGUgJmRy bV9kZXZpY2UKcmVmY291bnQgdGhyb3VnaCBkcm1fZGV2X3B1dCgpLgoKIkFsbCBvdGhlciBkcm0g c3RydWN0dXJlcyBtdXN0IHN0aWxsIGJlIGV4cGxpY2l0bHkgcmVsZWFzZWQgaW4gdGhlCiZkcm1f ZHJpdmVyLnJlbGVhc2UgY2FsbGJhY2suIgoKV2hpbGUgdGhpbmtpbmcgYWJvdXQgdGhpcyBJIGp1 c3QgcmVhbGl6ZWQgdGhhdCB3aXRoIHRoaXMgZGVzaWduIHdlIGhhdmUgbm8KZ29vZCBwbGFjZSB0 byBjYWxsIGRybV9hdG9taWNfaGVscGVyX3NodXRkb3duKCkuIFdoaWNoIHdlIG5lZWQgdG8sIG9y IGFsbApraW5kcyBvZiB0aGluZ3Mgd2lsbCBsZWFrIGJhZGx5IChjb25uZWN0b3JzLCBmYiwgLi4u KSwgYnV0IHRoZXJlJ3Mgbm8KcGxhY2UgdG8gY2FsbCBpdDoKLSB1bmJpbmQgaXMgdG9vIGVhcmx5 LCBzaW5jZSB3ZSBoYXZlbid0IHlldCBjYWxsZWQgZHJtX2Rldl91bnBsdWcsIGFuZCB0aGUKICBk cm1fZGV2X3VucmVnaXN0ZXIgaW4gdGhlcmUgbXVzdCBiZSBjYWxsZWQgX2JlZm9yZV8gd2Ugc3Rh cnQgdG8gc2h1dAogIGRvd24gYW55dGhpbmcuCi0gZHJtX2RyaXZlci5yZWxlYXNlIGlzIHdheSB0 b28gbGF0ZS4KCk9mYyBmb3IgYSByZWFsIGhvdHVucGx1ZyB0aGVyZSdzIG5vIHBvaW50IGluIHNo dXR0aW5nIGRvd24gdGhlIGh3IChpdCdzCmFscmVhZHkgZ29uZSksIGJ1dCBmb3IgYSBkcml2ZXIg dW5sb2FkL3VuYmluZCBpdCB3b3VsZCBiZSBuaWNlIGlmIHRoaXMKaGFwcGVucyBhdXRvbWF0aWNh bGx5IGFuZCBpbiB0aGUgcmlnaHQgb3JkZXIuCgpTbyBub3Qgc3VyZSB3aGF0IHRvIGRvIGhlcmUg cmVhbGx5LgotRGFuaWVsCgo+ID4gKyAqCj4gPiArICogTm90ZTogVGhpcyBmdW5jdGlvbiBtdXN0 IGJlIHVzZWQgdG9nZXRoZXIgd2l0aAo+ID4gKyAqIGRldm1fZHJtX2Rldl9yZWdpc3Rlcl93aXRo X2ZiZGV2KCkuCj4gPiArICoKPiA+ICsgKiBSRVRVUk5TOgo+ID4gKyAqIDAgb24gc3VjY2Vzcywg b3IgZXJyb3IgY29kZSBvbiBmYWlsdXJlLgo+ID4gKyAqLwo+ID4gK2ludCBkZXZtX2RybV9kZXZf aW5pdChzdHJ1Y3QgZGV2aWNlICpwYXJlbnQsCj4gPiArCQkgICAgICBzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAo+ID4gKwkJICAgICAgc3RydWN0IGRybV9kcml2ZXIgKmRyaXZlcikKPiA+ICt7Cj4g PiArCWludCByZXQ7Cj4gPiArCj4gPiArCWlmIChXQVJOX09OKCFwYXJlbnQgfHwgIWRyaXZlci0+ cmVsZWFzZSkpCj4gPiArCQlyZXR1cm4gLUVJTlZBTDsKPiA+ICsKPiA+ICsJcmV0ID0gZHJtX2Rl dl9pbml0KGRldiwgZHJpdmVyLCBwYXJlbnQpOwo+ID4gKwlpZiAocmV0KQo+ID4gKwkJcmV0dXJu IHJldDsKPiA+ICsKPiA+ICsJLyoKPiA+ICsJICogVGhpcyBpcyBhIHRlbXBvcmFyeSByZWxlYXNl IGFjdGlvbiB0aGF0IGlzIHVzZWQgaWYgcHJvYmluZyBmYWlscwo+ID4gKwkgKiBiZWZvcmUgZGV2 bV9kcm1fZGV2X3JlZ2lzdGVyKCkgaXMgY2FsbGVkLgo+ID4gKwkgKi8KPiA+ICsJcmV0ID0gZGV2 bV9hZGRfYWN0aW9uKHBhcmVudCwgZGV2bV9kcm1fZGV2X2luaXRfcmVsZWFzZSwgZGV2KTsKPiA+ ICsJaWYgKHJldCkKPiA+ICsJCWRldm1fZHJtX2Rldl9pbml0X3JlbGVhc2UoZGV2KTsKPiA+ICsK PiA+ICsJcmV0dXJuIHJldDsKPiA+ICt9Cj4gPiArRVhQT1JUX1NZTUJPTChkZXZtX2RybV9kZXZf aW5pdCk7Cj4gPiArCj4gPiArc3RhdGljIHZvaWQgZGV2bV9kcm1fZGV2X3JlZ2lzdGVyX3JlbGVh c2Uodm9pZCAqZGF0YSkKPiA+ICt7Cj4gPiArCWRybV9kZXZfdW5wbHVnKGRhdGEpOwo+ID4gK30K PiA+ICsKPiA+ICtzdGF0aWMgaW50IGRldm1fZHJtX2Rldl9yZWdpc3RlcihzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQo+ID4gK3sKPiA+ICsJaW50IHJldDsKPiA+ICsKPiA+ICsJcmV0ID0gZHJtX2Rl dl9yZWdpc3RlcihkZXYsIDApOwo+ID4gKwlpZiAocmV0KQo+ID4gKwkJcmV0dXJuIHJldDsKPiA+ ICsKPiA+ICsJLyoKPiA+ICsJICogVGhpcyBoYXMgbm93IHNlcnZlZCBpdCdzIHB1cnBvc2UsIHJl bW92ZSBpdCB0byBub3QgbWVzcyB1cCByZWYKPiA+ICsJICogY291bnRpbmcuCj4gPiArCSAqLwo+ ID4gKwlkZXZtX3JlbW92ZV9hY3Rpb24oZGV2LT5kZXYsIGRldm1fZHJtX2Rldl9pbml0X3JlbGVh c2UsIGRldik7Cj4gPiArCj4gPiArCXJldCA9IGRldm1fYWRkX2FjdGlvbihkZXYtPmRldiwgZGV2 bV9kcm1fZGV2X3JlZ2lzdGVyX3JlbGVhc2UsIGRldik7Cj4gPiArCWlmIChyZXQpCj4gPiArCQlk ZXZtX2RybV9kZXZfcmVnaXN0ZXJfcmVsZWFzZShkZXYpOwo+ID4gKwo+ID4gKwlyZXR1cm4gcmV0 Owo+ID4gK30KPiA+ICsKPiA+ICsvKioKPiA+ICsgKiBkZXZtX2RybV9kZXZfcmVnaXN0ZXJfd2l0 aF9mYmRldiAtIFJlc291cmNlIG1hbmFnZWQgZHJtX2Rldl9yZWdpc3RlcigpCj4gPiArICogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRpbmcgZ2VuZXJpYyBmYmRldiBl bXVsYXRpb24KPiA+ICsgKiBAZGV2OiBEUk0gZGV2aWNlIHRvIHJlZ2lzdGVyCj4gPiArICogQGZi ZGV2X2JwcDogUHJlZmVycmVkIGJpdHMgcGVyIHBpeGVsIGZvciBmYmRldiAob3B0aW9uYWwpCj4g PiArICoKPiA+ICsgKiBNYW5hZ2VkIGRybV9kZXZfcmVnaXN0ZXIoKSB0aGF0IGFsc28gY2FsbHMg ZHJtX2ZiZGV2X2dlbmVyaWNfc2V0dXAoKS4KPiA+ICsgKiBUaGUgRFJNIGRldmljZSByZWdpc3Rl cmVkIHdpdGggdGhpcyBmdW5jdGlvbiBpcyBhdXRvbWF0aWNhbGx5IHVucmVnaXN0ZXJlZCBvbgo+ ID4gKyAqIGRyaXZlciBkZXRhY2ggdXNpbmcgZHJtX2Rldl91bnBsdWcoKS4KPiA+ICsgKgo+ID4g KyAqIE5vdGU6IFRoaXMgZnVuY3Rpb24gbXVzdCBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggZGV2bV9k cm1fZGV2X2luaXQoKS4KPiA+ICsgKgo+ID4gKyAqIEZvciB0ZXN0aW5nIGRyaXZlciBkZXRhY2gg Y2FuIGJlIHRyaWdnZXJlZCBtYW51YWxseSBieSB3cml0aW5nIHRvIHRoZSBkcml2ZXIKPiA+ICsg KiAndW5iaW5kJyBmaWxlLgo+ID4gKyAqCj4gPiArICogUkVUVVJOUzoKPiA+ICsgKiAwIG9uIHN1 Y2Nlc3MsIG5lZ2F0aXZlIGVycm9yIGNvZGUgb24gZmFpbHVyZS4KPiA+ICsgKi8KPiA+ICtpbnQg ZGV2bV9kcm1fZGV2X3JlZ2lzdGVyX3dpdGhfZmJkZXYoc3RydWN0IGRybV9kZXZpY2UgKmRldiwK PiA+ICsJCQkJICAgICB1bnNpZ25lZCBpbnQgZmJkZXZfYnBwKQo+ID4gK3sKPiA+ICsJaW50IHJl dDsKPiA+ICsKPiA+ICsJcmV0ID0gZGV2bV9kcm1fZGV2X3JlZ2lzdGVyKGRldik7Cj4gPiArCWlm IChyZXQpCj4gPiArCQlyZXR1cm4gcmV0Owo+ID4gKwo+ID4gKwlkcm1fZmJkZXZfZ2VuZXJpY19z ZXR1cChkZXYsIGZiZGV2X2JwcCk7Cj4gPiArCj4gPiArCXJldHVybiAwOwo+ID4gK30KPiA+ICtF WFBPUlRfU1lNQk9MKGRldm1fZHJtX2Rldl9yZWdpc3Rlcl93aXRoX2ZiZGV2KTsKPiA+ICsKPiA+ ICAvKioKPiA+ICAgKiBkcm1fZGV2X3NldF91bmlxdWUgLSBTZXQgdGhlIHVuaXF1ZSBuYW1lIG9m IGEgRFJNIGRldmljZQo+ID4gICAqIEBkZXY6IGRldmljZSBvZiB3aGljaCB0byBzZXQgdGhlIHVu aXF1ZSBuYW1lCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2Rydi5oIGIvaW5jbHVk ZS9kcm0vZHJtX2Rydi5oCj4gPiBpbmRleCAzNWFmMjNmNWZhMGQuLmMzZjA0NzdmMmU3ZiAxMDA2 NDQKPiA+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9kcnYuaAo+ID4gKysrIGIvaW5jbHVkZS9kcm0v ZHJtX2Rydi5oCj4gPiBAQCAtNjI4LDYgKzYyOCwxMiBAQCBzdHJ1Y3QgZHJtX2RldmljZSAqZHJt X2Rldl9hbGxvYyhzdHJ1Y3QgZHJtX2RyaXZlciAqZHJpdmVyLAo+ID4gIGludCBkcm1fZGV2X3Jl Z2lzdGVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHVuc2lnbmVkIGxvbmcgZmxhZ3MpOwo+ID4g IHZvaWQgZHJtX2Rldl91bnJlZ2lzdGVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+ID4gIAo+ ID4gK2ludCBkZXZtX2RybV9kZXZfaW5pdChzdHJ1Y3QgZGV2aWNlICpwYXJlbnQsCj4gPiArCQkg ICAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gKwkJICAgICAgc3RydWN0IGRybV9kcml2 ZXIgKmRyaXZlcik7Cj4gPiAraW50IGRldm1fZHJtX2Rldl9yZWdpc3Rlcl93aXRoX2ZiZGV2KHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gPiArCQkJCSAgICAgdW5zaWduZWQgaW50IGZiZGV2X2Jw cCk7Cj4gPiArCj4gPiAgdm9pZCBkcm1fZGV2X2dldChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsK PiA+ICB2b2lkIGRybV9kZXZfcHV0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+ID4gIHZvaWQg ZHJtX3B1dF9kZXYoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gPiAtLSAKPiA+IDIuMjAuMQo+ ID4gCj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ ID4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+ID4gZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwo+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwKPiAKPiAtLSAKPiBEYW5pZWwgVmV0dGVyCj4gU29mdHdhcmUgRW5naW5lZXIsIElu dGVsIENvcnBvcmF0aW9uCj4gaHR0cDovL2Jsb2cuZmZ3bGwuY2gKCi0tIApEYW5pZWwgVmV0dGVy ClNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5j aApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2 ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK