From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH v3 1/7] drm/i915: Add CRTC output format YCBCR 4:2:0 Date: Fri, 5 Jan 2018 15:15:29 +0530 Message-ID: <1515145535-11228-2-git-send-email-shashank.sharma@intel.com> References: <1515145535-11228-1-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1A5D06E309 for ; Fri, 5 Jan 2018 09:40:42 +0000 (UTC) In-Reply-To: <1515145535-11228-1-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Q3VycmVudGx5LCB3ZSBhcmUgdXNpbmcgYSBib29sIGluIENSVEMgc3RhdGUgKHN0YXRlLT55Y2Jj cjQyMCksCnRvIGluZGljYXRlIG1vZGVzZXQsIHRoYXQgdGhlIG91dHB1dCBmb3JtYXQgaXMgWUNC Q1IgNDoyOjAuIE5vdyBpbgpvcmRlciB0byBzdXBwb3J0IG90aGVyIFlDQkNSIGZvcm1hdHMsIHdl IHdpbGwgbmVlZCBtb3JlIHN1Y2ggZmxhZ3MuCgpUaGUgaWRlYSBiZWhpbmQgdGhpcyBwYXRjaCBp cyB0byByZXBsYWNlIHRoaXMgYm9vbCB3aXRoIGFuIGVudW0sCmFuZCBwbHVnIHRoaXMgaW4gaW4g dGhlIGV4aXN0aW5nIFlDQkNSIDQ6MjowIGZyYW1ld29yayBpbiBzdWNoIGEKd2F5IHRoYXQgdGhp cyBjYW4gYmUgcmUtdXNlZCBmb3IgWUNCQ1IgNDo0OjQgYW5kIG90aGVyIG91dHB1dCBmb3JtYXRz IHRvby4KClRoaXMgcGF0Y2ggYWRkcyBhIG5ldyBlbnVtIGZvciBDUlRDIG91dHB1dCBmb3JtYXRz LCBhbmQgdGhlbiBwbHVncyBpdAppbiB0aGUgZXhpc3RpbmcgbW9kZXNldCBmcmFtZXdvcmsuCgpW MzogQWRkZWQgdGhpcyBwYXRjaCBpbiB0aGUgc2VyaWVzLCB0byBhZGRyZXNzIHJldmlldyBjb21t ZW50cyBmcm9tCiAgICBzZWNvbmQgcGF0Y2hzZXQuCgpDYzogVmlsbGUgU3lyamFsYSA8dmlsbGUu c3lyamFsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5s YW5raG9yc3RAbGludXguaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFybWEg PHNoYXNoYW5rLnNoYXJtYUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfY29sb3IuYyAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jICAg ICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA2NiArKysr KysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oICAgICB8IDEwICsrKystLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRt aS5jICAgIHwgIDYgKystLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGFuZWwuYyAgIHwg IDIgKy0KIDYgZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMKaW5kZXggYWE2NmU5NS4uOTllMzJjYiAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jCkBAIC0xNDEsNyArMTQxLDcgQEAgc3RhdGljIHZv aWQgaTl4eF9sb2FkX2NzY19tYXRyaXgoc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KQogCXVpbnQxNl90IGNvZWZmc1s5XSA9IHsgMCwgfTsKIAlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqaW50ZWxfY3J0Y19zdGF0ZSA9IHRvX2ludGVsX2NydGNfc3RhdGUoY3J0Y19zdGF0ZSk7CiAK LQlpZiAoaW50ZWxfY3J0Y19zdGF0ZS0+eWNiY3I0MjApIHsKKwlpZiAoaW50ZWxfY3J0Y19zdGF0 ZS0+b3V0cHV0X2Zvcm1hdCA9PSBDUlRDX09VVFBVVF9ZQ0JDUjQyMCkgewogCQlpOXh4X2xvYWRf eWNiY3JfY29udmVyc2lvbl9tYXRyaXgoaW50ZWxfY3J0Yyk7CiAJCXJldHVybjsKIAl9IGVsc2Ug aWYgKGNydGNfc3RhdGUtPmN0bSkgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGRpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwppbmRleCBmNTE2 NDVhLi44NDMyN2U3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGku YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwpAQCAtMTI2NCw3ICsxMjY0 LDcgQEAgc3RhdGljIHZvaWQgZGRpX2RvdGNsb2NrX2dldChzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqcGlwZV9jb25maWcpCiAJZWxzZQogCQlkb3RjbG9jayA9IHBpcGVfY29uZmlnLT5wb3J0X2Ns b2NrOwogCi0JaWYgKHBpcGVfY29uZmlnLT55Y2JjcjQyMCkKKwlpZiAocGlwZV9jb25maWctPm91 dHB1dF9mb3JtYXQgPT0gQ1JUQ19PVVRQVVRfWUNCQ1I0MjApCiAJCWRvdGNsb2NrICo9IDI7CiAK IAlpZiAocGlwZV9jb25maWctPnBpeGVsX211bHRpcGxpZXIpCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMKaW5kZXggMGNkMzU1OS4uNjliMGFhMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYwpAQCAtNDY0NCw3ICs0NjQ0LDggQEAgc2tsX3VwZGF0ZV9zY2FsZXIoc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsIGJvb2wgZm9yY2VfZGV0YWNoLAogCSAq LwogCW5lZWRfc2NhbGluZyA9IHNyY193ICE9IGRzdF93IHx8IHNyY19oICE9IGRzdF9oOwogCi0J aWYgKGNydGNfc3RhdGUtPnljYmNyNDIwICYmIHNjYWxlcl91c2VyID09IFNLTF9DUlRDX0lOREVY KQorCWlmIChjcnRjX3N0YXRlLT5vdXRwdXRfZm9ybWF0ID09IENSVENfT1VUUFVUX1lDQkNSNDIw ICYmCisJICAgIHNjYWxlcl91c2VyID09IFNLTF9DUlRDX0lOREVYKQogCQluZWVkX3NjYWxpbmcg PSB0cnVlOwogCiAJLyoKQEAgLTYzNTYsNyArNjM1Nyw4IEBAIHN0YXRpYyBpbnQgaW50ZWxfY3J0 Y19jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKIAkJcmV0dXJuIC1FSU5W QUw7CiAJfQogCi0JaWYgKHBpcGVfY29uZmlnLT55Y2JjcjQyMCAmJiBwaXBlX2NvbmZpZy0+YmFz ZS5jdG0pIHsKKwlpZiAocGlwZV9jb25maWctPm91dHB1dF9mb3JtYXQgPT0gQ1JUQ19PVVRQVVRf WUNCQ1I0MjAgJiYKKwkgICAgcGlwZV9jb25maWctPmJhc2UuY3RtKSB7CiAJCS8qCiAJCSAqIFRo ZXJlIGlzIG9ubHkgb25lIHBpcGUgQ1NDIHVuaXQgcGVyIHBpcGUsIGFuZCB3ZSBuZWVkIHRoYXQK IAkJICogZm9yIG91dHB1dCBjb252ZXJzaW9uIGZyb20gUkdCLT5ZQ0JDUi4gU28gaWYgQ1RNIGlz IGFscmVhZHkKQEAgLTgxNzcsMTAgKzgxNzksMTAgQEAgc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRf cGlwZW1pc2Moc3RydWN0IGRybV9jcnRjICpjcnRjKQogCQlpZiAoaW50ZWxfY3J0Yy0+Y29uZmln LT5kaXRoZXIpCiAJCQl2YWwgfD0gUElQRU1JU0NfRElUSEVSX0VOQUJMRSB8IFBJUEVNSVNDX0RJ VEhFUl9UWVBFX1NQOwogCi0JCWlmIChjb25maWctPnljYmNyNDIwKSB7Ci0JCQl2YWwgfD0gUElQ RU1JU0NfT1VUUFVUX0NPTE9SU1BBQ0VfWVVWIHwKLQkJCQlQSVBFTUlTQ19ZVVY0MjBfRU5BQkxF IHwKLQkJCQlQSVBFTUlTQ19ZVVY0MjBfTU9ERV9GVUxMX0JMRU5EOworCQlpZiAoY29uZmlnLT5v dXRwdXRfZm9ybWF0ID09IENSVENfT1VUUFVUX1lDQkNSNDIwKSB7CisJCQl2YWwgfD0gUElQRU1J U0NfT1VUUFVUX0NPTE9SU1BBQ0VfWVVWOworCQkJdmFsIHw9IFBJUEVNSVNDX1lVVjQyMF9FTkFC TEUgfAorCQkJICAgICAgIFBJUEVNSVNDX1lVVjQyMF9NT0RFX0ZVTExfQkxFTkQ7CiAJCX0KIAog CQlJOTE1X1dSSVRFKFBJUEVNSVNDKGludGVsX2NydGMtPnBpcGUpLCB2YWwpOwpAQCAtOTE1Niw2 ICs5MTU4LDE5IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfZ2V0X2RkaV9wb3J0X3N0YXRlKHN0cnVj dCBpbnRlbF9jcnRjICpjcnRjLAogCX0KIH0KIAorc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCBv dXRwdXRfZm9ybWF0X3N0cltdID0geworCSJJbnZhbGlkIiwKKwkiUkdCIiwKKwkiWUNCQ1I0OjI6 MCIsCit9OworCitzdGF0aWMgY29uc3QgY2hhciAqb3V0cHV0X2Zvcm1hdHMoZW51bSBjcnRjX291 dHB1dF9mb3JtYXQgZm9ybWF0KQoreworCWlmIChmb3JtYXQgPCBDUlRDX09VVFBVVF9JTlZBTElE IHx8IGZvcm1hdCA+IENSVENfT1VUUFVUX1lDQkNSNDIwKQorCQlmb3JtYXQgPSBDUlRDX09VVFBV VF9JTlZBTElEOworCXJldHVybiBvdXRwdXRfZm9ybWF0X3N0cltmb3JtYXQgKyAxXTsKK30KKwog c3RhdGljIGJvb2wgaGFzd2VsbF9nZXRfcGlwZV9jb25maWcoc3RydWN0IGludGVsX2NydGMgKmNy dGMsCiAJCQkJICAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKIHsKQEAg LTkxOTYsMTkgKzkyMTEsMjggQEAgc3RhdGljIGJvb2wgaGFzd2VsbF9nZXRfcGlwZV9jb25maWco c3RydWN0IGludGVsX2NydGMgKmNydGMsCiAKIAlpZiAoSVNfQlJPQURXRUxMKGRldl9wcml2KSB8 fCBJTlRFTF9HRU4oZGV2X3ByaXYpID49IDkpIHsKIAkJdTMyIHRtcCA9IEk5MTVfUkVBRChQSVBF TUlTQyhjcnRjLT5waXBlKSk7Ci0JCWJvb2wgY2xyc3BhY2VfeXV2ID0gdG1wICYgUElQRU1JU0Nf T1VUUFVUX0NPTE9SU1BBQ0VfWVVWOwotCi0JCWlmIChJU19HRU1JTklMQUtFKGRldl9wcml2KSB8 fCBJTlRFTF9HRU4oZGV2X3ByaXYpID49IDEwKSB7Ci0JCQlib29sIGJsZW5kX21vZGVfNDIwID0g dG1wICYKLQkJCQkJICAgICAgUElQRU1JU0NfWVVWNDIwX01PREVfRlVMTF9CTEVORDsKKwkJZW51 bSBjcnRjX291dHB1dF9mb3JtYXQgb3V0cHV0X2Zvcm1hdCA9IENSVENfT1VUUFVUX1JHQjsKKwor CQlpZiAodG1wICYgUElQRU1JU0NfT1VUUFVUX0NPTE9SU1BBQ0VfWVVWKSB7CisJCQlib29sIHlj YmNyNDIwX2VuYWJsZWQgPSB0bXAgJiBQSVBFTUlTQ19ZVVY0MjBfRU5BQkxFOworCQkJYm9vbCBi bGVuZCA9IHRtcCAmIFBJUEVNSVNDX1lVVjQyMF9NT0RFX0ZVTExfQkxFTkQ7CisKKwkJCWlmICh5 Y2JjcjQyMF9lbmFibGVkKSB7CisJCQkJLyogV2Ugc3VwcG9ydCA0OjI6MCBpbiBmdWxsIGJsZW5k IG1vZGUgb25seSAqLworCQkJCWlmICghYmxlbmQpCisJCQkJCW91dHB1dF9mb3JtYXQgPSBDUlRD X09VVFBVVF9JTlZBTElEOworCQkJCWVsc2UgaWYgKCEoSVNfR0VNSU5JTEFLRShkZXZfcHJpdikg fHwKKwkJCQkJICAgSU5URUxfR0VOKGRldl9wcml2KSA+PSAxMCkpCisJCQkJCW91dHB1dF9mb3Jt YXQgPSBDUlRDX09VVFBVVF9JTlZBTElEOworCQkJCWVsc2UKKwkJCQkJb3V0cHV0X2Zvcm1hdCA9 IENSVENfT1VUUFVUX1lDQkNSNDIwOworCQkJfQogCi0JCQlwaXBlX2NvbmZpZy0+eWNiY3I0MjAg PSB0bXAgJiBQSVBFTUlTQ19ZVVY0MjBfRU5BQkxFOwotCQkJaWYgKHBpcGVfY29uZmlnLT55Y2Jj cjQyMCAhPSBjbHJzcGFjZV95dXYgfHwKLQkJCSAgICBwaXBlX2NvbmZpZy0+eWNiY3I0MjAgIT0g YmxlbmRfbW9kZV80MjApCi0JCQkJRFJNX0RFQlVHX0tNUygiQmFkIDQ6MjowIG1vZGUgKCUwOHgp XG4iLCB0bXApOwotCQl9IGVsc2UgaWYgKGNscnNwYWNlX3l1dikgewotCQkJRFJNX0RFQlVHX0tN UygiWUNiQ3IgNDoyOjAgVW5zdXBwb3J0ZWRcbiIpOwogCQl9CisKKwkJcGlwZV9jb25maWctPm91 dHB1dF9mb3JtYXQgPSBvdXRwdXRfZm9ybWF0OworCQlEUk1fREVCVUdfS01TKCJPdXRwdXQgZm9y bWF0ICVzXG4iLAorCQkJCW91dHB1dF9mb3JtYXRzKG91dHB1dF9mb3JtYXQpKTsKIAl9CiAKIAlw b3dlcl9kb21haW4gPSBQT1dFUl9ET01BSU5fUElQRV9QQU5FTF9GSVRURVIoY3J0Yy0+cGlwZSk7 CkBAIC0xMDU1OCw2ICsxMDU4Miw5IEBAIHN0YXRpYyB2b2lkIGludGVsX2R1bXBfcGlwZV9jb25m aWcoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJRFJNX0RFQlVHX0tNUygib3V0cHV0X3R5cGVz OiAlcyAoMHgleClcbiIsCiAJCSAgICAgIGJ1ZiwgcGlwZV9jb25maWctPm91dHB1dF90eXBlcyk7 CiAKKwlEUk1fREVCVUdfS01TKCJvdXRwdXQgZm9ybWF0OiAlc1xuIiwKKwkJb3V0cHV0X2Zvcm1h dHMocGlwZV9jb25maWctPm91dHB1dF9mb3JtYXQpKTsKKwogCURSTV9ERUJVR19LTVMoImNwdV90 cmFuc2NvZGVyOiAlcywgcGlwZSBicHA6ICVpLCBkaXRoZXJpbmc6ICVpXG4iLAogCQkgICAgICB0 cmFuc2NvZGVyX25hbWUocGlwZV9jb25maWctPmNwdV90cmFuc2NvZGVyKSwKIAkJICAgICAgcGlw ZV9jb25maWctPnBpcGVfYnBwLCBwaXBlX2NvbmZpZy0+ZGl0aGVyKTsKQEAgLTEwNTY3LDkgKzEw NTk0LDYgQEAgc3RhdGljIHZvaWQgaW50ZWxfZHVtcF9waXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxf Y3J0YyAqY3J0YywKIAkJCQkgICAgICBwaXBlX2NvbmZpZy0+ZmRpX2xhbmVzLAogCQkJCSAgICAg ICZwaXBlX2NvbmZpZy0+ZmRpX21fbik7CiAKLQlpZiAocGlwZV9jb25maWctPnljYmNyNDIwKQot CQlEUk1fREVCVUdfS01TKCJZQ2JDciA0OjI6MCBvdXRwdXQgZW5hYmxlZFxuIik7Ci0KIAlpZiAo aW50ZWxfY3J0Y19oYXNfZHBfZW5jb2RlcihwaXBlX2NvbmZpZykpIHsKIAkJaW50ZWxfZHVtcF9t X25fY29uZmlnKHBpcGVfY29uZmlnLCAiZHAgbV9uIiwKIAkJCQlwaXBlX2NvbmZpZy0+bGFuZV9j b3VudCwgJnBpcGVfY29uZmlnLT5kcF9tX24pOwpAQCAtMTExNDMsNiArMTExNjcsNyBAQCBpbnRl bF9waXBlX2NvbmZpZ19jb21wYXJlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwK IAlQSVBFX0NPTkZfQ0hFQ0tfSShiYXNlLmFkanVzdGVkX21vZGUuY3J0Y192c3luY19lbmQpOwog CiAJUElQRV9DT05GX0NIRUNLX0kocGl4ZWxfbXVsdGlwbGllcik7CisJUElQRV9DT05GX0NIRUNL X0kob3V0cHV0X2Zvcm1hdCk7CiAJUElQRV9DT05GX0NIRUNLX0JPT0woaGFzX2hkbWlfc2luayk7 CiAJaWYgKChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgOCAmJiAhSVNfSEFTV0VMTChkZXZfcHJpdikp IHx8CiAJICAgIElTX1ZBTExFWVZJRVcoZGV2X3ByaXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3By aXYpKQpAQCAtMTExNTEsNyArMTExNzYsNiBAQCBpbnRlbF9waXBlX2NvbmZpZ19jb21wYXJlKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAlQSVBFX0NPTkZfQ0hFQ0tfQk9PTCho ZG1pX3NjcmFtYmxpbmcpOwogCVBJUEVfQ09ORl9DSEVDS19CT09MKGhkbWlfaGlnaF90bWRzX2Ns b2NrX3JhdGlvKTsKIAlQSVBFX0NPTkZfQ0hFQ0tfQk9PTF9JTkNPTVBMRVRFKGhhc19pbmZvZnJh bWUpOwotCVBJUEVfQ09ORl9DSEVDS19CT09MKHljYmNyNDIwKTsKIAogCVBJUEVfQ09ORl9DSEVD S19CT09MX0lOQ09NUExFVEUoaGFzX2F1ZGlvKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaApp bmRleCAzMGY3OTFmLi43OTY2MjY1MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTYw OSw2ICs2MDksMTIgQEAgc3RydWN0IGludGVsX2NydGNfd21fc3RhdGUgewogCWJvb2wgbmVlZF9w b3N0dmJsX3VwZGF0ZTsKIH07CiAKK2VudW0gY3J0Y19vdXRwdXRfZm9ybWF0IHsKKwlDUlRDX09V VFBVVF9JTlZBTElEID0gLTEsCisJQ1JUQ19PVVRQVVRfUkdCLAorCUNSVENfT1VUUFVUX1lDQkNS NDIwLAorfTsKKwogc3RydWN0IGludGVsX2NydGNfc3RhdGUgewogCXN0cnVjdCBkcm1fY3J0Y19z dGF0ZSBiYXNlOwogCkBAIC03OTUsOCArODAxLDggQEAgc3RydWN0IGludGVsX2NydGNfc3RhdGUg ewogCS8qIEhETUkgSGlnaCBUTURTIGNoYXIgcmF0ZSByYXRpbyAqLwogCWJvb2wgaGRtaV9oaWdo X3RtZHNfY2xvY2tfcmF0aW87CiAKLQkvKiBvdXRwdXQgZm9ybWF0IGlzIFlDQkNSIDQ6MjowICov Ci0JYm9vbCB5Y2JjcjQyMDsKKwkvKiBPdXRwdXQgZm9ybWF0IFJHQi9ZQ0JDUiBldGMgKi8KKwll bnVtIGNydGNfb3V0cHV0X2Zvcm1hdCBvdXRwdXRfZm9ybWF0OwogfTsKIAogc3RydWN0IGludGVs X2NydGMgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCmluZGV4IGJjZWQ3YjkuLmIyNjZhN2Yg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKQEAgLTQ3OCw3ICs0NzgsNyBAQCBzdGF0aWMg dm9pZCBpbnRlbF9oZG1pX3NldF9hdmlfaW5mb2ZyYW1lKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5j b2RlciwKIAkJcmV0dXJuOwogCX0KIAotCWlmIChjcnRjX3N0YXRlLT55Y2JjcjQyMCkKKwlpZiAo Y3J0Y19zdGF0ZS0+b3V0cHV0X2Zvcm1hdCA9PSBDUlRDX09VVFBVVF9ZQ0JDUjQyMCkKIAkJZnJh bWUuYXZpLmNvbG9yc3BhY2UgPSBIRE1JX0NPTE9SU1BBQ0VfWVVWNDIwOwogCWVsc2UKIAkJZnJh bWUuYXZpLmNvbG9yc3BhY2UgPSBIRE1JX0NPTE9SU1BBQ0VfUkdCOwpAQCAtMTM3Miw3ICsxMzcy LDcgQEAgc3RhdGljIGJvb2wgaGRtaV8xMmJwY19wb3NzaWJsZShjb25zdCBzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIAkJaWYgKGNvbm5lY3Rvcl9zdGF0ZS0+Y3J0YyAhPSBj cnRjX3N0YXRlLT5iYXNlLmNydGMpCiAJCQljb250aW51ZTsKIAotCQlpZiAoY3J0Y19zdGF0ZS0+ eWNiY3I0MjApIHsKKwkJaWYgKGNydGNfc3RhdGUtPm91dHB1dF9mb3JtYXQgPT0gQ1JUQ19PVVRQ VVRfWUNCQ1I0MjApIHsKIAkJCWNvbnN0IHN0cnVjdCBkcm1faGRtaV9pbmZvICpoZG1pID0gJmlu Zm8tPmhkbWk7CiAKIAkJCWlmICghKGhkbWktPnk0MjBfZGNfbW9kZXMgJiBEUk1fRURJRF9ZQ0JD UjQyMF9EQ18zNikpCkBAIC0xNDA3LDcgKzE0MDcsNyBAQCBpbnRlbF9oZG1pX3ljYmNyNDIwX2Nv bmZpZyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCWNvbmZpZy0+cG9ydF9jbG9j ayAvPSAyOwogCSpjbG9ja18xMmJwYyAvPSAyOwogCSpjbG9ja184YnBjIC89IDI7Ci0JY29uZmln LT55Y2JjcjQyMCA9IHRydWU7CisJY29uZmlnLT5vdXRwdXRfZm9ybWF0ID0gQ1JUQ19PVVRQVVRf WUNCQ1I0MjA7CiAKIAkvKiBZQ0JDUiA0MjAgb3V0cHV0IGNvbnZlcnNpb24gbmVlZHMgYSBzY2Fs ZXIgKi8KIAlpZiAoc2tsX3VwZGF0ZV9zY2FsZXJfY3J0Yyhjb25maWcpKSB7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcGFuZWwuYwppbmRleCBmYTY4MzFmLi5jNTc4MTlmIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3BhbmVsLmMKQEAgLTExMSw3ICsxMTEsNyBAQCBpbnRlbF9wY2hfcGFuZWxfZml0dGlu ZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YywKIAkvKiBOYXRpdmUgbW9kZXMgZG9uJ3Qg bmVlZCBmaXR0aW5nICovCiAJaWYgKGFkanVzdGVkX21vZGUtPmNydGNfaGRpc3BsYXkgPT0gcGlw ZV9jb25maWctPnBpcGVfc3JjX3cgJiYKIAkgICAgYWRqdXN0ZWRfbW9kZS0+Y3J0Y192ZGlzcGxh eSA9PSBwaXBlX2NvbmZpZy0+cGlwZV9zcmNfaCAmJgotCSAgICAhcGlwZV9jb25maWctPnljYmNy NDIwKQorCSAgICBwaXBlX2NvbmZpZy0+b3V0cHV0X2Zvcm1hdCAhPSBDUlRDX09VVFBVVF9ZQ0JD UjQyMCkKIAkJZ290byBkb25lOwogCiAJc3dpdGNoIChmaXR0aW5nX21vZGUpIHsKLS0gCjIuNy40 CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK