From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan de Oliveira Subject: [PATCH 15/15] drm/i915: Split PNV version of crtc_compute_clock() Date: Mon, 21 Mar 2016 18:00:16 +0200 Message-ID: <1458576016-30348-16-git-send-email-ander.conselvan.de.oliveira@intel.com> References: <1458576016-30348-1-git-send-email-ander.conselvan.de.oliveira@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id DEE5A6E060 for ; Mon, 21 Mar 2016 16:00:47 +0000 (UTC) In-Reply-To: <1458576016-30348-1-git-send-email-ander.conselvan.de.oliveira@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 List-Id: intel-gfx@lists.freedesktop.org U3BsaXQgYSBwbnZfY3J0Y19jb21wdXRlX2Nsb2NrKCksIHNvIHRoZSBkaWZmZXJlbmNlcyBiZXR3 ZWVuIHBsYXRmb3JtcwpiZWNvbWUgbW9yZSBvYnZpb3VzLgoKV2l0aCB0aGlzLCB0aGVyZSBhcmUg bm8gbW9yZSB1c2VycyBvZiBpbnRlbF9saW1pdCgpIG9yIHRoZSAtPmZpbmRfZHBsbCgpCmhvb2ss IHNvIGdldCByaWQgb2YgdGhlbS4KClNpZ25lZC1vZmYtYnk6IEFuZGVyIENvbnNlbHZhbiBkZSBP bGl2ZWlyYSA8YW5kZXIuY29uc2VsdmFuLmRlLm9saXZlaXJhQGludGVsLmNvbT4KLS0tCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgfCAgMTggLS0tLS0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDEzNCArKysrKysrKysrKysrKysrKysrKystLS0t LS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCA3MyBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCBlZmNhNTM0Li44M2VlOGQ3IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTU3NSwyNCArNTc1LDYgQEAgc3RydWN0IGRwbGw7CiBz dHJ1Y3QgZHJtX2k5MTVfZGlzcGxheV9mdW5jcyB7CiAJaW50ICgqZ2V0X2Rpc3BsYXlfY2xvY2tf c3BlZWQpKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogCWludCAoKmdldF9maWZvX3NpemUpKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBwbGFuZSk7Ci0JLyoqCi0JICogZmluZF9kcGxsKCkg LSBGaW5kIHRoZSBiZXN0IHZhbHVlcyBmb3IgdGhlIFBMTAotCSAqIEBsaW1pdDogbGltaXRzIGZv ciB0aGUgUExMCi0JICogQGNydGM6IGN1cnJlbnQgQ1JUQwotCSAqIEB0YXJnZXQ6IHRhcmdldCBm cmVxdWVuY3kgaW4ga0h6Ci0JICogQHJlZmNsazogcmVmZXJlbmNlIGNsb2NrIGZyZXF1ZW5jeSBp biBrSHoKLQkgKiBAbWF0Y2hfY2xvY2s6IGlmIHByb3ZpZGVkLCBAYmVzdF9jbG9jayBQIGRpdmlk ZXIgbXVzdAotCSAqICAgICAgICAgICAgICAgbWF0Y2ggdGhlIFAgZGl2aWRlciBmcm9tIEBtYXRj aF9jbG9jawotCSAqICAgICAgICAgICAgICAgdXNlZCBmb3IgTFZEUyBkb3duY2xvY2tpbmcKLQkg KiBAYmVzdF9jbG9jazogYmVzdCBQTEwgdmFsdWVzIGZvdW5kCi0JICoKLQkgKiBSZXR1cm5zIHRy dWUgb24gc3VjY2VzcywgZmFsc2Ugb24gZmFpbHVyZS4KLQkgKi8KLQlib29sICgqZmluZF9kcGxs KShjb25zdCBzdHJ1Y3QgaW50ZWxfbGltaXQgKmxpbWl0LAotCQkJICBzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKLQkJCSAgaW50IHRhcmdldCwgaW50IHJlZmNsaywKLQkJCSAg c3RydWN0IGRwbGwgKm1hdGNoX2Nsb2NrLAotCQkJICBzdHJ1Y3QgZHBsbCAqYmVzdF9jbG9jayk7 CiAJaW50ICgqY29tcHV0ZV9waXBlX3dtKShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRl KTsKIAlpbnQgKCpjb21wdXRlX2ludGVybWVkaWF0ZV93bSkoc3RydWN0IGRybV9kZXZpY2UgKmRl diwKIAkJCQkgICAgICAgc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMsCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggNTUyZmQ0Yy4uNGQ3YzI5YSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtNTY2LDMzICs1NjYsNiBAQCBzdGF0aWMgYm9vbCBp bnRlbF9waXBlX3dpbGxfaGF2ZV90eXBlKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpj cnRjX3N0YXRlLAogCXJldHVybiBmYWxzZTsKIH0KIAotc3RhdGljIGNvbnN0IGludGVsX2xpbWl0 X3QgKgotaW50ZWxfbGltaXQoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsIGlu dCByZWZjbGspCi17Ci0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGNfc3RhdGUtPmJhc2Uu Y3J0Yy0+ZGV2OwotCWNvbnN0IGludGVsX2xpbWl0X3QgKmxpbWl0OwotCi0JaWYgKElTX0JST1hU T04oZGV2KSB8fCBJU19DSEVSUllWSUVXKGRldikgfHwgSVNfVkFMTEVZVklFVyhkZXYpIHx8Ci0J ICAgIEhBU19QQ0hfU1BMSVQoZGV2KSB8fCBJU19HNFgoZGV2KSB8fCBJU19HRU4yKGRldikpCi0J CWxpbWl0ID0gTlVMTDsKLQotCWlmIChJU19QSU5FVklFVyhkZXYpKSB7Ci0JCWlmIChpbnRlbF9w aXBlX3dpbGxfaGF2ZV90eXBlKGNydGNfc3RhdGUsIElOVEVMX09VVFBVVF9MVkRTKSkKLQkJCWxp bWl0ID0gJmludGVsX2xpbWl0c19waW5ldmlld19sdmRzOwotCQllbHNlCi0JCQlsaW1pdCA9ICZp bnRlbF9saW1pdHNfcGluZXZpZXdfc2R2bzsKLQl9IGVsc2UgaWYgKCFJU19HRU4yKGRldikpIHsK LQkJaWYgKGludGVsX3BpcGVfd2lsbF9oYXZlX3R5cGUoY3J0Y19zdGF0ZSwgSU5URUxfT1VUUFVU X0xWRFMpKQotCQkJbGltaXQgPSAmaW50ZWxfbGltaXRzX2k5eHhfbHZkczsKLQkJZWxzZQotCQkJ bGltaXQgPSAmaW50ZWxfbGltaXRzX2k5eHhfc2R2bzsKLQl9Ci0KLQlXQVJOX09OKGxpbWl0ID09 IE5VTEwpOwotCi0JcmV0dXJuIGxpbWl0OwotfQotCiAvKgogICogUGxhdGZvcm0gc3BlY2lmaWMg aGVscGVycyB0byBjYWxjdWxhdGUgdGhlIHBvcnQgUExMIGxvb3BiYWNrLSAoY2xvY2subSksCiAg KiBhbmQgcG9zdC1kaXZpZGVyIChjbG9jay5wKSB2YWx1ZXMsIHByZS0gKGNsb2NrLnZjbykgYW5k IHBvc3QtZGl2aWRlZCBmYXN0CkBAIC03MjMsNiArNjk2LDE2IEBAIGk5eHhfc2VsZWN0X3AyX2Rp dihjb25zdCBpbnRlbF9saW1pdF90ICpsaW1pdCwKIAl9CiB9CiAKKy8qCisgKiBSZXR1cm5zIGEg c2V0IG9mIGRpdmlzb3JzIGZvciB0aGUgZGVzaXJlZCB0YXJnZXQgY2xvY2sgd2l0aCB0aGUgZ2l2 ZW4KKyAqIHJlZmNsaywgb3IgRkFMU0UuICBUaGUgcmV0dXJuZWQgdmFsdWVzIHJlcHJlc2VudCB0 aGUgY2xvY2sgZXF1YXRpb246CisgKiByZWZsY2sgKiAoNSAqIChtMSArIDIpICsgKG0yICsgMikp IC8gKG4gKyAyKSAvIHAxIC8gcDIuCisgKgorICogVGFyZ2V0IGFuZCByZWZlcmVuY2UgY2xvY2tz IGFyZSBzcGVjaWZpZWQgaW4ga0h6LgorICoKKyAqIElmIG1hdGNoX2Nsb2NrIGlzIHByb3ZpZGVk LCB0aGVuIGJlc3RfY2xvY2sgUCBkaXZpZGVyIG11c3QgbWF0Y2ggdGhlIFAKKyAqIGRpdmlkZXIg ZnJvbSBAbWF0Y2hfY2xvY2sgdXNlZCBmb3IgTFZEUyBkb3duY2xvY2tpbmcuCisgKi8KIHN0YXRp YyBib29sCiBpOXh4X2ZpbmRfYmVzdF9kcGxsKGNvbnN0IGludGVsX2xpbWl0X3QgKmxpbWl0LAog CQkgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCkBAIC03NzAsNiArNzUz LDE2IEBAIGk5eHhfZmluZF9iZXN0X2RwbGwoY29uc3QgaW50ZWxfbGltaXRfdCAqbGltaXQsCiAJ cmV0dXJuIChlcnIgIT0gdGFyZ2V0KTsKIH0KIAorLyoKKyAqIFJldHVybnMgYSBzZXQgb2YgZGl2 aXNvcnMgZm9yIHRoZSBkZXNpcmVkIHRhcmdldCBjbG9jayB3aXRoIHRoZSBnaXZlbgorICogcmVm Y2xrLCBvciBGQUxTRS4gIFRoZSByZXR1cm5lZCB2YWx1ZXMgcmVwcmVzZW50IHRoZSBjbG9jayBl cXVhdGlvbjoKKyAqIHJlZmxjayAqICg1ICogKG0xICsgMikgKyAobTIgKyAyKSkgLyAobiArIDIp IC8gcDEgLyBwMi4KKyAqCisgKiBUYXJnZXQgYW5kIHJlZmVyZW5jZSBjbG9ja3MgYXJlIHNwZWNp ZmllZCBpbiBrSHouCisgKgorICogSWYgbWF0Y2hfY2xvY2sgaXMgcHJvdmlkZWQsIHRoZW4gYmVz dF9jbG9jayBQIGRpdmlkZXIgbXVzdCBtYXRjaCB0aGUgUAorICogZGl2aWRlciBmcm9tIEBtYXRj aF9jbG9jayB1c2VkIGZvciBMVkRTIGRvd25jbG9ja2luZy4KKyAqLwogc3RhdGljIGJvb2wKIHBu dl9maW5kX2Jlc3RfZHBsbChjb25zdCBpbnRlbF9saW1pdF90ICpsaW1pdCwKIAkJICAgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCkBAIC04MTksNiArODEyLDExIEBAIHBudl9m aW5kX2Jlc3RfZHBsbChjb25zdCBpbnRlbF9saW1pdF90ICpsaW1pdCwKICAqIFJldHVybnMgYSBz ZXQgb2YgZGl2aXNvcnMgZm9yIHRoZSBkZXNpcmVkIHRhcmdldCBjbG9jayB3aXRoIHRoZSBnaXZl bgogICogcmVmY2xrLCBvciBGQUxTRS4gIFRoZSByZXR1cm5lZCB2YWx1ZXMgcmVwcmVzZW50IHRo ZSBjbG9jayBlcXVhdGlvbjoKICAqIHJlZmxjayAqICg1ICogKG0xICsgMikgKyAobTIgKyAyKSkg LyAobiArIDIpIC8gcDEgLyBwMi4KKyAqCisgKiBUYXJnZXQgYW5kIHJlZmVyZW5jZSBjbG9ja3Mg YXJlIHNwZWNpZmllZCBpbiBrSHouCisgKgorICogSWYgbWF0Y2hfY2xvY2sgaXMgcHJvdmlkZWQs IHRoZW4gYmVzdF9jbG9jayBQIGRpdmlkZXIgbXVzdCBtYXRjaCB0aGUgUAorICogZGl2aWRlciBm cm9tIEBtYXRjaF9jbG9jayB1c2VkIGZvciBMVkRTIGRvd25jbG9ja2luZy4KICAqLwogc3RhdGlj IGJvb2wKIGc0eF9maW5kX2Jlc3RfZHBsbChjb25zdCBpbnRlbF9saW1pdF90ICpsaW1pdCwKQEAg LTc5MDQsNDMgKzc5MDIsNjcgQEAgc3RhdGljIGludCBnNHhfY3J0Y19jb21wdXRlX2Nsb2NrKHN0 cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IHBudl9j cnRjX2NvbXB1dGVfY2xvY2soc3RydWN0IGludGVsX2NydGMgKmNydGMsCisJCQkJICBzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKK3sKKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 ID0gY3J0Yy0+YmFzZS5kZXY7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0g ZGV2LT5kZXZfcHJpdmF0ZTsKKwljb25zdCBpbnRlbF9saW1pdF90ICpsaW1pdDsKKwlpbnQgcmVm Y2xrID0gOTYwMDA7CisKKwltZW1zZXQoJmNydGNfc3RhdGUtPmRwbGxfaHdfc3RhdGUsIDAsCisJ ICAgICAgIHNpemVvZihjcnRjX3N0YXRlLT5kcGxsX2h3X3N0YXRlKSk7CisKKwlpZiAoaW50ZWxf cGlwZV93aWxsX2hhdmVfdHlwZShjcnRjX3N0YXRlLCBJTlRFTF9PVVRQVVRfTFZEUykpIHsKKwkJ aWYgKGludGVsX3BhbmVsX3VzZV9zc2MoZGV2X3ByaXYpKSB7CisJCQlyZWZjbGsgPSBkZXZfcHJp di0+dmJ0Lmx2ZHNfc3NjX2ZyZXE7CisJCQlEUk1fREVCVUdfS01TKCJ1c2luZyBTU0MgcmVmZXJl bmNlIGNsb2NrIG9mICVkIGtIelxuIiwgcmVmY2xrKTsKKwkJfQorCisJCWxpbWl0ID0gJmludGVs X2xpbWl0c19waW5ldmlld19sdmRzOworCX0gZWxzZSB7CisJCWxpbWl0ID0gJmludGVsX2xpbWl0 c19waW5ldmlld19zZHZvOworCX0KKworCWlmICghY3J0Y19zdGF0ZS0+Y2xvY2tfc2V0ICYmCisJ ICAgICFwbnZfZmluZF9iZXN0X2RwbGwobGltaXQsIGNydGNfc3RhdGUsIGNydGNfc3RhdGUtPnBv cnRfY2xvY2ssCisJCQkJcmVmY2xrLCBOVUxMLCAmY3J0Y19zdGF0ZS0+ZHBsbCkpIHsKKwkJRFJN X0VSUk9SKCJDb3VsZG4ndCBmaW5kIFBMTCBzZXR0aW5ncyBmb3IgbW9kZSFcbiIpOworCQlyZXR1 cm4gLUVJTlZBTDsKKwl9CisKKwlpOXh4X2NvbXB1dGVfZHBsbChjcnRjLCBjcnRjX3N0YXRlLCBO VUxMKTsKKworCXJldHVybiAwOworfQorCiBzdGF0aWMgaW50IGk5eHhfY3J0Y19jb21wdXRlX2Ns b2NrKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCQkJCSAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlKQogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5iYXNl LmRldjsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2 YXRlOwotCWJvb2wgb2s7CiAJY29uc3QgaW50ZWxfbGltaXRfdCAqbGltaXQ7CiAJaW50IHJlZmNs ayA9IDk2MDAwOwogCiAJbWVtc2V0KCZjcnRjX3N0YXRlLT5kcGxsX2h3X3N0YXRlLCAwLAogCSAg ICAgICBzaXplb2YoY3J0Y19zdGF0ZS0+ZHBsbF9od19zdGF0ZSkpOwogCi0JaWYgKGNydGNfc3Rh dGUtPmhhc19kc2lfZW5jb2RlcikKLQkJcmV0dXJuIDA7CisJaWYgKGludGVsX3BpcGVfd2lsbF9o YXZlX3R5cGUoY3J0Y19zdGF0ZSwgSU5URUxfT1VUUFVUX0xWRFMpKSB7CisJCWlmIChpbnRlbF9w YW5lbF91c2Vfc3NjKGRldl9wcml2KSkgeworCQkJcmVmY2xrID0gZGV2X3ByaXYtPnZidC5sdmRz X3NzY19mcmVxOworCQkJRFJNX0RFQlVHX0tNUygidXNpbmcgU1NDIHJlZmVyZW5jZSBjbG9jayBv ZiAlZCBrSHpcbiIsIHJlZmNsayk7CisJCX0KIAotCWlmIChpbnRlbF9waXBlX3dpbGxfaGF2ZV90 eXBlKGNydGNfc3RhdGUsIElOVEVMX09VVFBVVF9MVkRTKSAmJgotCSAgICBpbnRlbF9wYW5lbF91 c2Vfc3NjKGRldl9wcml2KSkgewotCQlyZWZjbGsgPSBkZXZfcHJpdi0+dmJ0Lmx2ZHNfc3NjX2Zy ZXE7Ci0JCURSTV9ERUJVR19LTVMoInVzaW5nIFNTQyByZWZlcmVuY2UgY2xvY2sgb2YgJWQga0h6 XG4iLCByZWZjbGspOworCQlsaW1pdCA9ICZpbnRlbF9saW1pdHNfaTl4eF9sdmRzOworCX0gZWxz ZSB7CisJCWxpbWl0ID0gJmludGVsX2xpbWl0c19pOXh4X3Nkdm87CiAJfQogCi0JaWYgKCFjcnRj X3N0YXRlLT5jbG9ja19zZXQpIHsKLQkJLyoKLQkJICogUmV0dXJucyBhIHNldCBvZiBkaXZpc29y cyBmb3IgdGhlIGRlc2lyZWQgdGFyZ2V0IGNsb2NrIHdpdGgKLQkJICogdGhlIGdpdmVuIHJlZmNs aywgb3IgRkFMU0UuICBUaGUgcmV0dXJuZWQgdmFsdWVzIHJlcHJlc2VudAotCQkgKiB0aGUgY2xv Y2sgZXF1YXRpb246IHJlZmxjayAqICg1ICogKG0xICsgMikgKyAobTIgKyAyKSkgLyAobiArCi0J CSAqIDIpIC8gcDEgLyBwMi4KLQkJICovCi0JCWxpbWl0ID0gaW50ZWxfbGltaXQoY3J0Y19zdGF0 ZSwgcmVmY2xrKTsKLQkJb2sgPSBkZXZfcHJpdi0+ZGlzcGxheS5maW5kX2RwbGwobGltaXQsIGNy dGNfc3RhdGUsCi0JCQkJCQkgY3J0Y19zdGF0ZS0+cG9ydF9jbG9jaywKLQkJCQkJCSByZWZjbGss IE5VTEwsCi0JCQkJCQkgJmNydGNfc3RhdGUtPmRwbGwpOwotCQlpZiAoIW9rKSB7Ci0JCQlEUk1f RVJST1IoIkNvdWxkbid0IGZpbmQgUExMIHNldHRpbmdzIGZvciBtb2RlIVxuIik7Ci0JCQlyZXR1 cm4gLUVJTlZBTDsKLQkJfQorCWlmICghY3J0Y19zdGF0ZS0+Y2xvY2tfc2V0ICYmCisJICAgICFp OXh4X2ZpbmRfYmVzdF9kcGxsKGxpbWl0LCBjcnRjX3N0YXRlLCBjcnRjX3N0YXRlLT5wb3J0X2Ns b2NrLAorCQkJCSByZWZjbGssIE5VTEwsICZjcnRjX3N0YXRlLT5kcGxsKSkgeworCQlEUk1fRVJS T1IoIkNvdWxkbid0IGZpbmQgUExMIHNldHRpbmdzIGZvciBtb2RlIVxuIik7CisJCXJldHVybiAt RUlOVkFMOwogCX0KIAogCWk5eHhfY29tcHV0ZV9kcGxsKGNydGMsIGNydGNfc3RhdGUsIE5VTEwp OwpAQCAtMTQ5MjUsMTEgKzE0OTQ3LDYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fbW9kZV9j b25maWdfZnVuY3MgaW50ZWxfbW9kZV9mdW5jcyA9IHsKICAqLwogdm9pZCBpbnRlbF9pbml0X2Rp c3BsYXlfaG9va3Moc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewotCWlmIChJ U19QSU5FVklFVyhkZXZfcHJpdikpCi0JCWRldl9wcml2LT5kaXNwbGF5LmZpbmRfZHBsbCA9IHBu dl9maW5kX2Jlc3RfZHBsbDsKLQllbHNlCi0JCWRldl9wcml2LT5kaXNwbGF5LmZpbmRfZHBsbCA9 IGk5eHhfZmluZF9iZXN0X2RwbGw7Ci0KIAlpZiAoSU5URUxfSU5GTyhkZXZfcHJpdiktPmdlbiA+ PSA5KSB7CiAJCWRldl9wcml2LT5kaXNwbGF5LmdldF9waXBlX2NvbmZpZyA9IGhhc3dlbGxfZ2V0 X3BpcGVfY29uZmlnOwogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfaW5pdGlhbF9wbGFuZV9jb25m aWcgPQpAQCAtMTQ5NzUsNiArMTQ5OTIsMTMgQEAgdm9pZCBpbnRlbF9pbml0X2Rpc3BsYXlfaG9v a3Moc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCQlkZXZfcHJpdi0+ZGlzcGxh eS5jcnRjX2NvbXB1dGVfY2xvY2sgPSBnNHhfY3J0Y19jb21wdXRlX2Nsb2NrOwogCQlkZXZfcHJp di0+ZGlzcGxheS5jcnRjX2VuYWJsZSA9IGk5eHhfY3J0Y19lbmFibGU7CiAJCWRldl9wcml2LT5k aXNwbGF5LmNydGNfZGlzYWJsZSA9IGk5eHhfY3J0Y19kaXNhYmxlOworCX0gZWxzZSBpZiAoSVNf UElORVZJRVcoZGV2X3ByaXYpKSB7CisJCWRldl9wcml2LT5kaXNwbGF5LmdldF9waXBlX2NvbmZp ZyA9IGk5eHhfZ2V0X3BpcGVfY29uZmlnOworCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfaW5pdGlh bF9wbGFuZV9jb25maWcgPQorCQkJaTl4eF9nZXRfaW5pdGlhbF9wbGFuZV9jb25maWc7CisJCWRl dl9wcml2LT5kaXNwbGF5LmNydGNfY29tcHV0ZV9jbG9jayA9IHBudl9jcnRjX2NvbXB1dGVfY2xv Y2s7CisJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZW5hYmxlID0gaTl4eF9jcnRjX2VuYWJsZTsK KwkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19kaXNhYmxlID0gaTl4eF9jcnRjX2Rpc2FibGU7CiAJ fSBlbHNlIGlmICghSVNfR0VOMihkZXZfcHJpdikpIHsKIAkJZGV2X3ByaXYtPmRpc3BsYXkuZ2V0 X3BpcGVfY29uZmlnID0gaTl4eF9nZXRfcGlwZV9jb25maWc7CiAJCWRldl9wcml2LT5kaXNwbGF5 LmdldF9pbml0aWFsX3BsYW5lX2NvbmZpZyA9Ci0tIAoyLjQuMwoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==