From mboxrd@z Thu Jan 1 00:00:00 1970 From: Madhav Chauhan Subject: [GLK MIPI DSI V6 3/7] drm/i915/glk: Add MIPIIO Enable/disable sequence Date: Fri, 17 Feb 2017 18:13:31 +0530 Message-ID: <1487335415-14766-4-git-send-email-madhav.chauhan@intel.com> References: <1487335415-14766-1-git-send-email-madhav.chauhan@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id F40016ECE7 for ; Fri, 17 Feb 2017 12:48:06 +0000 (UTC) In-Reply-To: <1487335415-14766-1-git-send-email-madhav.chauhan@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 Cc: ander.conselvan.de.oliveira@intel.com, jani.nikula@intel.com, Deepak M List-Id: intel-gfx@lists.freedesktop.org RnJvbTogRGVlcGFrIE0gPG0uZGVlcGFrQGludGVsLmNvbT4KCnYyOiBBZGRyZXNzZWQgSmFuaSdz IFJldmlldyBjb21tZW50cyhyZW5hbWVkIGJpdCBmaWVsZCBtYWNyb3MpCnYzOiBKYW5pJ3MgUmV2 aWV3IGNvbW1lbnQgZm9yIGFsaWduaW5nIGNvZGUgdG8gcGxhdGZvcm1zIGFuZCBhZGRlZAp3cmFw cGVyIGZ1bmN0aW9ucy4KdjQ6IENvcnJlY3RlZCBlbmFibGUvZGlzYWJsZSBzZXVxZW5jZSBhcyBw ZXIgQlNQRUMKdjU6IFJlbW92ZWQgd2FpdGluZyB0d2ljZSBmb3Igc2FtZSBiaXQgKFJldmlldyBj b21tZW50czogSmFuaSkKClNpZ25lZC1vZmYtYnk6IERlZXBhayBNIDxtLmRlZXBha0BpbnRlbC5j b20+ClNpZ25lZC1vZmYtYnk6IE1hZGhhdiBDaGF1aGFuIDxtYWRoYXYuY2hhdWhhbkBpbnRlbC5j b20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMgfCAyMDYgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTk1IGluc2Vy dGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2RzaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMKaW5kZXgg MTZiOGM4My4uZDc3ODAxYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHNpLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMKQEAgLTM1Nyw2ICsz NTcsMTA5IEBAIHN0YXRpYyBib29sIGludGVsX2RzaV9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50 ZWxfZW5jb2RlciAqZW5jb2RlciwKIAlyZXR1cm4gdHJ1ZTsKIH0KIAorc3RhdGljIHZvaWQgZ2xr X2RzaV9kZXZpY2VfcmVhZHkoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCit7CisJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShlbmNvZGVyLT5iYXNlLmRl dik7CisJc3RydWN0IGludGVsX2RzaSAqaW50ZWxfZHNpID0gZW5jX3RvX2ludGVsX2RzaSgmZW5j b2Rlci0+YmFzZSk7CisJZW51bSBwb3J0IHBvcnQ7CisJdTMyIHRtcCwgdmFsOworCisJLyogU2V0 IHRoZSBNSVBJIG1vZGUKKwkgKiBJZiBNSVBJX01vZGUgaXMgb2ZmLCB0aGVuIHdyaXRpbmcgdG8g TFBfV2FrZSBiaXQgaXMgbm90IHJlZmxlY3RpbmcuCisJICogUG93ZXIgT04gTUlQSSBJTyBmaXJz dCBhbmQgdGhlbiB3cml0ZSBpbnRvIElPIHJlc2V0IGFuZCBMUCB3YWtlIGJpdHMKKwkgKi8KKwlm b3JfZWFjaF9kc2lfcG9ydChwb3J0LCBpbnRlbF9kc2ktPnBvcnRzKSB7CisJCXRtcCA9IEk5MTVf UkVBRChNSVBJX0NUUkwocG9ydCkpOworCQlJOTE1X1dSSVRFKE1JUElfQ1RSTChwb3J0KSwgdG1w IHwgR0xLX01JUElJT19FTkFCTEUpOworCX0KKworCS8qIFB1dCB0aGUgSU8gaW50byByZXNldCAq LworCXRtcCA9IEk5MTVfUkVBRChNSVBJX0NUUkwoUE9SVF9BKSk7CisJdG1wICY9IH5HTEtfTUlQ SUlPX1JFU0VUX1JFTEVBU0VEOworCUk5MTVfV1JJVEUoTUlQSV9DVFJMKFBPUlRfQSksIHRtcCk7 CisKKwkvKiBQcm9ncmFtIExQIFdha2UgKi8KKwlmb3JfZWFjaF9kc2lfcG9ydChwb3J0LCBpbnRl bF9kc2ktPnBvcnRzKSB7CisJCXRtcCA9IEk5MTVfUkVBRChNSVBJX0NUUkwocG9ydCkpOworCQl0 bXAgfD0gR0xLX0xQX1dBS0U7CisJCUk5MTVfV1JJVEUoTUlQSV9DVFJMKHBvcnQpLCB0bXApOwor CX0KKworCS8qIFdhaXQgZm9yIFB3ciBBQ0sgKi8KKwlmb3JfZWFjaF9kc2lfcG9ydChwb3J0LCBp bnRlbF9kc2ktPnBvcnRzKSB7CisJCWlmIChpbnRlbF93YWl0X2Zvcl9yZWdpc3RlcihkZXZfcHJp diwKKwkJCQlNSVBJX0NUUkwocG9ydCksIEdMS19NSVBJSU9fUE9SVF9QT1dFUkVELAorCQkJCUdM S19NSVBJSU9fUE9SVF9QT1dFUkVELCAyMCkpCisJCQlEUk1fRVJST1IoIk1JUElPIHBvcnQgaXMg cG93ZXJnYXRlZFxuIik7CisJfQorCisJLyogV2FpdCBmb3IgTUlQSSBQSFkgc3RhdHVzIGJpdCB0 byBzZXQgKi8KKwlmb3JfZWFjaF9kc2lfcG9ydChwb3J0LCBpbnRlbF9kc2ktPnBvcnRzKSB7CisJ CWlmIChpbnRlbF93YWl0X2Zvcl9yZWdpc3RlcihkZXZfcHJpdiwKKwkJCQlNSVBJX0NUUkwocG9y dCksIEdMS19QSFlfU1RBVFVTX1BPUlRfUkVBRFksCisJCQkJR0xLX1BIWV9TVEFUVVNfUE9SVF9S RUFEWSwgMjApKQorCQkJRFJNX0VSUk9SKCJQSFkgaXMgbm90IE9OXG4iKTsKKwl9CisKKwkvKiBH ZXQgSU8gb3V0IG9mIHJlc2V0ICovCisJdG1wID0gSTkxNV9SRUFEKE1JUElfQ1RSTChQT1JUX0Ep KTsKKwlJOTE1X1dSSVRFKE1JUElfQ1RSTChQT1JUX0EpLCB0bXAgfCBHTEtfTUlQSUlPX1JFU0VU X1JFTEVBU0VEKTsKKworCS8qIEdldCBJTyBvdXQgb2YgTG93IHBvd2VyIHN0YXRlKi8KKwlmb3Jf ZWFjaF9kc2lfcG9ydChwb3J0LCBpbnRlbF9kc2ktPnBvcnRzKSB7CisJCWlmICghKEk5MTVfUkVB RChNSVBJX0RFVklDRV9SRUFEWShwb3J0KSkgJiBERVZJQ0VfUkVBRFkpKSB7CisJCQl2YWwgPSBJ OTE1X1JFQUQoTUlQSV9ERVZJQ0VfUkVBRFkocG9ydCkpOworCQkJdmFsICY9IH5VTFBTX1NUQVRF X01BU0s7CisJCQl2YWwgfD0gREVWSUNFX1JFQURZOworCQkJSTkxNV9XUklURShNSVBJX0RFVklD RV9SRUFEWShwb3J0KSwgdmFsKTsKKwkJCXVzbGVlcF9yYW5nZSgxMCwgMTUpOworCQl9CisKKwkJ LyogRW50ZXIgVUxQUyAqLworCQl2YWwgPSBJOTE1X1JFQUQoTUlQSV9ERVZJQ0VfUkVBRFkocG9y dCkpOworCQl2YWwgJj0gflVMUFNfU1RBVEVfTUFTSzsKKwkJdmFsIHw9IChVTFBTX1NUQVRFX0VO VEVSIHwgREVWSUNFX1JFQURZKTsKKwkJSTkxNV9XUklURShNSVBJX0RFVklDRV9SRUFEWShwb3J0 KSwgdmFsKTsKKworCQkvKiBXYWl0IGZvciBVTFBTIE5vdCBhY3RpdmUgKi8KKwkJaWYgKGludGVs X3dhaXRfZm9yX3JlZ2lzdGVyKGRldl9wcml2LAorCQkJCU1JUElfQ1RSTChwb3J0KSwgR0xLX1VM UFNfTk9UX0FDVElWRSwKKwkJCQlHTEtfVUxQU19OT1RfQUNUSVZFLCAyMCkpCisKKwkJLyogRXhp dCBVTFBTICovCisJCXZhbCA9IEk5MTVfUkVBRChNSVBJX0RFVklDRV9SRUFEWShwb3J0KSk7CisJ CXZhbCAmPSB+VUxQU19TVEFURV9NQVNLOworCQl2YWwgfD0gKFVMUFNfU1RBVEVfRVhJVCB8IERF VklDRV9SRUFEWSk7CisJCUk5MTVfV1JJVEUoTUlQSV9ERVZJQ0VfUkVBRFkocG9ydCksIHZhbCk7 CisKKwkJLyogRW50ZXIgTm9ybWFsIE1vZGUgKi8KKwkJdmFsID0gSTkxNV9SRUFEKE1JUElfREVW SUNFX1JFQURZKHBvcnQpKTsKKwkJdmFsICY9IH5VTFBTX1NUQVRFX01BU0s7CisJCXZhbCB8PSAo VUxQU19TVEFURV9OT1JNQUxfT1BFUkFUSU9OIHwgREVWSUNFX1JFQURZKTsKKwkJSTkxNV9XUklU RShNSVBJX0RFVklDRV9SRUFEWShwb3J0KSwgdmFsKTsKKworCQl0bXAgPSBJOTE1X1JFQUQoTUlQ SV9DVFJMKHBvcnQpKTsKKwkJdG1wICY9IH5HTEtfTFBfV0FLRTsKKwkJSTkxNV9XUklURShNSVBJ X0NUUkwocG9ydCksIHRtcCk7CisJfQorCisJLyogV2FpdCBmb3IgU3RvcCBzdGF0ZSAqLworCWZv cl9lYWNoX2RzaV9wb3J0KHBvcnQsIGludGVsX2RzaS0+cG9ydHMpIHsKKwkJaWYgKGludGVsX3dh aXRfZm9yX3JlZ2lzdGVyKGRldl9wcml2LAorCQkJCU1JUElfQ1RSTChwb3J0KSwgR0xLX0RBVEFf TEFORV9TVE9QX1NUQVRFLAorCQkJCUdMS19EQVRBX0xBTkVfU1RPUF9TVEFURSwgMjApKQorCQkJ RFJNX0VSUk9SKCJEYXRlIGxhbmUgbm90IGluIFNUT1Agc3RhdGVcbiIpOworCX0KKworCS8qIFdh aXQgZm9yIEFGRSBMQVRDSCAqLworCWZvcl9lYWNoX2RzaV9wb3J0KHBvcnQsIGludGVsX2RzaS0+ cG9ydHMpIHsKKwkJaWYgKGludGVsX3dhaXRfZm9yX3JlZ2lzdGVyKGRldl9wcml2LAorCQkJCUJY VF9NSVBJX1BPUlRfQ1RSTChwb3J0KSwgQUZFX0xBVENIT1VULAorCQkJCUFGRV9MQVRDSE9VVCwg MjApKQorCQkJRFJNX0VSUk9SKCJELVBIWSBub3QgZW50ZXJpbmcgTFAtMTEgc3RhdGVcbiIpOwor CX0KK30KKwogc3RhdGljIHZvaWQgYnh0X2RzaV9kZXZpY2VfcmVhZHkoc3RydWN0IGludGVsX2Vu Y29kZXIgKmVuY29kZXIpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0g dG9faTkxNShlbmNvZGVyLT5iYXNlLmRldik7CkBAIC00MjksOCArNTMyLDEwIEBAIHN0YXRpYyB2 b2lkIGludGVsX2RzaV9kZXZpY2VfcmVhZHkoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIp CiAKIAlpZiAoSVNfVkFMTEVZVklFVyhkZXZfcHJpdikgfHwgSVNfQ0hFUlJZVklFVyhkZXZfcHJp dikpCiAJCXZsdl9kc2lfZGV2aWNlX3JlYWR5KGVuY29kZXIpOwotCWVsc2UgaWYgKElTX0dFTjlf TFAoZGV2X3ByaXYpKQorCWVsc2UgaWYgKElTX0JST1hUT04oZGV2X3ByaXYpKQogCQlieHRfZHNp X2RldmljZV9yZWFkeShlbmNvZGVyKTsKKwllbHNlIGlmIChJU19HRU1JTklMQUtFKGRldl9wcml2 KSkKKwkJZ2xrX2RzaV9kZXZpY2VfcmVhZHkoZW5jb2Rlcik7CiB9CiAKIHN0YXRpYyB2b2lkIGlu dGVsX2RzaV9wb3J0X2VuYWJsZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKQEAgLTY1 NiwxOCArNzYxLDIwIEBAIHN0YXRpYyB2b2lkIGludGVsX2RzaV9kaXNhYmxlKHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyKQogCQltc2xlZXAoMik7CiAJfQogCi0JZm9yX2VhY2hfZHNpX3Bv cnQocG9ydCwgaW50ZWxfZHNpLT5wb3J0cykgewotCQkvKiBQYW5lbCBjb21tYW5kcyBjYW4gYmUg c2VudCB3aGVuIGNsb2NrIGlzIGluIExQMTEgKi8KLQkJSTkxNV9XUklURShNSVBJX0RFVklDRV9S RUFEWShwb3J0KSwgMHgwKTsKKwlpZiAoIUlTX0dFTUlOSUxBS0UoZGV2X3ByaXYpKSB7CisJCWZv cl9lYWNoX2RzaV9wb3J0KHBvcnQsIGludGVsX2RzaS0+cG9ydHMpIHsKKwkJCS8qIFBhbmVsIGNv bW1hbmRzIGNhbiBiZSBzZW50IHdoZW4gY2xvY2sgaXMgaW4gTFAxMSAqLworCQkJSTkxNV9XUklU RShNSVBJX0RFVklDRV9SRUFEWShwb3J0KSwgMHgwKTsKIAotCQlpbnRlbF9kc2lfcmVzZXRfY2xv Y2tzKGVuY29kZXIsIHBvcnQpOwotCQlJOTE1X1dSSVRFKE1JUElfRU9UX0RJU0FCTEUocG9ydCks IENMT0NLU1RPUCk7CisJCQlpbnRlbF9kc2lfcmVzZXRfY2xvY2tzKGVuY29kZXIsIHBvcnQpOwor CQkJSTkxNV9XUklURShNSVBJX0VPVF9ESVNBQkxFKHBvcnQpLCBDTE9DS1NUT1ApOwogCi0JCXRl bXAgPSBJOTE1X1JFQUQoTUlQSV9EU0lfRlVOQ19QUkcocG9ydCkpOwotCQl0ZW1wICY9IH5WSURf TU9ERV9GT1JNQVRfTUFTSzsKLQkJSTkxNV9XUklURShNSVBJX0RTSV9GVU5DX1BSRyhwb3J0KSwg dGVtcCk7CisJCQl0ZW1wID0gSTkxNV9SRUFEKE1JUElfRFNJX0ZVTkNfUFJHKHBvcnQpKTsKKwkJ CXRlbXAgJj0gflZJRF9NT0RFX0ZPUk1BVF9NQVNLOworCQkJSTkxNV9XUklURShNSVBJX0RTSV9G VU5DX1BSRyhwb3J0KSwgdGVtcCk7CiAKLQkJSTkxNV9XUklURShNSVBJX0RFVklDRV9SRUFEWShw b3J0KSwgMHgxKTsKKwkJCUk5MTVfV1JJVEUoTUlQSV9ERVZJQ0VfUkVBRFkocG9ydCksIDB4MSk7 CisJCX0KIAl9CiAJLyogaWYgZGlzYWJsZSBwYWNrZXRzIGFyZSBzZW50IGJlZm9yZSBzZW5kaW5n IHNodXRkb3duIHBhY2tldCB0aGVuIGluCiAJICogc29tZSBuZXh0IGVuYWJsZSBzZXF1ZW5jZSBz ZW5kIHR1cm4gb24gcGFja2V0IGVycm9yIGlzIG9ic2VydmVkICovCkBAIC02NzcsNyArNzg0LDcz IEBAIHN0YXRpYyB2b2lkIGludGVsX2RzaV9kaXNhYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICpl bmNvZGVyKQogCQl3YWl0X2Zvcl9kc2lfZmlmb19lbXB0eShpbnRlbF9kc2ksIHBvcnQpOwogfQog Ci1zdGF0aWMgdm9pZCBpbnRlbF9kc2lfY2xlYXJfZGV2aWNlX3JlYWR5KHN0cnVjdCBpbnRlbF9l bmNvZGVyICplbmNvZGVyKQorc3RhdGljIHZvaWQgZ2xrX2RzaV9lbnRlcl9sb3dfcG93ZXJfbW9k ZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKKwlzdHJ1Y3QgaW50 ZWxfZHNpICppbnRlbF9kc2kgPSBlbmNfdG9faW50ZWxfZHNpKCZlbmNvZGVyLT5iYXNlKTsKKwll bnVtIHBvcnQgcG9ydDsKKwl1MzIgdmFsOworCisJLyogRW50ZXIgVUxQUyAqLworCWZvcl9lYWNo X2RzaV9wb3J0KHBvcnQsIGludGVsX2RzaS0+cG9ydHMpIHsKKwkJdmFsID0gSTkxNV9SRUFEKE1J UElfREVWSUNFX1JFQURZKHBvcnQpKTsKKwkJdmFsICY9IH5VTFBTX1NUQVRFX01BU0s7CisJCXZh bCB8PSAoVUxQU19TVEFURV9FTlRFUiB8IERFVklDRV9SRUFEWSk7CisJCUk5MTVfV1JJVEUoTUlQ SV9ERVZJQ0VfUkVBRFkocG9ydCksIHZhbCk7CisJfQorCisJLyogV2FpdCBmb3IgTUlQSSBQSFkg c3RhdHVzIGJpdCB0byB1bnNldCAqLworCWZvcl9lYWNoX2RzaV9wb3J0KHBvcnQsIGludGVsX2Rz aS0+cG9ydHMpIHsKKwkJaWYgKGludGVsX3dhaXRfZm9yX3JlZ2lzdGVyKGRldl9wcml2LAorCQkJ CQkgICAgTUlQSV9DVFJMKHBvcnQpLAorCQkJCQkgICAgR0xLX1BIWV9TVEFUVVNfUE9SVF9SRUFE WSwgMCwgMjApKQorCQkJRFJNX0VSUk9SKCJQSFkgaXMgbm90IHR1cm5pbmcgT0ZGXG4iKTsKKwl9 CisKKwkvKiBXYWl0IGZvciBQd3IgQUNLIGJpdCB0byB1bnNldCAqLworCWZvcl9lYWNoX2RzaV9w b3J0KHBvcnQsIGludGVsX2RzaS0+cG9ydHMpIHsKKwkJaWYgKGludGVsX3dhaXRfZm9yX3JlZ2lz dGVyKGRldl9wcml2LAorCQkJCQkgICAgTUlQSV9DVFJMKHBvcnQpLAorCQkJCQkgICAgR0xLX01J UElJT19QT1JUX1BPV0VSRUQsIDAsIDIwKSkKKwkJCURSTV9FUlJPUigiTUlQSSBJTyBQb3J0IGlz IG5vdCBwb3dlcmdhdGVkXG4iKTsKKwl9Cit9CisKK3N0YXRpYyB2b2lkIGdsa19kc2lfZGlzYWJs ZV9taXBpX2lvKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQoreworCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5kZXYpOworCXN0 cnVjdCBpbnRlbF9kc2kgKmludGVsX2RzaSA9IGVuY190b19pbnRlbF9kc2koJmVuY29kZXItPmJh c2UpOworCWVudW0gcG9ydCBwb3J0OworCXUzMiB0bXA7CisKKwkvKiBQdXQgdGhlIElPIGludG8g cmVzZXQgKi8KKwl0bXAgPSBJOTE1X1JFQUQoTUlQSV9DVFJMKFBPUlRfQSkpOworCXRtcCAmPSB+ R0xLX01JUElJT19SRVNFVF9SRUxFQVNFRDsKKwlJOTE1X1dSSVRFKE1JUElfQ1RSTChQT1JUX0Ep LCB0bXApOworCisJLyogV2FpdCBmb3IgTUlQSSBQSFkgc3RhdHVzIGJpdCB0byB1bnNldCAqLwor CWZvcl9lYWNoX2RzaV9wb3J0KHBvcnQsIGludGVsX2RzaS0+cG9ydHMpIHsKKwkJaWYgKGludGVs X3dhaXRfZm9yX3JlZ2lzdGVyKGRldl9wcml2LAorCQkJCQkgICAgTUlQSV9DVFJMKHBvcnQpLAor CQkJCQkgICAgR0xLX1BIWV9TVEFUVVNfUE9SVF9SRUFEWSwgMCwgMjApKQorCQkJRFJNX0VSUk9S KCJQSFkgaXMgbm90IHR1cm5pbmcgT0ZGXG4iKTsKKwl9CisKKwkvKiBDbGVhciBNSVBJIG1vZGUg Ki8KKwlmb3JfZWFjaF9kc2lfcG9ydChwb3J0LCBpbnRlbF9kc2ktPnBvcnRzKSB7CisJCXRtcCA9 IEk5MTVfUkVBRChNSVBJX0NUUkwocG9ydCkpOworCQl0bXAgJj0gfkdMS19NSVBJSU9fRU5BQkxF OworCQlJOTE1X1dSSVRFKE1JUElfQ1RSTChwb3J0KSwgdG1wKTsKKwl9Cit9CisKK3N0YXRpYyB2 b2lkIGdsa19kc2lfY2xlYXJfZGV2aWNlX3JlYWR5KHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNv ZGVyKQoreworCWdsa19kc2lfZW50ZXJfbG93X3Bvd2VyX21vZGUoZW5jb2Rlcik7CisJZ2xrX2Rz aV9kaXNhYmxlX21pcGlfaW8oZW5jb2Rlcik7Cit9CisKK3N0YXRpYyB2b2lkIHZsdl9kc2lfY2xl YXJfZGV2aWNlX3JlYWR5KHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQogewogCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5kZXYp OwogCXN0cnVjdCBpbnRlbF9kc2kgKmludGVsX2RzaSA9IGVuY190b19pbnRlbF9kc2koJmVuY29k ZXItPmJhc2UpOwpAQCAtNzIwLDYgKzg5MywxNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kc2lfY2xl YXJfZGV2aWNlX3JlYWR5KHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQogCX0KIH0KIAor c3RhdGljIHZvaWQgaW50ZWxfZHNpX2NsZWFyX2RldmljZV9yZWFkeShzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqZW5jb2RlcikKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0 b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKKworCWlmIChJU19WQUxMRVlWSUVXKGRldl9wcml2 KSB8fCBJU19DSEVSUllWSUVXKGRldl9wcml2KSB8fAorCSAgICBJU19CUk9YVE9OKGRldl9wcml2 KSkKKwkJdmx2X2RzaV9jbGVhcl9kZXZpY2VfcmVhZHkoZW5jb2Rlcik7CisJZWxzZSBpZiAoSVNf R0VNSU5JTEFLRShkZXZfcHJpdikpCisJCWdsa19kc2lfY2xlYXJfZGV2aWNlX3JlYWR5KGVuY29k ZXIpOworfQorCiBzdGF0aWMgdm9pZCBpbnRlbF9kc2lfcG9zdF9kaXNhYmxlKHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyLAogCQkJCSAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBl X2NvbmZpZywKIAkJCQkgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSkK LS0gCjEuOS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK