From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Koenig, Christian" Subject: Re: [PATCH 1/2] drm/radeon: Add HD-audio component notifier support Date: Mon, 22 Jul 2019 15:07:09 +0000 Message-ID: References: <20190722143815.7339-1-tiwai@suse.de> <20190722143815.7339-2-tiwai@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from NAM04-SN1-obe.outbound.protection.outlook.com (mail-eopbgr700043.outbound.protection.outlook.com [40.107.70.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 814F289C60 for ; Mon, 22 Jul 2019 15:07:12 +0000 (UTC) In-Reply-To: Content-Language: en-US Content-ID: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Takashi Iwai Cc: Maxime Ripard , "dri-devel@lists.freedesktop.org" , Ben Skeggs , "Deucher, Alexander" , Sean Paul List-Id: dri-devel@lists.freedesktop.org QW0gMjIuMDcuMTkgdW0gMTY6NTMgc2NocmllYiBUYWthc2hpIEl3YWk6DQo+IE9uIE1vbiwgMjIg SnVsIDIwMTkgMTY6NDQ6MDYgKzAyMDAsDQo+IEtvZW5pZywgQ2hyaXN0aWFuIHdyb3RlOg0KPj4g QW0gMjIuMDcuMTkgdW0gMTY6Mzggc2NocmllYiBUYWthc2hpIEl3YWk6DQo+Pj4gVGhpcyBwYXRj aCBhZGRzIHRoZSBzdXBwb3J0IGZvciB0aGUgbm90aWZpY2F0aW9uIG9mIEhELWF1ZGlvIGhvdHBs dWcNCj4+PiB2aWEgdGhlIGFscmVhZHkgZXhpc3RpbmcgZHJtX2F1ZGlvX2NvbXBvbmVudCBmcmFt ZXdvcmsgdG8gcmFkZW9uDQo+Pj4gZHJpdmVyLiAgVGhpcyBhbGxvd3MgdXMgbW9yZSByZWxpYWJs ZSBob3RwbHVnIG5vdGlmaWNhdGlvbiBhbmQgRUxEDQo+Pj4gdHJhbnNmZXIgd2l0aG91dCBhY2Nl c3NpbmcgSEQtYXVkaW8gYnVzOyBpdCdzIG1vcmUgZWZmaWNpZW50LCBhbmQgbW9yZQ0KPj4+IGlt cG9ydGFudGx5LCBpdCB3b3JrcyB3aXRob3V0IHdha2luZyB1cCB0aGUgcnVudGltZSBQTS4NCj4+ Pg0KPj4+IFRoZSBpbXBsZW1lbnRhdGlvbiBpcyByYXRoZXIgc2ltcGxpc3RpYzogcmFkZW9uIGRy aXZlciBwcm92aWRlcyB0aGUNCj4+PiBnZXRfZWxkIG9wcyBmb3IgSEQtYXVkaW8sIGFuZCBpdCBu b3RpZmllcyB0aGUgYXVkaW8gaG90cGx1ZyB2aWENCj4+PiBwaW5fZWxkX25vdGlmeSBjYWxsYmFj ayB1cG9uIGVhY2ggcmFkZW9uX2F1ZGlvX2VuYWJsZSgpIGNhbGwuDQo+Pj4gVGhlIHBpbi0+aWQg aXMgcmVmZXJyZWQgYXMgdGhlIHBvcnQgbnVtYmVyIHBhc3NlZCB0byB0aGUgbm90aWZpZXINCj4+ PiBjYWxsYmFjaywgYW5kIHRoZSBjb3JyZXNwb25kaW5nIGNvbm5lY3RvciBpcyBsb29rZWQgdGhy b3VnaCB0aGUNCj4+PiBlbmNvZGVyIGxpc3QgaW4gdGhlIGdldF9lbGQgY2FsbGJhY2sgaW4gdHVy bi4NCj4+IE9uIG1vc3Qgb2xkZXIgUmFkZW9uIHBhcnRzIHlvdSBvbmx5IGdvdCBvbmUgYXVkaW8g Y29kZWMgd2hpY2ggY2FuIGJlDQo+PiByb3V0ZWQgdG8gbXVsdGlwbGUgY29ubmVjdG9ycy4NCj4+ DQo+PiBBcyBmYXIgYXMgSSBjYW4gc2VlIHRoaXMgaXMgbm90IGNvcnJlY3RseSBzdXBwb3J0ZWQg d2l0aCB0aGlzIGZyYW1ld29yaw0KPj4gaGVyZSBzaW5jZSB3ZSBvbmx5IGdyYWIgdGhlIGZpcnN0 IEVMRC4gSXMgdGhhdCBjb3JyZWN0Pw0KPiBIcm0sIGhvdyBkb2VzIGl0IHdvcmsgY3VycmVudGx5 ICh3aXRob3V0IHRoZSBwYXRjaCkgaW4gdGhlIGhhcmR3YXJlDQo+IGxldmVsPyAgSSBtZWFuLCB0 aGUgdW5zb2xpY2l0ZWQgZXZlbnQgaXMgc3RpbGwgdHJpZ2dlcmVkIHZpYSBIRC1hdWRpbw0KPiBi dXMgYXMgd2VsbCBhcyB0aGUgcGFydGlhbCBFTEQgcGFzcy10aHJvdWdoIHZpYSBIRC1hdWRpby4g IElzbid0IHRoZQ0KPiByZXBvcnRlZCBwaW4gSUQgY29ycmVzcG9uZGluZyB0byB0aGF0IGNvbm5l Y3Rvcj8NCg0KVGhlIGhhcmR3YXJlIHdlIGFyZSB0YWxraW5nIGFib3V0IGhlcmUgZG9lc24ndCBo YXZlIEVMRCBzdXBwb3J0IGF0IGFsbC4NCg0KU28gbm8gRUxEIHBhc3MtdGhyb3VnaCBvciB1bnNv bGljaXRlZCBldmVudCB3aGVuIHNvbWV0aGluZyBpcyBjb25uZWN0ZWQuDQoNCllvdSBiYXNpY2Fs bHkgaGF2ZSB0byBzZXR1cCB0aGUgY2FwYWJpbGl0aWVzIGluIHRoZSBhcHBsaWNhdGlvbnMgbWFu dWFsbHkuDQoNCj4+IEFkZGl0aW9uYWwgdG8gdGhhdCBJJ20gbm90IHN1cmUgaWYgdGhhdCBpcyB0 aGUgcmlnaHQgZGVzaWduIGZvciBBTUQNCj4+IGhhcmR3YXJlIGluIGdlbmVyYWwgc2luY2Ugd2Ug ZG9uJ3QgcmVhbGx5IHN1cHBvcnQgRUxEIGluIHRoZSBmaXJzdCBwbGFjZS4NCj4gRUxEIGlzIGEg a2luZCBvZiBtYW5kYXRvcnkgYW5kIHdlJ3ZlIGFzc2VtYmxlZCB0aGUgRUxEIGZyb20gdGhlDQo+ IHBhcnRpYWwgaW5mb3JtYXRpb24gdGFrZW4gdmlhIEhELWF1ZGlvIGJ1cyBsaWtlIHNwZWFrZXIg YWxsb2NhdGlvbiBhbmQNCj4gb3RoZXIgYml0cywgc28gZmFyLiAgSSB0aG91Z2h0IHRoZSB2ZXJ5 IHNhbWUgaW5mb3JtYXRpb24gaXMgZm91bmQgaW4NCj4gY29ubmVjdG9yLT5lZGlkIHRoYXQgaXMg YWx3YXlzIHBhcnNlZCBhdCBFRElEIHBhcnNpbmcgdGltZS4NCj4NCj4gTGV0IG1lIGtub3cgaWYg SSdtIG9idmlvdXNseSBvdmVybG9va2luZyBzb21ldGhpbmcuDQoNClRoZSBoYXJkd2FyZSB3ZSBh cmUgdGFsa2luZyBhYm91dCBleGlzdGVkIHdheSBiZWZvcmUgdGhlIEVMRCBzdGFuZGFyZC4gDQpT byBub3RoaW5nIGZyb20gdGhlIEVMRCBzdGFuZGFyZCBpcyBzdXBwb3J0ZWQgaGVyZS4NCg0KSSBt ZWFuIGl0IHdvdWxkIGJlIGdyZWF0IHRvIGdldCB0aGlzIGNsZWFuZWQgdXAsIGJ1dCB5b3UgbmVl ZCB0byB0YWtlIA0KY2FyZSBhbGwgdGhvc2UgbmFzdHkgY29ybmVyIGNhc2VzIG5vdCBzdXBwb3J0 ZWQgYnkgRUxELg0KDQpMaWtlIG9uZSBhdWRpbyBjb2RlYyByb3V0ZWQgdG8gbXVsdGlwbGUgcGh5 c2ljYWwgY29ubmVjdG9ycy4gSW4gdGhlb3J5IA0KeW91IGV2ZW4gaGF2ZSB0aGUgYWJpbGl0eSB0 byByb3V0ZSB0aGUgbGVmdCBhbmQgcmlnaHQgY2hhbm5lbCB0byANCmRpZmZlcmVudCBjb25uZWN0 b3JzLg0KDQpJIHRoaW5rIG5vdXZlYXUgaGFzIGFuIGV2ZW4gbmFzdGllciBjYXNlIHdoZXJlIHlv dSBoYXZlIGFuIGF1ZGlvIGNvZGVjIA0Kd2hpY2ggY2FuIGJlIGF0dGFjaGVkIGJvdGggdG8gYSBu b3JtYWwgYXVkaW8gcGx1ZyBhcyB3ZWxsIGFzIHRvIGEgDQpkaXNwbGF5IGRldmljZSB0byByb3V0 ZSBzdHVmZiBvdmVyIEhETUkuDQoNCllvdSB3b24ndCBmaW5kIGFueSBvZiB0aGF0IG9uIG1vZGVy biBoYXJkd2FyZSwgc28gSSdtIG5vdCBzdXJlIGlmIGl0J3MgDQp3b3J0aCBwdXR0aW5nIHRvIG11 Y2ggZWZmb3J0IGludG8gaXQgOikNCg0KUmVnYXJkcywNCkNocmlzdGlhbi4NCg0KPg0KPg0KPiBU aGFua3MhDQo+DQo+IFRha2FzaGkNCj4NCj4NCj4+IFJlZ2FyZHMsDQo+PiBDaHJpc3RpYW4uDQo+ Pg0KPj4+IFRoZSBiaW5kIGFuZCB1bmJpbmQgY2FsbGJhY2tzIGhhbmRsZSB0aGUgZGV2aWNlLWxp bmsgc28gdGhhdCBpdA0KPj4+IGFzc3VyZXMgdGhlIFBNIGNhbGwgb3JkZXIuDQo+Pj4NCj4+PiBB Y2tlZC1ieTogSmltIFF1IDxKaW0uUXVAYW1kLmNvbT4NCj4+PiBTaWduZWQtb2ZmLWJ5OiBUYWth c2hpIEl3YWkgPHRpd2FpQHN1c2UuZGU+DQo+Pj4gLS0tDQo+Pj4gICAgZHJpdmVycy9ncHUvZHJt L0tjb25maWcgICAgICAgICAgICAgICB8ICAxICsNCj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vcmFk ZW9uL3JhZGVvbi5oICAgICAgIHwgIDMgKysNCj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vcmFkZW9u L3JhZGVvbl9hdWRpby5jIHwgOTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysN Cj4+PiAgICAzIGZpbGVzIGNoYW5nZWQsIDk2IGluc2VydGlvbnMoKykNCj4+Pg0KPj4+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vS2NvbmZpZyBiL2RyaXZlcnMvZ3B1L2RybS9LY29uZmln DQo+Pj4gaW5kZXggMWQ4MDIyMjU4N2FkLi44YjQ0Y2M0NTg4MzAgMTAwNjQ0DQo+Pj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL0tjb25maWcNCj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vS2NvbmZp Zw0KPj4+IEBAIC0yMDksNiArMjA5LDcgQEAgY29uZmlnIERSTV9SQURFT04NCj4+PiAgICAJc2Vs ZWN0IEhXTU9ODQo+Pj4gICAgCXNlbGVjdCBCQUNLTElHSFRfQ0xBU1NfREVWSUNFDQo+Pj4gICAg CXNlbGVjdCBJTlRFUlZBTF9UUkVFDQo+Pj4gKwlzZWxlY3QgU05EX0hEQV9DT01QT05FTlQgaWYg U05EX0hEQV9DT1JFDQo+Pj4gICAgCWhlbHANCj4+PiAgICAJICBDaG9vc2UgdGhpcyBvcHRpb24g aWYgeW91IGhhdmUgYW4gQVRJIFJhZGVvbiBncmFwaGljcyBjYXJkLiAgVGhlcmUNCj4+PiAgICAJ ICBhcmUgYm90aCBQQ0kgYW5kIEFHUCB2ZXJzaW9ucy4gIFlvdSBkb24ndCBuZWVkIHRvIGNob29z ZSB0aGlzIHRvDQo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9u LmggYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oDQo+Pj4gaW5kZXggMzI4MDhlNTBi ZTEyLi4yOTczMjg0Yjc5NjEgMTAwNjQ0DQo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVv bi9yYWRlb24uaA0KPj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmgNCj4+ PiBAQCAtNzUsNiArNzUsNyBAQA0KPj4+ICAgICNpbmNsdWRlIDxkcm0vdHRtL3R0bV9leGVjYnVm X3V0aWwuaD4NCj4+PiAgICANCj4+PiAgICAjaW5jbHVkZSA8ZHJtL2RybV9nZW0uaD4NCj4+PiAr I2luY2x1ZGUgPGRybS9kcm1fYXVkaW9fY29tcG9uZW50Lmg+DQo+Pj4gICAgDQo+Pj4gICAgI2lu Y2x1ZGUgInJhZGVvbl9mYW1pbHkuaCINCj4+PiAgICAjaW5jbHVkZSAicmFkZW9uX21vZGUuaCIN Cj4+PiBAQCAtMTc2MSw2ICsxNzYyLDggQEAgc3RydWN0IHI2MDBfYXVkaW8gew0KPj4+ICAgIAlz dHJ1Y3QgcmFkZW9uX2F1ZGlvX2Z1bmNzICpoZG1pX2Z1bmNzOw0KPj4+ICAgIAlzdHJ1Y3QgcmFk ZW9uX2F1ZGlvX2Z1bmNzICpkcF9mdW5jczsNCj4+PiAgICAJc3RydWN0IHJhZGVvbl9hdWRpb19i YXNpY19mdW5jcyAqZnVuY3M7DQo+Pj4gKwlzdHJ1Y3QgZHJtX2F1ZGlvX2NvbXBvbmVudCAqY29t cG9uZW50Ow0KPj4+ICsJYm9vbCBjb21wb25lbnRfcmVnaXN0ZXJlZDsNCj4+PiAgICB9Ow0KPj4+ ICAgIA0KPj4+ICAgIC8qDQo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uX2F1ZGlvLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5jDQo+ Pj4gaW5kZXggYjlhZWE1Nzc2ZDNkLi45NzY1MDJlMzFjNDMgMTAwNjQ0DQo+Pj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fYXVkaW8uYw0KPj4+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9yYWRlb24vcmFkZW9uX2F1ZGlvLmMNCj4+PiBAQCAtMjMsNiArMjMsNyBAQA0KPj4+ICAg ICAqLw0KPj4+ICAgIA0KPj4+ICAgICNpbmNsdWRlIDxsaW51eC9nY2QuaD4NCj4+PiArI2luY2x1 ZGUgPGxpbnV4L2NvbXBvbmVudC5oPg0KPj4+ICAgIA0KPj4+ICAgICNpbmNsdWRlIDxkcm0vZHJt X2NydGMuaD4NCj4+PiAgICAjaW5jbHVkZSAicmFkZW9uLmgiDQo+Pj4gQEAgLTI0Miw2ICsyNDMs MTQgQEAgc3RhdGljIHN0cnVjdCByYWRlb25fYXVkaW9fZnVuY3MgZGNlNl9kcF9mdW5jcyA9IHsN Cj4+PiAgICAJLmRwbXMgPSBldmVyZ3JlZW5fZHBfZW5hYmxlLA0KPj4+ICAgIH07DQo+Pj4gICAg DQo+Pj4gK3N0YXRpYyB2b2lkIHJhZGVvbl9hdWRpb19jb21wb25lbnRfbm90aWZ5KHN0cnVjdCBk cm1fYXVkaW9fY29tcG9uZW50ICphY29tcCwNCj4+PiArCQkJCQkgIGludCBwb3J0KQ0KPj4+ICt7 DQo+Pj4gKwlpZiAoYWNvbXAgJiYgYWNvbXAtPmF1ZGlvX29wcyAmJiBhY29tcC0+YXVkaW9fb3Bz LT5waW5fZWxkX25vdGlmeSkNCj4+PiArCQlhY29tcC0+YXVkaW9fb3BzLT5waW5fZWxkX25vdGlm eShhY29tcC0+YXVkaW9fb3BzLT5hdWRpb19wdHIsDQo+Pj4gKwkJCQkJCSBwb3J0LCAtMSk7DQo+ Pj4gK30NCj4+PiArDQo+Pj4gICAgc3RhdGljIHZvaWQgcmFkZW9uX2F1ZGlvX2VuYWJsZShzdHJ1 Y3QgcmFkZW9uX2RldmljZSAqcmRldiwNCj4+PiAgICAJCQkJc3RydWN0IHI2MDBfYXVkaW9fcGlu ICpwaW4sIHU4IGVuYWJsZV9tYXNrKQ0KPj4+ICAgIHsNCj4+PiBAQCAtMjY5LDYgKzI3OCw4IEBA IHN0YXRpYyB2b2lkIHJhZGVvbl9hdWRpb19lbmFibGUoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJk ZXYsDQo+Pj4gICAgDQo+Pj4gICAgCWlmIChyZGV2LT5hdWRpby5mdW5jcy0+ZW5hYmxlKQ0KPj4+ ICAgIAkJcmRldi0+YXVkaW8uZnVuY3MtPmVuYWJsZShyZGV2LCBwaW4sIGVuYWJsZV9tYXNrKTsN Cj4+PiArDQo+Pj4gKwlyYWRlb25fYXVkaW9fY29tcG9uZW50X25vdGlmeShyZGV2LT5hdWRpby5j b21wb25lbnQsIHBpbi0+aWQpOw0KPj4+ICAgIH0NCj4+PiAgICANCj4+PiAgICBzdGF0aWMgdm9p ZCByYWRlb25fYXVkaW9faW50ZXJmYWNlX2luaXQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYp DQo+Pj4gQEAgLTI5Miw2ICszMDMsNzkgQEAgc3RhdGljIHZvaWQgcmFkZW9uX2F1ZGlvX2ludGVy ZmFjZV9pbml0KHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQ0KPj4+ICAgIAl9DQo+Pj4gICAg fQ0KPj4+ICAgIA0KPj4+ICtzdGF0aWMgaW50IHJhZGVvbl9hdWRpb19jb21wb25lbnRfZ2V0X2Vs ZChzdHJ1Y3QgZGV2aWNlICprZGV2LCBpbnQgcG9ydCwNCj4+PiArCQkJCQkgIGludCBwaXBlLCBi b29sICplbmFibGVkLA0KPj4+ICsJCQkJCSAgdW5zaWduZWQgY2hhciAqYnVmLCBpbnQgbWF4X2J5 dGVzKQ0KPj4+ICt7DQo+Pj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gZGV2X2dldF9kcnZk YXRhKGtkZXYpOw0KPj4+ICsJc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyOw0KPj4+ICsJc3Ry dWN0IHJhZGVvbl9lbmNvZGVyICpyYWRlb25fZW5jb2RlcjsNCj4+PiArCXN0cnVjdCByYWRlb25f ZW5jb2Rlcl9hdG9tX2RpZyAqZGlnOw0KPj4+ICsJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5l Y3RvcjsNCj4+PiArCWludCByZXQgPSAwOw0KPj4+ICsNCj4+PiArCSplbmFibGVkID0gZmFsc2U7 DQo+Pj4gKwlsaXN0X2Zvcl9lYWNoX2VudHJ5KGVuY29kZXIsICZkZXYtPm1vZGVfY29uZmlnLmVu Y29kZXJfbGlzdCwgaGVhZCkgew0KPj4+ICsJCWlmICghcmFkZW9uX2VuY29kZXJfaXNfZGlnaXRh bChlbmNvZGVyKSkNCj4+PiArCQkJY29udGludWU7DQo+Pj4gKwkJcmFkZW9uX2VuY29kZXIgPSB0 b19yYWRlb25fZW5jb2RlcihlbmNvZGVyKTsNCj4+PiArCQlkaWcgPSByYWRlb25fZW5jb2Rlci0+ ZW5jX3ByaXY7DQo+Pj4gKwkJaWYgKCFkaWctPnBpbiB8fCBkaWctPnBpbi0+aWQgIT0gcG9ydCkN Cj4+PiArCQkJY29udGludWU7DQo+Pj4gKwkJY29ubmVjdG9yID0gcmFkZW9uX2dldF9jb25uZWN0 b3JfZm9yX2VuY29kZXIoZW5jb2Rlcik7DQo+Pj4gKwkJaWYgKGNvbm5lY3Rvcikgew0KPj4+ICsJ CQkqZW5hYmxlZCA9IHRydWU7DQo+Pj4gKwkJCXJldCA9IGRybV9lbGRfc2l6ZShjb25uZWN0b3It PmVsZCk7DQo+Pj4gKwkJCW1lbWNweShidWYsIGNvbm5lY3Rvci0+ZWxkLCBtaW4obWF4X2J5dGVz LCByZXQpKTsNCj4+PiArCQkJYnJlYWs7DQo+Pj4gKwkJfQ0KPj4+ICsJfQ0KPj4+ICsNCj4+PiAr CXJldHVybiByZXQ7DQo+Pj4gK30NCj4+PiArDQo+Pj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJt X2F1ZGlvX2NvbXBvbmVudF9vcHMgcmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9vcHMgPSB7DQo+Pj4g KwkuZ2V0X2VsZCA9IHJhZGVvbl9hdWRpb19jb21wb25lbnRfZ2V0X2VsZCwNCj4+PiArfTsNCj4+ PiArDQo+Pj4gK3N0YXRpYyBpbnQgcmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9iaW5kKHN0cnVjdCBk ZXZpY2UgKmtkZXYsDQo+Pj4gKwkJCQkgICAgICAgc3RydWN0IGRldmljZSAqaGRhX2tkZXYsIHZv aWQgKmRhdGEpDQo+Pj4gK3sNCj4+PiArCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBkZXZfZ2V0 X2RydmRhdGEoa2Rldik7DQo+Pj4gKwlzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiA9IGRldi0+ ZGV2X3ByaXZhdGU7DQo+Pj4gKwlzdHJ1Y3QgZHJtX2F1ZGlvX2NvbXBvbmVudCAqYWNvbXAgPSBk YXRhOw0KPj4+ICsNCj4+PiArCWlmIChXQVJOX09OKCFkZXZpY2VfbGlua19hZGQoaGRhX2tkZXYs IGtkZXYsIERMX0ZMQUdfU1RBVEVMRVNTKSkpDQo+Pj4gKwkJcmV0dXJuIC1FTk9NRU07DQo+Pj4g Kw0KPj4+ICsJZHJtX21vZGVzZXRfbG9ja19hbGwoZGV2KTsNCj4+PiArCWFjb21wLT5vcHMgPSAm cmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9vcHM7DQo+Pj4gKwlhY29tcC0+ZGV2ID0ga2RldjsNCj4+ PiArCXJkZXYtPmF1ZGlvLmNvbXBvbmVudCA9IGFjb21wOw0KPj4+ICsJZHJtX21vZGVzZXRfdW5s b2NrX2FsbChkZXYpOw0KPj4+ICsNCj4+PiArCXJldHVybiAwOw0KPj4+ICt9DQo+Pj4gKw0KPj4+ ICtzdGF0aWMgdm9pZCByYWRlb25fYXVkaW9fY29tcG9uZW50X3VuYmluZChzdHJ1Y3QgZGV2aWNl ICprZGV2LA0KPj4+ICsJCQkJCSAgc3RydWN0IGRldmljZSAqaGRhX2tkZXYsIHZvaWQgKmRhdGEp DQo+Pj4gK3sNCj4+PiArCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBkZXZfZ2V0X2RydmRhdGEo a2Rldik7DQo+Pj4gKwlzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiA9IGRldi0+ZGV2X3ByaXZh dGU7DQo+Pj4gKwlzdHJ1Y3QgZHJtX2F1ZGlvX2NvbXBvbmVudCAqYWNvbXAgPSBkYXRhOw0KPj4+ ICsNCj4+PiArCWRybV9tb2Rlc2V0X2xvY2tfYWxsKGRldik7DQo+Pj4gKwlyZGV2LT5hdWRpby5j b21wb25lbnQgPSBOVUxMOw0KPj4+ICsJYWNvbXAtPm9wcyA9IE5VTEw7DQo+Pj4gKwlhY29tcC0+ ZGV2ID0gTlVMTDsNCj4+PiArCWRybV9tb2Rlc2V0X3VubG9ja19hbGwoZGV2KTsNCj4+PiArfQ0K Pj4+ICsNCj4+PiArc3RhdGljIGNvbnN0IHN0cnVjdCBjb21wb25lbnRfb3BzIHJhZGVvbl9hdWRp b19jb21wb25lbnRfYmluZF9vcHMgPSB7DQo+Pj4gKwkuYmluZAk9IHJhZGVvbl9hdWRpb19jb21w b25lbnRfYmluZCwNCj4+PiArCS51bmJpbmQJPSByYWRlb25fYXVkaW9fY29tcG9uZW50X3VuYmlu ZCwNCj4+PiArfTsNCj4+PiArDQo+Pj4gICAgc3RhdGljIGludCByYWRlb25fYXVkaW9fY2hpcHNl dF9zdXBwb3J0ZWQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpDQo+Pj4gICAgew0KPj4+ICAg IAlyZXR1cm4gQVNJQ19JU19EQ0UyKHJkZXYpICYmICFBU0lDX0lTX05PRENFKHJkZXYpOw0KPj4+ IEBAIC0zMzgsNiArNDIyLDkgQEAgaW50IHJhZGVvbl9hdWRpb19pbml0KHN0cnVjdCByYWRlb25f ZGV2aWNlICpyZGV2KQ0KPj4+ICAgIAlmb3IgKGkgPSAwOyBpIDwgcmRldi0+YXVkaW8ubnVtX3Bp bnM7IGkrKykNCj4+PiAgICAJCXJhZGVvbl9hdWRpb19lbmFibGUocmRldiwgJnJkZXYtPmF1ZGlv LnBpbltpXSwgMCk7DQo+Pj4gICAgDQo+Pj4gKwlpZiAoIWNvbXBvbmVudF9hZGQocmRldi0+ZGV2 LCAmcmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9iaW5kX29wcykpDQo+Pj4gKwkJcmRldi0+YXVkaW8u Y29tcG9uZW50X3JlZ2lzdGVyZWQgPSB0cnVlOw0KPj4+ICsNCj4+PiAgICAJcmV0dXJuIDA7DQo+ Pj4gICAgfQ0KPj4+ICAgIA0KPj4+IEBAIC00OTAsNiArNTc3LDExIEBAIHZvaWQgcmFkZW9uX2F1 ZGlvX2Zpbmkoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpDQo+Pj4gICAgCQlyYWRlb25fYXVk aW9fZW5hYmxlKHJkZXYsICZyZGV2LT5hdWRpby5waW5baV0sIDApOw0KPj4+ICAgIA0KPj4+ICAg IAlyZGV2LT5hdWRpby5lbmFibGVkID0gZmFsc2U7DQo+Pj4gKw0KPj4+ICsJaWYgKHJkZXYtPmF1 ZGlvLmNvbXBvbmVudF9yZWdpc3RlcmVkKSB7DQo+Pj4gKwkJY29tcG9uZW50X2RlbChyZGV2LT5k ZXYsICZyYWRlb25fYXVkaW9fY29tcG9uZW50X2JpbmRfb3BzKTsNCj4+PiArCQlyZGV2LT5hdWRp by5jb21wb25lbnRfcmVnaXN0ZXJlZCA9IGZhbHNlOw0KPj4+ICsJfQ0KPj4+ICAgIH0NCj4+PiAg ICANCj4+PiAgICBzdGF0aWMgdm9pZCByYWRlb25fYXVkaW9fc2V0X2R0byhzdHJ1Y3QgZHJtX2Vu Y29kZXIgKmVuY29kZXIsIHVuc2lnbmVkIGludCBjbG9jaykNCg0KX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs