From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [PATCH v2 1/3] drm/i915/hda: Add audio component stub Date: Fri, 13 May 2016 12:04:57 +0200 Message-ID: References: <1460026644-30479-2-git-send-email-tiwai@suse.de> <1463076413-4048-1-git-send-email-imre.deak@intel.com> <1463133008.13193.17.camel@intel.com> 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 mx2.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6250A88089 for ; Fri, 13 May 2016 10:04:59 +0000 (UTC) In-Reply-To: <1463133008.13193.17.camel@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: imre.deak@intel.com Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAxMyBNYXkgMjAxNiAxMTo1MDowOSArMDIwMCwKSW1yZSBEZWFrIHdyb3RlOgo+IAo+ IE9uIEZyaSwgMjAxNi0wNS0xMyBhdCAwOTo0OCArMDIwMCwgVGFrYXNoaSBJd2FpIHdyb3RlOgo+ ID4gT24gVGh1LCAxMiBNYXkgMjAxNiAyMDowNjo1MyArMDIwMCwKPiA+IEltcmUgRGVhayB3cm90 ZToKPiA+ID4gCj4gPiA+IFVzZXIgbWF5IHBhc3Mgbm9tb2Rlc2V0IG9yIGk5MTUubW9kZXNldD0w IG9wdGlvbiB0byBkaXNhYmxlIGk5MTUgS01TCj4gPiA+IGV4cGxpY2l0bHkuwqDCoEFsdGhvdWdo IHRoaXMgaXRzZWxmIHdvcmtzIGZpbmUsIGl0IGJyZWFrcyB0aGUgd2Vhawo+ID4gPiBkZXBlbmRl bmN5IHRoZSBIRC1hdWRpbyBkcml2ZXIgcmVxdWlyZXMsIGFuZCBpdCdzIHRoZSByZWFzb24gdGhl Cj4gPiA+IGRlbGF5ZWQgY29tcG9uZW50IGJpbmRpbmcgaXNuJ3QgaW1wbGVtZW50ZWQgaW4gSEQt YXVkaW8uwqDCoFNpbmNlIGk5MTUKPiA+ID4gZG9lc24ndCBub3RpZnkgaXRzIGRpc2FibGVtZW50 LCBIRC1hdWRpbyB3b3VsZCBiZSBibG9ja2VkCj4gPiA+IHVubmVjZXNzYXJpbHkgZW5kbGVzc2x5 LCB3YWl0aW5nIGZvciB0aGUgYmluZCB3aXRoIGk5MTUuCj4gPiA+IAo+ID4gPiBUaGlzIHBhdGNo IGludHJvZHVjZXMgYSBzdHViIGF1ZGlvIGNvbXBvbmVudCBiaW5kaW5nIHdoZW4gaTkxNSBkcml2 ZXIKPiA+ID4gaXMgbG9hZGVkIHdpdGggS01TIG9mZiBsaWtlIHRoZSBib290IG9wdGlvbnMgYWJv dmUuwqDCoFRoZW4gaTkxNSBkcml2ZXIKPiA+ID4gc3RpbGwgcmVnaXN0ZXJzIHRoZSBzbGF2ZSBj b21wb25lbnQgYnV0IHdpdGggdGhlIG5ldyAiZGlzYWJsZWQiIG9wcwo+ID4gPiBmbGFnLCBzbyB0 aGF0IHRoZSBtYXN0ZXIgY29tcG9uZW50IChIRC1hdWRpbykgY2FuIGtub3cgY2xlYXJseSB0aGUK PiA+ID4gc2xhdmUgc3RhdGUuCj4gPiA+IAo+ID4gPiB2MjoKPiA+ID4gLSBGYWlsIHRoZSBwcm9i ZSBpbiBjYXNlIGNvbXBvbmVudCByZWdpc3RyYXRpb24gZmFpbHMsIGluc3RlYWQgb2YKPiA+ID4g wqAgc3VwcHJlc3NpbmcgdGhlIGVycm9yLiAoVmlsbGUpCj4gPiA+IC0gUmVnaXN0ZXIgdGhlIGNv bXBvbmVudCBvbmx5IGZvciB0aGUgcmVhbCBQQ0kgZGV2aWNlIGZ1bmN0aW9uLgo+ID4gPiAKPiA+ ID4gQ0M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4g PiA+IFNpZ25lZC1vZmYtYnk6IEltcmUgRGVhayA8aW1yZS5kZWFrQGludGVsLmNvbT4KPiA+ID4g U2lnbmVkLW9mZi1ieTogVGFrYXNoaSBJd2FpIDx0aXdhaUBzdXNlLmRlPgo+ID4gCj4gPiBJIGhh dmVuJ3QgcmVjZWl2ZWQgdjIgZm9yIHRoZSByZXN0IHR3byBwYXRjaGVzLsKgwqBJIHN1cHBvc2Ug dGhleSBhcmUKPiA+IHVuY2hhbmdlZCBmcm9tIHYxPwo+IAo+IEkgaGF2ZW4ndCBjaGFuZ2VkIHRo ZW0uIFRoZXkgbG9vayBvayB0byBtZSwgYnV0IHNvbWVvbmUgZWxzZSBzaG91bGQKPiByZXZpZXcg cGF0Y2ggMy4KPiAKPiA+IEl0J2QgYmUgZ29vZCBpZiB3ZSBjYW4gZ2V0IHRoaXMgaW50byA0Ljcu wqDCoFdpbGwgdGhpcyBnbyB0aHJvdWdoIGRybQo+ID4gdHJlZSwgb3IgbXkgdHJlZT/CoMKgSSBk b24ndCBtaW5kIGVpdGhlciB3YXkuwqDCoElmIHlvdSBtZXJnZSB0aGlzIGRvCj4gPiBkcm0oLWlu dGVsKSB0cmVlLCBqdXN0IGxldCBtZSBrbm93IHRoZSBzdGFibGUgZ2l0IGlkIHNvIHRoYXQgSSBj YW4KPiA+IG1lcmdlIGl0IHRvIHNvdW5kLmdpdCB0cmVlIHdpdGggbXkgcmVzdCB0d28gcGF0Y2hl cy4KPiAKPiBBZGRpbmcgRGFuaWVsLiBJIHRoaW5rIGZvciBiaXNlY3RhYmlsaXR5IHBhdGNoIDEg YW5kIDIgc2hvdWxkIGJlCj4gY29tYmluZWQsIHRoZW4gdGhhdCBjb21iaW5lZCBwYXRjaCBjb3Vs ZCBnbyB0aHJvdWdoIGRybS1pbnRlbCwgd2hpbGUKPiBwYXRjaCAzIGNvdWxkIGdvIHRocm91Z2gg dGhlIHNvdW5kIHRyZWUuCgpXZWxsLCB0aGUgcGF0Y2ggMiBhbmQgcGF0Y2ggMyBoYXZlIHRvIGJl IGFwcGxpZWQgYWZ0ZXIgdGhlIHBhdGNoIDEgaW4KYW55d2F5LiAgU28sIEkgY2FuIGFwcGx5IDIg YW5kIDMgb25jZSBhZnRlciBtZXJnaW5nIHRoZSBjaGFuZ2UgZm9yCnBhdGNoIDEgYmFjayBpbnRv IHNvdW5kIHRyZWUuICBUaGF0IGlzLCB0aHJlZSBvcHRpb25zOgoKMS4gQXBwbHkgYWxsIDEsIDIg YW5kIDMgaW4gZHJtIHRyZWU6CiAgIGhvd2V2ZXIsIHBhdGNoIDMgd29uJ3QgYmUgYXBwbGllZCBj bGVhbmx5IHRvIDQuNiwgc28gZHJtIHRyZWUgd291bGQKICAgbmVlZCB0byBtZXJnZSBzb3VuZCBm b3ItbmV4dCBicmFuY2ggYmVmb3JlaGFuZC4KCjIuIEFwcGx5IGFsbCAxLCAyIGFuZCAzIGluIHNv dW5kIHRyZWU6CiAgIHBhdGNoIDEgd29uJ3QgYmUgYXBwbGllZCB0byA0LjYgY2xlYW5seSwgc28g c291bmQgdHJlZSBuZWVkcyB0bwogICBtZXJnZSBkcm0gdHJlZSBhdCBmaXJzdC4KCjMuIEFwcGx5 IHBhdGNoIDEgdG8gZHJtIHRyZWUsIHRoZW4gYXBwbHkgMiBhbmQgMyBpbiBzb3VuZCB0cmVlOgog ICBzb3VuZCB0cmVlIHdpbGwgbWVyZ2UgZHJtIHRyZWUgYXBwbGllZCB3aXRoIHBhdGNoIDEsIHRo ZW4gYXBwbHkgMgogICBhbmQgMyBvbiB0b3Agb2YgaXQuCgoKVGFrYXNoaQoKPiAKPiAtLUltcmUK PiAKPiA+IHRoYW5rcywKPiA+IAo+ID4gVGFrYXNoaQo+ID4gCj4gPiA+IC0tLQo+ID4gPiDCoGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmPCoMKgwqDCoHwgNTEgKysrKysrKysrKysrKysr KysrKysrKystLS0tLS0tLS0tLS0tCj4gPiA+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf YXVkaW8uYyB8IDUzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gPiA+ IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmjCoMKgwqB8wqDCoDIgKysKPiA+ID4g wqBpbmNsdWRlL2RybS9pOTE1X2NvbXBvbmVudC5owqDCoMKgwqDCoMKgwqB8wqDCoDUgKysrKwo+ ID4gPiDCoDQgZmlsZXMgY2hhbmdlZCwgOTMgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0p Cj4gPiA+IAo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKPiA+ID4gaW5kZXggNWFlNzk2MC4u YjEyNzgxMCAxMDA2NDQKPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu Ywo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCj4gPiA+IEBAIC0x MDE2LDEyICsxMDE2LDYgQEAgc3RhdGljIGludCBpOTE1X3BjaV9wcm9iZShzdHJ1Y3QgcGNpX2Rl diAqcGRldiwgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgKmVudCkKPiA+ID4gwqAJc3RydWN0 IGludGVsX2RldmljZV9pbmZvICppbnRlbF9pbmZvID0KPiA+ID4gwqAJCShzdHJ1Y3QgaW50ZWxf ZGV2aWNlX2luZm8gKikgZW50LT5kcml2ZXJfZGF0YTsKPiA+ID4gwqAKPiA+ID4gLQlpZiAoSVNf UFJFTElNSU5BUllfSFcoaW50ZWxfaW5mbykgJiYgIWk5MTUucHJlbGltaW5hcnlfaHdfc3VwcG9y dCkgewo+ID4gPiAtCQlEUk1fSU5GTygiVGhpcyBoYXJkd2FyZSByZXF1aXJlcyBwcmVsaW1pbmFy eSBoYXJkd2FyZSBzdXBwb3J0LlxuIgo+ID4gPiAtCQkJwqAiU2VlIENPTkZJR19EUk1fSTkxNV9Q UkVMSU1JTkFSWV9IV19TVVBQT1JULCBhbmQvb3IgbW9kcGFyYW0gcHJlbGltaW5hcnlfaHdfc3Vw cG9ydFxuIik7Cj4gPiA+IC0JCXJldHVybiAtRU5PREVWOwo+ID4gPiAtCX0KPiA+ID4gLQo+ID4g PiDCoAkvKiBPbmx5IGJpbmQgdG8gZnVuY3Rpb24gMCBvZiB0aGUgZGV2aWNlLiBFYXJseSBnZW5l cmF0aW9ucwo+ID4gPiDCoAnCoCogdXNlZCBmdW5jdGlvbiAxIGFzIGEgcGxhY2Vob2xkZXIgZm9y IG11bHRpLWhlYWQuIFRoaXMgY2F1c2VzCj4gPiA+IMKgCcKgKiB1cyBjb25mdXNpb24gaW5zdGVh ZCwgZXNwZWNpYWxseSBvbiB0aGUgc3lzdGVtcyB3aGVyZSBib3RoCj4gPiA+IEBAIC0xMDMwLDYg KzEwMjQsMjkgQEAgc3RhdGljIGludCBpOTE1X3BjaV9wcm9iZShzdHJ1Y3QgcGNpX2RldiAqcGRl diwgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgKmVudCkKPiA+ID4gwqAJaWYgKFBDSV9GVU5D KHBkZXYtPmRldmZuKSkKPiA+ID4gwqAJCXJldHVybiAtRU5PREVWOwo+ID4gPiDCoAo+ID4gPiAr CWlmICghKGRyaXZlci5kcml2ZXJfZmVhdHVyZXMgJiBEUklWRVJfTU9ERVNFVCkpIHsKPiA+ID4g KwkJaW50IHJldDsKPiA+ID4gKwo+ID4gPiArCQkvKgo+ID4gPiArCQnCoCogTm90aWZ5IHRoZSBI REEgZHJpdmVyIHNvIHRoYXQgaXQgZG9lc24ndCBibG9jayB3YWl0aW5nIGZvcgo+ID4gPiArCQnC oCogaTkxNSB0byBiZWNvbWUgcmVhZHkuCj4gPiA+ICsJCcKgKi8KPiA+ID4gKwkJcmV0ID0gaTkx NV9hdWRpb19jb21wb25lbnRfc3R1Yl9pbml0KCZwZGV2LT5kZXYpOwo+ID4gPiArCQlpZiAocmV0 KQo+ID4gPiArCQkJcmV0dXJuIHJldDsKPiA+ID4gKwo+ID4gPiArCQkvKiBTaWxlbnRseSBmYWls IGxvYWRpbmcgdG8gbm90IHVwc2V0IHVzZXJzcGFjZS4gKi8KPiA+ID4gKwkJRFJNX0RFQlVHX0RS SVZFUigiS01TIGFuZCBVTVMgZGlzYWJsZWQuXG4iKTsKPiA+ID4gKwo+ID4gPiArCQlyZXR1cm4g MDsKPiA+ID4gKwl9Cj4gPiA+ICsKPiA+ID4gKwlpZiAoSVNfUFJFTElNSU5BUllfSFcoaW50ZWxf aW5mbykgJiYgIWk5MTUucHJlbGltaW5hcnlfaHdfc3VwcG9ydCkgewo+ID4gPiArCQlEUk1fSU5G TygiVGhpcyBoYXJkd2FyZSByZXF1aXJlcyBwcmVsaW1pbmFyeSBoYXJkd2FyZSBzdXBwb3J0Llxu Igo+ID4gPiArCQkJwqAiU2VlIENPTkZJR19EUk1fSTkxNV9QUkVMSU1JTkFSWV9IV19TVVBQT1JU LCBhbmQvb3IgbW9kcGFyYW0gcHJlbGltaW5hcnlfaHdfc3VwcG9ydFxuIik7Cj4gPiA+ICsJCXJl dHVybiAtRU5PREVWOwo+ID4gPiArCX0KPiA+ID4gKwo+ID4gPiDCoAkvKgo+ID4gPiDCoAnCoCog YXBwbGUtZ211eCBpcyBuZWVkZWQgb24gZHVhbCBHUFUgTWFjQm9vayBQcm8KPiA+ID4gwqAJwqAq IHRvIHByb2JlIHRoZSBwYW5lbCBpZiB3ZSdyZSB0aGUgaW5hY3RpdmUgR1BVLgo+ID4gPiBAQCAt MTA0NSw4ICsxMDYyLDE1IEBAIHN0YXRpYyBpbnQgaTkxNV9wY2lfcHJvYmUoc3RydWN0IHBjaV9k ZXYgKnBkZXYsIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkICplbnQpCj4gPiA+IMKgc3RhdGlj IHZvaWQKPiA+ID4gwqBpOTE1X3BjaV9yZW1vdmUoc3RydWN0IHBjaV9kZXYgKnBkZXYpCj4gPiA+ IMKgewo+ID4gPiAtCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBwY2lfZ2V0X2RydmRhdGEocGRl dik7Cj4gPiA+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKPiA+ID4gwqAKPiA+ID4gKwlpZiAo IShkcml2ZXIuZHJpdmVyX2ZlYXR1cmVzICYgRFJJVkVSX01PREVTRVQpKSB7Cj4gPiA+ICsJCWk5 MTVfYXVkaW9fY29tcG9uZW50X3N0dWJfY2xlYW51cCgmcGRldi0+ZGV2KTsKPiA+ID4gKwo+ID4g PiArCQlyZXR1cm47Cj4gPiA+ICsJfQo+ID4gPiArCj4gPiA+ICsJZGV2ID0gcGNpX2dldF9kcnZk YXRhKHBkZXYpOwo+ID4gPiDCoAlkcm1fcHV0X2RldihkZXYpOwo+ID4gPiDCoH0KPiA+ID4gwqAK PiA+ID4gQEAgLTE3NjcsMjQgKzE3OTEsMTUgQEAgc3RhdGljIGludCBfX2luaXQgaTkxNV9pbml0 KHZvaWQpCj4gPiA+IMKgCWlmICh2Z2Fjb25fdGV4dF9mb3JjZSgpICYmIGk5MTUubW9kZXNldCA9 PSAtMSkKPiA+ID4gwqAJCWRyaXZlci5kcml2ZXJfZmVhdHVyZXMgJj0gfkRSSVZFUl9NT0RFU0VU Owo+ID4gPiDCoAo+ID4gPiAtCWlmICghKGRyaXZlci5kcml2ZXJfZmVhdHVyZXMgJiBEUklWRVJf TU9ERVNFVCkpIHsKPiA+ID4gLQkJLyogU2lsZW50bHkgZmFpbCBsb2FkaW5nIHRvIG5vdCB1cHNl dCB1c2Vyc3BhY2UuICovCj4gPiA+IC0JCURSTV9ERUJVR19EUklWRVIoIktNUyBhbmQgVU1TIGRp c2FibGVkLlxuIik7Cj4gPiA+IC0JCXJldHVybiAwOwo+ID4gPiAtCX0KPiA+ID4gLQo+ID4gPiDC oAlpZiAoaTkxNS5udWNsZWFyX3BhZ2VmbGlwKQo+ID4gPiDCoAkJZHJpdmVyLmRyaXZlcl9mZWF0 dXJlcyB8PSBEUklWRVJfQVRPTUlDOwo+ID4gPiDCoAo+ID4gPiAtCXJldHVybiBkcm1fcGNpX2lu aXQoJmRyaXZlciwgJmk5MTVfcGNpX2RyaXZlcik7Cj4gPiA+ICsJcmV0dXJuIHBjaV9yZWdpc3Rl cl9kcml2ZXIoJmk5MTVfcGNpX2RyaXZlcik7Cj4gPiA+IMKgfQo+ID4gPiDCoAo+ID4gPiDCoHN0 YXRpYyB2b2lkIF9fZXhpdCBpOTE1X2V4aXQodm9pZCkKPiA+ID4gwqB7Cj4gPiA+IC0JaWYgKCEo ZHJpdmVyLmRyaXZlcl9mZWF0dXJlcyAmIERSSVZFUl9NT0RFU0VUKSkKPiA+ID4gLQkJcmV0dXJu OyAvKiBOZXZlciBsb2FkZWQgYSBkcml2ZXIuICovCj4gPiA+IC0KPiA+ID4gLQlkcm1fcGNpX2V4 aXQoJmRyaXZlciwgJmk5MTVfcGNpX2RyaXZlcik7Cj4gPiA+ICsJcGNpX3VucmVnaXN0ZXJfZHJp dmVyKCZpOTE1X3BjaV9kcml2ZXIpOwo+ID4gPiDCoH0KPiA+ID4gwqAKPiA+ID4gwqBtb2R1bGVf aW5pdChpOTE1X2luaXQpOwo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfYXVkaW8uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMKPiA+ID4g aW5kZXggYjkzMjljMi4uNjAzYjNmZSAxMDA2NDQKPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfYXVkaW8uYwo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9hdWRpby5jCj4gPiA+IEBAIC04MjQsMyArODI0LDU2IEBAIHZvaWQgaTkxNV9hdWRpb19jb21w b25lbnRfY2xlYW51cChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gPiA+IMKg CWNvbXBvbmVudF9kZWwoZGV2X3ByaXYtPmRldi0+ZGV2LCAmaTkxNV9hdWRpb19jb21wb25lbnRf YmluZF9vcHMpOwo+ID4gPiDCoAlkZXZfcHJpdi0+YXVkaW9fY29tcG9uZW50X3JlZ2lzdGVyZWQg PSBmYWxzZTsKPiA+ID4gwqB9Cj4gPiA+ICsKPiA+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgaTkx NV9hdWRpb19jb21wb25lbnRfb3BzIGk5MTVfYXVkaW9fY29tcG9uZW50X3N0dWJfb3BzID0gewo+ ID4gPiArCS5vd25lcgkJPSBUSElTX01PRFVMRSwKPiA+ID4gKwkuZGlzYWJsZWQJPSB0cnVlLAo+ ID4gPiArfTsKPiA+ID4gKwo+ID4gPiArc3RhdGljIGludCBpOTE1X2F1ZGlvX2NvbXBvbmVudF9z dHViX2JpbmQoc3RydWN0IGRldmljZSAqaTkxNV9zdHViX2RldiwKPiA+ID4gKwkJCQkJwqDCoHN0 cnVjdCBkZXZpY2UgKmhkYV9kZXYsIHZvaWQgKmRhdGEpCj4gPiA+ICt7Cj4gPiA+ICsJc3RydWN0 IGk5MTVfYXVkaW9fY29tcG9uZW50ICphY29tcCA9IGRhdGE7Cj4gPiA+ICsKPiA+ID4gKwlpZiAo V0FSTl9PTihhY29tcC0+b3BzIHx8IGFjb21wLT5kZXYpKQo+ID4gPiArCQlyZXR1cm4gLUVFWElT VDsKPiA+ID4gKwo+ID4gPiArCWFjb21wLT5vcHMgPSAmaTkxNV9hdWRpb19jb21wb25lbnRfc3R1 Yl9vcHM7Cj4gPiA+ICsJYWNvbXAtPmRldiA9IGk5MTVfc3R1Yl9kZXY7Cj4gPiA+ICsKPiA+ID4g KwlyZXR1cm4gMDsKPiA+ID4gK30KPiA+ID4gKwo+ID4gPiArc3RhdGljIHZvaWQgaTkxNV9hdWRp b19jb21wb25lbnRfc3R1Yl91bmJpbmQoc3RydWN0IGRldmljZSAqaTkxNV9zdHViX2RldiwKPiA+ ID4gKwkJCQkJwqDCoMKgwqDCoHN0cnVjdCBkZXZpY2UgKmhkYV9kZXYsIHZvaWQgKmRhdGEpCj4g PiA+ICt7Cj4gPiA+ICsJc3RydWN0IGk5MTVfYXVkaW9fY29tcG9uZW50ICphY29tcCA9IGRhdGE7 Cj4gPiA+ICsKPiA+ID4gKwlhY29tcC0+b3BzID0gTlVMTDsKPiA+ID4gKwlhY29tcC0+ZGV2ID0g TlVMTDsKPiA+ID4gK30KPiA+ID4gKwo+ID4gPiArc3RhdGljIGNvbnN0IHN0cnVjdCBjb21wb25l bnRfb3BzIGk5MTVfYXVkaW9fY29tcG9uZW50X3N0dWJfYmluZF9vcHMgPSB7Cj4gPiA+ICsJLmJp bmQJPSBpOTE1X2F1ZGlvX2NvbXBvbmVudF9zdHViX2JpbmQsCj4gPiA+ICsJLnVuYmluZAk9IGk5 MTVfYXVkaW9fY29tcG9uZW50X3N0dWJfdW5iaW5kLAo+ID4gPiArfTsKPiA+ID4gKwo+ID4gPiAr c3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgY29tcG9uZW50X3N0dWJfZGV2X29w cyA9IHsKPiA+ID4gKwkub3duZXIgPSBUSElTX01PRFVMRSwKPiA+ID4gK307Cj4gPiA+ICsKPiA+ ID4gK2ludCBpOTE1X2F1ZGlvX2NvbXBvbmVudF9zdHViX2luaXQoc3RydWN0IGRldmljZSAqZGV2 KQo+ID4gPiArewo+ID4gPiArCWludCByZXQ7Cj4gPiA+ICsKPiA+ID4gKwlyZXQgPSBjb21wb25l bnRfYWRkKGRldiwgJmk5MTVfYXVkaW9fY29tcG9uZW50X3N0dWJfYmluZF9vcHMpOwo+ID4gPiAr CWlmIChyZXQgPCAwKQo+ID4gPiArCQlEUk1fRVJST1IoImZhaWxlZCB0byBhZGQgYXVkaW8gc3R1 YiBjb21wb25lbnQgKCVkKVxuIiwgcmV0KTsKPiA+ID4gKwo+ID4gPiArCXJldHVybiByZXQ7Cj4g PiA+ICt9Cj4gPiA+ICsKPiA+ID4gK3ZvaWQgaTkxNV9hdWRpb19jb21wb25lbnRfc3R1Yl9jbGVh bnVwKHN0cnVjdCBkZXZpY2UgKmRldikKPiA+ID4gK3sKPiA+ID4gKwljb21wb25lbnRfZGVsKGRl diwgJmk5MTVfYXVkaW9fY29tcG9uZW50X3N0dWJfYmluZF9vcHMpOwo+ID4gPiArfQo+ID4gPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4gPiBpbmRleCAwYTljMTBkLi5hODI4ZTAwIDEwMDY0 NAo+ID4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4gPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4gPiBAQCAtMTExMSw2ICsxMTEx LDggQEAgdm9pZCBpbnRlbF9hdWRpb19jb2RlY19lbmFibGUoc3RydWN0IGludGVsX2VuY29kZXIg KmVuY29kZXIpOwo+ID4gPiDCoHZvaWQgaW50ZWxfYXVkaW9fY29kZWNfZGlzYWJsZShzdHJ1Y3Qg aW50ZWxfZW5jb2RlciAqZW5jb2Rlcik7Cj4gPiA+IMKgdm9pZCBpOTE1X2F1ZGlvX2NvbXBvbmVu dF9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cj4gPiA+IMKgdm9pZCBp OTE1X2F1ZGlvX2NvbXBvbmVudF9jbGVhbnVwKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdik7Cj4gPiA+ICtpbnQgaTkxNV9hdWRpb19jb21wb25lbnRfc3R1Yl9pbml0KHN0cnVjdCBk ZXZpY2UgKmRldik7Cj4gPiA+ICt2b2lkIGk5MTVfYXVkaW9fY29tcG9uZW50X3N0dWJfY2xlYW51 cChzdHJ1Y3QgZGV2aWNlICpkZXYpOwo+ID4gPiDCoAo+ID4gPiDCoC8qIGludGVsX2Rpc3BsYXku YyAqLwo+ID4gPiDCoHZvaWQgaW50ZWxfdXBkYXRlX3Jhd2NsayhzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpOwo+ID4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vaTkxNV9jb21w b25lbnQuaCBiL2luY2x1ZGUvZHJtL2k5MTVfY29tcG9uZW50LmgKPiA+ID4gaW5kZXggYjQ2ZmEw ZS4uMzNkYTg1YSAxMDA2NDQKPiA+ID4gLS0tIGEvaW5jbHVkZS9kcm0vaTkxNV9jb21wb25lbnQu aAo+ID4gPiArKysgYi9pbmNsdWRlL2RybS9pOTE1X2NvbXBvbmVudC5oCj4gPiA+IEBAIC0zOSw2 ICszOSwxMSBAQCBzdHJ1Y3QgaTkxNV9hdWRpb19jb21wb25lbnRfb3BzIHsKPiA+ID4gwqAJwqAq Lwo+ID4gPiDCoAlzdHJ1Y3QgbW9kdWxlICpvd25lcjsKPiA+ID4gwqAJLyoqCj4gPiA+ICsJwqAq IEBkaXNhYmxlZDogaTkxNSBkcml2ZXIgbG9hZGVkIHdpdGggbW9kZXNldD0wLCB0aGUgc2Vydmlj ZXMgcHJvdmlkZWQKPiA+ID4gKwnCoCogdmlhIHRoZSBhdWRpbyBjb21wb25lbnQgaW50ZXJmYWNl IGFyZSBub3QgYXZhaWxhYmxlLgo+ID4gPiArCcKgKi8KPiA+ID4gKwlib29sIGRpc2FibGVkOwo+ ID4gPiArCS8qKgo+ID4gPiDCoAnCoCogQGdldF9wb3dlcjogZ2V0IHRoZSBQT1dFUl9ET01BSU5f QVVESU8gcG93ZXIgd2VsbAo+ID4gPiDCoAnCoCoKPiA+ID4gwqAJwqAqIFJlcXVlc3QgdGhlIHBv d2VyIHdlbGwgdG8gYmUgdHVybmVkIG9uLgo+IApfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK