From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v2 2/5] drm/i915: add component support Date: Tue, 9 Dec 2014 11:12:28 +0100 Message-ID: <20141209101228.GS27182@phenom.ffwll.local> References: <1418056929-7977-3-git-send-email-imre.deak@intel.com> <1418118078-3676-2-git-send-email-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wg0-f42.google.com (mail-wg0-f42.google.com [74.125.82.42]) by gabe.freedesktop.org (Postfix) with ESMTP id 20FCE723F0 for ; Tue, 9 Dec 2014 02:11:57 -0800 (PST) Received: by mail-wg0-f42.google.com with SMTP id z12so371190wgg.15 for ; Tue, 09 Dec 2014 02:11:56 -0800 (PST) Content-Disposition: inline In-Reply-To: <1418118078-3676-2-git-send-email-imre.deak@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 Cc: alsa-devel@alsa-project.org, Takashi Iwai , Daniel Vetter , intel-gfx@lists.freedesktop.org, Jani Nikula List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBEZWMgMDksIDIwMTQgYXQgMTE6NDE6MTdBTSArMDIwMCwgSW1yZSBEZWFrIHdyb3Rl Ogo+IFJlZ2lzdGVyIGEgY29tcG9uZW50IHRvIGJlIHVzZWQgdG8gaW50ZXJmYWNlIHdpdGggdGhl IHNuZF9oZGFfaW50ZWwKPiBkcml2ZXIuIFRoaXMgaXMgbWVhbnQgdG8gcmVwbGFjZSB0aGUgc2Ft ZSBpbnRlcmZhY2UgdGhhdCBpcyBjdXJyZW50bHkKPiBiYXNlZCBvbiBtb2R1bGUgc3ltYm9sIGxv b2t1cC4KPiAKPiB2MjoKPiAtIGNoYW5nZSByb2xlcyBiZXR3ZWVuIHRoZSBoZGEgYW5kIGk5MTUg Y29tcG9uZW50cyAoRGFuaWVsKQo+IC0gYWRkIHRoZSBpbXBsZW1lbnRhdGlvbiB0byBhIG5ldyBm aWxlIChKYW5pKQoKSSBkaXNhZ3JlZSB3aXRoIHRoZSBuYW1lIGhlcmUgLSBpbnRlbF9jb21wb25l bnQuYyBpcyBub3QgcmVhbGx5CmRlc2NyaXB0aXZlIHNpbmNlIGl0J3Mgbm90IHJlYWxseS4gSW1v IGl0IG1ha2VzIG11Y2ggbW9yZSBzZW5zZSB0byBwdXQKdGhpcyBpbnRvIGludGVsX2F1ZGlvLmMu IEFmdGVyIGFsbCBpdCdzIGFsbCBhYm91dCBob3cgd2UgaW50ZXJhY3Qgd2l0aCB0aGUKYXVkaW8g c2lkZSwgd2hpY2ggd2lsbCBiZSBldmVuIG1vcmUgb2J2aW91cyBvbmNlIHdlIGhhdmUgYSBkZWRp Y2F0ZWQKc3ViZGV2aWNlIGZvciB0aGlzLgoKQWxzbyBwbGVhc2UgYWRkIGEgYml0IG9mIGtlcm5l bGRvYyB0byB0aGUgX2luaXQvX2NsZWFudXAgZnVuY3Rpb25zIHdpdGggYQpmZXcgd29yZHMgYWJv dXQgd2hhdCB0aGlzIGlzIHVzZWQgZm9yLiBPciBpZiB5b3Ugd2FudCwgZXh0cmFjdCBhIHNob3J0 CkRPQzogc2VjdGlvbiBmb3IgaXQgZXZlbiB0byBkZXNjcmliZSB0aGUgaW50ZXJhY3Rpb25zLgot RGFuaWVsCgo+IC0gdXNlIGJldHRlciBuYW1lc3BhY2luZyAoSmFuaSkKPiAKPiBTaWduZWQtb2Zm LWJ5OiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L01ha2VmaWxlICAgICAgICAgfCAgIDMgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9jb21wb25lbnQuYyB8IDEwOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMgICAgICAgfCAgIDQgKysKPiAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICB8ICAgMyArCj4gIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAgICAgfCAgIDQgKysKPiAgaW5jbHVkZS9kcm0vaTkx NV9jb21wb25lbnQuaCAgICAgICAgICB8ICAzOCArKysrKysrKysrKysKPiAgNiBmaWxlcyBjaGFu Z2VkLCAxNjAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+ICBjcmVhdGUgbW9kZSAxMDA2 NDQgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9jb21wb25lbnQuYwo+ICBjcmVhdGUgbW9kZSAx MDA2NDQgaW5jbHVkZS9kcm0vaTkxNV9jb21wb25lbnQuaAo+IAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZSBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxl Cj4gaW5kZXggZTQwODNlNC4uNmI1YjA4MiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9NYWtlZmlsZQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlCj4gQEAg LTcsNyArNyw4IEBAIGNjZmxhZ3MteSA6PSAtSWluY2x1ZGUvZHJtCj4gICMgUGxlYXNlIGtlZXAg dGhlc2UgYnVpbGQgbGlzdHMgc29ydGVkIQo+ICAKPiAgIyBjb3JlIGRyaXZlciBjb2RlCj4gLWk5 MTUteSA6PSBpOTE1X2Rydi5vIFwKPiAraTkxNS15IDo9IGk5MTVfY29tcG9uZW50Lm8gXAo+ICsJ ICBpOTE1X2Rydi5vIFwKPiAgCSAgaTkxNV9wYXJhbXMubyBcCj4gICAgICAgICAgICBpOTE1X3N1 c3BlbmQubyBcCj4gIAkgIGk5MTVfc3lzZnMubyBcCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfY29tcG9uZW50LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Nv bXBvbmVudC5jCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi40YmI0OWYw Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfY29tcG9u ZW50LmMKPiBAQCAtMCwwICsxLDEwOSBAQAo+ICsvKgo+ICsgKiBDb3B5cmlnaHQgwqkgMjAxNCBJ bnRlbCBDb3Jwb3JhdGlvbgo+ICsgKgo+ICsgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVk LCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQo+ICsgKiBjb3B5IG9m IHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJT b2Z0d2FyZSIpLAo+ICsgKiB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0 aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uCj4gKyAqIHRoZSByaWdodHMgdG8gdXNl LCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLAo+ ICsgKiBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBl cnNvbnMgdG8gd2hvbSB0aGUKPiArICogU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBz dWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKPiArICoKPiArICogVGhlIGFib3Zl IGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgKGluY2x1ZGluZyB0 aGUgbmV4dAo+ICsgKiBwYXJhZ3JhcGgpIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbCBjb3BpZXMg b3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlCj4gKyAqIFNvZnR3YXJlLgo+ICsgKgo+ICsg KiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBB TlkgS0lORCwgRVhQUkVTUyBPUgo+ICsgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1J VEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKPiArICogRklUTkVTUyBG T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gIElOIE5PIEVWRU5U IFNIQUxMCj4gKyAqIFRIRSBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBG T1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCj4gKyAqIExJQUJJTElUWSwgV0hFVEhFUiBJ TiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCj4gKyAq IEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBV U0UgT1IgT1RIRVIgREVBTElOR1MKPiArICogSU4gVEhFIFNPRlRXQVJFLgo+ICsgKi8KPiArCj4g KyNpbmNsdWRlIDxsaW51eC9jb21wb25lbnQuaD4KPiArI2luY2x1ZGUgPGRybS9pOTE1X2NvbXBv bmVudC5oPgo+ICsjaW5jbHVkZSAiaW50ZWxfZHJ2LmgiCj4gKwo+ICtzdGF0aWMgdm9pZCBkaXNw bGF5X2NvbXBvbmVudF9nZXRfcG93ZXIoc3RydWN0IGRldmljZSAqZGV2KQo+ICt7Cj4gKwlpbnRl bF9kaXNwbGF5X3Bvd2VyX2dldChkZXZfdG9faTkxNShkZXYpLCBQT1dFUl9ET01BSU5fQVVESU8p Owo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBkaXNwbGF5X2NvbXBvbmVudF9wdXRfcG93ZXIoc3Ry dWN0IGRldmljZSAqZGV2KQo+ICt7Cj4gKwlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfdG9f aTkxNShkZXYpLCBQT1dFUl9ET01BSU5fQVVESU8pOwo+ICt9Cj4gKwo+ICsvKiBHZXQgQ0RDTEsg aW4ga0h6ICAqLwo+ICtzdGF0aWMgaW50IGRpc3BsYXlfY29tcG9uZW50X2dldF9jZGNsa19mcmVx KHN0cnVjdCBkZXZpY2UgKmRldikKPiArewo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2ID0gZGV2X3RvX2k5MTUoZGV2KTsKPiArCWludCByZXQ7Cj4gKwo+ICsJaWYgKFdBUk5f T05fT05DRSghSEFTX0RESShkZXZfcHJpdikpKQo+ICsJCXJldHVybiAtRU5PREVWOwo+ICsKPiAr CWludGVsX2Rpc3BsYXlfcG93ZXJfZ2V0KGRldl9wcml2LCBQT1dFUl9ET01BSU5fQVVESU8pOwo+ ICsJcmV0ID0gaW50ZWxfZGRpX2dldF9jZGNsa19mcmVxKGRldl9wcml2KTsKPiArCWludGVsX2Rp c3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LCBQT1dFUl9ET01BSU5fQVVESU8pOwo+ICsKPiArCXJl dHVybiByZXQ7Cj4gK30KPiArCj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgaTkxNV9kaXNwbGF5X2Nv bXBvbmVudF9vcHMgZGlzcGxheV9jb21wb25lbnRfb3BzID0gewo+ICsJLm93bmVyCQk9IFRISVNf TU9EVUxFLAo+ICsJLmdldF9wb3dlcgk9IGRpc3BsYXlfY29tcG9uZW50X2dldF9wb3dlciwKPiAr CS5wdXRfcG93ZXIJPSBkaXNwbGF5X2NvbXBvbmVudF9wdXRfcG93ZXIsCj4gKwkuZ2V0X2NkY2xr X2ZyZXEJPSBkaXNwbGF5X2NvbXBvbmVudF9nZXRfY2RjbGtfZnJlcSwKPiArfTsKPiArCj4gK3N0 YXRpYyBpbnQgZGlzcGxheV9jb21wb25lbnRfYmluZChzdHJ1Y3QgZGV2aWNlICppOTE1X2RldiwK PiArCQkJCSAgc3RydWN0IGRldmljZSAqaGRhX2Rldiwgdm9pZCAqZGF0YSkKPiArewo+ICsJc3Ry dWN0IGk5MTVfZGlzcGxheV9jb21wb25lbnQgKmRjb21wID0gZGF0YTsKPiArCj4gKwlpZiAoV0FS Tl9PTihkY29tcC0+b3BzIHx8IGRjb21wLT5kZXYpKQo+ICsJCXJldHVybiAtRUVYSVNUOwo+ICsK PiArCWRjb21wLT5vcHMgPSAmZGlzcGxheV9jb21wb25lbnRfb3BzOwo+ICsJZGNvbXAtPmRldiA9 IGk5MTVfZGV2Owo+ICsKPiArCXJldHVybiAwOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBkaXNw bGF5X2NvbXBvbmVudF91bmJpbmQoc3RydWN0IGRldmljZSAqaTkxNV9kZXYsCj4gKwkJCQkgICAg IHN0cnVjdCBkZXZpY2UgKmhkYV9kZXYsIHZvaWQgKmRhdGEpCj4gK3sKPiArCXN0cnVjdCBpOTE1 X2Rpc3BsYXlfY29tcG9uZW50ICpkY29tcCA9IGRhdGE7Cj4gKwo+ICsJZGNvbXAtPm9wcyA9IE5V TEw7Cj4gKwlkY29tcC0+ZGV2ID0gTlVMTDsKPiArfQo+ICsKPiArc3RhdGljIGNvbnN0IHN0cnVj dCBjb21wb25lbnRfb3BzIGRpc3BsYXlfY29tcG9uZW50X2JpbmRfb3BzID0gewo+ICsJLmJpbmQJ PSBkaXNwbGF5X2NvbXBvbmVudF9iaW5kLAo+ICsJLnVuYmluZAk9IGRpc3BsYXlfY29tcG9uZW50 X3VuYmluZCwKPiArfTsKPiArCj4gK3ZvaWQgaTkxNV9jb21wb25lbnRfaW5pdChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gK3sKPiArCWludCByZXQ7Cj4gKwo+ICsJcmV0ID0g Y29tcG9uZW50X2FkZChkZXZfcHJpdi0+ZGV2LT5kZXYsICZkaXNwbGF5X2NvbXBvbmVudF9iaW5k X29wcyk7Cj4gKwlpZiAocmV0IDwgMCkgewo+ICsJCURSTV9FUlJPUigiZmFpbGVkIHRvIGFkZCBk aXNwbGF5IGNvbXBvbmVudCAoJWQpXG4iLCByZXQpOwo+ICsJCS8qIGNvbnRpbnVlIHdpdGggcmVk dWNlZCBmdW5jdGlvbmFsaXR5ICovCj4gKwkJcmV0dXJuOwo+ICsJfQo+ICsKPiArCWRldl9wcml2 LT5kaXNwbGF5X2NvbXBvbmVudF9yZWdpc3RlcmVkID0gdHJ1ZTsKPiArfQo+ICsKPiArdm9pZCBp OTE1X2NvbXBvbmVudF9jbGVhbnVwKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikK PiArewo+ICsJaWYgKGRldl9wcml2LT5kaXNwbGF5X2NvbXBvbmVudF9yZWdpc3RlcmVkKSB7Cj4g KwkJY29tcG9uZW50X2RlbChkZXZfcHJpdi0+ZGV2LT5kZXYsICZkaXNwbGF5X2NvbXBvbmVudF9i aW5kX29wcyk7Cj4gKwkJZGV2X3ByaXYtPmRpc3BsYXlfY29tcG9uZW50X3JlZ2lzdGVyZWQgPSBm YWxzZTsKPiArCX0KPiArfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2RtYS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYwo+IGluZGV4IDg4N2Q4OGYu LmI2MjM4YmIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMKPiBAQCAtODMwLDYgKzgzMCw4 IEBAIGludCBpOTE1X2RyaXZlcl9sb2FkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHVuc2lnbmVk IGxvbmcgZmxhZ3MpCj4gIAo+ICAJaW50ZWxfcnVudGltZV9wbV9lbmFibGUoZGV2X3ByaXYpOwo+ ICAKPiArCWk5MTVfY29tcG9uZW50X2luaXQoZGV2X3ByaXYpOwo+ICsKPiAgCXJldHVybiAwOwo+ ICAKPiAgb3V0X3Bvd2VyX3dlbGw6Cj4gQEAgLTg3MCw2ICs4NzIsOCBAQCBpbnQgaTkxNV9kcml2 ZXJfdW5sb2FkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ICAJaW50IHJldDsKPiAgCj4gKwlp OTE1X2NvbXBvbmVudF9jbGVhbnVwKGRldl9wcml2KTsKPiArCj4gIAlyZXQgPSBpOTE1X2dlbV9z dXNwZW5kKGRldik7Cj4gIAlpZiAocmV0KSB7Cj4gIAkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gaWRs ZSBoYXJkd2FyZTogJWRcbiIsIHJldCk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gaW5kZXgg ZmIyNjE2ZC4uM2I3YWUxNCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IEBAIC0xNjg0 LDYgKzE2ODQsOSBAQCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSB7Cj4gIAo+ICAJYm9vbCBtY2hi YXJfbmVlZF9kaXNhYmxlOwo+ICAKPiArCS8qIGhkYS9pOTE1IGRpc3BsYXkgY29tcG9uZW50ICov Cj4gKwlib29sIGRpc3BsYXlfY29tcG9uZW50X3JlZ2lzdGVyZWQ7Cj4gKwo+ICAJc3RydWN0IGlu dGVsX2wzX3Bhcml0eSBsM19wYXJpdHk7Cj4gIAo+ICAJLyogQ2Fubm90IGJlIGRldGVybWluZWQg YnkgUENJSUQuIFlvdSBtdXN0IGFsd2F5cyByZWFkIGEgcmVnaXN0ZXIuICovCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKPiBpbmRleCA2MWE4OGZhLi44NTY3MDllIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKPiBAQCAtODA5LDYgKzgwOSwxMCBAQCBzdGF0aWMgaW5saW5lIGJvb2wg aW50ZWxfaXJxc19lbmFibGVkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAg aW50IGludGVsX2dldF9jcnRjX3NjYW5saW5lKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKTsKPiAg dm9pZCBnZW44X2lycV9wb3dlcl93ZWxsX3Bvc3RfZW5hYmxlKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdik7Cj4gIAo+ICsvKiBpOTE1X2NvbXBvbmVudC5jICovCj4gK3ZvaWQgaTkx NV9jb21wb25lbnRfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwo+ICt2 b2lkIGk5MTVfY29tcG9uZW50X2NsZWFudXAoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KTsKPiArCj4gIC8qIGludGVsX2NydC5jICovCj4gIHZvaWQgaW50ZWxfY3J0X2luaXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldik7Cj4gIAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9pOTE1 X2NvbXBvbmVudC5oIGIvaW5jbHVkZS9kcm0vaTkxNV9jb21wb25lbnQuaAo+IG5ldyBmaWxlIG1v ZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uOWM2NjBjYQo+IC0tLSAvZGV2L251bGwKPiArKysg Yi9pbmNsdWRlL2RybS9pOTE1X2NvbXBvbmVudC5oCj4gQEAgLTAsMCArMSwzOCBAQAo+ICsvKgo+ ICsgKiBDb3B5cmlnaHQgwqkgMjAxNCBJbnRlbCBDb3Jwb3JhdGlvbgo+ICsgKgo+ICsgKiBQZXJt aXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBv YnRhaW5pbmcgYQo+ICsgKiBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9j dW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLAo+ICsgKiB0byBkZWFsIGluIHRoZSBT b2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9u Cj4gKyAqIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBk aXN0cmlidXRlLCBzdWJsaWNlbnNlLAo+ICsgKiBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNv ZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUKPiArICogU29mdHdhcmUg aXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u czoKPiArICoKPiArICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlz c2lvbiBub3RpY2UgKGluY2x1ZGluZyB0aGUgbmV4dAo+ICsgKiBwYXJhZ3JhcGgpIHNoYWxsIGJl IGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlCj4g KyAqIFNvZnR3YXJlLgo+ICsgKgo+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElT IiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgo+ICsgKiBJTVBMSUVE LCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5U QUJJTElUWSwKPiArICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklO RlJJTkdFTUVOVC4gIElOIE5PIEVWRU5UIFNIQUxMCj4gKyAqIFRIRSBBVVRIT1JTIE9SIENPUFlS SUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCj4g KyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1Ig T1RIRVJXSVNFLCBBUklTSU5HCj4gKyAqIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJ VEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MKPiArICogSU4gVEhF IFNPRlRXQVJFLgo+ICsgKi8KPiArCj4gKyNpZm5kZWYgX0k5MTVfQ09NUE9ORU5UX0hfCj4gKyNk ZWZpbmUgX0k5MTVfQ09NUE9ORU5UX0hfCj4gKwo+ICtzdHJ1Y3QgaTkxNV9kaXNwbGF5X2NvbXBv bmVudCB7Cj4gKwlzdHJ1Y3QgZGV2aWNlICpkZXY7Cj4gKwo+ICsJY29uc3Qgc3RydWN0IGk5MTVf ZGlzcGxheV9jb21wb25lbnRfb3BzIHsKPiArCQlzdHJ1Y3QgbW9kdWxlICpvd25lcjsKPiArCQl2 b2lkICgqZ2V0X3Bvd2VyKShzdHJ1Y3QgZGV2aWNlICopOwo+ICsJCXZvaWQgKCpwdXRfcG93ZXIp KHN0cnVjdCBkZXZpY2UgKik7Cj4gKwkJaW50ICgqZ2V0X2NkY2xrX2ZyZXEpKHN0cnVjdCBkZXZp Y2UgKik7Cj4gKwl9ICpvcHM7Cj4gK307Cj4gKwo+ICsjZW5kaWYgLyogX0k5MTVfQ09NUE9ORU5U X0hfICovCj4gLS0gCj4gMS44LjQKPiAKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVuZ2lu ZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgorNDEgKDApIDc5IDM2NSA1NyA0OCAtIGh0dHA6Ly9ibG9n LmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==