From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sravanthi Kollukuduru Subject: [PATCH 2/3] drm/msm/dpu: Integrate interconnect API in MDSS Date: Mon, 8 Oct 2018 14:57:29 +0530 Message-ID: <20181008092730.1199-3-skolluku@codeaurora.org> References: <20181008092730.1199-1-skolluku@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181008092730.1199-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 bnRlcmNvbm5lY3RlZCBwYXRoLgoKU2lnbmVkLW9mZi1ieTogU3JhdmFudGhpIEtvbGx1a3VkdXJ1 IDxza29sbHVrdUBjb2RlYXVyb3JhLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfbWRzcy5jIHwgNTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0KIDEg ZmlsZSBjaGFuZ2VkLCA1MiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9tZHNzLmMgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfbWRzcy5jCmluZGV4IDIyMzVlZjgxMjlmNC4uODM5MWU1 YzFlNTU5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfbWRz cy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9tZHNzLmMKQEAgLTQs MTAgKzQsMTIgQEAKICAqLwogCiAjaW5jbHVkZSAiZHB1X2ttcy5oIgorI2luY2x1ZGUgPGxpbnV4 L2ludGVyY29ubmVjdC5oPgogCiAjZGVmaW5lIHRvX2RwdV9tZHNzKHgpIGNvbnRhaW5lcl9vZih4 LCBzdHJ1Y3QgZHB1X21kc3MsIGJhc2UpCiAKICNkZWZpbmUgSFdfSU5UUl9TVEFUVVMJCQkweDAw MTAKKyNkZWZpbmUgTUFYX0FYSV9QT1JUX0NPVU5UIDMKIAogc3RydWN0IGRwdV9tZHNzIHsKIAlz dHJ1Y3QgbXNtX21kc3MgYmFzZTsKQEAgLTE2LDggKzE4LDM2IEBAIHN0cnVjdCBkcHVfbWRzcyB7 CiAJdTMyIGh3dmVyc2lvbjsKIAlzdHJ1Y3QgZHNzX21vZHVsZV9wb3dlciBtcDsKIAlzdHJ1Y3Qg ZHB1X2lycV9jb250cm9sbGVyIGlycV9jb250cm9sbGVyOworCXN0cnVjdCBpY2NfcGF0aCAqcGF0 aFtNQVhfQVhJX1BPUlRfQ09VTlRdOworCXUzMiBudW1fcGF0aHM7CiB9OwogCitzdGF0aWMgaW50 IGRwdV9tZHNzX3BhcnNlX2RhdGFfYnVzX2ljY19wYXRoKAorCQlzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LCBzdHJ1Y3QgZHB1X21kc3MgKmRwdV9tZHNzKQoreworCXN0cnVjdCBpY2NfcGF0aCAqcGF0 aDAgPSBvZl9pY2NfZ2V0KGRldi0+ZGV2LCAicG9ydDAiKTsKKwlzdHJ1Y3QgaWNjX3BhdGggKnBh dGgxID0gb2ZfaWNjX2dldChkZXYtPmRldiwgInBvcnQxIik7CisJaW50IHRvdGFsX251bV9wYXRo cyAgPSAwOworCisJaWYgKElTX0VSUihwYXRoMCkpCisJCXJldHVybiBQVFJfRVJSKHBhdGgwKTsK KworCWRwdV9tZHNzLT5wYXRoWzBdID0gcGF0aDA7CisJdG90YWxfbnVtX3BhdGhzID0gMTsKKwor CWlmICghSVNfRVJSKHBhdGgxKSkgeworCQlkcHVfbWRzcy0+cGF0aFsxXSA9IHBhdGgxOworCQl0 b3RhbF9udW1fcGF0aHMrKzsKKwl9CisKKwlpZiAodG90YWxfbnVtX3BhdGhzICA+IE1BWF9BWElf UE9SVF9DT1VOVCkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlkcHVfbWRzcy0+bnVtX3BhdGhzID0g dG90YWxfbnVtX3BhdGhzOworCisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpcnFyZXR1cm5fdCBk cHVfbWRzc19pcnEoaW50IGlycSwgdm9pZCAqYXJnKQogewogCXN0cnVjdCBkcHVfbWRzcyAqZHB1 X21kc3MgPSBhcmc7CkBAIC0xMjcsNyArMTU3LDEyIEBAIHN0YXRpYyBpbnQgZHB1X21kc3NfZW5h YmxlKHN0cnVjdCBtc21fbWRzcyAqbWRzcykKIHsKIAlzdHJ1Y3QgZHB1X21kc3MgKmRwdV9tZHNz ID0gdG9fZHB1X21kc3MobWRzcyk7CiAJc3RydWN0IGRzc19tb2R1bGVfcG93ZXIgKm1wID0gJmRw dV9tZHNzLT5tcDsKLQlpbnQgcmV0OworCWludCByZXQsIGk7CisJdTY0IGFiID0gKGRwdV9tZHNz LT5udW1fcGF0aHMpID8gNjgwMDAwMDAwMC9kcHVfbWRzcy0+bnVtX3BhdGhzIDogMDsKKwl1NjQg aWIgPSA2ODAwMDAwMDAwOworCisJZm9yIChpID0gMDsgaSA8IGRwdV9tZHNzLT5udW1fcGF0aHM7 IGkrKykKKwkJaWNjX3NldChkcHVfbWRzcy0+cGF0aFtpXSwgYWIsIGliKTsKIAogCXJldCA9IG1z bV9kc3NfZW5hYmxlX2NsayhtcC0+Y2xrX2NvbmZpZywgbXAtPm51bV9jbGssIHRydWUpOwogCWlm IChyZXQpCkBAIC0xNDAsMTIgKzE3NSwxNSBAQCBzdGF0aWMgaW50IGRwdV9tZHNzX2Rpc2FibGUo c3RydWN0IG1zbV9tZHNzICptZHNzKQogewogCXN0cnVjdCBkcHVfbWRzcyAqZHB1X21kc3MgPSB0 b19kcHVfbWRzcyhtZHNzKTsKIAlzdHJ1Y3QgZHNzX21vZHVsZV9wb3dlciAqbXAgPSAmZHB1X21k c3MtPm1wOwotCWludCByZXQ7CisJaW50IHJldCwgaTsKIAogCXJldCA9IG1zbV9kc3NfZW5hYmxl X2NsayhtcC0+Y2xrX2NvbmZpZywgbXAtPm51bV9jbGssIGZhbHNlKTsKIAlpZiAocmV0KQogCQlE UFVfRVJST1IoImNsb2NrIGRpc2FibGUgZmFpbGVkLCByZXQ6JWRcbiIsIHJldCk7CiAKKwlmb3Ig KGkgPSAwOyBpIDwgZHB1X21kc3MtPm51bV9wYXRoczsgaSsrKQorCQlpY2Nfc2V0KGRwdV9tZHNz LT5wYXRoW2ldLCAwLCAwKTsKKwogCXJldHVybiByZXQ7CiB9CiAKQEAgLTE1NSw2ICsxOTMsNyBA QCBzdGF0aWMgdm9pZCBkcHVfbWRzc19kZXN0cm95KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJ c3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAJc3RydWN0 IGRwdV9tZHNzICpkcHVfbWRzcyA9IHRvX2RwdV9tZHNzKHByaXYtPm1kc3MpOwogCXN0cnVjdCBk c3NfbW9kdWxlX3Bvd2VyICptcCA9ICZkcHVfbWRzcy0+bXA7CisJaW50IGk7CiAKIAlfZHB1X21k c3NfaXJxX2RvbWFpbl9maW5pKGRwdV9tZHNzKTsKIApAQCAtMTYzLDYgKzIwMiw5IEBAIHN0YXRp YyB2b2lkIGRwdV9tZHNzX2Rlc3Ryb3koc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAltc21fZHNz X3B1dF9jbGsobXAtPmNsa19jb25maWcsIG1wLT5udW1fY2xrKTsKIAlkZXZtX2tmcmVlKCZwZGV2 LT5kZXYsIG1wLT5jbGtfY29uZmlnKTsKIAorCWZvciAoaSA9IDA7IGkgPCBkcHVfbWRzcy0+bnVt X3BhdGhzOyBpKyspCisJCWljY19wdXQoZHB1X21kc3MtPnBhdGhbaV0pOworCiAJaWYgKGRwdV9t ZHNzLT5tbWlvKQogCQlkZXZtX2lvdW5tYXAoJnBkZXYtPmRldiwgZHB1X21kc3MtPm1taW8pOwog CWRwdV9tZHNzLT5tbWlvID0gTlVMTDsKQEAgLTIwMyw2ICsyNDUsMTIgQEAgaW50IGRwdV9tZHNz X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAl9CiAJZHB1X21kc3MtPm1taW9fbGVuID0g cmVzb3VyY2Vfc2l6ZShyZXMpOwogCisJcmV0ID0gZHB1X21kc3NfcGFyc2VfZGF0YV9idXNfaWNj X3BhdGgoZGV2LCBkcHVfbWRzcyk7CisJaWYgKHJldCkgeworCQlEUFVfRVJST1IoImZhaWxlZCB0 byBwYXJzZSBpY2MgcGF0aCwgcmV0PSVkXG4iLCByZXQpOworCQlyZXR1cm4gcmV0OworCX0KKwog CW1wID0gJmRwdV9tZHNzLT5tcDsKIAlyZXQgPSBtc21fZHNzX3BhcnNlX2Nsb2NrKHBkZXYsIG1w KTsKIAlpZiAocmV0KSB7CkBAIC0yMjQsMTQgKzI3MiwxNCBAQCBpbnQgZHB1X21kc3NfaW5pdChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQlnb3RvIGlycV9lcnJvcjsKIAl9CiAKKwlwcml2LT5t ZHNzID0gJmRwdV9tZHNzLT5iYXNlOworCiAJcG1fcnVudGltZV9lbmFibGUoZGV2LT5kZXYpOwog CiAJcG1fcnVudGltZV9nZXRfc3luYyhkZXYtPmRldik7CiAJZHB1X21kc3MtPmh3dmVyc2lvbiA9 IHJlYWRsX3JlbGF4ZWQoZHB1X21kc3MtPm1taW8pOwogCXBtX3J1bnRpbWVfcHV0X3N5bmMoZGV2 LT5kZXYpOwogCi0JcHJpdi0+bWRzcyA9ICZkcHVfbWRzcy0+YmFzZTsKLQogCXJldHVybiByZXQ7 CiAKIGlycV9lcnJvcjoKLS0gClRoZSBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRlciwgSW5jLiBp cyBhIG1lbWJlciBvZiB0aGUgQ29kZSBBdXJvcmEgRm9ydW0sCmEgTGludXggRm91bmRhdGlvbiBD b2xsYWJvcmF0aXZlIFByb2plY3QKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxpc3QKRnJlZWRyZW5vQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ZyZWVkcmVubwo=