From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH 2/2] drm/i915/BXT: Fixed COS blanking issue Date: Wed, 3 Feb 2016 17:57:36 +0530 Message-ID: <1454502456-10556-2-git-send-email-ramalingam.c@intel.com> References: <8737ta2knw.fsf@intel.com> <1454502456-10556-1-git-send-email-ramalingam.c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 26E4B6E6D0 for ; Wed, 3 Feb 2016 04:35:29 -0800 (PST) In-Reply-To: <1454502456-10556-1-git-send-email-ramalingam.c@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: jani.nikula@intel.com List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVW1hIFNoYW5rYXIgPHVtYS5zaGFua2FyQGludGVsLmNvbT4KCkR1cmluZyBDaGFyZ2lu ZyBPUyBtb2RlLCBtaXBpIGRpc3BsYXkgd2FzIGJsYW5raW5nLlRoaXMgaXMKYmVjYXVzZSBkdXJp bmcgZHJpdmVyIGxvYWQsIHRob3VnaCBlbmNvZGVyLCBjb25uZWN0b3Igd2VyZQphY3RpdmUgYnV0 IGNydGMgcmV0dXJuZWQgaW5hY3RpdmUuIFRoaXMgY2F1c2VkIHNhbml0aXplCmZ1bmN0aW9uIHRv IGRpc2FibGUgdGhlIERTSSBwYW5lbC4gSW4gQU9TLCB0aGlzIGlzIGZpbmUKc2luY2UgSFdDIHdp bGwgZG8gYSBtb2Rlc2V0IGFuZCBjcnRjLCBjb25uZWN0b3IsIGVuY29kZXIKbWFwcGluZyB3aWxs IGJlIHJlc3RvcmVkLiBCdXQgaW4gQ09TLCBubyBtb2Rlc2V0IGlzIGNhbGxlZCwKaXQganVzdCBj YWxscyBEUE1TIE9OL09GRi4KClRoaXMgaXMgZmluZSBvbiBCWVQvQ0hUIHNpbmNlIHRyYW5zY29k ZXIgaXMgY29tbW9uIGIvdwphbGwgZW5jb2RlcnMuIEJ1dCBmb3IgQlhULCB0aGVyZSBpcyBhIHNl cGFyYXRlIG1pcGkKdHJhbnNjb2Rlci4gSGVuY2UgdGhpcyBuZWVkcyBzcGVjaWFsIGhhbmRsaW5n IGZvciBCWFQuCgpTaWduZWQtb2ZmLWJ5OiBVbWEgU2hhbmthciA8dW1hLnNoYW5rYXJAaW50ZWwu Y29tPgpTaWduZWQtb2ZmLWJ5OiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0uY0BpbnRlbC5jb20+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgIDExNSArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKy0tCiAxIGZpbGUgY2hhbmdlZCwgMTA5IGluc2VydGlv bnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmlu ZGV4IGE2NjIyMGEuLjU4ZDJjZDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMK QEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlIDxkcm0vZHJtX2VkaWQuaD4KICNpbmNsdWRlIDxk cm0vZHJtUC5oPgogI2luY2x1ZGUgImludGVsX2Rydi5oIgorI2luY2x1ZGUgImludGVsX2RzaS5o IgogI2luY2x1ZGUgPGRybS9pOTE1X2RybS5oPgogI2luY2x1ZGUgImk5MTVfZHJ2LmgiCiAjaW5j bHVkZSAiaTkxNV90cmFjZS5oIgpAQCAtNzgxNCw2ICs3ODE1LDY5IEBAIHN0YXRpYyB2b2lkIGlu dGVsX3NldF9waXBlX3RpbWluZ3Moc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMpCiAJCSAg IChpbnRlbF9jcnRjLT5jb25maWctPnBpcGVfc3JjX2ggLSAxKSk7CiB9CiAKK3N0YXRpYyB2b2lk IGludGVsX2dldF9kc2lfcGlwZV90aW1pbmdzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAorCQkJ CSAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKK3sKKwlzdHJ1Y3QgZHJt X2RldmljZSAqZGV2ID0gY3J0Yy0+YmFzZS5kZXY7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKKwllbnVtIHRyYW5zY29kZXIgY3B1X3RyYW5z Y29kZXIgPSBwaXBlX2NvbmZpZy0+Y3B1X3RyYW5zY29kZXI7CisJc3RydWN0IGludGVsX2VuY29k ZXIgKmVuY29kZXI7CisJdWludDMyX3QgdG1wOworCisJdG1wID0gSTkxNV9SRUFEKEhUT1RBTChj cHVfdHJhbnNjb2RlcikpOworCXBpcGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGUuY3J0Y19o ZGlzcGxheSA9ICh0bXAgJiAweGZmZmYpICsgMTsKKwlwaXBlX2NvbmZpZy0+YmFzZS5hZGp1c3Rl ZF9tb2RlLmNydGNfaHRvdGFsID0KKwkJCQkJCSgodG1wID4+IDE2KSAmIDB4ZmZmZikgKyAxOwor CXRtcCA9IEk5MTVfUkVBRChIQkxBTksoY3B1X3RyYW5zY29kZXIpKTsKKwlwaXBlX2NvbmZpZy0+ YmFzZS5hZGp1c3RlZF9tb2RlLmNydGNfaGJsYW5rX3N0YXJ0ID0gKHRtcCAmIDB4ZmZmZikgKyAx OworCXBpcGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGUuY3J0Y19oYmxhbmtfZW5kID0KKwkJ CQkJCSgodG1wID4+IDE2KSAmIDB4ZmZmZikgKyAxOworCXRtcCA9IEk5MTVfUkVBRChIU1lOQyhj cHVfdHJhbnNjb2RlcikpOworCXBpcGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGUuY3J0Y19o c3luY19zdGFydCA9ICh0bXAgJiAweGZmZmYpICsgMTsKKwlwaXBlX2NvbmZpZy0+YmFzZS5hZGp1 c3RlZF9tb2RlLmNydGNfaHN5bmNfZW5kID0KKwkJCQkJCSgodG1wID4+IDE2KSAmIDB4ZmZmZikg KyAxOworCisJdG1wID0gSTkxNV9SRUFEKFZCTEFOSyhjcHVfdHJhbnNjb2RlcikpOworCXBpcGVf Y29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGUuY3J0Y192Ymxhbmtfc3RhcnQgPSAodG1wICYgMHhm ZmZmKSArIDE7CisJcGlwZV9jb25maWctPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3ZibGFua19l bmQgPQorCQkJCQkJKCh0bXAgPj4gMTYpICYgMHhmZmZmKSArIDE7CisJdG1wID0gSTkxNV9SRUFE KFZTWU5DKGNwdV90cmFuc2NvZGVyKSk7CisJcGlwZV9jb25maWctPmJhc2UuYWRqdXN0ZWRfbW9k ZS5jcnRjX3ZzeW5jX3N0YXJ0ID0gKHRtcCAmIDB4ZmZmZikgKyAxOworCXBpcGVfY29uZmlnLT5i YXNlLmFkanVzdGVkX21vZGUuY3J0Y192c3luY19lbmQgPQorCQkJCQkJKCh0bXAgPj4gMTYpICYg MHhmZmZmKSArIDE7CisKKwlpZiAoSTkxNV9SRUFEKFBJUEVDT05GKGNwdV90cmFuc2NvZGVyKSkg JiBQSVBFQ09ORl9JTlRFUkxBQ0VfTUFTSykgeworCQlwaXBlX2NvbmZpZy0+YmFzZS5hZGp1c3Rl ZF9tb2RlLmZsYWdzIHw9CisJCQkJCQlEUk1fTU9ERV9GTEFHX0lOVEVSTEFDRTsKKwkJcGlwZV9j b25maWctPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3Z0b3RhbCArPSAxOworCQlwaXBlX2NvbmZp Zy0+YmFzZS5hZGp1c3RlZF9tb2RlLmNydGNfdmJsYW5rX2VuZCArPSAxOworCX0KKworCisJZm9y X2VhY2hfZW5jb2Rlcl9vbl9jcnRjKGRldiwgJmNydGMtPmJhc2UsIGVuY29kZXIpIHsKKwkJc3Ry dWN0IGludGVsX2RzaSAqaW50ZWxfZHNpID0KKwkJCWVuY190b19pbnRlbF9kc2koJmVuY29kZXIt PmJhc2UpOworCQllbnVtIHBvcnQgcG9ydDsKKworCQlwaXBlX2NvbmZpZy0+cGlwZV9icHAgPSBp bnRlbF9kc2ktPmRzaV9icHA7CisJCWZvcl9lYWNoX2RzaV9wb3J0KHBvcnQsIGludGVsX2RzaS0+ cG9ydHMpIHsKKwkJCXBpcGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGUuY3J0Y19oZGlzcGxh eSA9CisJCQkJSTkxNV9SRUFEKEJYVF9NSVBJX1RSQU5TX0hBQ1RJVkUocG9ydCkpOworCQkJcGlw ZV9jb25maWctPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3ZkaXNwbGF5ID0KKwkJCQlJOTE1X1JF QUQoQlhUX01JUElfVFJBTlNfVkFDVElWRShwb3J0KSk7CisJCQlwaXBlX2NvbmZpZy0+YmFzZS5h ZGp1c3RlZF9tb2RlLmNydGNfdnRvdGFsID0KKwkJCQlJOTE1X1JFQUQoQlhUX01JUElfVFJBTlNf VlRPVEFMKHBvcnQpKTsKKwkJfQorCX0KKworCXRtcCA9IEk5MTVfUkVBRChQSVBFU1JDKGNydGMt PnBpcGUpKTsKKwlwaXBlX2NvbmZpZy0+cGlwZV9zcmNfaCA9ICh0bXAgJiAweGZmZmYpICsgMTsK KwlwaXBlX2NvbmZpZy0+cGlwZV9zcmNfdyA9ICgodG1wID4+IDE2KSAmIDB4ZmZmZikgKyAxOwor CisJcGlwZV9jb25maWctPmJhc2UubW9kZS52ZGlzcGxheSA9IHBpcGVfY29uZmlnLT5waXBlX3Ny Y19oOworCXBpcGVfY29uZmlnLT5iYXNlLm1vZGUuaGRpc3BsYXkgPSBwaXBlX2NvbmZpZy0+cGlw ZV9zcmNfdzsKK30KKwogc3RhdGljIHZvaWQgaW50ZWxfZ2V0X3BpcGVfdGltaW5ncyhzdHJ1Y3Qg aW50ZWxfY3J0YyAqY3J0YywKIAkJCQkgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9j b25maWcpCiB7CkBAIC05OTYyLDYgKzEwMDI2LDQwIEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfZ2V0 X2RkaV9wb3J0X3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCX0KIH0KIAorc3RhdGlj IHZvaWQgYnh0X2dldF9waXBlX2NvbmZpZ19kc2koc3RydWN0IGludGVsX2NydGMgKmNydGMsCisJ CQkJCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKK3sKKwlzdHJ1Y3QgZHJt X2RldmljZSAqZGV2ID0gY3J0Yy0+YmFzZS5kZXY7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKKwllbnVtIHBvcnQgcG9ydCA9IChkZXZfcHJp di0+dmJ0LmRzaS5wb3J0ID09IERWT19QT1JUX01JUElBKQorCQkJCT8gUE9SVF9BIDogUE9SVF9D OworCXVpbnQzMl90IGRzaV9jdHJsID0gSTkxNV9SRUFEKE1JUElfQ1RSTChwb3J0KSk7CisJdWlu dDMyX3QgdG1wOworCisJdG1wID0gSTkxNV9SRUFEKEJYVF9NSVBJX1BPUlRfQ1RSTChwb3J0KSk7 CisJaWYgKHRtcCAmIERQSV9FTkFCTEUpIHsKKwkJZW51bSBwaXBlIHRyYW5zX2RzaV9waXBlOwor CisJCXN3aXRjaCAoZHNpX2N0cmwgJiBCWFRfUElQRV9TRUxFQ1RfTUFTSykgeworCQlkZWZhdWx0 OgorCQkJV0FSTigxLCAidW5rbm93biBwaXBlIGxpbmtlZCB0byBkc2kgdHJhbnNjb2RlclxuIik7 CisJCQlyZXR1cm47CisJCWNhc2UgQlhUX1BJUEVfU0VMRUNUKFBJUEVfQSk6CisJCQl0cmFuc19k c2lfcGlwZSA9IFBJUEVfQTsKKwkJCWJyZWFrOworCQljYXNlIEJYVF9QSVBFX1NFTEVDVChQSVBF X0IpOgorCQkJdHJhbnNfZHNpX3BpcGUgPSBQSVBFX0I7CisJCQlicmVhazsKKwkJY2FzZSBCWFRf UElQRV9TRUxFQ1QoUElQRV9DKToKKwkJCXRyYW5zX2RzaV9waXBlID0gUElQRV9DOworCQkJYnJl YWs7CisJCX0KKworCQlpZiAodHJhbnNfZHNpX3BpcGUgPT0gY3J0Yy0+cGlwZSkKKwkJCXBpcGVf Y29uZmlnLT5oYXNfZHNpX2VuY29kZXIgPSB0cnVlOworCX0KK30KKwogc3RhdGljIGJvb2wgaGFz d2VsbF9nZXRfcGlwZV9jb25maWcoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJCQkJICAgIHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKIHsKQEAgLTk5OTksMTcgKzEwMDk3 LDIyIEBAIHN0YXRpYyBib29sIGhhc3dlbGxfZ2V0X3BpcGVfY29uZmlnKHN0cnVjdCBpbnRlbF9j cnRjICpjcnRjLAogCQkJcGlwZV9jb25maWctPmNwdV90cmFuc2NvZGVyID0gVFJBTlNDT0RFUl9F RFA7CiAJfQogCisJaWYgKGRldl9wcml2LT52YnQuaGFzX21pcGkgJiYgSVNfQlJPWFRPTihkZXYp KQorCQlieHRfZ2V0X3BpcGVfY29uZmlnX2RzaShjcnRjLCBwaXBlX2NvbmZpZyk7CisKIAlpZiAo IWludGVsX2Rpc3BsYXlfcG93ZXJfaXNfZW5hYmxlZChkZXZfcHJpdiwKIAkJCVBPV0VSX0RPTUFJ Tl9UUkFOU0NPREVSKHBpcGVfY29uZmlnLT5jcHVfdHJhbnNjb2RlcikpKQogCQlyZXR1cm4gZmFs c2U7CiAKLQl0bXAgPSBJOTE1X1JFQUQoUElQRUNPTkYocGlwZV9jb25maWctPmNwdV90cmFuc2Nv ZGVyKSk7Ci0JaWYgKCEodG1wICYgUElQRUNPTkZfRU5BQkxFKSkKLQkJcmV0dXJuIGZhbHNlOwot Ci0JaGFzd2VsbF9nZXRfZGRpX3BvcnRfc3RhdGUoY3J0YywgcGlwZV9jb25maWcpOworCWlmICgh cGlwZV9jb25maWctPmhhc19kc2lfZW5jb2RlcikgeworCQl0bXAgPSBJOTE1X1JFQUQoUElQRUNP TkYocGlwZV9jb25maWctPmNwdV90cmFuc2NvZGVyKSk7CisJCWlmICghKHRtcCAmIFBJUEVDT05G X0VOQUJMRSkpCisJCQlyZXR1cm4gZmFsc2U7CiAKLQlpbnRlbF9nZXRfcGlwZV90aW1pbmdzKGNy dGMsIHBpcGVfY29uZmlnKTsKKwkJaGFzd2VsbF9nZXRfZGRpX3BvcnRfc3RhdGUoY3J0YywgcGlw ZV9jb25maWcpOworCQlpbnRlbF9nZXRfcGlwZV90aW1pbmdzKGNydGMsIHBpcGVfY29uZmlnKTsK Kwl9IGVsc2UKKwkJaW50ZWxfZ2V0X2RzaV9waXBlX3RpbWluZ3MoY3J0YywgcGlwZV9jb25maWcp OwogCiAJaWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuID49IDkpIHsKIAkJc2tsX2luaXRfc2NhbGVy cyhkZXYsIGNydGMsIHBpcGVfY29uZmlnKTsKLS0gCjEuNy45LjUKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==