From mboxrd@z Thu Jan 1 00:00:00 1970 From: Inki Dae Subject: Re: [RFC PATCH 1/1] drm/exynos: Move platform drivers registration to module init Date: Thu, 20 Nov 2014 23:07:20 +0900 Message-ID: <546DF598.6030701@samsung.com> References: <1416318821-7925-1-git-send-email-javier.martinez@collabora.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-reply-to: <1416318821-7925-1-git-send-email-javier.martinez@collabora.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Javier Martinez Canillas Cc: Andrzej Hajda , Krzysztof Kozlowski , Kevin Hilman , linux-samsung-soc@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: linux-samsung-soc@vger.kernel.org SGkgSmF2aWVyLAoKT24gMjAxNOuFhCAxMeyblCAxOOydvCAyMjo1MywgSmF2aWVyIE1hcnRpbmV6 IENhbmlsbGFzIHdyb3RlOgo+IFRoZSBFeHlub3MgRFJNIGRyaXZlciByZWdpc3RlciBpdHMgc3Vi LWRldmljZXMgcGxhdGZvcm0gZHJpdmVycyBpbgo+IHRoZSBwcm9iZSBmdW5jdGlvbiBidXQgYWZ0 ZXIgY29tbWl0IDQzYzA3NjcgKCJvZi9wbGF0Zm9ybTogTW92ZQo+IHBsYXRmb3JtIGRldmljZXMg dW5kZXIgL3N5cy9kZXZpY2VzL3BsYXRmb3JtIiksIHRoaXMgaXMgY2F1c2luZwo+IGEgZGVhZGxv Y2sgaW4gX19kcml2ZXJfYXR0YWNoKCkuIEZpeCB0aGlzIGJ5IG1vdmluZyB0aGUgcGxhdGZvcm0K PiBkcml2ZXJzIHJlZ2lzdHJhdGlvbiB0byBleHlub3NfZHJtX2luaXQoKS4KCkNvdWxkIHlvdSBy ZS1iYXNlIHRoaXMgcGF0Y2ggb24gdG9wIG9mIGV4eW5vcy1kcm0tbmV4dD8gSSB0cmllZCB0bwpz ZXBhcmF0ZSBzdWIgZHJpdmVycyBpbnRvIGluZGVwZW5kZW50IGRyaXZlcnMgYnV0IGl0IHNlZW1z IHRoYXQgd2UgbmVlZAptb3JlIHRpbWVzLiBTbyBJIHdpbGwgbWVyZ2UgeW91ciBwYXRjaC4KClRo YW5rcywKSW5raSBEYWUKCj4gCj4gU3VnZ2VzdGVkLWJ5OiBBbmRyemVqIEhhamRhIDxhLmhhamRh QHNhbXN1bmcuY29tPgo+IFNpZ25lZC1vZmYtYnk6IEphdmllciBNYXJ0aW5leiBDYW5pbGxhcyA8 amF2aWVyLm1hcnRpbmV6QGNvbGxhYm9yYS5jby51az4KPiAtLS0KPiAKPiBUaGlzIGlzc3VlIHdh cyByZXBvcnRlZCBieSBib3RoIEtyenlzenRvZiBLb3psb3dza2kgWzBdIGFuZCBLZXZpbiBIaWxt YW4gWzFdLgo+IAo+IElua2kgRGFlIHNhaWQgdGhhdCBoZSB3aWxsIGZpeCBpdCBwcm9wZXJ0eSBi eSBzZXBhcmF0aW5nIHRoZSBFeHlub3MgRFJNCj4gZHJpdmVyIGluIGRpZmZlcmVudCBzdWItbW9k dWxlcyBidXQgSSBwb3N0IHRoaXMgcGF0Y2ggYXMgUkZDIGFueXdheXMgc28KPiBvdGhlcnMgY2Fu IHRlc3QgaWYgdGhpcyBmaXhlcyB0aGVpciBib290IGlzc3VlLgo+IAo+IFswXTogaHR0cHM6Ly9s a21sLm9yZy9sa21sLzIwMTQvMTEvNi8xMjUKPiBbMV06IGh0dHA6Ly93d3cuc3Bpbmljcy5uZXQv bGlzdHMvbGludXgtc2Ftc3VuZy1zb2MvbXNnMzkwNTAuaHRtbAo+IAo+ICBkcml2ZXJzL2dwdS9k cm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmMgfCAxNjMgKysrKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0tLS0KPiAgMSBmaWxlIGNoYW5nZWQsIDc5IGluc2VydGlvbnMoKyksIDg0IGRlbGV0aW9u cygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1f ZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmMKPiBpbmRleCBl Mjc3ZDRmLi41Mzg2ZmVhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5 bm9zX2RybV9kcnYuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9k cnYuYwo+IEBAIC01NTksMTUgKzU1OSw1OCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGNvbXBvbmVu dF9tYXN0ZXJfb3BzIGV4eW5vc19kcm1fb3BzID0gewo+ICBzdGF0aWMgaW50IGV4eW5vc19kcm1f cGxhdGZvcm1fcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiAgewo+ICAJc3Ry dWN0IGNvbXBvbmVudF9tYXRjaCAqbWF0Y2g7Cj4gLQlpbnQgcmV0Owo+ICAKPiAgCXBkZXYtPmRl di5jb2hlcmVudF9kbWFfbWFzayA9IERNQV9CSVRfTUFTSygzMik7Cj4gIAlleHlub3NfZHJtX2Ry aXZlci5udW1faW9jdGxzID0gQVJSQVlfU0laRShleHlub3NfaW9jdGxzKTsKPiAgCj4gKwltYXRj aCA9IGV4eW5vc19kcm1fbWF0Y2hfYWRkKCZwZGV2LT5kZXYpOwo+ICsJaWYgKElTX0VSUihtYXRj aCkpCj4gKwkJcmV0dXJuIFBUUl9FUlIobWF0Y2gpOwo+ICsKPiArCXJldHVybiBjb21wb25lbnRf bWFzdGVyX2FkZF93aXRoX21hdGNoKCZwZGV2LT5kZXYsICZleHlub3NfZHJtX29wcywKPiArCQkJ CQkgICAgICAgbWF0Y2gpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgaW50IGV4eW5vc19kcm1fcGxhdGZv cm1fcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gK3sKPiArCWNvbXBvbmVu dF9tYXN0ZXJfZGVsKCZwZGV2LT5kZXYsICZleHlub3NfZHJtX29wcyk7Cj4gKwlyZXR1cm4gMDsK PiArfQo+ICsKPiArc3RhdGljIHN0cnVjdCBwbGF0Zm9ybV9kcml2ZXIgZXh5bm9zX2RybV9wbGF0 Zm9ybV9kcml2ZXIgPSB7Cj4gKwkucHJvYmUJPSBleHlub3NfZHJtX3BsYXRmb3JtX3Byb2JlLAo+ ICsJLnJlbW92ZQk9IGV4eW5vc19kcm1fcGxhdGZvcm1fcmVtb3ZlLAo+ICsJLmRyaXZlcgk9IHsK PiArCQkubmFtZQk9ICJleHlub3MtZHJtIiwKPiArCQkucG0JPSAmZXh5bm9zX2RybV9wbV9vcHMs Cj4gKwl9LAo+ICt9Owo+ICsKPiArc3RhdGljIGludCBleHlub3NfZHJtX2luaXQodm9pZCkKPiAr ewo+ICsJaW50IHJldDsKPiArCj4gKwkvKgo+ICsJICogUmVnaXN0ZXIgZGV2aWNlIG9iamVjdCBv bmx5IGluIGNhc2Ugb2YgRXh5bm9zIFNvQy4KPiArCSAqCj4gKwkgKiBCZWxvdyBjb2RlcyByZXNv bHZlcyB0ZW1wb3JhcmlseSBpbmZpbml0ZSBsb29wIGlzc3VlIGluY3VycmVkCj4gKwkgKiBieSBF eHlub3MgZHJtIGRyaXZlciB3aGVuIHVzaW5nIG11bHRpLXBsYXRmb3JtIGtlcm5lbC4KPiArCSAq IFNvIHRoZXNlIGNvZGVzIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCBtb3JlIGdlbmVyaWMgd2F5IGxh dGVyLgo+ICsJICovCj4gKwlpZiAoIW9mX21hY2hpbmVfaXNfY29tcGF0aWJsZSgic2Ftc3VuZyxl eHlub3MzIikgJiYKPiArCQkJIW9mX21hY2hpbmVfaXNfY29tcGF0aWJsZSgic2Ftc3VuZyxleHlu b3M0IikgJiYKPiArCQkJIW9mX21hY2hpbmVfaXNfY29tcGF0aWJsZSgic2Ftc3VuZyxleHlub3M1 IikpCj4gKwkJcmV0dXJuIC1FTk9ERVY7Cj4gKwo+ICsJZXh5bm9zX2RybV9wZGV2ID0gcGxhdGZv cm1fZGV2aWNlX3JlZ2lzdGVyX3NpbXBsZSgiZXh5bm9zLWRybSIsIC0xLAo+ICsJCQkJCQkJCU5V TEwsIDApOwo+ICsJaWYgKElTX0VSUihleHlub3NfZHJtX3BkZXYpKQo+ICsJCXJldHVybiBQVFJf RVJSKGV4eW5vc19kcm1fcGRldik7Cj4gKwo+ICAjaWZkZWYgQ09ORklHX0RSTV9FWFlOT1NfRklN RAo+ICAJcmV0ID0gcGxhdGZvcm1fZHJpdmVyX3JlZ2lzdGVyKCZmaW1kX2RyaXZlcik7Cj4gIAlp ZiAocmV0IDwgMCkKPiAtCQlyZXR1cm4gcmV0Owo+ICsJCWdvdG8gZXJyX3VucmVnaXN0ZXJfcGRl djsKPiAgI2VuZGlmCj4gIAo+ICAjaWZkZWYgQ09ORklHX0RSTV9FWFlOT1NfRFAKPiBAQCAtNTkx LDIxICs2MzQsMTAgQEAgc3RhdGljIGludCBleHlub3NfZHJtX3BsYXRmb3JtX3Byb2JlKHN0cnVj dCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAkJZ290byBlcnJfdW5yZWdpc3Rlcl9taXhlcl9k cnY7Cj4gICNlbmRpZgo+ICAKPiAtCW1hdGNoID0gZXh5bm9zX2RybV9tYXRjaF9hZGQoJnBkZXYt PmRldik7Cj4gLQlpZiAoSVNfRVJSKG1hdGNoKSkgewo+IC0JCXJldCA9IFBUUl9FUlIobWF0Y2gp Owo+IC0JCWdvdG8gZXJyX3VucmVnaXN0ZXJfaGRtaV9kcnY7Cj4gLQl9Cj4gLQo+IC0JcmV0ID0g Y29tcG9uZW50X21hc3Rlcl9hZGRfd2l0aF9tYXRjaCgmcGRldi0+ZGV2LCAmZXh5bm9zX2RybV9v cHMsCj4gLQkJCQkJCW1hdGNoKTsKPiAtCWlmIChyZXQgPCAwKQo+IC0JCWdvdG8gZXJyX3VucmVn aXN0ZXJfaGRtaV9kcnY7Cj4gLQo+ICAjaWZkZWYgQ09ORklHX0RSTV9FWFlOT1NfRzJECj4gIAly ZXQgPSBwbGF0Zm9ybV9kcml2ZXJfcmVnaXN0ZXIoJmcyZF9kcml2ZXIpOwo+ICAJaWYgKHJldCA8 IDApCj4gLQkJZ290byBlcnJfZGVsX2NvbXBvbmVudF9tYXN0ZXI7Cj4gKwkJZ290byBlcnJfdW5y ZWdpc3Rlcl9oZG1pX2RydjsKPiAgI2VuZGlmCj4gIAo+ICAjaWZkZWYgQ09ORklHX0RSTV9FWFlO T1NfRklNQwo+IEBAIC02MzYsOSArNjY4LDI3IEBAIHN0YXRpYyBpbnQgZXh5bm9zX2RybV9wbGF0 Zm9ybV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAJCWdvdG8gZXJyX3Vu cmVnaXN0ZXJfaXBwX2RydjsKPiAgI2VuZGlmCj4gIAo+IC0JcmV0dXJuIHJldDsKPiArI2lmZGVm IENPTkZJR19EUk1fRVhZTk9TX1ZJREkKPiArCXJldCA9IGV4eW5vc19kcm1fcHJvYmVfdmlkaSgp Owo+ICsJaWYgKHJldCA8IDApCj4gKwkJZ290byBlcnJfdW5yZWdpc3Rlcl9pcHBfZGV2Owo+ICsj ZW5kaWYKPiArCj4gKwlyZXQgPSBwbGF0Zm9ybV9kcml2ZXJfcmVnaXN0ZXIoJmV4eW5vc19kcm1f cGxhdGZvcm1fZHJpdmVyKTsKPiArCWlmIChyZXQpCj4gKwkJZ290byBlcnJfcmVtb3ZlX3ZpZGk7 Cj4gKwo+ICsJcmV0dXJuIDA7Cj4gKwo+ICtlcnJfcmVtb3ZlX3ZpZGk6Cj4gKyNpZmRlZiBDT05G SUdfRFJNX0VYWU5PU19WSURJCj4gKwlleHlub3NfZHJtX3JlbW92ZV92aWRpKCk7Cj4gK2Vycl91 bnJlZ2lzdGVyX3BkOgo+ICsjZW5kaWYKPiAgCj4gICNpZmRlZiBDT05GSUdfRFJNX0VYWU5PU19J UFAKPiArZXJyX3VucmVnaXN0ZXJfaXBwX2RldjoKPiArCWV4eW5vc19wbGF0Zm9ybV9kZXZpY2Vf aXBwX3VucmVnaXN0ZXIoKTsKPiAgZXJyX3VucmVnaXN0ZXJfaXBwX2RydjoKPiAgCXBsYXRmb3Jt X2RyaXZlcl91bnJlZ2lzdGVyKCZpcHBfZHJpdmVyKTsKPiAgZXJyX3VucmVnaXN0ZXJfZ3NjX2Ry djoKPiBAQCAtNjYxLDExICs3MTEsOSBAQCBlcnJfdW5yZWdpc3Rlcl9nMmRfZHJ2Ogo+ICAKPiAg I2lmZGVmIENPTkZJR19EUk1fRVhZTk9TX0cyRAo+ICAJcGxhdGZvcm1fZHJpdmVyX3VucmVnaXN0 ZXIoJmcyZF9kcml2ZXIpOwo+IC1lcnJfZGVsX2NvbXBvbmVudF9tYXN0ZXI6Cj4gK2Vycl91bnJl Z2lzdGVyX2hkbWlfZHJ2Ogo+ICAjZW5kaWYKPiAtCWNvbXBvbmVudF9tYXN0ZXJfZGVsKCZwZGV2 LT5kZXYsICZleHlub3NfZHJtX29wcyk7Cj4gIAo+IC1lcnJfdW5yZWdpc3Rlcl9oZG1pX2RydjoK PiAgI2lmZGVmIENPTkZJR19EUk1fRVhZTk9TX0hETUkKPiAgCXBsYXRmb3JtX2RyaXZlcl91bnJl Z2lzdGVyKCZoZG1pX2RyaXZlcik7Cj4gIGVycl91bnJlZ2lzdGVyX21peGVyX2RydjoKPiBAQCAt Njg2LDExICs3MzQsMjEgQEAgZXJyX3VucmVnaXN0ZXJfZmltZF9kcnY6Cj4gICNpZmRlZiBDT05G SUdfRFJNX0VYWU5PU19GSU1ECj4gIAlwbGF0Zm9ybV9kcml2ZXJfdW5yZWdpc3RlcigmZmltZF9k cml2ZXIpOwo+ICAjZW5kaWYKPiArCj4gK2Vycl91bnJlZ2lzdGVyX3BkZXY6Cj4gKwlwbGF0Zm9y bV9kZXZpY2VfdW5yZWdpc3RlcihleHlub3NfZHJtX3BkZXYpOwo+ICsKPiAgCXJldHVybiByZXQ7 Cj4gIH0KPiAgCj4gLXN0YXRpYyBpbnQgZXh5bm9zX2RybV9wbGF0Zm9ybV9yZW1vdmUoc3RydWN0 IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiArc3RhdGljIHZvaWQgZXh5bm9zX2RybV9leGl0KHZv aWQpCj4gIHsKPiArCXBsYXRmb3JtX2RyaXZlcl91bnJlZ2lzdGVyKCZleHlub3NfZHJtX3BsYXRm b3JtX2RyaXZlcik7Cj4gKwo+ICsjaWZkZWYgQ09ORklHX0RSTV9FWFlOT1NfVklESQo+ICsJZXh5 bm9zX2RybV9yZW1vdmVfdmlkaSgpOwo+ICsjZW5kaWYKPiArCj4gICNpZmRlZiBDT05GSUdfRFJN X0VYWU5PU19JUFAKPiAgCWV4eW5vc19wbGF0Zm9ybV9kZXZpY2VfaXBwX3VucmVnaXN0ZXIoKTsK PiAgCXBsYXRmb3JtX2RyaXZlcl91bnJlZ2lzdGVyKCZpcHBfZHJpdmVyKTsKPiBAQCAtNzIxLDc1 ICs3NzksMTIgQEAgc3RhdGljIGludCBleHlub3NfZHJtX3BsYXRmb3JtX3JlbW92ZShzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAJcGxhdGZvcm1fZHJpdmVyX3VucmVnaXN0ZXIoJmZp bWRfZHJpdmVyKTsKPiAgI2VuZGlmCj4gIAo+IC0jaWZkZWYgQ09ORklHX0RSTV9FWFlOT1NfRFNJ Cj4gLQlwbGF0Zm9ybV9kcml2ZXJfdW5yZWdpc3RlcigmZHNpX2RyaXZlcik7Cj4gLSNlbmRpZgo+ IC0KPiAgI2lmZGVmIENPTkZJR19EUk1fRVhZTk9TX0RQCj4gIAlwbGF0Zm9ybV9kcml2ZXJfdW5y ZWdpc3RlcigmZHBfZHJpdmVyKTsKPiAgI2VuZGlmCj4gLQljb21wb25lbnRfbWFzdGVyX2RlbCgm cGRldi0+ZGV2LCAmZXh5bm9zX2RybV9vcHMpOwo+IC0JcmV0dXJuIDA7Cj4gLX0KPiAgCj4gLXN0 YXRpYyBzdHJ1Y3QgcGxhdGZvcm1fZHJpdmVyIGV4eW5vc19kcm1fcGxhdGZvcm1fZHJpdmVyID0g ewo+IC0JLnByb2JlCT0gZXh5bm9zX2RybV9wbGF0Zm9ybV9wcm9iZSwKPiAtCS5yZW1vdmUJPSBl eHlub3NfZHJtX3BsYXRmb3JtX3JlbW92ZSwKPiAtCS5kcml2ZXIJPSB7Cj4gLQkJLm5hbWUJPSAi ZXh5bm9zLWRybSIsCj4gLQkJLnBtCT0gJmV4eW5vc19kcm1fcG1fb3BzLAo+IC0JfSwKPiAtfTsK PiAtCj4gLXN0YXRpYyBpbnQgZXh5bm9zX2RybV9pbml0KHZvaWQpCj4gLXsKPiAtCWludCByZXQ7 Cj4gLQo+IC0JLyoKPiAtCSAqIFJlZ2lzdGVyIGRldmljZSBvYmplY3Qgb25seSBpbiBjYXNlIG9m IEV4eW5vcyBTb0MuCj4gLQkgKgo+IC0JICogQmVsb3cgY29kZXMgcmVzb2x2ZXMgdGVtcG9yYXJp bHkgaW5maW5pdGUgbG9vcCBpc3N1ZSBpbmN1cnJlZAo+IC0JICogYnkgRXh5bm9zIGRybSBkcml2 ZXIgd2hlbiB1c2luZyBtdWx0aS1wbGF0Zm9ybSBrZXJuZWwuCj4gLQkgKiBTbyB0aGVzZSBjb2Rl cyB3aWxsIGJlIHJlcGxhY2VkIHdpdGggbW9yZSBnZW5lcmljIHdheSBsYXRlci4KPiAtCSAqLwo+ IC0JaWYgKCFvZl9tYWNoaW5lX2lzX2NvbXBhdGlibGUoInNhbXN1bmcsZXh5bm9zMyIpICYmCj4g LQkJCSFvZl9tYWNoaW5lX2lzX2NvbXBhdGlibGUoInNhbXN1bmcsZXh5bm9zNCIpICYmCj4gLQkJ CSFvZl9tYWNoaW5lX2lzX2NvbXBhdGlibGUoInNhbXN1bmcsZXh5bm9zNSIpKQo+IC0JCXJldHVy biAtRU5PREVWOwo+IC0KPiAtCWV4eW5vc19kcm1fcGRldiA9IHBsYXRmb3JtX2RldmljZV9yZWdp c3Rlcl9zaW1wbGUoImV4eW5vcy1kcm0iLCAtMSwKPiAtCQkJCQkJCQlOVUxMLCAwKTsKPiAtCWlm IChJU19FUlIoZXh5bm9zX2RybV9wZGV2KSkKPiAtCQlyZXR1cm4gUFRSX0VSUihleHlub3NfZHJt X3BkZXYpOwo+IC0KPiAtI2lmZGVmIENPTkZJR19EUk1fRVhZTk9TX1ZJREkKPiAtCXJldCA9IGV4 eW5vc19kcm1fcHJvYmVfdmlkaSgpOwo+IC0JaWYgKHJldCA8IDApCj4gLQkJZ290byBlcnJfdW5y ZWdpc3Rlcl9wZDsKPiAtI2VuZGlmCj4gLQo+IC0JcmV0ID0gcGxhdGZvcm1fZHJpdmVyX3JlZ2lz dGVyKCZleHlub3NfZHJtX3BsYXRmb3JtX2RyaXZlcik7Cj4gLQlpZiAocmV0KQo+IC0JCWdvdG8g ZXJyX3JlbW92ZV92aWRpOwo+IC0KPiAtCXJldHVybiAwOwo+IC0KPiAtZXJyX3JlbW92ZV92aWRp Ogo+IC0jaWZkZWYgQ09ORklHX0RSTV9FWFlOT1NfVklESQo+IC0JZXh5bm9zX2RybV9yZW1vdmVf dmlkaSgpOwo+IC0KPiAtZXJyX3VucmVnaXN0ZXJfcGQ6Cj4gLSNlbmRpZgo+IC0JcGxhdGZvcm1f ZGV2aWNlX3VucmVnaXN0ZXIoZXh5bm9zX2RybV9wZGV2KTsKPiAtCj4gLQlyZXR1cm4gcmV0Owo+ IC19Cj4gLQo+IC1zdGF0aWMgdm9pZCBleHlub3NfZHJtX2V4aXQodm9pZCkKPiAtewo+IC0JcGxh dGZvcm1fZHJpdmVyX3VucmVnaXN0ZXIoJmV4eW5vc19kcm1fcGxhdGZvcm1fZHJpdmVyKTsKPiAt I2lmZGVmIENPTkZJR19EUk1fRVhZTk9TX1ZJREkKPiAtCWV4eW5vc19kcm1fcmVtb3ZlX3ZpZGko KTsKPiArI2lmZGVmIENPTkZJR19EUk1fRVhZTk9TX0RTSQo+ICsJcGxhdGZvcm1fZHJpdmVyX3Vu cmVnaXN0ZXIoJmRzaV9kcml2ZXIpOwo+ICAjZW5kaWYKPiAgCXBsYXRmb3JtX2RldmljZV91bnJl Z2lzdGVyKGV4eW5vc19kcm1fcGRldik7Cj4gIH0KPiAKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVs QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vZHJpLWRldmVsCg==