From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeykumar Sankaran Subject: [PATCH v4 3/3] drm/msm/dpu: add display port support in DPU Date: Mon, 17 Dec 2018 14:35:05 -0800 Message-ID: <1545086105-7770-3-git-send-email-jsanka@codeaurora.org> References: <1545086105-7770-1-git-send-email-jsanka@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1545086105-7770-1-git-send-email-jsanka-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: hoegsberg-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org, Jeykumar Sankaran , jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org QWRkIGRpc3BsYXkgcG9ydCBzdXBwb3J0IGluIERQVSBieSBjcmVhdGluZyBob29rcwpmb3IgRFAg ZW5jb2RlciBlbnVtZXJhdGlvbiBhbmQgZW5jb2RlciBtb2RlCmluaXRpYWxpemF0aW9uLgoKVGhp cyBjaGFuZ2UgaXMgYmFzZWQgb24gdGhlIFNETTg0NSBEaXNwbGF5IHBvcnQKZHJpdmVyIGNoYW5n ZXNbMV0uCgpjaGFuZ2VzIGluIHYyOgogICAgLSByZWJhc2Ugb24gWzJdIChTZWFuIFBhdWwpCiAg ICAtIHJlbW92ZSB1bndhbnRlZCBlcnJvciBjaGVja3MgYW5kCiAgICAgIHN3aXRjaCBjYXNlcyAo Sm9yZGFuIENyb3VzZSkKY2hhbmdlcyBpbiB2MzoKICAgIC0gYWRkIGRwIHN1cHBvcnQgYWZ0ZXIg Zml4aW5nCiAgICAgIHRoZSBjdXJyZW50IGNvZGUgYmFzZSBmb3IgZXJyb3IgbG9nZ2luZyAoU2Vh biBQYXVsKQpjaGFuZ2VzIGluIHY0OgogICAgLSAgYXZvaWQgZHVwbGljYXRlIHJldHVybnMgKEpv cmRhbiBDcm91c2UpCiAgICAtICBnZXQgcmlkIG9mIGR1cGxpY2F0ZSBlcnJvciBsb2dzIChKb3Jk YW4gQ3JvdXNlKQoKWzFdIGh0dHBzOi8vbHduLm5ldC9BcnRpY2xlcy83NjgyNjUvClsyXSBodHRw czovL2xrbWwub3JnL2xrbWwvMjAxOC8xMS8xNy84NwoKU2lnbmVkLW9mZi1ieTogSmV5a3VtYXIg U2Fua2FyYW4gPGpzYW5rYUBjb2RlYXVyb3JhLm9yZz4KUmV2aWV3ZWQtYnk6IEpvcmRhbiBDcm91 c2UgPGpjcm91c2VAY29kZWF1cm9yYS5vcmc+ClJldmlld2VkLWJ5OiBTZWFuIFBhdWwgPHNlYW5A cG9vcmx5LnJ1bj4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rl ci5jIHwgIDggKystLQogZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2ttcy5jICAg ICB8IDU4ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDU0 IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rp c3AvZHB1MS9kcHVfZW5jb2Rlci5jCmluZGV4IDBkZGE0YTYuLjM3MWQxN2QgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIuYwpAQCAtMjAzMSw3ICsyMDMxLDcg QEAgc3RhdGljIGludCBkcHVfZW5jb2Rlcl9zZXR1cF9kaXNwbGF5KHN0cnVjdCBkcHVfZW5jb2Rl cl92aXJ0ICpkcHVfZW5jLAogewogCWludCByZXQgPSAwOwogCWludCBpID0gMDsKLQllbnVtIGRw dV9pbnRmX3R5cGUgaW50Zl90eXBlOworCWVudW0gZHB1X2ludGZfdHlwZSBpbnRmX3R5cGUgPSBJ TlRGX05PTkU7CiAJc3RydWN0IGRwdV9lbmNfcGh5c19pbml0X3BhcmFtcyBwaHlzX3BhcmFtczsK IAogCWlmICghZHB1X2VuYyB8fCAhZHB1X2ttcykgewpAQCAtMjA1NCw5ICsyMDU0LDkgQEAgc3Rh dGljIGludCBkcHVfZW5jb2Rlcl9zZXR1cF9kaXNwbGF5KHN0cnVjdCBkcHVfZW5jb2Rlcl92aXJ0 ICpkcHVfZW5jLAogCWNhc2UgRFJNX01PREVfRU5DT0RFUl9EU0k6CiAJCWludGZfdHlwZSA9IElO VEZfRFNJOwogCQlicmVhazsKLQlkZWZhdWx0OgotCQlEUFVfRVJST1JfRU5DKGRwdV9lbmMsICJ1 bnN1cHBvcnRlZCBkaXNwbGF5IGludGVyZmFjZSB0eXBlXG4iKTsKLQkJcmV0dXJuIC1FSU5WQUw7 CisJY2FzZSBEUk1fTU9ERV9FTkNPREVSX1RNRFM6CisJCWludGZfdHlwZSA9IElOVEZfRFA7CisJ CWJyZWFrOwogCX0KIAogCVdBUk5fT04oZGlzcF9pbmZvLT5udW1fb2ZfaF90aWxlcyA8IDEpOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2ttcy5jIGIvZHJp dmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2ttcy5jCmluZGV4IDg4NWJmODguLjYyYjQw MGMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9rbXMuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmMKQEAgLTQzOSw2ICs0 MzksMzEgQEAgc3RhdGljIGludCBfZHB1X2ttc19pbml0aWFsaXplX2RzaShzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAogCXJldHVybiByYzsKIH0KIAorc3RhdGljIGludCBfZHB1X2ttc19pbml0aWFs aXplX2Rpc3BsYXlwb3J0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCisJCQkJCSAgICBzdHJ1Y3Qg bXNtX2RybV9wcml2YXRlICpwcml2LAorCQkJCQkgICAgc3RydWN0IGRwdV9rbXMgKmRwdV9rbXMp Cit7CisJc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyID0gTlVMTDsKKwlpbnQgcmM7CisKKwlp ZiAoIXByaXYtPmRwKQorCQlyZXR1cm4gMDsKKworCWVuY29kZXIgPSBkcHVfZW5jb2Rlcl9pbml0 KGRldiwgRFJNX01PREVfRU5DT0RFUl9UTURTKTsKKwlpZiAoSVNfRVJSKGVuY29kZXIpKSB7CisJ CURQVV9FUlJPUigiZW5jb2RlciBpbml0IGZhaWxlZCBmb3IgZHNpIGRpc3BsYXlcbiIpOworCQly ZXR1cm4gUFRSX0VSUihlbmNvZGVyKTsKKwl9CisKKwlyYyA9IG1zbV9kcF9tb2Rlc2V0X2luaXQo cHJpdi0+ZHAsIGRldiwgZW5jb2Rlcik7CisJaWYgKHJjKSB7CisJCURQVV9FUlJPUigibW9kZXNl dF9pbml0IGZhaWxlZCBmb3IgRFAsIHJjID0gJWRcbiIsIHJjKTsKKwkJZHJtX2VuY29kZXJfY2xl YW51cChlbmNvZGVyKTsKKwl9CisKKwlyZXR1cm4gcmM7Cit9CisKIC8qKgogICogX2RwdV9rbXNf c2V0dXBfZGlzcGxheXMgLSBjcmVhdGUgZW5jb2RlcnMsIGJyaWRnZXMgYW5kIGNvbm5lY3RvcnMK ICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHVuZGVybHlpbmcgZGlzcGxheXMKQEAg LTQ1MSwxMiArNDc2LDIyIEBAIHN0YXRpYyBpbnQgX2RwdV9rbXNfc2V0dXBfZGlzcGxheXMoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCQkgICAgc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJp diwKIAkJCQkgICAgc3RydWN0IGRwdV9rbXMgKmRwdV9rbXMpCiB7CisJaW50IHJjOworCisJcmMg PSBfZHB1X2ttc19pbml0aWFsaXplX2RzaShkZXYsIHByaXYsIGRwdV9rbXMpOworCWlmIChyYykK KwkJZ290byBmYWlsOworCisJcmMgPSBfZHB1X2ttc19pbml0aWFsaXplX2Rpc3BsYXlwb3J0KGRl diwgcHJpdiwgZHB1X2ttcyk7CisJaWYgKHJjKQorCQlnb3RvIGZhaWw7CisKIAkvKioKIAkgKiBF eHRlbmQgdGhpcyBmdW5jdGlvbiB0byBpbml0aWFsaXplIG90aGVyCiAJICogdHlwZXMgb2YgZGlz cGxheXMKIAkgKi8KLQotCXJldHVybiBfZHB1X2ttc19pbml0aWFsaXplX2RzaShkZXYsIHByaXYs IGRwdV9rbXMpOworZmFpbDoKKwlyZXR1cm4gcmM7CiB9CiAKIHN0YXRpYyB2b2lkIF9kcHVfa21z X2RybV9vYmpfZGVzdHJveShzdHJ1Y3QgZHB1X2ttcyAqZHB1X2ttcykKQEAgLTY2OSwxMyArNzA0 LDIwIEBAIHN0YXRpYyB2b2lkIF9kcHVfa21zX3NldF9lbmNvZGVyX21vZGUoc3RydWN0IG1zbV9r bXMgKmttcywKIAlpbmZvLmNhcGFiaWxpdGllcyA9IGNtZF9tb2RlID8gTVNNX0RJU1BMQVlfQ0FQ X0NNRF9NT0RFIDoKIAkJCU1TTV9ESVNQTEFZX0NBUF9WSURfTU9ERTsKIAotCS8qIFRPRE86IE5v IHN1cHBvcnQgZm9yIERTSSBzd2FwICovCi0JZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUocHJp di0+ZHNpKTsgaSsrKSB7Ci0JCWlmIChwcml2LT5kc2lbaV0pIHsKLQkJCWluZm8uaF90aWxlX2lu c3RhbmNlW2luZm8ubnVtX29mX2hfdGlsZXNdID0gaTsKLQkJCWluZm8ubnVtX29mX2hfdGlsZXMr KzsKKwlzd2l0Y2ggKGluZm8uaW50Zl90eXBlKSB7CisJY2FzZSBEUk1fTU9ERV9FTkNPREVSX0RT SToKKwkJLyogVE9ETzogTm8gc3VwcG9ydCBmb3IgRFNJIHN3YXAgKi8KKwkJZm9yIChpID0gMDsg aSA8IEFSUkFZX1NJWkUocHJpdi0+ZHNpKTsgaSsrKSB7CisJCQlpZiAocHJpdi0+ZHNpW2ldKSB7 CisJCQkJaW5mby5oX3RpbGVfaW5zdGFuY2VbaW5mby5udW1fb2ZfaF90aWxlc10gPSBpOworCQkJ CWluZm8ubnVtX29mX2hfdGlsZXMrKzsKKwkJCX0KIAkJfQotCX0KKwkJYnJlYWs7CisJY2FzZSBE Uk1fTU9ERV9FTkNPREVSX1RNRFM6CisJCWluZm8ubnVtX29mX2hfdGlsZXMgPSAxOworCQlicmVh azsKKwl9OwogCiAJcmMgPSBkcHVfZW5jb2Rlcl9zZXR1cChlbmNvZGVyLT5kZXYsIGVuY29kZXIs ICZpbmZvKTsKIAlpZiAocmMpCi0tIApUaGUgUXVhbGNvbW0gSW5ub3ZhdGlvbiBDZW50ZXIsIElu Yy4gaXMgYSBtZW1iZXIgb2YgdGhlIENvZGUgQXVyb3JhIEZvcnVtLAphIExpbnV4IEZvdW5kYXRp b24gQ29sbGFib3JhdGl2ZSBQcm9qZWN0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpGcmVlZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9mcmVlZHJlbm8K