From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH V4 2/2] drm/i915: start adding dp mst audio Date: Thu, 10 Dec 2015 10:02:04 +0100 Message-ID: <20151210090204.GD20822@phenom.ffwll.local> References: <1449036584-105393-1-git-send-email-libin.yang@linux.intel.com> <1449036584-105393-2-git-send-email-libin.yang@linux.intel.com> <56668E50.8050806@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f54.google.com (mail-wm0-f54.google.com [74.125.82.54]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9D8196E853 for ; Thu, 10 Dec 2015 01:02:08 -0800 (PST) Received: by mail-wm0-f54.google.com with SMTP id u63so14359253wmu.0 for ; Thu, 10 Dec 2015 01:02:08 -0800 (PST) Content-Disposition: inline In-Reply-To: <56668E50.8050806@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Libin Yang Cc: intel-gfx@lists.freedesktop.org, Dave Airlie , daniel.vetter@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBEZWMgMDgsIDIwMTUgYXQgMDQ6MDE6MjBQTSArMDgwMCwgTGliaW4gWWFuZyB3cm90 ZToKPiBIaSBhbGwsCj4gCj4gQW55IGNvbW1lbnRzIG9uIHRoZSBwYXRjaGVzPwoKU29ycnksIHNp bXBseSBmZWxsIHRocm91Z2ggdGhlIGNyYWNrcyBzaW5jZSBBbmRlciBpcyBvbiB2YWNhdGlvbi4g VGFrYXNoaQppcyB3b3JraW5nIG9uIHNvbWUgY2xlYW51cCBwYXRjaGVzIHRvIGhhdmUgYSBwb3J0 LT5lbmNvZGVyIG1hcHBpbmcgZm9yIHRoZQphdWRpbyBzaWRlIG9mIGk5MTUuIEhpcyBwYXRjaCBj bGVhbnMgdXAgYWxsIHRoZSBleGlzdGluZyBhdWRpbyBjb2RlIGluCmk5MTUsIGJ1dCBwbGVhc2Ug d29yayB0b2dldGhlciB3aXRoIGhpbSB0byBhbGlnbiBtc3QgY29kZSB3aXRoIHRoZSBuZXcKc3R5 bGUuCgpCb3RoIHBhdGNoZXMgcXVldWVkIGZvciBuZXh0LgoKVGhhbmtzLCBEYW5pZWwKCj4gCj4g QmVzdCBSZWdhcmRzLAo+IExpYmluCj4gCj4gT24gMTIvMDIvMjAxNSAwMjowOSBQTSwgbGliaW4u eWFuZ0BsaW51eC5pbnRlbC5jb20gd3JvdGU6Cj4gPkZyb206IExpYmluIFlhbmcgPGxpYmluLnlh bmdAbGludXguaW50ZWwuY29tPgo+ID4KPiA+VGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIERQ IE1TVCBhdWRpbyBpbiBpOTE1Lgo+ID4KPiA+RW5hYmxlIGF1ZGlvIGNvZGVjIHdoZW4gRFAgTVNU IGlzIGVuYWJsZWQgaWYgaGFzX2F1ZGlvIGZsYWcgaXMgc2V0Lgo+ID5EaXNhYmxlIGF1ZGlvIGNv ZGVjIHdoZW4gRFAgTVNUIGlzIGRpc2FibGVkIGlmIGhhc19hdWRpbyBmbGFnIGlzIHNldC4KPiA+ Cj4gPkFub3RoZXIgc2VwYXJhdGVkIHBhdGNoZXMgdG8gc3VwcG9ydCBEUCBNU1QgYXVkaW8gd2ls bCBiZSBpbXBsZW1lbnRlZAo+ID5pbiBhdWRpbyBkcml2ZXIuCj4gPgo+ID5SZXZpZXdlZC1ieTog QW5kZXIgQ29uc2VsdmFuIGRlIE9saXZlaXJhIDxjb25zZWx2YW4yQGdtYWlsLmNvbT4KPiA+U2ln bmVkLW9mZi1ieTogTGliaW4gWWFuZyA8bGliaW4ueWFuZ0BsaW51eC5pbnRlbC5jb20+Cj4gPlNp Z25lZC1vZmYtYnk6IERhdmUgQWlybGllIDxhaXJsaWVkQHJlZGhhdC5jb20+Cj4gPi0tLQo+ID4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jIHwgMTYgKysrKysrKysrKysrKysr Kwo+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMgIHwgIDkgKysrKysrLS0t Cj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgICAgfCAyMCArKysrKysrKysr KysrKystLS0tLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwX21zdC5jIHwgMjIg KysrKysrKysrKysrKysrKysrKysrKwo+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Ry di5oICAgIHwgIDIgKysKPiA+ICA1IGZpbGVzIGNoYW5nZWQsIDYxIGluc2VydGlvbnMoKyksIDgg ZGVsZXRpb25zKC0pCj4gPgo+ID5kaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+ID5pbmRl eCBiZmQ1N2ZiLi44Mzg3NjM4IDEwMDY0NAo+ID4tLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2RlYnVnZnMuYwo+ID4rKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMu Ywo+ID5AQCAtMjg1MCw2ICsyODUwLDIwIEBAIHN0YXRpYyB2b2lkIGludGVsX2RwX2luZm8oc3Ry dWN0IHNlcV9maWxlICptLAo+ID4gIAkJaW50ZWxfcGFuZWxfaW5mbyhtLCAmaW50ZWxfY29ubmVj dG9yLT5wYW5lbCk7Cj4gPiAgfQo+ID4KPiA+K3N0YXRpYyB2b2lkIGludGVsX2RwX21zdF9pbmZv KHN0cnVjdCBzZXFfZmlsZSAqbSwKPiA+KwkJCSAgc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50 ZWxfY29ubmVjdG9yKQo+ID4rewo+ID4rCXN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9lbmNv ZGVyID0gaW50ZWxfY29ubmVjdG9yLT5lbmNvZGVyOwo+ID4rCXN0cnVjdCBpbnRlbF9kcF9tc3Rf ZW5jb2RlciAqaW50ZWxfbXN0ID0KPiA+KwkJZW5jX3RvX21zdCgmaW50ZWxfZW5jb2Rlci0+YmFz ZSk7Cj4gPisJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQgPSBpbnRl bF9tc3QtPnByaW1hcnk7Cj4gPisJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9ICZpbnRlbF9k aWdfcG9ydC0+ZHA7Cj4gPisJYm9vbCBoYXNfYXVkaW8gPSBkcm1fZHBfbXN0X3BvcnRfaGFzX2F1 ZGlvKCZpbnRlbF9kcC0+bXN0X21nciwKPiA+KwkJCQkJaW50ZWxfY29ubmVjdG9yLT5wb3J0KTsK PiA+Kwo+ID4rCXNlcV9wcmludGYobSwgIlx0YXVkaW8gc3VwcG9ydDogJXNcbiIsIHllc25vKGhh c19hdWRpbykpOwo+ID4rfQo+ID4rCj4gPiAgc3RhdGljIHZvaWQgaW50ZWxfaGRtaV9pbmZvKHN0 cnVjdCBzZXFfZmlsZSAqbSwKPiA+ICAJCQkgICAgc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50 ZWxfY29ubmVjdG9yKQo+ID4gIHsKPiA+QEAgLTI4OTMsNiArMjkwNyw4IEBAIHN0YXRpYyB2b2lk IGludGVsX2Nvbm5lY3Rvcl9pbmZvKHN0cnVjdCBzZXFfZmlsZSAqbSwKPiA+ICAJCQlpbnRlbF9o ZG1pX2luZm8obSwgaW50ZWxfY29ubmVjdG9yKTsKPiA+ICAJCWVsc2UgaWYgKGludGVsX2VuY29k ZXItPnR5cGUgPT0gSU5URUxfT1VUUFVUX0xWRFMpCj4gPiAgCQkJaW50ZWxfbHZkc19pbmZvKG0s IGludGVsX2Nvbm5lY3Rvcik7Cj4gPisJCWVsc2UgaWYgKGludGVsX2VuY29kZXItPnR5cGUgPT0g SU5URUxfT1VUUFVUX0RQX01TVCkKPiA+KwkJCWludGVsX2RwX21zdF9pbmZvKG0sIGludGVsX2Nv bm5lY3Rvcik7Cj4gPiAgCX0KPiA+Cj4gPiAgCXNlcV9wcmludGYobSwgIlx0bW9kZXM6XG4iKTsK PiA+ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdWRpby5jCj4gPmluZGV4IDlhYTgzZTcuLjVhZDJlNjYg MTAwNjQ0Cj4gPi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMKPiA+Kysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYwo+ID5AQCAtMjYyLDcgKzI2Miw4 IEBAIHN0YXRpYyB2b2lkIGhzd19hdWRpb19jb2RlY19kaXNhYmxlKHN0cnVjdCBpbnRlbF9lbmNv ZGVyICplbmNvZGVyKQo+ID4gIAl0bXAgfD0gQVVEX0NPTkZJR19OX1BST0dfRU5BQkxFOwo+ID4g IAl0bXAgJj0gfkFVRF9DT05GSUdfVVBQRVJfTl9NQVNLOwo+ID4gIAl0bXAgJj0gfkFVRF9DT05G SUdfTE9XRVJfTl9NQVNLOwo+ID4tCWlmIChpbnRlbF9waXBlX2hhc190eXBlKGludGVsX2NydGMs IElOVEVMX09VVFBVVF9ESVNQTEFZUE9SVCkpCj4gPisJaWYgKGludGVsX3BpcGVfaGFzX3R5cGUo aW50ZWxfY3J0YywgSU5URUxfT1VUUFVUX0RJU1BMQVlQT1JUKSB8fAo+ID4rCSAgICBpbnRlbF9w aXBlX2hhc190eXBlKGludGVsX2NydGMsIElOVEVMX09VVFBVVF9EUF9NU1QpKQo+ID4gIAkJdG1w IHw9IEFVRF9DT05GSUdfTl9WQUxVRV9JTkRFWDsKPiA+ICAJSTkxNV9XUklURShIU1dfQVVEX0NG RyhwaXBlKSwgdG1wKTsKPiA+Cj4gPkBAIC00NzQsNyArNDc1LDggQEAgc3RhdGljIHZvaWQgaWxr X2F1ZGlvX2NvZGVjX2VuYWJsZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4g IAl0bXAgJj0gfkFVRF9DT05GSUdfTl9WQUxVRV9JTkRFWDsKPiA+ICAJdG1wICY9IH5BVURfQ09O RklHX05fUFJPR19FTkFCTEU7Cj4gPiAgCXRtcCAmPSB+QVVEX0NPTkZJR19QSVhFTF9DTE9DS19I RE1JX01BU0s7Cj4gPi0JaWYgKGludGVsX3BpcGVfaGFzX3R5cGUoaW50ZWxfY3J0YywgSU5URUxf T1VUUFVUX0RJU1BMQVlQT1JUKSkKPiA+KwlpZiAoaW50ZWxfcGlwZV9oYXNfdHlwZShpbnRlbF9j cnRjLCBJTlRFTF9PVVRQVVRfRElTUExBWVBPUlQpIHx8Cj4gPisJICAgIGludGVsX3BpcGVfaGFz X3R5cGUoaW50ZWxfY3J0YywgSU5URUxfT1VUUFVUX0RQX01TVCkpCj4gPiAgCQl0bXAgfD0gQVVE X0NPTkZJR19OX1ZBTFVFX0lOREVYOwo+ID4gIAllbHNlCj4gPiAgCQl0bXAgfD0gYXVkaW9fY29u ZmlnX2hkbWlfcGl4ZWxfY2xvY2soYWRqdXN0ZWRfbW9kZSk7Cj4gPkBAIC01MTIsNyArNTE0LDgg QEAgdm9pZCBpbnRlbF9hdWRpb19jb2RlY19lbmFibGUoc3RydWN0IGludGVsX2VuY29kZXIgKmlu dGVsX2VuY29kZXIpCj4gPgo+ID4gIAkvKiBFTEQgQ29ubl9UeXBlICovCj4gPiAgCWNvbm5lY3Rv ci0+ZWxkWzVdICY9IH4oMyA8PCAyKTsKPiA+LQlpZiAoaW50ZWxfcGlwZV9oYXNfdHlwZShjcnRj LCBJTlRFTF9PVVRQVVRfRElTUExBWVBPUlQpKQo+ID4rCWlmIChpbnRlbF9waXBlX2hhc190eXBl KGNydGMsIElOVEVMX09VVFBVVF9ESVNQTEFZUE9SVCkgfHwKPiA+KwkgICAgaW50ZWxfcGlwZV9o YXNfdHlwZShjcnRjLCBJTlRFTF9PVVRQVVRfRFBfTVNUKSkKPiA+ICAJCWNvbm5lY3Rvci0+ZWxk WzVdIHw9ICgxIDw8IDIpOwo+ID4KPiA+ICAJY29ubmVjdG9yLT5lbGRbNl0gPSBkcm1fYXZfc3lu Y19kZWxheShjb25uZWN0b3IsIGFkanVzdGVkX21vZGUpIC8gMjsKPiA+ZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZGRpLmMKPiA+aW5kZXggNzZjZTdjMi4uYmM3ZmZmYiAxMDA2NDQKPiA+LS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiA+KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGRpLmMKPiA+QEAgLTMxMDgsNiArMzEwOCwxOSBAQCB2b2lkIGludGVsX2RkaV9mZGlf ZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gPiAgCUk5MTVfV1JJVEUoRkRJX1JYX0NU TChQSVBFX0EpLCB2YWwpOwo+ID4gIH0KPiA+Cj4gPitib29sIGludGVsX2RkaV9pc19hdWRpb19l bmFibGVkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiA+KwkJCQkgc3RydWN0 IGludGVsX2NydGMgKmludGVsX2NydGMpCj4gPit7Cj4gPisJdTMyIHRlbXA7Cj4gPisKPiA+Kwlp ZiAoaW50ZWxfZGlzcGxheV9wb3dlcl9pc19lbmFibGVkKGRldl9wcml2LCBQT1dFUl9ET01BSU5f QVVESU8pKSB7Cj4gPisJCXRlbXAgPSBJOTE1X1JFQUQoSFNXX0FVRF9QSU5fRUxEX0NQX1ZMRCk7 Cj4gPisJCWlmICh0ZW1wICYgQVVESU9fT1VUUFVUX0VOQUJMRShpbnRlbF9jcnRjLT5waXBlKSkK PiA+KwkJCXJldHVybiB0cnVlOwo+ID4rCX0KPiA+KwlyZXR1cm4gZmFsc2U7Cj4gPit9Cj4gPisK PiA+ICB2b2lkIGludGVsX2RkaV9nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNv ZGVyLAo+ID4gIAkJCSAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnKQo+ID4g IHsKPiA+QEAgLTMxNjgsMTEgKzMxODEsOCBAQCB2b2lkIGludGVsX2RkaV9nZXRfY29uZmlnKHN0 cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4gIAkJYnJlYWs7Cj4gPiAgCX0KPiA+Cj4g Pi0JaWYgKGludGVsX2Rpc3BsYXlfcG93ZXJfaXNfZW5hYmxlZChkZXZfcHJpdiwgUE9XRVJfRE9N QUlOX0FVRElPKSkgewo+ID4tCQl0ZW1wID0gSTkxNV9SRUFEKEhTV19BVURfUElOX0VMRF9DUF9W TEQpOwo+ID4tCQlpZiAodGVtcCAmIEFVRElPX09VVFBVVF9FTkFCTEUoaW50ZWxfY3J0Yy0+cGlw ZSkpCj4gPi0JCQlwaXBlX2NvbmZpZy0+aGFzX2F1ZGlvID0gdHJ1ZTsKPiA+LQl9Cj4gPisJcGlw ZV9jb25maWctPmhhc19hdWRpbyA9Cj4gPisJCWludGVsX2RkaV9pc19hdWRpb19lbmFibGVkKGRl dl9wcml2LCBpbnRlbF9jcnRjKTsKPiA+Cj4gPiAgCWlmIChlbmNvZGVyLT50eXBlID09IElOVEVM X09VVFBVVF9FRFAgJiYgZGV2X3ByaXYtPnZidC5lZHBfYnBwICYmCj4gPiAgCSAgICBwaXBlX2Nv bmZpZy0+cGlwZV9icHAgPiBkZXZfcHJpdi0+dmJ0LmVkcF9icHApIHsKPiA+ZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwX21zdC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHBfbXN0LmMKPiA+aW5kZXggOGM0ZTdkZi4uOGI2MDhjMiAxMDA2NDQKPiA+LS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMKPiA+KysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMKPiA+QEAgLTc4LDYgKzc4LDggQEAgc3RhdGljIGJv b2wgaW50ZWxfZHBfbXN0X2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNv ZGVyLAo+ID4gIAkJcmV0dXJuIGZhbHNlOwo+ID4gIAl9Cj4gPgo+ID4rCWlmIChkcm1fZHBfbXN0 X3BvcnRfaGFzX2F1ZGlvKCZpbnRlbF9kcC0+bXN0X21nciwgZm91bmQtPnBvcnQpKQo+ID4rCQlw aXBlX2NvbmZpZy0+aGFzX2F1ZGlvID0gdHJ1ZTsKPiA+ICAJbXN0X3BibiA9IGRybV9kcF9jYWxj X3Bibl9tb2RlKGFkanVzdGVkX21vZGUtPmNydGNfY2xvY2ssIGJwcCk7Cj4gPgo+ID4gIAlwaXBl X2NvbmZpZy0+cGJuID0gbXN0X3BibjsKPiA+QEAgLTEwMiw2ICsxMDQsMTEgQEAgc3RhdGljIHZv aWQgaW50ZWxfbXN0X2Rpc2FibGVfZHAoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4g PiAgCXN0cnVjdCBpbnRlbF9kcF9tc3RfZW5jb2RlciAqaW50ZWxfbXN0ID0gZW5jX3RvX21zdCgm ZW5jb2Rlci0+YmFzZSk7Cj4gPiAgCXN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2Rp Z19wb3J0ID0gaW50ZWxfbXN0LT5wcmltYXJ5Owo+ID4gIAlzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwID0gJmludGVsX2RpZ19wb3J0LT5kcDsKPiA+KwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0g ZW5jb2Rlci0+YmFzZS5kZXY7Cj4gPisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiA+KwlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSBlbmNvZGVy LT5iYXNlLmNydGM7Cj4gPisJc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRl bF9jcnRjKGNydGMpOwo+ID4rCj4gPiAgCWludCByZXQ7Cj4gPgo+ID4gIAlEUk1fREVCVUdfS01T KCIlZFxuIiwgaW50ZWxfZHAtPmFjdGl2ZV9tc3RfbGlua3MpOwo+ID5AQCAtMTEyLDYgKzExOSwx MCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tc3RfZGlzYWJsZV9kcChzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlcikKPiA+ICAJaWYgKHJldCkgewo+ID4gIAkJRFJNX0VSUk9SKCJmYWlsZWQgdG8g dXBkYXRlIHBheWxvYWQgJWRcbiIsIHJldCk7Cj4gPiAgCX0KPiA+KwlpZiAoaW50ZWxfY3J0Yy0+ Y29uZmlnLT5oYXNfYXVkaW8pIHsKPiA+KwkJaW50ZWxfYXVkaW9fY29kZWNfZGlzYWJsZShlbmNv ZGVyKTsKPiA+KwkJaW50ZWxfZGlzcGxheV9wb3dlcl9wdXQoZGV2X3ByaXYsIFBPV0VSX0RPTUFJ Tl9BVURJTyk7Cj4gPisJfQo+ID4gIH0KPiA+Cj4gPiAgc3RhdGljIHZvaWQgaW50ZWxfbXN0X3Bv c3RfZGlzYWJsZV9kcChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPiA+QEAgLTIwOCw2 ICsyMTksNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tc3RfZW5hYmxlX2RwKHN0cnVjdCBpbnRlbF9l bmNvZGVyICplbmNvZGVyKQo+ID4gIAlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gJmludGVs X2RpZ19wb3J0LT5kcDsKPiA+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGludGVsX2RpZ19w b3J0LT5iYXNlLmJhc2UuZGV2Owo+ID4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ID4rCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9f aW50ZWxfY3J0YyhlbmNvZGVyLT5iYXNlLmNydGMpOwo+ID4gIAllbnVtIHBvcnQgcG9ydCA9IGlu dGVsX2RpZ19wb3J0LT5wb3J0Owo+ID4gIAlpbnQgcmV0Owo+ID4KPiA+QEAgLTIyMCw2ICsyMzIs MTMgQEAgc3RhdGljIHZvaWQgaW50ZWxfbXN0X2VuYWJsZV9kcChzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlcikKPiA+ICAJcmV0ID0gZHJtX2RwX2NoZWNrX2FjdF9zdGF0dXMoJmludGVsX2Rw LT5tc3RfbWdyKTsKPiA+Cj4gPiAgCXJldCA9IGRybV9kcF91cGRhdGVfcGF5bG9hZF9wYXJ0Migm aW50ZWxfZHAtPm1zdF9tZ3IpOwo+ID4rCj4gPisJaWYgKGNydGMtPmNvbmZpZy0+aGFzX2F1ZGlv KSB7Cj4gPisJCURSTV9ERUJVR19EUklWRVIoIkVuYWJsaW5nIERQIGF1ZGlvIG9uIHBpcGUgJWNc biIsCj4gPisJCQkJIHBpcGVfbmFtZShjcnRjLT5waXBlKSk7Cj4gPisJCWludGVsX2Rpc3BsYXlf cG93ZXJfZ2V0KGRldl9wcml2LCBQT1dFUl9ET01BSU5fQVVESU8pOwo+ID4rCQlpbnRlbF9hdWRp b19jb2RlY19lbmFibGUoZW5jb2Rlcik7Cj4gPisJfQo+ID4gIH0KPiA+Cj4gPiAgc3RhdGljIGJv b2wgaW50ZWxfZHBfbXN0X2VuY19nZXRfaHdfc3RhdGUoc3RydWN0IGludGVsX2VuY29kZXIgKmVu Y29kZXIsCj4gPkBAIC0yNDUsNiArMjY0LDkgQEAgc3RhdGljIHZvaWQgaW50ZWxfZHBfbXN0X2Vu Y19nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4KPiA+ICAJcGlw ZV9jb25maWctPmhhc19kcF9lbmNvZGVyID0gdHJ1ZTsKPiA+Cj4gPisJcGlwZV9jb25maWctPmhh c19hdWRpbyA9Cj4gPisJCWludGVsX2RkaV9pc19hdWRpb19lbmFibGVkKGRldl9wcml2LCBjcnRj KTsKPiA+Kwo+ID4gIAl0ZW1wID0gSTkxNV9SRUFEKFRSQU5TX0RESV9GVU5DX0NUTChjcHVfdHJh bnNjb2RlcikpOwo+ID4gIAlpZiAodGVtcCAmIFRSQU5TX0RESV9QSFNZTkMpCj4gPiAgCQlmbGFn cyB8PSBEUk1fTU9ERV9GTEFHX1BIU1lOQzsKPiA+ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+ aW5kZXggMWZmZDhkNS4uMGQyYzU5ZiAxMDA2NDQKPiA+LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKPiA+KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgK PiA+QEAgLTEwMTEsNiArMTAxMSw4IEBAIHZvaWQgaW50ZWxfZGRpX3NldF9waXBlX3NldHRpbmdz KHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7Cj4gPiAgdm9pZCBpbnRlbF9kZGlfcHJlcGFyZV9saW5r X3JldHJhaW4oc3RydWN0IGludGVsX2RwICppbnRlbF9kcCk7Cj4gPiAgYm9vbCBpbnRlbF9kZGlf Y29ubmVjdG9yX2dldF9od19zdGF0ZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25u ZWN0b3IpOwo+ID4gIHZvaWQgaW50ZWxfZGRpX2ZkaV9kaXNhYmxlKHN0cnVjdCBkcm1fY3J0YyAq Y3J0Yyk7Cj4gPitib29sIGludGVsX2RkaV9pc19hdWRpb19lbmFibGVkKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiwKPiA+KwkJCQkgc3RydWN0IGludGVsX2NydGMgKmludGVsX2Ny dGMpOwo+ID4gIHZvaWQgaW50ZWxfZGRpX2dldF9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIg KmVuY29kZXIsCj4gPiAgCQkJICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcp Owo+ID4gIHN0cnVjdCBpbnRlbF9lbmNvZGVyICoKPiA+Cj4gX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJl IEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGlu ZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=