From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [PATCH 1/2] drm/radeon: Add HD-audio component notifier support Date: Mon, 22 Jul 2019 16:53:45 +0200 Message-ID: References: <20190722143815.7339-1-tiwai@suse.de> <20190722143815.7339-2-tiwai@suse.de> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id D42B489B12 for ; Mon, 22 Jul 2019 14:53:47 +0000 (UTC) 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: "Koenig, Christian" Cc: Maxime Ripard , "dri-devel@lists.freedesktop.org" , Ben Skeggs , "Deucher, Alexander" , Sean Paul List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCAyMiBKdWwgMjAxOSAxNjo0NDowNiArMDIwMCwKS29lbmlnLCBDaHJpc3RpYW4gd3Jv dGU6Cj4gCj4gQW0gMjIuMDcuMTkgdW0gMTY6Mzggc2NocmllYiBUYWthc2hpIEl3YWk6Cj4gPiBU aGlzIHBhdGNoIGFkZHMgdGhlIHN1cHBvcnQgZm9yIHRoZSBub3RpZmljYXRpb24gb2YgSEQtYXVk aW8gaG90cGx1Zwo+ID4gdmlhIHRoZSBhbHJlYWR5IGV4aXN0aW5nIGRybV9hdWRpb19jb21wb25l bnQgZnJhbWV3b3JrIHRvIHJhZGVvbgo+ID4gZHJpdmVyLiAgVGhpcyBhbGxvd3MgdXMgbW9yZSBy ZWxpYWJsZSBob3RwbHVnIG5vdGlmaWNhdGlvbiBhbmQgRUxECj4gPiB0cmFuc2ZlciB3aXRob3V0 IGFjY2Vzc2luZyBIRC1hdWRpbyBidXM7IGl0J3MgbW9yZSBlZmZpY2llbnQsIGFuZCBtb3JlCj4g PiBpbXBvcnRhbnRseSwgaXQgd29ya3Mgd2l0aG91dCB3YWtpbmcgdXAgdGhlIHJ1bnRpbWUgUE0u Cj4gPgo+ID4gVGhlIGltcGxlbWVudGF0aW9uIGlzIHJhdGhlciBzaW1wbGlzdGljOiByYWRlb24g ZHJpdmVyIHByb3ZpZGVzIHRoZQo+ID4gZ2V0X2VsZCBvcHMgZm9yIEhELWF1ZGlvLCBhbmQgaXQg bm90aWZpZXMgdGhlIGF1ZGlvIGhvdHBsdWcgdmlhCj4gPiBwaW5fZWxkX25vdGlmeSBjYWxsYmFj ayB1cG9uIGVhY2ggcmFkZW9uX2F1ZGlvX2VuYWJsZSgpIGNhbGwuCj4gPiBUaGUgcGluLT5pZCBp cyByZWZlcnJlZCBhcyB0aGUgcG9ydCBudW1iZXIgcGFzc2VkIHRvIHRoZSBub3RpZmllcgo+ID4g Y2FsbGJhY2ssIGFuZCB0aGUgY29ycmVzcG9uZGluZyBjb25uZWN0b3IgaXMgbG9va2VkIHRocm91 Z2ggdGhlCj4gPiBlbmNvZGVyIGxpc3QgaW4gdGhlIGdldF9lbGQgY2FsbGJhY2sgaW4gdHVybi4K PiAKPiBPbiBtb3N0IG9sZGVyIFJhZGVvbiBwYXJ0cyB5b3Ugb25seSBnb3Qgb25lIGF1ZGlvIGNv ZGVjIHdoaWNoIGNhbiBiZSAKPiByb3V0ZWQgdG8gbXVsdGlwbGUgY29ubmVjdG9ycy4KPiAKPiBB cyBmYXIgYXMgSSBjYW4gc2VlIHRoaXMgaXMgbm90IGNvcnJlY3RseSBzdXBwb3J0ZWQgd2l0aCB0 aGlzIGZyYW1ld29yayAKPiBoZXJlIHNpbmNlIHdlIG9ubHkgZ3JhYiB0aGUgZmlyc3QgRUxELiBJ cyB0aGF0IGNvcnJlY3Q/CgpIcm0sIGhvdyBkb2VzIGl0IHdvcmsgY3VycmVudGx5ICh3aXRob3V0 IHRoZSBwYXRjaCkgaW4gdGhlIGhhcmR3YXJlCmxldmVsPyAgSSBtZWFuLCB0aGUgdW5zb2xpY2l0 ZWQgZXZlbnQgaXMgc3RpbGwgdHJpZ2dlcmVkIHZpYSBIRC1hdWRpbwpidXMgYXMgd2VsbCBhcyB0 aGUgcGFydGlhbCBFTEQgcGFzcy10aHJvdWdoIHZpYSBIRC1hdWRpby4gIElzbid0IHRoZQpyZXBv cnRlZCBwaW4gSUQgY29ycmVzcG9uZGluZyB0byB0aGF0IGNvbm5lY3Rvcj8KCj4gQWRkaXRpb25h bCB0byB0aGF0IEknbSBub3Qgc3VyZSBpZiB0aGF0IGlzIHRoZSByaWdodCBkZXNpZ24gZm9yIEFN RCAKPiBoYXJkd2FyZSBpbiBnZW5lcmFsIHNpbmNlIHdlIGRvbid0IHJlYWxseSBzdXBwb3J0IEVM RCBpbiB0aGUgZmlyc3QgcGxhY2UuCgpFTEQgaXMgYSBraW5kIG9mIG1hbmRhdG9yeSBhbmQgd2Un dmUgYXNzZW1ibGVkIHRoZSBFTEQgZnJvbSB0aGUKcGFydGlhbCBpbmZvcm1hdGlvbiB0YWtlbiB2 aWEgSEQtYXVkaW8gYnVzIGxpa2Ugc3BlYWtlciBhbGxvY2F0aW9uIGFuZApvdGhlciBiaXRzLCBz byBmYXIuICBJIHRob3VnaHQgdGhlIHZlcnkgc2FtZSBpbmZvcm1hdGlvbiBpcyBmb3VuZCBpbgpj b25uZWN0b3ItPmVkaWQgdGhhdCBpcyBhbHdheXMgcGFyc2VkIGF0IEVESUQgcGFyc2luZyB0aW1l LgoKTGV0IG1lIGtub3cgaWYgSSdtIG9idmlvdXNseSBvdmVybG9va2luZyBzb21ldGhpbmcuCgoK VGhhbmtzIQoKVGFrYXNoaQoKCj4gCj4gUmVnYXJkcywKPiBDaHJpc3RpYW4uCj4gCj4gPgo+ID4g VGhlIGJpbmQgYW5kIHVuYmluZCBjYWxsYmFja3MgaGFuZGxlIHRoZSBkZXZpY2UtbGluayBzbyB0 aGF0IGl0Cj4gPiBhc3N1cmVzIHRoZSBQTSBjYWxsIG9yZGVyLgo+ID4KPiA+IEFja2VkLWJ5OiBK aW0gUXUgPEppbS5RdUBhbWQuY29tPgo+ID4gU2lnbmVkLW9mZi1ieTogVGFrYXNoaSBJd2FpIDx0 aXdhaUBzdXNlLmRlPgo+ID4gLS0tCj4gPiAgIGRyaXZlcnMvZ3B1L2RybS9LY29uZmlnICAgICAg ICAgICAgICAgfCAgMSArCj4gPiAgIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmggICAg ICAgfCAgMyArKwo+ID4gICBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5jIHwg OTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiA+ICAgMyBmaWxlcyBjaGFu Z2VkLCA5NiBpbnNlcnRpb25zKCspCj4gPgo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9LY29uZmlnIGIvZHJpdmVycy9ncHUvZHJtL0tjb25maWcKPiA+IGluZGV4IDFkODAyMjI1ODdh ZC4uOGI0NGNjNDU4ODMwIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL0tjb25maWcK PiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9LY29uZmlnCj4gPiBAQCAtMjA5LDYgKzIwOSw3IEBA IGNvbmZpZyBEUk1fUkFERU9OCj4gPiAgIAlzZWxlY3QgSFdNT04KPiA+ICAgCXNlbGVjdCBCQUNL TElHSFRfQ0xBU1NfREVWSUNFCj4gPiAgIAlzZWxlY3QgSU5URVJWQUxfVFJFRQo+ID4gKwlzZWxl Y3QgU05EX0hEQV9DT01QT05FTlQgaWYgU05EX0hEQV9DT1JFCj4gPiAgIAloZWxwCj4gPiAgIAkg IENob29zZSB0aGlzIG9wdGlvbiBpZiB5b3UgaGF2ZSBhbiBBVEkgUmFkZW9uIGdyYXBoaWNzIGNh cmQuICBUaGVyZQo+ID4gICAJICBhcmUgYm90aCBQQ0kgYW5kIEFHUCB2ZXJzaW9ucy4gIFlvdSBk b24ndCBuZWVkIHRvIGNob29zZSB0aGlzIHRvCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yYWRlb24uaCBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmgKPiA+ IGluZGV4IDMyODA4ZTUwYmUxMi4uMjk3MzI4NGI3OTYxIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaAo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVv bi9yYWRlb24uaAo+ID4gQEAgLTc1LDYgKzc1LDcgQEAKPiA+ICAgI2luY2x1ZGUgPGRybS90dG0v dHRtX2V4ZWNidWZfdXRpbC5oPgo+ID4gICAKPiA+ICAgI2luY2x1ZGUgPGRybS9kcm1fZ2VtLmg+ Cj4gPiArI2luY2x1ZGUgPGRybS9kcm1fYXVkaW9fY29tcG9uZW50Lmg+Cj4gPiAgIAo+ID4gICAj aW5jbHVkZSAicmFkZW9uX2ZhbWlseS5oIgo+ID4gICAjaW5jbHVkZSAicmFkZW9uX21vZGUuaCIK PiA+IEBAIC0xNzYxLDYgKzE3NjIsOCBAQCBzdHJ1Y3QgcjYwMF9hdWRpbyB7Cj4gPiAgIAlzdHJ1 Y3QgcmFkZW9uX2F1ZGlvX2Z1bmNzICpoZG1pX2Z1bmNzOwo+ID4gICAJc3RydWN0IHJhZGVvbl9h dWRpb19mdW5jcyAqZHBfZnVuY3M7Cj4gPiAgIAlzdHJ1Y3QgcmFkZW9uX2F1ZGlvX2Jhc2ljX2Z1 bmNzICpmdW5jczsKPiA+ICsJc3RydWN0IGRybV9hdWRpb19jb21wb25lbnQgKmNvbXBvbmVudDsK PiA+ICsJYm9vbCBjb21wb25lbnRfcmVnaXN0ZXJlZDsKPiA+ICAgfTsKPiA+ICAgCj4gPiAgIC8q Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fYXVkaW8uYyBi L2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2F1ZGlvLmMKPiA+IGluZGV4IGI5YWVhNTc3 NmQzZC4uOTc2NTAyZTMxYzQzIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVv bi9yYWRlb25fYXVkaW8uYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25f YXVkaW8uYwo+ID4gQEAgLTIzLDYgKzIzLDcgQEAKPiA+ICAgICovCj4gPiAgIAo+ID4gICAjaW5j bHVkZSA8bGludXgvZ2NkLmg+Cj4gPiArI2luY2x1ZGUgPGxpbnV4L2NvbXBvbmVudC5oPgo+ID4g ICAKPiA+ICAgI2luY2x1ZGUgPGRybS9kcm1fY3J0Yy5oPgo+ID4gICAjaW5jbHVkZSAicmFkZW9u LmgiCj4gPiBAQCAtMjQyLDYgKzI0MywxNCBAQCBzdGF0aWMgc3RydWN0IHJhZGVvbl9hdWRpb19m dW5jcyBkY2U2X2RwX2Z1bmNzID0gewo+ID4gICAJLmRwbXMgPSBldmVyZ3JlZW5fZHBfZW5hYmxl LAo+ID4gICB9Owo+ID4gICAKPiA+ICtzdGF0aWMgdm9pZCByYWRlb25fYXVkaW9fY29tcG9uZW50 X25vdGlmeShzdHJ1Y3QgZHJtX2F1ZGlvX2NvbXBvbmVudCAqYWNvbXAsCj4gPiArCQkJCQkgIGlu dCBwb3J0KQo+ID4gK3sKPiA+ICsJaWYgKGFjb21wICYmIGFjb21wLT5hdWRpb19vcHMgJiYgYWNv bXAtPmF1ZGlvX29wcy0+cGluX2VsZF9ub3RpZnkpCj4gPiArCQlhY29tcC0+YXVkaW9fb3BzLT5w aW5fZWxkX25vdGlmeShhY29tcC0+YXVkaW9fb3BzLT5hdWRpb19wdHIsCj4gPiArCQkJCQkJIHBv cnQsIC0xKTsKPiA+ICt9Cj4gPiArCj4gPiAgIHN0YXRpYyB2b2lkIHJhZGVvbl9hdWRpb19lbmFi bGUoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsCj4gPiAgIAkJCQlzdHJ1Y3QgcjYwMF9hdWRp b19waW4gKnBpbiwgdTggZW5hYmxlX21hc2spCj4gPiAgIHsKPiA+IEBAIC0yNjksNiArMjc4LDgg QEAgc3RhdGljIHZvaWQgcmFkZW9uX2F1ZGlvX2VuYWJsZShzdHJ1Y3QgcmFkZW9uX2RldmljZSAq cmRldiwKPiA+ICAgCj4gPiAgIAlpZiAocmRldi0+YXVkaW8uZnVuY3MtPmVuYWJsZSkKPiA+ICAg CQlyZGV2LT5hdWRpby5mdW5jcy0+ZW5hYmxlKHJkZXYsIHBpbiwgZW5hYmxlX21hc2spOwo+ID4g Kwo+ID4gKwlyYWRlb25fYXVkaW9fY29tcG9uZW50X25vdGlmeShyZGV2LT5hdWRpby5jb21wb25l bnQsIHBpbi0+aWQpOwo+ID4gICB9Cj4gPiAgIAo+ID4gICBzdGF0aWMgdm9pZCByYWRlb25fYXVk aW9faW50ZXJmYWNlX2luaXQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpCj4gPiBAQCAtMjky LDYgKzMwMyw3OSBAQCBzdGF0aWMgdm9pZCByYWRlb25fYXVkaW9faW50ZXJmYWNlX2luaXQoc3Ry dWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpCj4gPiAgIAl9Cj4gPiAgIH0KPiA+ICAgCj4gPiArc3Rh dGljIGludCByYWRlb25fYXVkaW9fY29tcG9uZW50X2dldF9lbGQoc3RydWN0IGRldmljZSAqa2Rl diwgaW50IHBvcnQsCj4gPiArCQkJCQkgIGludCBwaXBlLCBib29sICplbmFibGVkLAo+ID4gKwkJ CQkJICB1bnNpZ25lZCBjaGFyICpidWYsIGludCBtYXhfYnl0ZXMpCj4gPiArewo+ID4gKwlzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2ID0gZGV2X2dldF9kcnZkYXRhKGtkZXYpOwo+ID4gKwlzdHJ1Y3Qg ZHJtX2VuY29kZXIgKmVuY29kZXI7Cj4gPiArCXN0cnVjdCByYWRlb25fZW5jb2RlciAqcmFkZW9u X2VuY29kZXI7Cj4gPiArCXN0cnVjdCByYWRlb25fZW5jb2Rlcl9hdG9tX2RpZyAqZGlnOwo+ID4g KwlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOwo+ID4gKwlpbnQgcmV0ID0gMDsKPiA+ ICsKPiA+ICsJKmVuYWJsZWQgPSBmYWxzZTsKPiA+ICsJbGlzdF9mb3JfZWFjaF9lbnRyeShlbmNv ZGVyLCAmZGV2LT5tb2RlX2NvbmZpZy5lbmNvZGVyX2xpc3QsIGhlYWQpIHsKPiA+ICsJCWlmICgh cmFkZW9uX2VuY29kZXJfaXNfZGlnaXRhbChlbmNvZGVyKSkKPiA+ICsJCQljb250aW51ZTsKPiA+ ICsJCXJhZGVvbl9lbmNvZGVyID0gdG9fcmFkZW9uX2VuY29kZXIoZW5jb2Rlcik7Cj4gPiArCQlk aWcgPSByYWRlb25fZW5jb2Rlci0+ZW5jX3ByaXY7Cj4gPiArCQlpZiAoIWRpZy0+cGluIHx8IGRp Zy0+cGluLT5pZCAhPSBwb3J0KQo+ID4gKwkJCWNvbnRpbnVlOwo+ID4gKwkJY29ubmVjdG9yID0g cmFkZW9uX2dldF9jb25uZWN0b3JfZm9yX2VuY29kZXIoZW5jb2Rlcik7Cj4gPiArCQlpZiAoY29u bmVjdG9yKSB7Cj4gPiArCQkJKmVuYWJsZWQgPSB0cnVlOwo+ID4gKwkJCXJldCA9IGRybV9lbGRf c2l6ZShjb25uZWN0b3ItPmVsZCk7Cj4gPiArCQkJbWVtY3B5KGJ1ZiwgY29ubmVjdG9yLT5lbGQs IG1pbihtYXhfYnl0ZXMsIHJldCkpOwo+ID4gKwkJCWJyZWFrOwo+ID4gKwkJfQo+ID4gKwl9Cj4g PiArCj4gPiArCXJldHVybiByZXQ7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyBjb25zdCBzdHJ1 Y3QgZHJtX2F1ZGlvX2NvbXBvbmVudF9vcHMgcmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9vcHMgPSB7 Cj4gPiArCS5nZXRfZWxkID0gcmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9nZXRfZWxkLAo+ID4gK307 Cj4gPiArCj4gPiArc3RhdGljIGludCByYWRlb25fYXVkaW9fY29tcG9uZW50X2JpbmQoc3RydWN0 IGRldmljZSAqa2RldiwKPiA+ICsJCQkJICAgICAgIHN0cnVjdCBkZXZpY2UgKmhkYV9rZGV2LCB2 b2lkICpkYXRhKQo+ID4gK3sKPiA+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGRldl9nZXRf ZHJ2ZGF0YShrZGV2KTsKPiA+ICsJc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYgPSBkZXYtPmRl dl9wcml2YXRlOwo+ID4gKwlzdHJ1Y3QgZHJtX2F1ZGlvX2NvbXBvbmVudCAqYWNvbXAgPSBkYXRh Owo+ID4gKwo+ID4gKwlpZiAoV0FSTl9PTighZGV2aWNlX2xpbmtfYWRkKGhkYV9rZGV2LCBrZGV2 LCBETF9GTEFHX1NUQVRFTEVTUykpKQo+ID4gKwkJcmV0dXJuIC1FTk9NRU07Cj4gPiArCj4gPiAr CWRybV9tb2Rlc2V0X2xvY2tfYWxsKGRldik7Cj4gPiArCWFjb21wLT5vcHMgPSAmcmFkZW9uX2F1 ZGlvX2NvbXBvbmVudF9vcHM7Cj4gPiArCWFjb21wLT5kZXYgPSBrZGV2Owo+ID4gKwlyZGV2LT5h dWRpby5jb21wb25lbnQgPSBhY29tcDsKPiA+ICsJZHJtX21vZGVzZXRfdW5sb2NrX2FsbChkZXYp Owo+ID4gKwo+ID4gKwlyZXR1cm4gMDsKPiA+ICt9Cj4gPiArCj4gPiArc3RhdGljIHZvaWQgcmFk ZW9uX2F1ZGlvX2NvbXBvbmVudF91bmJpbmQoc3RydWN0IGRldmljZSAqa2RldiwKPiA+ICsJCQkJ CSAgc3RydWN0IGRldmljZSAqaGRhX2tkZXYsIHZvaWQgKmRhdGEpCj4gPiArewo+ID4gKwlzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2ID0gZGV2X2dldF9kcnZkYXRhKGtkZXYpOwo+ID4gKwlzdHJ1Y3Qg cmFkZW9uX2RldmljZSAqcmRldiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gPiArCXN0cnVjdCBkcm1f YXVkaW9fY29tcG9uZW50ICphY29tcCA9IGRhdGE7Cj4gPiArCj4gPiArCWRybV9tb2Rlc2V0X2xv Y2tfYWxsKGRldik7Cj4gPiArCXJkZXYtPmF1ZGlvLmNvbXBvbmVudCA9IE5VTEw7Cj4gPiArCWFj b21wLT5vcHMgPSBOVUxMOwo+ID4gKwlhY29tcC0+ZGV2ID0gTlVMTDsKPiA+ICsJZHJtX21vZGVz ZXRfdW5sb2NrX2FsbChkZXYpOwo+ID4gK30KPiA+ICsKPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0 IGNvbXBvbmVudF9vcHMgcmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9iaW5kX29wcyA9IHsKPiA+ICsJ LmJpbmQJPSByYWRlb25fYXVkaW9fY29tcG9uZW50X2JpbmQsCj4gPiArCS51bmJpbmQJPSByYWRl b25fYXVkaW9fY29tcG9uZW50X3VuYmluZCwKPiA+ICt9Owo+ID4gKwo+ID4gICBzdGF0aWMgaW50 IHJhZGVvbl9hdWRpb19jaGlwc2V0X3N1cHBvcnRlZChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRl dikKPiA+ICAgewo+ID4gICAJcmV0dXJuIEFTSUNfSVNfRENFMihyZGV2KSAmJiAhQVNJQ19JU19O T0RDRShyZGV2KTsKPiA+IEBAIC0zMzgsNiArNDIyLDkgQEAgaW50IHJhZGVvbl9hdWRpb19pbml0 KHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQo+ID4gICAJZm9yIChpID0gMDsgaSA8IHJkZXYt PmF1ZGlvLm51bV9waW5zOyBpKyspCj4gPiAgIAkJcmFkZW9uX2F1ZGlvX2VuYWJsZShyZGV2LCAm cmRldi0+YXVkaW8ucGluW2ldLCAwKTsKPiA+ICAgCj4gPiArCWlmICghY29tcG9uZW50X2FkZChy ZGV2LT5kZXYsICZyYWRlb25fYXVkaW9fY29tcG9uZW50X2JpbmRfb3BzKSkKPiA+ICsJCXJkZXYt PmF1ZGlvLmNvbXBvbmVudF9yZWdpc3RlcmVkID0gdHJ1ZTsKPiA+ICsKPiA+ICAgCXJldHVybiAw Owo+ID4gICB9Cj4gPiAgIAo+ID4gQEAgLTQ5MCw2ICs1NzcsMTEgQEAgdm9pZCByYWRlb25fYXVk aW9fZmluaShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKPiA+ICAgCQlyYWRlb25fYXVkaW9f ZW5hYmxlKHJkZXYsICZyZGV2LT5hdWRpby5waW5baV0sIDApOwo+ID4gICAKPiA+ICAgCXJkZXYt PmF1ZGlvLmVuYWJsZWQgPSBmYWxzZTsKPiA+ICsKPiA+ICsJaWYgKHJkZXYtPmF1ZGlvLmNvbXBv bmVudF9yZWdpc3RlcmVkKSB7Cj4gPiArCQljb21wb25lbnRfZGVsKHJkZXYtPmRldiwgJnJhZGVv bl9hdWRpb19jb21wb25lbnRfYmluZF9vcHMpOwo+ID4gKwkJcmRldi0+YXVkaW8uY29tcG9uZW50 X3JlZ2lzdGVyZWQgPSBmYWxzZTsKPiA+ICsJfQo+ID4gICB9Cj4gPiAgIAo+ID4gICBzdGF0aWMg dm9pZCByYWRlb25fYXVkaW9fc2V0X2R0byhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsIHVu c2lnbmVkIGludCBjbG9jaykKPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v ZHJpLWRldmVs