From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sravanthi Kollukuduru Subject: [DPU PATCH v2 07/14] drm/msm/dpu: iterate for assigned hw ctl in virtual encoder Date: Mon, 18 Jun 2018 19:02:45 +0530 Message-ID: <1529328772-5022-8-git-send-email-skolluku@codeaurora.org> References: <1529328772-5022-1-git-send-email-skolluku@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1529328772-5022-1-git-send-email-skolluku-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, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Sravanthi Kollukuduru , Jeykumar Sankaran , seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, hoegsberg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org RnJvbTogSmV5a3VtYXIgU2Fua2FyYW4gPGpzYW5rYUBjb2RlYXVyb3JhLm9yZz4KCkluc3RlYWQg b2YgaXRlcmF0aW5nIGZvciBodyBjdHJsIHBlciBwaHlzaWNhbCBlbmNvZGVyLCB0aGlzCnBhdGNo IG1vdmVzIHRoZSBpdGVyYXRpb25zIGFuZCBhc3NpZ25tZW50IHRvIHRoZSB2aXJ0dWFsIGVuY29k ZXIuCgpjaGFuZ2VzIGluIHYyOgogICAgIC0gbm9uZQoKU2lnbmVkLW9mZi1ieTogSmV5a3VtYXIg U2Fua2FyYW4gPGpzYW5rYUBjb2RlYXVyb3JhLm9yZz4KU2lnbmVkLW9mZi1ieTogU3JhdmFudGhp IEtvbGx1a3VkdXJ1IDxza29sbHVrdUBjb2RlYXVyb3JhLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9k cm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlci5jICAgICAgICB8IDIyICsrKysrKysrKysrKysr KysrKysrLS0KIC4uLi9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXJfcGh5c19jbWQu YyAgIHwgMTkgLS0tLS0tLS0tLS0tLS0tLS0tLQogLi4uL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfZW5jb2Rlcl9waHlzX3ZpZC5jICAgfCAxOSAtLS0tLS0tLS0tLS0tLS0tLS0tCiAzIGZpbGVz IGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDQwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmMgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlci5jCmluZGV4IDlmMmJkNDcuLjZkMzJhMGIg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIuYwpAQCAtMTAz NCw5ICsxMDM0LDExIEBAIHN0YXRpYyB2b2lkIGRwdV9lbmNvZGVyX3ZpcnRfbW9kZV9zZXQoc3Ry dWN0IGRybV9lbmNvZGVyICpkcm1fZW5jLAogCXN0cnVjdCBkcHVfa21zICpkcHVfa21zOwogCXN0 cnVjdCBsaXN0X2hlYWQgKmNvbm5lY3Rvcl9saXN0OwogCXN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uID0gTlVMTCwgKmNvbm5faXRlcjsKLQlzdHJ1Y3QgZHB1X3JtX2h3X2l0ZXIgcHBfaXRlcjsK KwlzdHJ1Y3QgZHB1X3JtX2h3X2l0ZXIgcHBfaXRlciwgY3RsX2l0ZXI7CiAJc3RydWN0IG1zbV9k aXNwbGF5X3RvcG9sb2d5IHRvcG9sb2d5OwogCWVudW0gZHB1X3JtX3RvcG9sb2d5X25hbWUgdG9w b2xvZ3lfbmFtZTsKKwlzdHJ1Y3QgZHB1X2h3X2N0bCAqaHdfY3RsW01BWF9DSEFOTkVMU19QRVJf RU5DXTsKKwogCWludCBpID0gMCwgcmV0OwogCiAJaWYgKCFkcm1fZW5jKSB7CkBAIC0xMDg0LDYg KzEwODYsMTQgQEAgc3RhdGljIHZvaWQgZHB1X2VuY29kZXJfdmlydF9tb2RlX3NldChzdHJ1Y3Qg ZHJtX2VuY29kZXIgKmRybV9lbmMsCiAJCWRwdV9lbmMtPmh3X3BwW2ldID0gKHN0cnVjdCBkcHVf aHdfcGluZ3BvbmcgKikgcHBfaXRlci5odzsKIAl9CiAKKwlkcHVfcm1faW5pdF9od19pdGVyKCZj dGxfaXRlciwgZHJtX2VuYy0+YmFzZS5pZCwgRFBVX0hXX0JMS19DVEwpOworCWZvciAoaSA9IDA7 IGkgPCBNQVhfQ0hBTk5FTFNfUEVSX0VOQzsgaSsrKSB7CisJCWh3X2N0bFtpXSA9IE5VTEw7CisJ CWlmICghZHB1X3JtX2dldF9odygmZHB1X2ttcy0+cm0sICZjdGxfaXRlcikpCisJCQlicmVhazsK KwkJaHdfY3RsW2ldID0gKHN0cnVjdCBkcHVfaHdfY3RsICopY3RsX2l0ZXIuaHc7CisJfQorCiAJ dG9wb2xvZ3lfbmFtZSA9IGRwdV9ybV9nZXRfdG9wb2xvZ3lfbmFtZSh0b3BvbG9neSk7CiAJZm9y IChpID0gMDsgaSA8IGRwdV9lbmMtPm51bV9waHlzX2VuY3M7IGkrKykgewogCQlzdHJ1Y3QgZHB1 X2VuY29kZXJfcGh5cyAqcGh5cyA9IGRwdV9lbmMtPnBoeXNfZW5jc1tpXTsKQEAgLTEwOTEsMTAg KzExMDEsMTggQEAgc3RhdGljIHZvaWQgZHB1X2VuY29kZXJfdmlydF9tb2RlX3NldChzdHJ1Y3Qg ZHJtX2VuY29kZXIgKmRybV9lbmMsCiAJCWlmIChwaHlzKSB7CiAJCQlpZiAoIWRwdV9lbmMtPmh3 X3BwW2ldKSB7CiAJCQkJRFBVX0VSUk9SX0VOQyhkcHVfZW5jLAotCQkJCSAgICAiaW52YWxpZCBw aW5ncG9uZyBibG9jayBmb3IgdGhlIGVuY29kZXJcbiIpOworCQkJCSAgICAibm8gcHAgYmxvY2sg YXNzaWduZWQgYXQgaWR4OiAlZFxuIiwgaSk7CiAJCQkJcmV0dXJuOwogCQkJfQogCQkJcGh5cy0+ aHdfcHAgPSBkcHVfZW5jLT5od19wcFtpXTsKKworCQkJaWYgKCFod19jdGxbaV0pIHsKKwkJCQlE UFVfRVJST1JfRU5DKGRwdV9lbmMsCisJCQkJICAgICJubyBjdGwgYmxvY2sgYXNzaWduZWQgYXQg aWR4OiAlZFxuIiwgaSk7CisJCQkJcmV0dXJuOworCQkJfQorCQkJcGh5cy0+aHdfY3RsID0gaHdf Y3RsW2ldOworCiAJCQlwaHlzLT5jb25uZWN0b3IgPSBjb25uLT5zdGF0ZS0+Y29ubmVjdG9yOwog CQkJcGh5cy0+dG9wb2xvZ3lfbmFtZSA9IHRvcG9sb2d5X25hbWU7CiAJCQlpZiAocGh5cy0+b3Bz Lm1vZGVfc2V0KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1 X2VuY29kZXJfcGh5c19jbWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9l bmNvZGVyX3BoeXNfY21kLmMKaW5kZXggYjlmN2Q5NS4uMmQ5NzRlMyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXJfcGh5c19jbWQuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlcl9waHlzX2NtZC5jCkBAIC0x OTUsOSArMTk1LDYgQEAgc3RhdGljIHZvaWQgZHB1X2VuY29kZXJfcGh5c19jbWRfbW9kZV9zZXQo CiB7CiAJc3RydWN0IGRwdV9lbmNvZGVyX3BoeXNfY21kICpjbWRfZW5jID0KIAkJdG9fZHB1X2Vu Y29kZXJfcGh5c19jbWQocGh5c19lbmMpOwotCXN0cnVjdCBkcHVfcm0gKnJtID0gJnBoeXNfZW5j LT5kcHVfa21zLT5ybTsKLQlzdHJ1Y3QgZHB1X3JtX2h3X2l0ZXIgaXRlcjsKLQlpbnQgaSwgaW5z dGFuY2U7CiAKIAlpZiAoIXBoeXNfZW5jIHx8ICFtb2RlIHx8ICFhZGpfbW9kZSkgewogCQlEUFVf RVJST1IoImludmFsaWQgYXJnc1xuIik7CkBAIC0yMDcsMjIgKzIwNCw2IEBAIHN0YXRpYyB2b2lk IGRwdV9lbmNvZGVyX3BoeXNfY21kX21vZGVfc2V0KAogCURQVV9ERUJVR19DTURFTkMoY21kX2Vu YywgImNhY2hpbmcgbW9kZTpcbiIpOwogCWRybV9tb2RlX2RlYnVnX3ByaW50bW9kZWxpbmUoYWRq X21vZGUpOwogCi0JaW5zdGFuY2UgPSBwaHlzX2VuYy0+c3BsaXRfcm9sZSA9PSBFTkNfUk9MRV9T TEFWRSA/IDEgOiAwOwotCi0JLyogUmV0cmlldmUgcHJldmlvdXNseSBhbGxvY2F0ZWQgSFcgUmVz b3VyY2VzLiBTaG91bGRuJ3QgZmFpbCAqLwotCWRwdV9ybV9pbml0X2h3X2l0ZXIoJml0ZXIsIHBo eXNfZW5jLT5wYXJlbnQtPmJhc2UuaWQsIERQVV9IV19CTEtfQ1RMKTsKLQlmb3IgKGkgPSAwOyBp IDw9IGluc3RhbmNlOyBpKyspIHsKLQkJaWYgKGRwdV9ybV9nZXRfaHcocm0sICZpdGVyKSkKLQkJ CXBoeXNfZW5jLT5od19jdGwgPSAoc3RydWN0IGRwdV9od19jdGwgKilpdGVyLmh3OwotCX0KLQot CWlmIChJU19FUlJfT1JfTlVMTChwaHlzX2VuYy0+aHdfY3RsKSkgewotCQlEUFVfRVJST1JfQ01E RU5DKGNtZF9lbmMsICJmYWlsZWQgdG8gaW5pdCBjdGw6ICVsZFxuIiwKLQkJCQlQVFJfRVJSKHBo eXNfZW5jLT5od19jdGwpKTsKLQkJcGh5c19lbmMtPmh3X2N0bCA9IE5VTEw7Ci0JCXJldHVybjsK LQl9Ci0KIAlfZHB1X2VuY29kZXJfcGh5c19jbWRfc2V0dXBfaXJxX2h3X2lkeChwaHlzX2VuYyk7 CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNv ZGVyX3BoeXNfdmlkLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rl cl9waHlzX3ZpZC5jCmluZGV4IGU5YjM0NmMuLmYwYjU3NjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXNfdmlkLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXJfcGh5c192aWQuYwpAQCAtMzk1LDkg KzM5NSw2IEBAIHN0YXRpYyB2b2lkIGRwdV9lbmNvZGVyX3BoeXNfdmlkX21vZGVfc2V0KAogCQlz dHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKIAkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUg KmFkal9tb2RlKQogewotCXN0cnVjdCBkcHVfcm0gKnJtOwotCXN0cnVjdCBkcHVfcm1faHdfaXRl ciBpdGVyOwotCWludCBpLCBpbnN0YW5jZTsKIAlzdHJ1Y3QgZHB1X2VuY29kZXJfcGh5c192aWQg KnZpZF9lbmM7CiAKIAlpZiAoIXBoeXNfZW5jIHx8ICFwaHlzX2VuYy0+ZHB1X2ttcykgewpAQCAt NDA1LDcgKzQwMiw2IEBAIHN0YXRpYyB2b2lkIGRwdV9lbmNvZGVyX3BoeXNfdmlkX21vZGVfc2V0 KAogCQlyZXR1cm47CiAJfQogCi0Jcm0gPSAmcGh5c19lbmMtPmRwdV9rbXMtPnJtOwogCXZpZF9l bmMgPSB0b19kcHVfZW5jb2Rlcl9waHlzX3ZpZChwaHlzX2VuYyk7CiAKIAlpZiAoYWRqX21vZGUp IHsKQEAgLTQxNCwyMSArNDEwLDYgQEAgc3RhdGljIHZvaWQgZHB1X2VuY29kZXJfcGh5c192aWRf bW9kZV9zZXQoCiAJCURQVV9ERUJVR19WSURFTkModmlkX2VuYywgImNhY2hpbmcgbW9kZTpcbiIp OwogCX0KIAotCWluc3RhbmNlID0gcGh5c19lbmMtPnNwbGl0X3JvbGUgPT0gRU5DX1JPTEVfU0xB VkUgPyAxIDogMDsKLQotCS8qIFJldHJpZXZlIHByZXZpb3VzbHkgYWxsb2NhdGVkIEhXIFJlc291 cmNlcy4gU2hvdWxkbid0IGZhaWwgKi8KLQlkcHVfcm1faW5pdF9od19pdGVyKCZpdGVyLCBwaHlz X2VuYy0+cGFyZW50LT5iYXNlLmlkLCBEUFVfSFdfQkxLX0NUTCk7Ci0JZm9yIChpID0gMDsgaSA8 PSBpbnN0YW5jZTsgaSsrKSB7Ci0JCWlmIChkcHVfcm1fZ2V0X2h3KHJtLCAmaXRlcikpCi0JCQlw aHlzX2VuYy0+aHdfY3RsID0gKHN0cnVjdCBkcHVfaHdfY3RsICopaXRlci5odzsKLQl9Ci0JaWYg KElTX0VSUl9PUl9OVUxMKHBoeXNfZW5jLT5od19jdGwpKSB7Ci0JCURQVV9FUlJPUl9WSURFTkMo dmlkX2VuYywgImZhaWxlZCB0byBpbml0IGN0bCwgJWxkXG4iLAotCQkJCVBUUl9FUlIocGh5c19l bmMtPmh3X2N0bCkpOwotCQlwaHlzX2VuYy0+aHdfY3RsID0gTlVMTDsKLQkJcmV0dXJuOwotCX0K LQogCV9kcHVfZW5jb2Rlcl9waHlzX3ZpZF9zZXR1cF9pcnFfaHdfaWR4KHBoeXNfZW5jKTsKIH0K IAotLSAKVGhlIFF1YWxjb21tIElubm92YXRpb24gQ2VudGVyLCBJbmMuIGlzIGEgbWVtYmVyIG9m IHRoZSBDb2RlIEF1cm9yYSBGb3J1bSwKYSBMaW51eCBGb3VuZGF0aW9uIENvbGxhYm9yYXRpdmUg UHJvamVjdAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K RnJlZWRyZW5vIG1haWxpbmcgbGlzdApGcmVlZHJlbm9AbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZnJlZWRyZW5vCg==