From mboxrd@z Thu Jan 1 00:00:00 1970 From: Libin Yang Subject: Re: [PATCH V3 2/2] drm/i915: start adding dp mst audio Date: Wed, 2 Dec 2015 14:14:03 +0800 Message-ID: <565E8C2B.2030507@linux.intel.com> References: <1448428740-73765-1-git-send-email-libin.yang@linux.intel.com> <1448428740-73765-2-git-send-email-libin.yang@linux.intel.com> <1448627348.2711.25.camel@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 215D36E94C for ; Tue, 1 Dec 2015 22:16:29 -0800 (PST) In-Reply-To: <1448627348.2711.25.camel@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Ander Conselvan De Oliveira , intel-gfx@lists.freedesktop.org, jani.nikula@linux.intel.com, ville.syrjala@linux.intel.com, daniel.vetter@intel.com Cc: airlied@redhat.com List-Id: intel-gfx@lists.freedesktop.org Ck9uIDExLzI3LzIwMTUgMDg6MjkgUE0sIEFuZGVyIENvbnNlbHZhbiBEZSBPbGl2ZWlyYSB3cm90 ZToKPiBPbiBXZWQsIDIwMTUtMTEtMjUgYXQgMTM6MTkgKzA4MDAsIGxpYmluLnlhbmdAbGludXgu aW50ZWwuY29tIHdyb3RlOgo+PiBGcm9tOiBMaWJpbiBZYW5nIDxsaWJpbi55YW5nQGxpbnV4Lmlu dGVsLmNvbT4KPj4KPj4gVGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIERQIE1TVCBhdWRpbyBp biBpOTE1Lgo+Cj4gVGhlIHRpdGxlIHNheXMgInN0YXJ0IGFkZGluZyIgc28gYSBub3RlIG9mIHdo YXQncyBzdGlsbCBtaXNzaW5nIHdvdWxkIGJlIGdvb2QKPiBoZXJlLiBJIGFzc3VtZSBzb21ldGhp bmcgaXMgbWlzc2luZyBzaW5jZSBJIHRlc3RlZCB0aGVzZSB0d28gcGF0Y2hlcywgYW5kIHdoaWxl Cj4gSSBnb3QgYSBuZXcgc291bmQgZGV2aWNlIGZvciBteSBNU1QgbW9uaXRvciwgbm8gYXVkaW8g Y2FtZSBvdXQgb2YgdGhhdC4KPgo+IFdpdGggdGhpcyBhbmQgdGhlIGNoYW5nZSBJIGFza2VkIGJl bG93LCB0aGlzIGlzCj4KPiBSZXZpZXdlZC1ieTogQW5kZXIgQ29uc2VsdmFuIGRlIE9saXZlaXJh IDxjb25zZWx2YW4yQGdtYWlsLmNvbT4KPgo+PiBFbmFibGUgYXVkaW8gY29kZWMgd2hlbiBEUCBN U1QgaXMgZW5hYmxlZCBpZiBoYXNfYXVkaW8gZmxhZyBpcyBzZXQuCj4+IERpc2FibGUgYXVkaW8g Y29kZWMgd2hlbiBEUCBNU1QgaXMgZGlzYWJsZWQgaWYgaGFzX2F1ZGlvIGZsYWcgaXMgc2V0Lgo+ Pgo+PiBTaWduZWQtb2ZmLWJ5OiBMaWJpbiBZYW5nIDxsaWJpbi55YW5nQGxpbnV4LmludGVsLmNv bT4KPj4gU2lnbmVkLW9mZi1ieTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0LmNvbT4KPj4g LS0tCj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgfCAxNiArKysrKysr KysrKysrKysrCj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYyAgfCAgOSAr KysrKystLS0KPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyAgICB8IDE5ICsr KysrKysrKysrKysrLS0tLS0KPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3Qu YyB8IDIxICsrKysrKysrKysrKysrKysrKysrKwo+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oICAgIHwgIDMgKysrCj4+ICAgNSBmaWxlcyBjaGFuZ2VkLCA2MCBpbnNlcnRpb25z KCspLCA4IGRlbGV0aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kZWJ1Z2ZzLmMKPj4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMu Ywo+PiBpbmRleCA1NjU5ZDRjLi5iYzVhMjdlIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2RlYnVnZnMuYwo+PiBAQCAtMjg3Myw2ICsyODczLDIwIEBAIHN0YXRpYyB2b2lkIGludGVsX2Rw X2luZm8oc3RydWN0IHNlcV9maWxlICptLAo+PiAgIAkJaW50ZWxfcGFuZWxfaW5mbyhtLCAmaW50 ZWxfY29ubmVjdG9yLT5wYW5lbCk7Cj4+ICAgfQo+Pgo+PiArc3RhdGljIHZvaWQgaW50ZWxfZHBf bXN0X2luZm8oc3RydWN0IHNlcV9maWxlICptLAo+PiArCQkJICBzdHJ1Y3QgaW50ZWxfY29ubmVj dG9yICppbnRlbF9jb25uZWN0b3IpCj4+ICt7Cj4+ICsJc3RydWN0IGludGVsX2VuY29kZXIgKmlu dGVsX2VuY29kZXIgPSBpbnRlbF9jb25uZWN0b3ItPmVuY29kZXI7Cj4+ICsJc3RydWN0IGludGVs X2RwX21zdF9lbmNvZGVyICppbnRlbF9tc3QgPQo+PiArCQllbmNfdG9fbXN0KCZpbnRlbF9lbmNv ZGVyLT5iYXNlKTsKPj4gKwlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9y dCA9IGludGVsX21zdC0+cHJpbWFyeTsKPj4gKwlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0g JmludGVsX2RpZ19wb3J0LT5kcDsKPj4gKwlib29sIGhhc19hdWRpbyA9IGRybV9kcF9tc3RfcG9y dF9oYXNfYXVkaW8oJmludGVsX2RwLT5tc3RfbWdyLAo+PiArCQkJCQlpbnRlbF9jb25uZWN0b3It PnBvcnQpOwo+PiArCj4+ICsJc2VxX3ByaW50ZihtLCAiXHRhdWRpbyBzdXBwb3J0OiAlc1xuIiwg eWVzbm8oaGFzX2F1ZGlvKSk7Cj4+ICt9Cj4+ICsKPj4gICBzdGF0aWMgdm9pZCBpbnRlbF9oZG1p X2luZm8oc3RydWN0IHNlcV9maWxlICptLAo+PiAgIAkJCSAgICBzdHJ1Y3QgaW50ZWxfY29ubmVj dG9yICppbnRlbF9jb25uZWN0b3IpCj4+ICAgewo+PiBAQCAtMjkxNiw2ICsyOTMwLDggQEAgc3Rh dGljIHZvaWQgaW50ZWxfY29ubmVjdG9yX2luZm8oc3RydWN0IHNlcV9maWxlICptLAo+PiAgIAkJ CWludGVsX2hkbWlfaW5mbyhtLCBpbnRlbF9jb25uZWN0b3IpOwo+PiAgIAkJZWxzZSBpZiAoaW50 ZWxfZW5jb2Rlci0+dHlwZSA9PSBJTlRFTF9PVVRQVVRfTFZEUykKPj4gICAJCQlpbnRlbF9sdmRz X2luZm8obSwgaW50ZWxfY29ubmVjdG9yKTsKPj4gKwkJZWxzZSBpZiAoaW50ZWxfZW5jb2Rlci0+ dHlwZSA9PSBJTlRFTF9PVVRQVVRfRFBfTVNUKQo+PiArCQkJaW50ZWxfZHBfbXN0X2luZm8obSwg aW50ZWxfY29ubmVjdG9yKTsKPj4gICAJfQo+Pgo+PiAgIAlzZXFfcHJpbnRmKG0sICJcdG1vZGVz OlxuIik7Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdWRpby5j Cj4+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXVkaW8uYwo+PiBpbmRleCA2M2Q0NzA2 Li4xNzJjMTA2IDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdWRp by5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F1ZGlvLmMKPj4gQEAgLTI2 Miw3ICsyNjIsOCBAQCBzdGF0aWMgdm9pZCBoc3dfYXVkaW9fY29kZWNfZGlzYWJsZShzdHJ1Y3Qg aW50ZWxfZW5jb2Rlcgo+PiAqZW5jb2RlcikKPj4gICAJdG1wIHw9IEFVRF9DT05GSUdfTl9QUk9H X0VOQUJMRTsKPj4gICAJdG1wICY9IH5BVURfQ09ORklHX1VQUEVSX05fTUFTSzsKPj4gICAJdG1w ICY9IH5BVURfQ09ORklHX0xPV0VSX05fTUFTSzsKPj4gLQlpZiAoaW50ZWxfcGlwZV9oYXNfdHlw ZShpbnRlbF9jcnRjLCBJTlRFTF9PVVRQVVRfRElTUExBWVBPUlQpKQo+PiArCWlmIChpbnRlbF9w aXBlX2hhc190eXBlKGludGVsX2NydGMsIElOVEVMX09VVFBVVF9ESVNQTEFZUE9SVCkgfHwKPj4g KwkgICAgaW50ZWxfcGlwZV9oYXNfdHlwZShpbnRlbF9jcnRjLCBJTlRFTF9PVVRQVVRfRFBfTVNU KSkKPj4gICAJCXRtcCB8PSBBVURfQ09ORklHX05fVkFMVUVfSU5ERVg7Cj4+ICAgCUk5MTVfV1JJ VEUoSFNXX0FVRF9DRkcocGlwZSksIHRtcCk7Cj4+Cj4+IEBAIC00NzgsNyArNDc5LDggQEAgc3Rh dGljIHZvaWQgaWxrX2F1ZGlvX2NvZGVjX2VuYWJsZShzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcgo+PiAq Y29ubmVjdG9yLAo+PiAgIAl0bXAgJj0gfkFVRF9DT05GSUdfTl9WQUxVRV9JTkRFWDsKPj4gICAJ dG1wICY9IH5BVURfQ09ORklHX05fUFJPR19FTkFCTEU7Cj4+ICAgCXRtcCAmPSB+QVVEX0NPTkZJ R19QSVhFTF9DTE9DS19IRE1JX01BU0s7Cj4+IC0JaWYgKGludGVsX3BpcGVfaGFzX3R5cGUoaW50 ZWxfY3J0YywgSU5URUxfT1VUUFVUX0RJU1BMQVlQT1JUKSkKPj4gKwlpZiAoaW50ZWxfcGlwZV9o YXNfdHlwZShpbnRlbF9jcnRjLCBJTlRFTF9PVVRQVVRfRElTUExBWVBPUlQpIHx8Cj4+ICsJICAg IGludGVsX3BpcGVfaGFzX3R5cGUoaW50ZWxfY3J0YywgSU5URUxfT1VUUFVUX0RQX01TVCkpCj4+ ICAgCQl0bXAgfD0gQVVEX0NPTkZJR19OX1ZBTFVFX0lOREVYOwo+PiAgIAllbHNlCj4+ICAgCQl0 bXAgfD0gYXVkaW9fY29uZmlnX2hkbWlfcGl4ZWxfY2xvY2soYWRqdXN0ZWRfbW9kZSk7Cj4+IEBA IC01MTYsNyArNTE4LDggQEAgdm9pZCBpbnRlbF9hdWRpb19jb2RlY19lbmFibGUoc3RydWN0IGlu dGVsX2VuY29kZXIKPj4gKmludGVsX2VuY29kZXIpCj4+Cj4+ICAgCS8qIEVMRCBDb25uX1R5cGUg Ki8KPj4gICAJY29ubmVjdG9yLT5lbGRbNV0gJj0gfigzIDw8IDIpOwo+PiAtCWlmIChpbnRlbF9w aXBlX2hhc190eXBlKGNydGMsIElOVEVMX09VVFBVVF9ESVNQTEFZUE9SVCkpCj4+ICsJaWYgKGlu dGVsX3BpcGVfaGFzX3R5cGUoY3J0YywgSU5URUxfT1VUUFVUX0RJU1BMQVlQT1JUKSB8fAo+PiAr CSAgICBpbnRlbF9waXBlX2hhc190eXBlKGNydGMsIElOVEVMX09VVFBVVF9EUF9NU1QpKQo+PiAg IAkJY29ubmVjdG9yLT5lbGRbNV0gfD0gKDEgPDwgMik7Cj4+Cj4+ICAgCWNvbm5lY3Rvci0+ZWxk WzZdID0gZHJtX2F2X3N5bmNfZGVsYXkoY29ubmVjdG9yLCBhZGp1c3RlZF9tb2RlKSAvIDI7Cj4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+PiBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4+IGluZGV4IDA2ZDMwMDIuLjY0MGRiNDkgMTAw NjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4+IEBAIC0zMDQzLDYgKzMwNDMsMTkgQEAg dm9pZCBpbnRlbF9kZGlfZmRpX2Rpc2FibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+PiAgIAlJ OTE1X1dSSVRFKEZESV9SWF9DVEwoUElQRV9BKSwgdmFsKTsKPj4gICB9Cj4+Cj4+ICt2b2lkIGlu dGVsX3NldF9waXBlX2hhc19hdWRpbyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs Cj4KPiBUaGlzIGlzIGEgRERJLXNwZWNpZmljIGZ1bmN0aW9uLCBzbyBpdCBzaG91bGQgaGF2ZSBh biBpbnRlbF9kZGlfIHByZWZpeC4gSSB0aGluawo+IGl0IHdvdWxkIGFsc28gYmUgZ29vZCB0byBt YWtlIGl0IHJldHVybiBib29sIHNvIGl0IGNvdWxkIGhhdmUgb25lIGxlc3MKPiBwYXJhbWV0ZXIu IFRoZSBmaWVsZCBpbiBwaXBlX2NvbmZpZyBjYW4gYmUgc2V0IGluIHRoZSBjYWxsZXIuIEkuZS4K Pgo+IHBpcGVfY29uZmlnLT5oYXNfYXVkaW8gPSBpbnRlbF9kZGlfaXNfYXVkaW9fZW5hYmxlZChj cnRjKTsKCk9LLgoKPgo+IElmIHlvdSB0YWtlIGRldl9wcml2IGZyb20gdGhlIGNydGMgaXQgY291 bGQgaGF2ZSBqdXN0IG9uZSBwYXJhbWV0ZXIuCgpUaGFua3MgZm9yIHJldmlldy4gSSBoYXZlIHNl bnQgdGhlIG5ldyBwYXRjaGVzIGJhc2VkIG9uIHlvdXIgCnN1Z2dlc3Rpb24uIEFuZCBJIHN0aWxs IHVzZSB0aGUgZGV2X3ByaXYgYXMgcGFyYW1ldGVyLCBob3BpbmcgdGhpcyBtYXkgCmJlIGEgbGl0 dGxlIGVmZmljaWVudCB3aXRob3V0IGdldHRpbmcgdGhlIGRldl9wcml2IGFnYWluIGluIHRoZSBu ZXcgCmZ1bmN0aW9uLgoKQmVzdCBSZWdhcmRzLApMaWJpbgoKPgo+Cj4KPj4gKwkJCSAgc3RydWN0 IGludGVsX2NydGMgKmludGVsX2NydGMsCj4+ICsJCQkgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpwaXBlX2NvbmZpZykKPj4gK3sKPj4gKwl1MzIgdGVtcDsKPj4gKwo+PiArCWlmIChpbnRlbF9k aXNwbGF5X3Bvd2VyX2lzX2VuYWJsZWQoZGV2X3ByaXYsIFBPV0VSX0RPTUFJTl9BVURJTykpIHsK Pj4gKwkJdGVtcCA9IEk5MTVfUkVBRChIU1dfQVVEX1BJTl9FTERfQ1BfVkxEKTsKPj4gKwkJaWYg KHRlbXAgJiBBVURJT19PVVRQVVRfRU5BQkxFKGludGVsX2NydGMtPnBpcGUpKQo+PiArCQkJcGlw ZV9jb25maWctPmhhc19hdWRpbyA9IHRydWU7Cj4+ICsJfQo+PiArfQo+PiArCj4+ICAgdm9pZCBp bnRlbF9kZGlfZ2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPj4gICAJ CQkgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKPj4gICB7Cj4+IEBAIC0z MTAzLDExICszMTE2LDcgQEAgdm9pZCBpbnRlbF9kZGlfZ2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxf ZW5jb2Rlcgo+PiAqZW5jb2RlciwKPj4gICAJCWJyZWFrOwo+PiAgIAl9Cj4+Cj4+IC0JaWYgKGlu dGVsX2Rpc3BsYXlfcG93ZXJfaXNfZW5hYmxlZChkZXZfcHJpdiwgUE9XRVJfRE9NQUlOX0FVRElP KSkgewo+PiAtCQl0ZW1wID0gSTkxNV9SRUFEKEhTV19BVURfUElOX0VMRF9DUF9WTEQpOwo+PiAt CQlpZiAodGVtcCAmIEFVRElPX09VVFBVVF9FTkFCTEUoaW50ZWxfY3J0Yy0+cGlwZSkpCj4+IC0J CQlwaXBlX2NvbmZpZy0+aGFzX2F1ZGlvID0gdHJ1ZTsKPj4gLQl9Cj4+ICsJaW50ZWxfc2V0X3Bp cGVfaGFzX2F1ZGlvKGRldl9wcml2LCBpbnRlbF9jcnRjLCBwaXBlX2NvbmZpZyk7Cj4+Cj4+ICAg CWlmIChlbmNvZGVyLT50eXBlID09IElOVEVMX09VVFBVVF9FRFAgJiYgZGV2X3ByaXYtPnZidC5l ZHBfYnBwICYmCj4+ICAgCSAgICBwaXBlX2NvbmZpZy0+cGlwZV9icHAgPiBkZXZfcHJpdi0+dmJ0 LmVkcF9icHApIHsKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rw X21zdC5jCj4+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMKPj4gaW5kZXgg MDYzOTI3NS4uNjI1ZjgzMSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHBfbXN0LmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMK Pj4gQEAgLTc4LDYgKzc4LDggQEAgc3RhdGljIGJvb2wgaW50ZWxfZHBfbXN0X2NvbXB1dGVfY29u ZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyCj4+ICplbmNvZGVyLAo+PiAgIAkJcmV0dXJuIGZhbHNl Owo+PiAgIAl9Cj4+Cj4+ICsJaWYgKGRybV9kcF9tc3RfcG9ydF9oYXNfYXVkaW8oJmludGVsX2Rw LT5tc3RfbWdyLCBmb3VuZC0+cG9ydCkpCj4+ICsJCXBpcGVfY29uZmlnLT5oYXNfYXVkaW8gPSB0 cnVlOwo+PiAgIAltc3RfcGJuID0gZHJtX2RwX2NhbGNfcGJuX21vZGUoYWRqdXN0ZWRfbW9kZS0+ Y3J0Y19jbG9jaywgYnBwKTsKPj4KPj4gICAJcGlwZV9jb25maWctPnBibiA9IG1zdF9wYm47Cj4+ IEBAIC0xMDIsNiArMTA0LDExIEBAIHN0YXRpYyB2b2lkIGludGVsX21zdF9kaXNhYmxlX2RwKHN0 cnVjdCBpbnRlbF9lbmNvZGVyCj4+ICplbmNvZGVyKQo+PiAgIAlzdHJ1Y3QgaW50ZWxfZHBfbXN0 X2VuY29kZXIgKmludGVsX21zdCA9IGVuY190b19tc3QoJmVuY29kZXItPmJhc2UpOwo+PiAgIAlz dHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCA9IGludGVsX21zdC0+cHJp bWFyeTsKPj4gICAJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9ICZpbnRlbF9kaWdfcG9ydC0+ ZHA7Cj4+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGVuY29kZXItPmJhc2UuZGV2Owo+PiAr CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4+ ICsJc3RydWN0IGRybV9jcnRjICpjcnRjID0gZW5jb2Rlci0+YmFzZS5jcnRjOwo+PiArCXN0cnVj dCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKPj4gKwo+PiAg IAlpbnQgcmV0Owo+Pgo+PiAgIAlEUk1fREVCVUdfS01TKCIlZFxuIiwgaW50ZWxfZHAtPmFjdGl2 ZV9tc3RfbGlua3MpOwo+PiBAQCAtMTEyLDYgKzExOSwxMCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9t c3RfZGlzYWJsZV9kcChzdHJ1Y3QgaW50ZWxfZW5jb2Rlcgo+PiAqZW5jb2RlcikKPj4gICAJaWYg KHJldCkgewo+PiAgIAkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gdXBkYXRlIHBheWxvYWQgJWRcbiIs IHJldCk7Cj4+ICAgCX0KPj4gKwlpZiAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5oYXNfYXVkaW8pIHsK Pj4gKwkJaW50ZWxfYXVkaW9fY29kZWNfZGlzYWJsZShlbmNvZGVyKTsKPj4gKwkJaW50ZWxfZGlz cGxheV9wb3dlcl9wdXQoZGV2X3ByaXYsIFBPV0VSX0RPTUFJTl9BVURJTyk7Cj4+ICsJfQo+PiAg IH0KPj4KPj4gICBzdGF0aWMgdm9pZCBpbnRlbF9tc3RfcG9zdF9kaXNhYmxlX2RwKHN0cnVjdCBp bnRlbF9lbmNvZGVyICplbmNvZGVyKQo+PiBAQCAtMjE0LDYgKzIyNSw3IEBAIHN0YXRpYyB2b2lk IGludGVsX21zdF9lbmFibGVfZHAoc3RydWN0IGludGVsX2VuY29kZXIKPj4gKmVuY29kZXIpCj4+ ICAgCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAgPSAmaW50ZWxfZGlnX3BvcnQtPmRwOwo+PiAg IAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxfZGlnX3BvcnQtPmJhc2UuYmFzZS5kZXY7 Cj4+ICAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZh dGU7Cj4+ICsJc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGVuY29kZXIt PmJhc2UuY3J0Yyk7Cj4+ICAgCWVudW0gcG9ydCBwb3J0ID0gaW50ZWxfZGlnX3BvcnQtPnBvcnQ7 Cj4+ICAgCWludCByZXQ7Cj4+Cj4+IEBAIC0yMjYsNiArMjM4LDEzIEBAIHN0YXRpYyB2b2lkIGlu dGVsX21zdF9lbmFibGVfZHAoc3RydWN0IGludGVsX2VuY29kZXIKPj4gKmVuY29kZXIpCj4+ICAg CXJldCA9IGRybV9kcF9jaGVja19hY3Rfc3RhdHVzKCZpbnRlbF9kcC0+bXN0X21ncik7Cj4+Cj4+ ICAgCXJldCA9IGRybV9kcF91cGRhdGVfcGF5bG9hZF9wYXJ0MigmaW50ZWxfZHAtPm1zdF9tZ3Ip Owo+PiArCj4+ICsJaWYgKGNydGMtPmNvbmZpZy0+aGFzX2F1ZGlvKSB7Cj4+ICsJCURSTV9ERUJV R19EUklWRVIoIkVuYWJsaW5nIERQIGF1ZGlvIG9uIHBpcGUgJWNcbiIsCj4+ICsJCQkJIHBpcGVf bmFtZShjcnRjLT5waXBlKSk7Cj4+ICsJCWludGVsX2Rpc3BsYXlfcG93ZXJfZ2V0KGRldl9wcml2 LCBQT1dFUl9ET01BSU5fQVVESU8pOwo+PiArCQlpbnRlbF9hdWRpb19jb2RlY19lbmFibGUoZW5j b2Rlcik7Cj4+ICsJfQo+PiAgIH0KPj4KPj4gICBzdGF0aWMgYm9vbCBpbnRlbF9kcF9tc3RfZW5j X2dldF9od19zdGF0ZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPj4gQEAgLTI1MSw2 ICsyNzAsOCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kcF9tc3RfZW5jX2dldF9jb25maWcoc3RydWN0 Cj4+IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4+Cj4+ICAgCXBpcGVfY29uZmlnLT5oYXNfZHBf ZW5jb2RlciA9IHRydWU7Cj4+Cj4+ICsJaW50ZWxfc2V0X3BpcGVfaGFzX2F1ZGlvKGRldl9wcml2 LCBjcnRjLCBwaXBlX2NvbmZpZyk7Cj4+ICsKPj4gICAJdGVtcCA9IEk5MTVfUkVBRChUUkFOU19E RElfRlVOQ19DVEwoY3B1X3RyYW5zY29kZXIpKTsKPj4gICAJaWYgKHRlbXAgJiBUUkFOU19ERElf UEhTWU5DKQo+PiAgIAkJZmxhZ3MgfD0gRFJNX01PREVfRkxBR19QSFNZTkM7Cj4+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+PiBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oCj4+IGluZGV4IDkyNTE4YjQuLjQ4OGQ3NDQgMTAwNjQ0Cj4+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rydi5oCj4+IEBAIC0xMDEzLDYgKzEwMTMsOSBAQCB2b2lkIGludGVs X2RkaV9zZXRfcGlwZV9zZXR0aW5ncyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwo+PiAgIHZvaWQg aW50ZWxfZGRpX3ByZXBhcmVfbGlua19yZXRyYWluKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAp Owo+PiAgIGJvb2wgaW50ZWxfZGRpX2Nvbm5lY3Rvcl9nZXRfaHdfc3RhdGUoc3RydWN0IGludGVs X2Nvbm5lY3Rvcgo+PiAqaW50ZWxfY29ubmVjdG9yKTsKPj4gICB2b2lkIGludGVsX2RkaV9mZGlf ZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwo+PiArdm9pZCBpbnRlbF9zZXRfcGlwZV9o YXNfYXVkaW8oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+PiArCQkJICBzdHJ1 Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YywKPj4gKwkJCSAgc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKnBpcGVfY29uZmlnKTsKPj4gICB2b2lkIGludGVsX2RkaV9nZXRfY29uZmlnKHN0cnVjdCBp bnRlbF9lbmNvZGVyICplbmNvZGVyLAo+PiAgIAkJCSAgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KnBpcGVfY29uZmlnKTsKPj4gICBzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QK SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==