From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sravanthi Kollukuduru Subject: [PATCH v2 2/3] drm/msm/dpu: Integrate interconnect API in MDSS Date: Wed, 10 Oct 2018 14:54:33 +0530 Message-ID: <20181010092434.853-3-skolluku@codeaurora.org> References: <20181010092434.853-1-skolluku@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181010092434.853-1-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, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: sean-p7yTbzM4H96eqtR555YLDQ@public.gmane.org, robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, Sravanthi Kollukuduru List-Id: devicetree@vger.kernel.org VGhlIGludGVyY29ubmVjdCBmcmFtZXdvcmsgaXMgZGVzaWduZWQgdG8gcHJvdmlkZSBhCnN0YW5k YXJkIGtlcm5lbCBpbnRlcmZhY2UgdG8gY29udHJvbCB0aGUgc2V0dGluZ3Mgb2YKdGhlIGludGVy Y29ubmVjdHMgb24gYSBTb0MuCgpUaGUgaW50ZXJjb25uZWN0IEFQSSB1c2VzIGEgY29uc3VtZXIv cHJvdmlkZXItYmFzZWQgbW9kZWwsCndoZXJlIHRoZSBwcm92aWRlcnMgYXJlIHRoZSBpbnRlcmNv bm5lY3QgYnVzZXMgYW5kIHRoZQpjb25zdW1lcnMgY291bGQgYmUgdmFyaW91cyBkcml2ZXJzLgoK TURTUyBpcyBvbmUgb2YgdGhlIGludGVyY29ubmVjdCBjb25zdW1lcnMgd2hpY2ggdXNlcyB0aGUK aW50ZXJjb25uZWN0IEFQSXMgdG8gZ2V0IHRoZSBwYXRoIGJldHdlZW4gZW5kcG9pbnRzIGFuZApz ZXQgaXRzIGJhbmR3aWR0aC9sYXRlbmN5L1FvUyByZXF1aXJlbWVudHMgZm9yIHRoZSBnaXZlbgpp bnRlcmNvbm5lY3RlZCBwYXRoLgoKQ2hhbmdlcyBpbiB2MjoKCS0gUmVtb3ZlIGVycm9yIGxvZyBh bmQgdW5uZWNlc3NhcnkgY2hlY2sgKEpvcmRhbiBDcm91c2UpCgpTaWduZWQtb2ZmLWJ5OiBTcmF2 YW50aGkgS29sbHVrdWR1cnUgPHNrb2xsdWt1QGNvZGVhdXJvcmEub3JnPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9tZHNzLmMgfCA1MCArKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDQgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X21k c3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9tZHNzLmMKaW5kZXggMjIz NWVmODEyOWY0Li4yN2MyNTk0ZTUxMzMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20v ZGlzcC9kcHUxL2RwdV9tZHNzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEv ZHB1X21kc3MuYwpAQCAtNCw2ICs0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiZHB1X2ttcy5oIgor I2luY2x1ZGUgPGxpbnV4L2ludGVyY29ubmVjdC5oPgogCiAjZGVmaW5lIHRvX2RwdV9tZHNzKHgp IGNvbnRhaW5lcl9vZih4LCBzdHJ1Y3QgZHB1X21kc3MsIGJhc2UpCiAKQEAgLTE2LDggKzE3LDMz IEBAIHN0cnVjdCBkcHVfbWRzcyB7CiAJdTMyIGh3dmVyc2lvbjsKIAlzdHJ1Y3QgZHNzX21vZHVs ZV9wb3dlciBtcDsKIAlzdHJ1Y3QgZHB1X2lycV9jb250cm9sbGVyIGlycV9jb250cm9sbGVyOwor CXN0cnVjdCBpY2NfcGF0aCAqcGF0aFsyXTsKKwl1MzIgbnVtX3BhdGhzOwogfTsKIAorc3RhdGlj IGludCBkcHVfbWRzc19wYXJzZV9kYXRhX2J1c19pY2NfcGF0aCgKKwkJc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgc3RydWN0IGRwdV9tZHNzICpkcHVfbWRzcykKK3sKKwlzdHJ1Y3QgaWNjX3BhdGgg KnBhdGgwID0gb2ZfaWNjX2dldChkZXYtPmRldiwgInBvcnQwIik7CisJc3RydWN0IGljY19wYXRo ICpwYXRoMSA9IG9mX2ljY19nZXQoZGV2LT5kZXYsICJwb3J0MSIpOworCWludCB0b3RhbF9udW1f cGF0aHMgID0gMDsKKworCWlmIChJU19FUlIocGF0aDApKQorCQlyZXR1cm4gUFRSX0VSUihwYXRo MCk7CisKKwlkcHVfbWRzcy0+cGF0aFswXSA9IHBhdGgwOworCXRvdGFsX251bV9wYXRocyA9IDE7 CisKKwlpZiAoIUlTX0VSUihwYXRoMSkpIHsKKwkJZHB1X21kc3MtPnBhdGhbMV0gPSBwYXRoMTsK KwkJdG90YWxfbnVtX3BhdGhzKys7CisJfQorCisJZHB1X21kc3MtPm51bV9wYXRocyA9IHRvdGFs X251bV9wYXRoczsKKworCXJldHVybiAwOworfQorCiBzdGF0aWMgaXJxcmV0dXJuX3QgZHB1X21k c3NfaXJxKGludCBpcnEsIHZvaWQgKmFyZykKIHsKIAlzdHJ1Y3QgZHB1X21kc3MgKmRwdV9tZHNz ID0gYXJnOwpAQCAtMTI3LDcgKzE1MywxMiBAQCBzdGF0aWMgaW50IGRwdV9tZHNzX2VuYWJsZShz dHJ1Y3QgbXNtX21kc3MgKm1kc3MpCiB7CiAJc3RydWN0IGRwdV9tZHNzICpkcHVfbWRzcyA9IHRv X2RwdV9tZHNzKG1kc3MpOwogCXN0cnVjdCBkc3NfbW9kdWxlX3Bvd2VyICptcCA9ICZkcHVfbWRz cy0+bXA7Ci0JaW50IHJldDsKKwlpbnQgcmV0LCBpOworCXU2NCBhYiA9IChkcHVfbWRzcy0+bnVt X3BhdGhzKSA/IDY4MDAwMDAwMDAvZHB1X21kc3MtPm51bV9wYXRocyA6IDA7CisJdTY0IGliID0g NjgwMDAwMDAwMDsKKworCWZvciAoaSA9IDA7IGkgPCBkcHVfbWRzcy0+bnVtX3BhdGhzOyBpKysp CisJCWljY19zZXQoZHB1X21kc3MtPnBhdGhbaV0sIGFiLCBpYik7CiAKIAlyZXQgPSBtc21fZHNz X2VuYWJsZV9jbGsobXAtPmNsa19jb25maWcsIG1wLT5udW1fY2xrLCB0cnVlKTsKIAlpZiAocmV0 KQpAQCAtMTQwLDEyICsxNzEsMTUgQEAgc3RhdGljIGludCBkcHVfbWRzc19kaXNhYmxlKHN0cnVj dCBtc21fbWRzcyAqbWRzcykKIHsKIAlzdHJ1Y3QgZHB1X21kc3MgKmRwdV9tZHNzID0gdG9fZHB1 X21kc3MobWRzcyk7CiAJc3RydWN0IGRzc19tb2R1bGVfcG93ZXIgKm1wID0gJmRwdV9tZHNzLT5t cDsKLQlpbnQgcmV0OworCWludCByZXQsIGk7CiAKIAlyZXQgPSBtc21fZHNzX2VuYWJsZV9jbGso bXAtPmNsa19jb25maWcsIG1wLT5udW1fY2xrLCBmYWxzZSk7CiAJaWYgKHJldCkKIAkJRFBVX0VS Uk9SKCJjbG9jayBkaXNhYmxlIGZhaWxlZCwgcmV0OiVkXG4iLCByZXQpOwogCisJZm9yIChpID0g MDsgaSA8IGRwdV9tZHNzLT5udW1fcGF0aHM7IGkrKykKKwkJaWNjX3NldChkcHVfbWRzcy0+cGF0 aFtpXSwgMCwgMCk7CisKIAlyZXR1cm4gcmV0OwogfQogCkBAIC0xNTUsNiArMTg5LDcgQEAgc3Rh dGljIHZvaWQgZHB1X21kc3NfZGVzdHJveShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCXN0cnVj dCBtc21fZHJtX3ByaXZhdGUgKnByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBkcHVf bWRzcyAqZHB1X21kc3MgPSB0b19kcHVfbWRzcyhwcml2LT5tZHNzKTsKIAlzdHJ1Y3QgZHNzX21v ZHVsZV9wb3dlciAqbXAgPSAmZHB1X21kc3MtPm1wOworCWludCBpOwogCiAJX2RwdV9tZHNzX2ly cV9kb21haW5fZmluaShkcHVfbWRzcyk7CiAKQEAgLTE2Myw2ICsxOTgsOSBAQCBzdGF0aWMgdm9p ZCBkcHVfbWRzc19kZXN0cm95KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJbXNtX2Rzc19wdXRf Y2xrKG1wLT5jbGtfY29uZmlnLCBtcC0+bnVtX2Nsayk7CiAJZGV2bV9rZnJlZSgmcGRldi0+ZGV2 LCBtcC0+Y2xrX2NvbmZpZyk7CiAKKwlmb3IgKGkgPSAwOyBpIDwgZHB1X21kc3MtPm51bV9wYXRo czsgaSsrKQorCQlpY2NfcHV0KGRwdV9tZHNzLT5wYXRoW2ldKTsKKwogCWlmIChkcHVfbWRzcy0+ bW1pbykKIAkJZGV2bV9pb3VubWFwKCZwZGV2LT5kZXYsIGRwdV9tZHNzLT5tbWlvKTsKIAlkcHVf bWRzcy0+bW1pbyA9IE5VTEw7CkBAIC0yMDMsNiArMjQxLDEwIEBAIGludCBkcHVfbWRzc19pbml0 KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJfQogCWRwdV9tZHNzLT5tbWlvX2xlbiA9IHJlc291 cmNlX3NpemUocmVzKTsKIAorCXJldCA9IGRwdV9tZHNzX3BhcnNlX2RhdGFfYnVzX2ljY19wYXRo KGRldiwgZHB1X21kc3MpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKIAltcCA9ICZkcHVf bWRzcy0+bXA7CiAJcmV0ID0gbXNtX2Rzc19wYXJzZV9jbG9jayhwZGV2LCBtcCk7CiAJaWYgKHJl dCkgewpAQCAtMjI0LDE0ICsyNjYsMTQgQEAgaW50IGRwdV9tZHNzX2luaXQoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKIAkJZ290byBpcnFfZXJyb3I7CiAJfQogCisJcHJpdi0+bWRzcyA9ICZkcHVf bWRzcy0+YmFzZTsKKwogCXBtX3J1bnRpbWVfZW5hYmxlKGRldi0+ZGV2KTsKIAogCXBtX3J1bnRp bWVfZ2V0X3N5bmMoZGV2LT5kZXYpOwogCWRwdV9tZHNzLT5od3ZlcnNpb24gPSByZWFkbF9yZWxh eGVkKGRwdV9tZHNzLT5tbWlvKTsKIAlwbV9ydW50aW1lX3B1dF9zeW5jKGRldi0+ZGV2KTsKIAot CXByaXYtPm1kc3MgPSAmZHB1X21kc3MtPmJhc2U7Ci0KIAlyZXR1cm4gcmV0OwogCiBpcnFfZXJy b3I6Ci0tIApUaGUgUXVhbGNvbW0gSW5ub3ZhdGlvbiBDZW50ZXIsIEluYy4gaXMgYSBtZW1iZXIg b2YgdGhlIENvZGUgQXVyb3JhIEZvcnVtLAphIExpbnV4IEZvdW5kYXRpb24gQ29sbGFib3JhdGl2 ZSBQcm9qZWN0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpGcmVlZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9mcmVlZHJlbm8K