From mboxrd@z Thu Jan 1 00:00:00 1970 From: Uma Shankar Subject: [BXT MIPI PATCH v4 05/14] drm/i915/bxt: DSI encoder support in CRTC modeset Date: Wed, 23 Sep 2015 23:23:40 +0530 Message-ID: <1443030820-11817-1-git-send-email-uma.shankar@intel.com> References: 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 ESMTP id 49C356E286 for ; Wed, 23 Sep 2015 10:27:21 -0700 (PDT) In-Reply-To: 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: shobhit.kumar@intel.com List-Id: intel-gfx@lists.freedesktop.org RnJvbTogU2hhc2hhbmsgU2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgoKU0tMIGFu ZCBCWFQgcXVhbGlmaWVzIHRoZSBIQVNfRERJKCkgY2hlY2ssIGFuZCBoZW5jZSBoYXN3ZWxsCm1v ZGVzZXQgZnVuY3Rpb25zIGFyZSByZS11c2VkIGZvciBtb2Rlc2V0IHNlcXVlbmNlLiBCdXQgRERJ CmludGVyZmFjZSBkb2Vzbid0IGluY2x1ZGUgc3VwcG9ydCBmb3IgRFNJLgpUaGlzIHBhdGNoIGFk ZHM6CjEuIGNhc2VzIGZvciBEU0kgZW5jb2RlciwgaW4gdGhvc2UgbW9kZXNldCBmdW5jdGlvbnMg YW5kIGFsbG93cwogICBhIENSVEMgbW9kZXNldAoyLiBBZGRzIGNhbGwgdG8gcHJlX3BsbCBlbmFi bGVkIGZyb20gQ1JUQyBtb2Rlc2V0IGZ1bmN0aW9uLiBOb3RoaW5nCiAgIG5lZWRzIHRvIGJlIGRv bmUgYXMgc3VjaCBpbiBDUlRDIGZvciBEU0kgZW5jb2RlciwgYXMgUExMLCBjbG9jawogICBhbmQg YW5kIHRyYW5zY29kZXIgcHJvZ3JhbW1pbmcgd2lsbCBiZSB0YWtlbiBjYXJlIGluIGVuY29kZXIn cwogICBwcmVfZW5hYmxlIGFuZCBwcmVfcGxsX2VuYWJsZSBmdW5jdGlvbi4KCnYyOiBGaXhlZCBK YW5pJ3MgcmV2aWV3IGNvbW1lbnRzLiBBZGRlZCBJTlZBTElEX1BPUlQgZm9yIG5vbiBEREkKICAg IGVuY29kZXIgbGlrZSBEU0kgZm9yIHBsYXRmb3JtcyBoYXZpbmcgSEFTX0RESSBhcyB0cnVlLgoK djM6IFJlYmFzZWQgb24gbGF0ZXN0IGRybS1uaWdodGx5IGJyYW5jaC4gQWRkZWQgYSBXQVJOX09O IGZvciBpbnZhbGlkCiAgICBlbmNvZGVyLgoKdjQ6IFdBUk5fT04gZm9yIGludmFsaWQgZW5jb2Rl ciBpcyByZWZhY3RvcmVkIGFzIHBlciBKYW5pJ3Mgc3VnZ2VzdGlvbi4KICAgIEZpeGVkIHRoZSBz ZXF1ZW5jZSBmb3IgcHJlX3BsbF9lbmFibGUuCgpTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFy bWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IFVtYSBTaGFua2Fy IDx1bWEuc2hhbmthckBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaCAgICAgICB8ICAgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgICAg ICB8ICAgMjEgKysrKysrKysrKysrKysrKysrKystCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMgIHwgICAyMSArKysrKysrKysrKysrKystLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX29wcmVnaW9uLmMgfCAgICAzICsrLQogNCBmaWxlcyBjaGFuZ2VkLCAzOCBp bnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4 IGZkMWRlNDUuLjc4ZDMxYzUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTQyLDYgKzE0 Miw3IEBAIGVudW0gcGxhbmUgewogI2RlZmluZSBzcHJpdGVfbmFtZShwLCBzKSAoKHApICogSU5U RUxfSU5GTyhkZXYpLT5udW1fc3ByaXRlc1socCldICsgKHMpICsgJ0EnKQogCiBlbnVtIHBvcnQg eworCVBPUlRfSU5WQUxJRCA9IC0xLAogCVBPUlRfQSA9IDAsCiAJUE9SVF9CLAogCVBPUlRfQywK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKaW5kZXggY2FjYjA3Yi4uOGVkYjYzMiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGRpLmMKQEAgLTIyNyw2ICsyMjcsMTAgQEAgc3RhdGljIHZvaWQgZGRpX2dl dF9lbmNvZGVyX3BvcnQoc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIsCiAJfSBl bHNlIGlmICh0eXBlID09IElOVEVMX09VVFBVVF9BTkFMT0cpIHsKIAkJKmRpZ19wb3J0ID0gTlVM TDsKIAkJKnBvcnQgPSBQT1JUX0U7CisJfSBlbHNlIGlmICh0eXBlID09IElOVEVMX09VVFBVVF9E U0kpIHsKKwkJKmRpZ19wb3J0ID0gTlVMTDsKKwkJKnBvcnQgPSBQT1JUX0lOVkFMSUQ7CisJCURS TV9ERUJVR19LTVMoIkVuY29kZXIgdHlwZTogRFNJLiBSZXR1cm5pbmcuLi5cbiIpOwogCX0gZWxz ZSB7CiAJCURSTV9FUlJPUigiSW52YWxpZCBEREkgZW5jb2RlciB0eXBlICVkXG4iLCB0eXBlKTsK IAkJQlVHKCk7CkBAIC0yMzcsNiArMjQxLDE1IEBAIGVudW0gcG9ydCBpbnRlbF9kZGlfZ2V0X2Vu Y29kZXJfcG9ydChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlcikKIHsKIAlzdHJ1 Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpkaWdfcG9ydDsKIAllbnVtIHBvcnQgcG9ydDsKKwlpbnQg dHlwZSA9IGludGVsX2VuY29kZXItPnR5cGU7CisKKwlpZiAodHlwZSA9PSBJTlRFTF9PVVRQVVRf RFNJKSB7CisJCXBvcnQgPSBQT1JUX0lOVkFMSUQ7CisJCURSTV9ERUJVR19LTVMoIkVuY29kZXIg dHlwZTogRFNJLiBSZXR1cm5pbmcuLi5cbiIpOworCQlXQVJOX09OKDEpOworCisJCXJldHVybiBw b3J0OworCX0KIAogCWRkaV9nZXRfZW5jb2Rlcl9wb3J0KGludGVsX2VuY29kZXIsICZkaWdfcG9y dCwgJnBvcnQpOwogCkBAIC0zOTIsNiArNDA1LDExIEBAIHZvaWQgaW50ZWxfcHJlcGFyZV9kZGko c3RydWN0IGRybV9kZXZpY2UgKmRldikKIAogCQlkZGlfZ2V0X2VuY29kZXJfcG9ydChpbnRlbF9l bmNvZGVyLCAmaW50ZWxfZGlnX3BvcnQsICZwb3J0KTsKIAorCQlpZiAocG9ydCA9PSBQT1JUX0lO VkFMSUQpIHsKKwkJCVdBUk5fT04oMSk7CisJCQljb250aW51ZTsKKwkJfQorCiAJCWlmICh2aXNp dGVkW3BvcnRdKQogCQkJY29udGludWU7CiAKQEAgLTE3NzksNyArMTc5Nyw4IEBAIGJvb2wgaW50 ZWxfZGRpX2dldF9od19zdGF0ZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIHZvaWQg aW50ZWxfZGRpX2VuYWJsZV9waXBlX2Nsb2NrKHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRj KQogewogCXN0cnVjdCBkcm1fY3J0YyAqY3J0YyA9ICZpbnRlbF9jcnRjLT5iYXNlOwotCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGNydGMtPmRldi0+ZGV2X3ByaXZhdGU7CisJ c3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBpbnRlbF9lbmNvZGVy ICppbnRlbF9lbmNvZGVyID0gaW50ZWxfZGRpX2dldF9jcnRjX2VuY29kZXIoY3J0Yyk7CiAJZW51 bSBwb3J0IHBvcnQgPSBpbnRlbF9kZGlfZ2V0X2VuY29kZXJfcG9ydChpbnRlbF9lbmNvZGVyKTsK IAllbnVtIHRyYW5zY29kZXIgY3B1X3RyYW5zY29kZXIgPSBpbnRlbF9jcnRjLT5jb25maWctPmNw dV90cmFuc2NvZGVyOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlz cGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IGI4ZTAz MTAuLmVhMGY1MzMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKQEAgLTQ5OTEs NiArNDk5MSw3IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfY3J0Y19lbmFibGUoc3RydWN0IGRybV9j cnRjICpjcnRjKQogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2 X3ByaXZhdGU7CiAJc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRj KGNydGMpOwogCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyOworCWJvb2wgaXNfZHNpID0g aW50ZWxfcGlwZV9oYXNfdHlwZShpbnRlbF9jcnRjLCBJTlRFTF9PVVRQVVRfRFNJKTsKIAlpbnQg cGlwZSA9IGludGVsX2NydGMtPnBpcGU7CiAKIAlXQVJOX09OKCFjcnRjLT5zdGF0ZS0+ZW5hYmxl KTsKQEAgLTUwMjMsOSArNTAyNCwxMiBAQCBzdGF0aWMgdm9pZCBoYXN3ZWxsX2NydGNfZW5hYmxl KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAlpbnRlbF9jcnRjLT5hY3RpdmUgPSB0cnVlOwogCiAJ aW50ZWxfc2V0X2NwdV9maWZvX3VuZGVycnVuX3JlcG9ydGluZyhkZXZfcHJpdiwgcGlwZSwgdHJ1 ZSk7Ci0JZm9yX2VhY2hfZW5jb2Rlcl9vbl9jcnRjKGRldiwgY3J0YywgZW5jb2RlcikKKwlmb3Jf ZWFjaF9lbmNvZGVyX29uX2NydGMoZGV2LCBjcnRjLCBlbmNvZGVyKSB7CisJCWlmIChlbmNvZGVy LT5wcmVfcGxsX2VuYWJsZSkKKwkJCWVuY29kZXItPnByZV9wbGxfZW5hYmxlKGVuY29kZXIpOwog CQlpZiAoZW5jb2Rlci0+cHJlX2VuYWJsZSkKIAkJCWVuY29kZXItPnByZV9lbmFibGUoZW5jb2Rl cik7CisJfQogCiAJaWYgKGludGVsX2NydGMtPmNvbmZpZy0+aGFzX3BjaF9lbmNvZGVyKSB7CiAJ CWludGVsX3NldF9wY2hfZmlmb191bmRlcnJ1bl9yZXBvcnRpbmcoZGV2X3ByaXYsIFRSQU5TQ09E RVJfQSwKQEAgLTUwMzMsNyArNTAzNyw4IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfY3J0Y19lbmFi bGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCQlkZXZfcHJpdi0+ZGlzcGxheS5mZGlfbGlua190 cmFpbihjcnRjKTsKIAl9CiAKLQlpbnRlbF9kZGlfZW5hYmxlX3BpcGVfY2xvY2soaW50ZWxfY3J0 Yyk7CisJaWYgKCFpc19kc2kpCisJCWludGVsX2RkaV9lbmFibGVfcGlwZV9jbG9jayhpbnRlbF9j cnRjKTsKIAogCWlmIChJTlRFTF9JTkZPKGRldiktPmdlbiA9PSA5KQogCQlza3lsYWtlX3BmaXRf dXBkYXRlKGludGVsX2NydGMsIDEpOwpAQCAtNTA0OSw3ICs1MDU0LDggQEAgc3RhdGljIHZvaWQg aGFzd2VsbF9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJaW50ZWxfY3J0Y19s b2FkX2x1dChjcnRjKTsKIAogCWludGVsX2RkaV9zZXRfcGlwZV9zZXR0aW5ncyhjcnRjKTsKLQlp bnRlbF9kZGlfZW5hYmxlX3RyYW5zY29kZXJfZnVuYyhjcnRjKTsKKwlpZiAoIWlzX2RzaSkKKwkJ aW50ZWxfZGRpX2VuYWJsZV90cmFuc2NvZGVyX2Z1bmMoY3J0Yyk7CiAKIAlpbnRlbF91cGRhdGVf d2F0ZXJtYXJrcyhjcnRjKTsKIAlpbnRlbF9lbmFibGVfcGlwZShpbnRlbF9jcnRjKTsKQEAgLTUw NTcsNyArNTA2Myw3IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfY3J0Y19lbmFibGUoc3RydWN0IGRy bV9jcnRjICpjcnRjKQogCWlmIChpbnRlbF9jcnRjLT5jb25maWctPmhhc19wY2hfZW5jb2RlcikK IAkJbHB0X3BjaF9lbmFibGUoY3J0Yyk7CiAKLQlpZiAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5kcF9l bmNvZGVyX2lzX21zdCkKKwlpZiAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5kcF9lbmNvZGVyX2lzX21z dCAmJiAhaXNfZHNpKQogCQlpbnRlbF9kZGlfc2V0X3ZjX3BheWxvYWRfYWxsb2MoY3J0YywgdHJ1 ZSk7CiAKIAlhc3NlcnRfdmJsYW5rX2Rpc2FibGVkKGNydGMpOwpAQCAtNTE1OSw2ICs1MTY1LDcg QEAgc3RhdGljIHZvaWQgaGFzd2VsbF9jcnRjX2Rpc2FibGUoc3RydWN0IGRybV9jcnRjICpjcnRj KQogCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsK IAlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcjsKIAllbnVtIHRyYW5zY29kZXIgY3B1X3Ry YW5zY29kZXIgPSBpbnRlbF9jcnRjLT5jb25maWctPmNwdV90cmFuc2NvZGVyOworCWJvb2wgaXNf ZHNpID0gaW50ZWxfcGlwZV9oYXNfdHlwZShpbnRlbF9jcnRjLCBJTlRFTF9PVVRQVVRfRFNJKTsK IAogCWlmICghaW50ZWxfY3J0Yy0+YWN0aXZlKQogCQlyZXR1cm47CkBAIC01MTc5LDcgKzUxODYs OCBAQCBzdGF0aWMgdm9pZCBoYXN3ZWxsX2NydGNfZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNy dGMpCiAJaWYgKGludGVsX2NydGMtPmNvbmZpZy0+ZHBfZW5jb2Rlcl9pc19tc3QpCiAJCWludGVs X2RkaV9zZXRfdmNfcGF5bG9hZF9hbGxvYyhjcnRjLCBmYWxzZSk7CiAKLQlpbnRlbF9kZGlfZGlz YWJsZV90cmFuc2NvZGVyX2Z1bmMoZGV2X3ByaXYsIGNwdV90cmFuc2NvZGVyKTsKKwlpZiAoIWlz X2RzaSkKKwkJaW50ZWxfZGRpX2Rpc2FibGVfdHJhbnNjb2Rlcl9mdW5jKGRldl9wcml2LCBjcHVf dHJhbnNjb2Rlcik7CiAKIAlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPT0gOSkKIAkJc2t5bGFr ZV9wZml0X3VwZGF0ZShpbnRlbF9jcnRjLCAwKTsKQEAgLTUxODgsNyArNTE5Niw4IEBAIHN0YXRp YyB2b2lkIGhhc3dlbGxfY3J0Y19kaXNhYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAllbHNl CiAJCU1JU1NJTkdfQ0FTRShJTlRFTF9JTkZPKGRldiktPmdlbik7CiAKLQlpbnRlbF9kZGlfZGlz YWJsZV9waXBlX2Nsb2NrKGludGVsX2NydGMpOworCWlmICghaXNfZHNpKQorCQlpbnRlbF9kZGlf ZGlzYWJsZV9waXBlX2Nsb2NrKGludGVsX2NydGMpOwogCiAJaWYgKGludGVsX2NydGMtPmNvbmZp Zy0+aGFzX3BjaF9lbmNvZGVyKSB7CiAJCWxwdF9kaXNhYmxlX3BjaF90cmFuc2NvZGVyKGRldl9w cml2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX29wcmVnaW9uLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9vcHJlZ2lvbi5jCmluZGV4IDQ4MTMzNzQuLjMy NmFhNmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX29wcmVnaW9uLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfb3ByZWdpb24uYwpAQCAtMzM1LDcgKzMz NSw3IEBAIGludCBpbnRlbF9vcHJlZ2lvbl9ub3RpZnlfZW5jb2RlcihzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqaW50ZWxfZW5jb2RlciwKIAkJcmV0dXJuIDA7CiAKIAlwb3J0ID0gaW50ZWxfZGRpX2dl dF9lbmNvZGVyX3BvcnQoaW50ZWxfZW5jb2Rlcik7Ci0JaWYgKHBvcnQgPT0gUE9SVF9FKSB7CisJ aWYgKChwb3J0ID09IFBPUlRfRSkgfHwgKHBvcnQgPT0gUE9SVF9JTlZBTElEKSkgewogCQlwb3J0 ID0gMDsKIAl9IGVsc2UgewogCQlwYXJtIHw9IDEgPDwgcG9ydDsKQEAgLTM1Niw2ICszNTYsNyBA QCBpbnQgaW50ZWxfb3ByZWdpb25fbm90aWZ5X2VuY29kZXIoc3RydWN0IGludGVsX2VuY29kZXIg KmludGVsX2VuY29kZXIsCiAJCXR5cGUgPSBESVNQTEFZX1RZUEVfRVhURVJOQUxfRkxBVF9QQU5F TDsKIAkJYnJlYWs7CiAJY2FzZSBJTlRFTF9PVVRQVVRfRURQOgorCWNhc2UgSU5URUxfT1VUUFVU X0RTSToKIAkJdHlwZSA9IERJU1BMQVlfVFlQRV9JTlRFUk5BTF9GTEFUX1BBTkVMOwogCQlicmVh azsKIAlkZWZhdWx0OgotLSAKMS43LjkuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK