From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rodrigo Vivi Subject: [PATCH] drm/i915: We don't need display's suspend/resume operations when !HAS_DISPLAY Date: Thu, 18 Jul 2019 13:49:12 -0700 Message-ID: <20190718204912.24149-1-rodrigo.vivi@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 7B2626E467 for ; Thu, 18 Jul 2019 20:48:38 +0000 (UTC) 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: Jani Nikula List-Id: intel-gfx@lists.freedesktop.org U3VzcGVuZCByZXN1bWUgaXMgYnJva2VuIGlmIHdlIHRyeSB0byBlbmFibGUvZGlzYWJsZSBkYzkg b24KY2FzZXMgd2l0aCBkaXNhYmxlZCBkaXNwbGF5cy4KCnYyOiBNYWtlIGNoZWNrcGF0Y2ggaGFw cHk6CiAgICAtIGJyYWNlcyB7fSBhcmUgbm90IG5lY2Vzc2FyeSBmb3Igc2luZ2xlIHN0YXRlbWVu dCBibG9ja3MKdjM6IEFsc28gbW92ZSBoc3cvYmR3IFBDOCBzZXF1ZW5jZXMgc2luY2UgdGhleSBh cmUgcmVsYXRlZCB0bwogICAgZGlzcGxheSBQTSBhbnl3YXlzLiAoVmlsbGUpCnY0OiBSZWJhc2Ug YWZ0ZXIgYSBsb25nIHRpbWUsIHBsdXMgTW92ZSBmdW5jdGlvbnMgdG8gdGhlIG5ldwogICAgaW50 ZWxfZGlzcGxheV9wb3dlciBzbyB3ZSBjYW4gc3RvcCBleHBvcnRpbmcgcGxhdGZvcm0gc3BlY2lm aWMKICAgIGZ1bmN0aW9ucyBhcyBwb2ludGVkIGJ5IEphbmkuCnY1OiBSZW1vdmUgdW5uZWNlc3Nh cnkgYnJhY2VzLgoKQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRl bC5jb20+CkNjOiBKb3PDqSBSb2JlcnRvIGRlIFNvdXphIDxqb3NlLnNvdXphQGludGVsLmNvbT4K Q2M6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IFJv ZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVsLmNvbT4KLS0tCiAuLi4vZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmMgICAgfCA2NyArKysrKysrKysrKysrKysrKysrCiAu Li4vZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmggICAgfCAxNyArKy0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyAgICAgICAgICAgICAgIHwgNTggKysrKy0t LS0tLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA4NCBpbnNlcnRpb25zKCspLCA1OCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rp c3BsYXlfcG93ZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eV9wb3dlci5jCmluZGV4IDkzYTE0ODY4NGM1My4uNTMwYjExOWEzYTNiIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuYwpAQCAtNTE4 OSwzICs1MTg5LDcwIEBAIHN0YXRpYyB2b2lkIGludGVsX3Bvd2VyX2RvbWFpbnNfdmVyaWZ5X3N0 YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQogfQogCiAjZW5kaWYKKwordm9pZCBp bnRlbF9kaXNwbGF5X3Bvd2VyX3N1c3BlbmRfbGF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq aTkxNSkKK3sKKwlpZiAoIUhBU19ESVNQTEFZKGk5MTUpKQorCQlyZXR1cm47CisKKwlpZiAoSU5U RUxfR0VOKGk5MTUpID49IDExIHx8IElTX0dFTjlfTFAoaTkxNSkpCisJCWJ4dF9lbmFibGVfZGM5 KGk5MTUpOworCWVsc2UgaWYgKElTX0hBU1dFTEwoaTkxNSkgfHwgSVNfQlJPQURXRUxMKGk5MTUp KQorCQloc3dfZW5hYmxlX3BjOChpOTE1KTsKK30KKwordm9pZCBpbnRlbF9kaXNwbGF5X3Bvd2Vy X3Jlc3VtZV9lYXJseShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKK3sKKwlpZiAoIUhB U19ESVNQTEFZKGk5MTUpKQorCQlyZXR1cm47CisKKwlpZiAoSU5URUxfR0VOKGk5MTUpID49IDEx IHx8IElTX0dFTjlfTFAoaTkxNSkpIHsKKwkJZ2VuOV9zYW5pdGl6ZV9kY19zdGF0ZShpOTE1KTsK KwkJYnh0X2Rpc2FibGVfZGM5KGk5MTUpOworCX0gZWxzZSBpZiAoSVNfSEFTV0VMTChpOTE1KSB8 fCBJU19CUk9BRFdFTEwoaTkxNSkpIHsKKwkJaHN3X2Rpc2FibGVfcGM4KGk5MTUpOworCX0KK30K Kwordm9pZCBpbnRlbF9kaXNwbGF5X3Bvd2VyX3N1c3BlbmQoc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmk5MTUpCit7CisJaWYgKCFIQVNfRElTUExBWShpOTE1KSkKKwkJcmV0dXJuOworCisJaWYg KElOVEVMX0dFTihpOTE1KSA+PSAxMSkgeworCQlpY2xfZGlzcGxheV9jb3JlX3VuaW5pdChpOTE1 KTsKKwkJYnh0X2VuYWJsZV9kYzkoaTkxNSk7CisJfSBlbHNlIGlmIChJU19HRU45X0xQKGk5MTUp KSB7CisJCWJ4dF9kaXNwbGF5X2NvcmVfdW5pbml0KGk5MTUpOworCQlieHRfZW5hYmxlX2RjOShp OTE1KTsKKwl9IGVsc2UgaWYgKElTX0hBU1dFTEwoaTkxNSkgfHwgSVNfQlJPQURXRUxMKGk5MTUp KSB7CisJCWhzd19lbmFibGVfcGM4KGk5MTUpOworCX0KK30KKwordm9pZCBpbnRlbF9kaXNwbGF5 X3Bvd2VyX3Jlc3VtZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKK3sKKwlpZiAoIUhB U19ESVNQTEFZKGk5MTUpKQorCQlyZXR1cm47CisKKwlpZiAoSU5URUxfR0VOKGk5MTUpID49IDEx KSB7CisJCWJ4dF9kaXNhYmxlX2RjOShpOTE1KTsKKwkJaWNsX2Rpc3BsYXlfY29yZV9pbml0KGk5 MTUsIHRydWUpOworCQlpZiAoaTkxNS0+Y3NyLmRtY19wYXlsb2FkKSB7CisJCQlpZiAoaTkxNS0+ Y3NyLmFsbG93ZWRfZGNfbWFzayAmCisJCQkgICAgRENfU1RBVEVfRU5fVVBUT19EQzYpCisJCQkJ c2tsX2VuYWJsZV9kYzYoaTkxNSk7CisJCQllbHNlIGlmIChpOTE1LT5jc3IuYWxsb3dlZF9kY19t YXNrICYKKwkJCQkgRENfU1RBVEVfRU5fVVBUT19EQzUpCisJCQkJZ2VuOV9lbmFibGVfZGM1KGk5 MTUpOworCQl9CisJfSBlbHNlIGlmIChJU19HRU45X0xQKGk5MTUpKSB7CisJCWJ4dF9kaXNhYmxl X2RjOShpOTE1KTsKKwkJYnh0X2Rpc3BsYXlfY29yZV9pbml0KGk5MTUsIHRydWUpOworCQlpZiAo aTkxNS0+Y3NyLmRtY19wYXlsb2FkICYmCisJCSAgICAoaTkxNS0+Y3NyLmFsbG93ZWRfZGNfbWFz ayAmIERDX1NUQVRFX0VOX1VQVE9fREM1KSkKKwkJCWdlbjlfZW5hYmxlX2RjNShpOTE1KTsKKwl9 IGVsc2UgaWYgKElTX0hBU1dFTEwoaTkxNSkgfHwgSVNfQlJPQURXRUxMKGk5MTUpKSB7CisJCWhz d19kaXNhYmxlX3BjOChpOTE1KTsKKwl9Cit9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5oCmluZGV4IGU0ZDJjMWJhMjRiMC4uOTdmMjU2 MmZjNWQzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rp c3BsYXlfcG93ZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rp c3BsYXlfcG93ZXIuaApAQCAtMjMyLDI3ICsyMzIsMjAgQEAgc3RydWN0IGk5MTVfcG93ZXJfZG9t YWlucyB7CiAJZm9yX2VhY2hfcG93ZXJfd2VsbF9yZXZlcnNlKF9fZGV2X3ByaXYsIF9fcG93ZXJf d2VsbCkJCSAgICAgICAgXAogCQlmb3JfZWFjaF9pZigoX19wb3dlcl93ZWxsKS0+ZGVzYy0+ZG9t YWlucyAmIChfX2RvbWFpbl9tYXNrKSkKIAotdm9pZCBza2xfZW5hYmxlX2RjNihzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwotdm9pZCBnZW45X3Nhbml0aXplX2RjX3N0YXRlKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Ci12b2lkIGJ4dF9lbmFibGVfZGM5KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Ci12b2lkIGJ4dF9kaXNhYmxlX2RjOShz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwotdm9pZCBnZW45X2VuYWJsZV9kYzUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKLQogaW50IGludGVsX3Bvd2VyX2Rv bWFpbnNfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpbnRl bF9wb3dlcl9kb21haW5zX2NsZWFudXAoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KTsKIHZvaWQgaW50ZWxfcG93ZXJfZG9tYWluc19pbml0X2h3KHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwgYm9vbCByZXN1bWUpOwogdm9pZCBpbnRlbF9wb3dlcl9kb21haW5zX2Ry aXZlcl9yZW1vdmUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKLXZvaWQgaWNs X2Rpc3BsYXlfY29yZV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgYm9v bCByZXN1bWUpOwotdm9pZCBpY2xfZGlzcGxheV9jb3JlX3VuaW5pdChzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpbnRlbF9wb3dlcl9kb21haW5zX2VuYWJsZShzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpbnRlbF9wb3dlcl9kb21haW5z X2Rpc2FibGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIHZvaWQgaW50ZWxf cG93ZXJfZG9tYWluc19zdXNwZW5kKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwK IAkJCQkgZW51bSBpOTE1X2RybV9zdXNwZW5kX21vZGUpOwogdm9pZCBpbnRlbF9wb3dlcl9kb21h aW5zX3Jlc3VtZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwotdm9pZCBoc3df ZW5hYmxlX3BjOChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwotdm9pZCBoc3df ZGlzYWJsZV9wYzgoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKLXZvaWQgYnh0 X2Rpc3BsYXlfY29yZV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgYm9v bCByZXN1bWUpOwotdm9pZCBieHRfZGlzcGxheV9jb3JlX3VuaW5pdChzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpOworCit2b2lkIGludGVsX2Rpc3BsYXlfcG93ZXJfc3VzcGVuZF9s YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKK3ZvaWQgaW50ZWxfZGlzcGxheV9w b3dlcl9yZXN1bWVfZWFybHkoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpOwordm9pZCBp bnRlbF9kaXNwbGF5X3Bvd2VyX3N1c3BlbmQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUp Owordm9pZCBpbnRlbF9kaXNwbGF5X3Bvd2VyX3Jlc3VtZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqaTkxNSk7CiAKIGNvbnN0IGNoYXIgKgogaW50ZWxfZGlzcGxheV9wb3dlcl9kb21haW5fc3Ry KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKaW5k ZXggN2MyMDk3NDNlNDc4Li4zNWIxODgzYjU1YTQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwpA QCAtMjE2Niw3ICsyMTY2LDcgQEAgc3RhdGljIGludCBpOTE1X2RybV9zdXNwZW5kX2xhdGUoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgYm9vbCBoaWJlcm5hdGlvbikKIAlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7CiAJc3RydWN0IHBjaV9kZXYgKnBkZXYg PSBkZXZfcHJpdi0+ZHJtLnBkZXY7CiAJc3RydWN0IGludGVsX3J1bnRpbWVfcG0gKnJwbSA9ICZk ZXZfcHJpdi0+cnVudGltZV9wbTsKLQlpbnQgcmV0OworCWludCByZXQgPSAwOwogCiAJZGlzYWJs ZV9ycG1fd2FrZXJlZl9hc3NlcnRzKHJwbSk7CiAKQEAgLTIxNzcsMTIgKzIxNzcsOSBAQCBzdGF0 aWMgaW50IGk5MTVfZHJtX3N1c3BlbmRfbGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBib29s IGhpYmVybmF0aW9uKQogCWludGVsX3Bvd2VyX2RvbWFpbnNfc3VzcGVuZChkZXZfcHJpdiwKIAkJ CQkgICAgZ2V0X3N1c3BlbmRfbW9kZShkZXZfcHJpdiwgaGliZXJuYXRpb24pKTsKIAotCXJldCA9 IDA7Ci0JaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTEgfHwgSVNfR0VOOV9MUChkZXZfcHJp dikpCi0JCWJ4dF9lbmFibGVfZGM5KGRldl9wcml2KTsKLQllbHNlIGlmIChJU19IQVNXRUxMKGRl dl9wcml2KSB8fCBJU19CUk9BRFdFTEwoZGV2X3ByaXYpKQotCQloc3dfZW5hYmxlX3BjOChkZXZf cHJpdik7Ci0JZWxzZSBpZiAoSVNfVkFMTEVZVklFVyhkZXZfcHJpdikgfHwgSVNfQ0hFUlJZVklF VyhkZXZfcHJpdikpCisJaW50ZWxfZGlzcGxheV9wb3dlcl9zdXNwZW5kX2xhdGUoZGV2X3ByaXYp OworCisJaWYgKElTX1ZBTExFWVZJRVcoZGV2X3ByaXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3By aXYpKQogCQlyZXQgPSB2bHZfc3VzcGVuZF9jb21wbGV0ZShkZXZfcHJpdik7CiAKIAlpZiAocmV0 KSB7CkBAIC0yMzcyLDEyICsyMzY5LDcgQEAgc3RhdGljIGludCBpOTE1X2RybV9yZXN1bWVfZWFy bHkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAogCWludGVsX2d0X2NoZWNrX2FuZF9jbGVhcl9m YXVsdHMoJmRldl9wcml2LT5ndCk7CiAKLQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSAxMSB8 fCBJU19HRU45X0xQKGRldl9wcml2KSkgewotCQlnZW45X3Nhbml0aXplX2RjX3N0YXRlKGRldl9w cml2KTsKLQkJYnh0X2Rpc2FibGVfZGM5KGRldl9wcml2KTsKLQl9IGVsc2UgaWYgKElTX0hBU1dF TEwoZGV2X3ByaXYpIHx8IElTX0JST0FEV0VMTChkZXZfcHJpdikpIHsKLQkJaHN3X2Rpc2FibGVf cGM4KGRldl9wcml2KTsKLQl9CisJaW50ZWxfZGlzcGxheV9wb3dlcl9yZXN1bWVfZWFybHkoZGV2 X3ByaXYpOwogCiAJaW50ZWxfc2FuaXRpemVfZ3RfcG93ZXJzYXZlKGRldl9wcml2KTsKIApAQCAt MjkyMSw3ICsyOTEzLDcgQEAgc3RhdGljIGludCBpbnRlbF9ydW50aW1lX3N1c3BlbmQoc3RydWN0 IGRldmljZSAqa2RldikKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gcGNpX2dldF9kcnZkYXRh KHBkZXYpOwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2 KTsKIAlzdHJ1Y3QgaW50ZWxfcnVudGltZV9wbSAqcnBtID0gJmRldl9wcml2LT5ydW50aW1lX3Bt OwotCWludCByZXQ7CisJaW50IHJldCA9IDA7CiAKIAlpZiAoV0FSTl9PTl9PTkNFKCEoZGV2X3By aXYtPmd0X3BtLnJjNi5lbmFibGVkICYmIEhBU19SQzYoZGV2X3ByaXYpKSkpCiAJCXJldHVybiAt RU5PREVWOwpAQCAtMjk0NSwxOCArMjkzNywxMCBAQCBzdGF0aWMgaW50IGludGVsX3J1bnRpbWVf c3VzcGVuZChzdHJ1Y3QgZGV2aWNlICprZGV2KQogCiAJaW50ZWxfdW5jb3JlX3N1c3BlbmQoJmRl dl9wcml2LT51bmNvcmUpOwogCi0JcmV0ID0gMDsKLQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+ PSAxMSkgewotCQlpY2xfZGlzcGxheV9jb3JlX3VuaW5pdChkZXZfcHJpdik7Ci0JCWJ4dF9lbmFi bGVfZGM5KGRldl9wcml2KTsKLQl9IGVsc2UgaWYgKElTX0dFTjlfTFAoZGV2X3ByaXYpKSB7Ci0J CWJ4dF9kaXNwbGF5X2NvcmVfdW5pbml0KGRldl9wcml2KTsKLQkJYnh0X2VuYWJsZV9kYzkoZGV2 X3ByaXYpOwotCX0gZWxzZSBpZiAoSVNfSEFTV0VMTChkZXZfcHJpdikgfHwgSVNfQlJPQURXRUxM KGRldl9wcml2KSkgewotCQloc3dfZW5hYmxlX3BjOChkZXZfcHJpdik7Ci0JfSBlbHNlIGlmIChJ U19WQUxMRVlWSUVXKGRldl9wcml2KSB8fCBJU19DSEVSUllWSUVXKGRldl9wcml2KSkgeworCWlu dGVsX2Rpc3BsYXlfcG93ZXJfc3VzcGVuZChkZXZfcHJpdik7CisKKwlpZiAoSVNfVkFMTEVZVklF VyhkZXZfcHJpdikgfHwgSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpCiAJCXJldCA9IHZsdl9zdXNw ZW5kX2NvbXBsZXRlKGRldl9wcml2KTsKLQl9CiAKIAlpZiAocmV0KSB7CiAJCURSTV9FUlJPUigi UnVudGltZSBzdXNwZW5kIGZhaWxlZCwgZGlzYWJsaW5nIGl0ICglZClcbiIsIHJldCk7CkBAIC0z MDM1LDI4ICszMDE5LDEwIEBAIHN0YXRpYyBpbnQgaW50ZWxfcnVudGltZV9yZXN1bWUoc3RydWN0 IGRldmljZSAqa2RldikKIAlpZiAoaW50ZWxfdW5jb3JlX3VuY2xhaW1lZF9tbWlvKCZkZXZfcHJp di0+dW5jb3JlKSkKIAkJRFJNX0RFQlVHX0RSSVZFUigiVW5jbGFpbWVkIGFjY2VzcyBkdXJpbmcg c3VzcGVuZCwgYmlvcz9cbiIpOwogCi0JaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTEpIHsK LQkJYnh0X2Rpc2FibGVfZGM5KGRldl9wcml2KTsKLQkJaWNsX2Rpc3BsYXlfY29yZV9pbml0KGRl dl9wcml2LCB0cnVlKTsKLQkJaWYgKGRldl9wcml2LT5jc3IuZG1jX3BheWxvYWQpIHsKLQkJCWlm IChkZXZfcHJpdi0+Y3NyLmFsbG93ZWRfZGNfbWFzayAmCi0JCQkgICAgRENfU1RBVEVfRU5fVVBU T19EQzYpCi0JCQkJc2tsX2VuYWJsZV9kYzYoZGV2X3ByaXYpOwotCQkJZWxzZSBpZiAoZGV2X3By aXYtPmNzci5hbGxvd2VkX2RjX21hc2sgJgotCQkJCSBEQ19TVEFURV9FTl9VUFRPX0RDNSkKLQkJ CQlnZW45X2VuYWJsZV9kYzUoZGV2X3ByaXYpOwotCQl9Ci0JfSBlbHNlIGlmIChJU19HRU45X0xQ KGRldl9wcml2KSkgewotCQlieHRfZGlzYWJsZV9kYzkoZGV2X3ByaXYpOwotCQlieHRfZGlzcGxh eV9jb3JlX2luaXQoZGV2X3ByaXYsIHRydWUpOwotCQlpZiAoZGV2X3ByaXYtPmNzci5kbWNfcGF5 bG9hZCAmJgotCQkgICAgKGRldl9wcml2LT5jc3IuYWxsb3dlZF9kY19tYXNrICYgRENfU1RBVEVf RU5fVVBUT19EQzUpKQotCQkJZ2VuOV9lbmFibGVfZGM1KGRldl9wcml2KTsKLQl9IGVsc2UgaWYg KElTX0hBU1dFTEwoZGV2X3ByaXYpIHx8IElTX0JST0FEV0VMTChkZXZfcHJpdikpIHsKLQkJaHN3 X2Rpc2FibGVfcGM4KGRldl9wcml2KTsKLQl9IGVsc2UgaWYgKElTX1ZBTExFWVZJRVcoZGV2X3By aXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKSB7CisJaW50ZWxfZGlzcGxheV9wb3dlcl9y ZXN1bWUoZGV2X3ByaXYpOworCisJaWYgKElTX1ZBTExFWVZJRVcoZGV2X3ByaXYpIHx8IElTX0NI RVJSWVZJRVcoZGV2X3ByaXYpKQogCQlyZXQgPSB2bHZfcmVzdW1lX3ByZXBhcmUoZGV2X3ByaXYs IHRydWUpOwotCX0KIAogCWludGVsX3VuY29yZV9ydW50aW1lX3Jlc3VtZSgmZGV2X3ByaXYtPnVu Y29yZSk7CiAKLS0gCjIuMjAuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4