From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeykumar Sankaran Subject: [PATCH v3 5/5] drm/msm: subclass work object for vblank events Date: Thu, 15 Nov 2018 18:02:28 -0800 Message-ID: <1542333748-31226-5-git-send-email-jsanka@codeaurora.org> References: <1542333748-31226-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: <1542333748-31226-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 bXNtIG1haW50YWlucyBhIHNlcGFyYXRlIHN0cnVjdHVyZSB0byBkZWZpbmUgdmJsYW5rCndvcmsg ZGVmaW5pdGlvbnMgYW5kIGEgbGlzdCB0byB0cmFjayBldmVudHMgc3VibWl0dGVkCnRvIHRoZSB3 b3JrcXVldWUuIFdlIGNhbiBhdm9pZCB0aGlzIHJlZHVuZGFudCBsaXN0CmFuZCBpdHMgcHJvdGVj dGlvbiBtZWNoYW5pc20sIGlmIHdlIHN1YmNsYXNzIHRoZQp3b3JrIG9iamVjdCB0byBlbmNhcHN1 bGF0ZSB2YmxhbmsgZXZlbnQgcGFyYW1ldGVycy4KCmNoYW5nZXMgaW4gdjI6CgktIHN1YmNsYXNz IG9wdGltaXphdGlvbiBvbiBzeXN0ZW0gd3EgKFNlYW4gUGF1bCkKY2hhbmdlcyBpbiB2MzoKCS0g bm9uZQoKU2lnbmVkLW9mZi1ieTogSmV5a3VtYXIgU2Fua2FyYW4gPGpzYW5rYUBjb2RlYXVyb3Jh Lm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYyB8IDY1ICsrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbXNt X2Rydi5oIHwgIDcgLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgNTMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmMg Yi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYwppbmRleCA0NzhjMTRjLi4zZjkwNjRkIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL21zbV9kcnYuYwpAQCAtMjAzLDYxICsyMDMsNDQgQEAgdTMyIG1zbV9yZWFkbChj b25zdCB2b2lkIF9faW9tZW0gKmFkZHIpCiAJcmV0dXJuIHZhbDsKIH0KIAotc3RydWN0IHZibGFu a19ldmVudCB7Ci0Jc3RydWN0IGxpc3RfaGVhZCBub2RlOworc3RydWN0IG1zbV92Ymxhbmtfd29y ayB7CisJc3RydWN0IHdvcmtfc3RydWN0IHdvcms7CiAJaW50IGNydGNfaWQ7CiAJYm9vbCBlbmFi bGU7CisJc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJpdjsKIH07CiAKIHN0YXRpYyB2b2lkIHZi bGFua19jdHJsX3dvcmtlcihzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCiB7Ci0Jc3RydWN0IG1z bV92YmxhbmtfY3RybCAqdmJsX2N0cmwgPSBjb250YWluZXJfb2Yod29yaywKLQkJCQkJCXN0cnVj dCBtc21fdmJsYW5rX2N0cmwsIHdvcmspOwotCXN0cnVjdCBtc21fZHJtX3ByaXZhdGUgKnByaXYg PSBjb250YWluZXJfb2YodmJsX2N0cmwsCi0JCQkJCXN0cnVjdCBtc21fZHJtX3ByaXZhdGUsIHZi bGFua19jdHJsKTsKKwlzdHJ1Y3QgbXNtX3ZibGFua193b3JrICp2Ymxfd29yayA9IGNvbnRhaW5l cl9vZih3b3JrLAorCQkJCQkJc3RydWN0IG1zbV92Ymxhbmtfd29yaywgd29yayk7CisJc3RydWN0 IG1zbV9kcm1fcHJpdmF0ZSAqcHJpdiA9IHZibF93b3JrLT5wcml2OwogCXN0cnVjdCBtc21fa21z ICprbXMgPSBwcml2LT5rbXM7Ci0Jc3RydWN0IHZibGFua19ldmVudCAqdmJsX2V2LCAqdG1wOwot CXVuc2lnbmVkIGxvbmcgZmxhZ3M7Ci0KLQlzcGluX2xvY2tfaXJxc2F2ZSgmdmJsX2N0cmwtPmxv Y2ssIGZsYWdzKTsKLQlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUodmJsX2V2LCB0bXAsICZ2Ymxf Y3RybC0+ZXZlbnRfbGlzdCwgbm9kZSkgewotCQlsaXN0X2RlbCgmdmJsX2V2LT5ub2RlKTsKLQkJ c3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmdmJsX2N0cmwtPmxvY2ssIGZsYWdzKTsKLQotCQlpZiAo dmJsX2V2LT5lbmFibGUpCi0JCQlrbXMtPmZ1bmNzLT5lbmFibGVfdmJsYW5rKGttcywKLQkJCQkJ CXByaXYtPmNydGNzW3ZibF9ldi0+Y3J0Y19pZF0pOwotCQllbHNlCi0JCQlrbXMtPmZ1bmNzLT5k aXNhYmxlX3ZibGFuayhrbXMsCi0JCQkJCQlwcml2LT5jcnRjc1t2YmxfZXYtPmNydGNfaWRdKTsK LQotCQlrZnJlZSh2YmxfZXYpOwogCi0JCXNwaW5fbG9ja19pcnFzYXZlKCZ2YmxfY3RybC0+bG9j aywgZmxhZ3MpOwotCX0KKwlpZiAodmJsX3dvcmstPmVuYWJsZSkKKwkJa21zLT5mdW5jcy0+ZW5h YmxlX3ZibGFuayhrbXMsIHByaXYtPmNydGNzW3ZibF93b3JrLT5jcnRjX2lkXSk7CisJZWxzZQor CQlrbXMtPmZ1bmNzLT5kaXNhYmxlX3ZibGFuayhrbXMsCXByaXYtPmNydGNzW3ZibF93b3JrLT5j cnRjX2lkXSk7CiAKLQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZ2YmxfY3RybC0+bG9jaywgZmxh Z3MpOworCWtmcmVlKHZibF93b3JrKTsKIH0KIAogc3RhdGljIGludCB2YmxhbmtfY3RybF9xdWV1 ZV93b3JrKHN0cnVjdCBtc21fZHJtX3ByaXZhdGUgKnByaXYsCiAJCQkJCWludCBjcnRjX2lkLCBi b29sIGVuYWJsZSkKIHsKLQlzdHJ1Y3QgbXNtX3ZibGFua19jdHJsICp2YmxfY3RybCA9ICZwcml2 LT52YmxhbmtfY3RybDsKLQlzdHJ1Y3QgdmJsYW5rX2V2ZW50ICp2YmxfZXY7Ci0JdW5zaWduZWQg bG9uZyBmbGFnczsKKwlzdHJ1Y3QgbXNtX3ZibGFua193b3JrICp2Ymxfd29yazsKIAotCXZibF9l diA9IGt6YWxsb2Moc2l6ZW9mKCp2YmxfZXYpLCBHRlBfQVRPTUlDKTsKLQlpZiAoIXZibF9ldikK Kwl2Ymxfd29yayA9IGt6YWxsb2Moc2l6ZW9mKCp2Ymxfd29yayksIEdGUF9BVE9NSUMpOworCWlm ICghdmJsX3dvcmspCiAJCXJldHVybiAtRU5PTUVNOwogCi0JdmJsX2V2LT5jcnRjX2lkID0gY3J0 Y19pZDsKLQl2YmxfZXYtPmVuYWJsZSA9IGVuYWJsZTsKKwlJTklUX1dPUksoJnZibF93b3JrLT53 b3JrLCB2YmxhbmtfY3RybF93b3JrZXIpOwogCi0Jc3Bpbl9sb2NrX2lycXNhdmUoJnZibF9jdHJs LT5sb2NrLCBmbGFncyk7Ci0JbGlzdF9hZGRfdGFpbCgmdmJsX2V2LT5ub2RlLCAmdmJsX2N0cmwt PmV2ZW50X2xpc3QpOwotCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnZibF9jdHJsLT5sb2NrLCBm bGFncyk7CisJdmJsX3dvcmstPmNydGNfaWQgPSBjcnRjX2lkOworCXZibF93b3JrLT5lbmFibGUg PSBlbmFibGU7CisJdmJsX3dvcmstPnByaXYgPSBwcml2OwogCi0Jc2NoZWR1bGVfd29yaygmdmJs X2N0cmwtPndvcmspOworCXNjaGVkdWxlX3dvcmsoJnZibF93b3JrLT53b3JrKTsKIAogCXJldHVy biAwOwogfQpAQCAtMjY5LDE5ICsyNTIsMTIgQEAgc3RhdGljIGludCBtc21fZHJtX3VuaW5pdChz dHJ1Y3QgZGV2aWNlICpkZXYpCiAJc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJpdiA9IGRkZXYt PmRldl9wcml2YXRlOwogCXN0cnVjdCBtc21fa21zICprbXMgPSBwcml2LT5rbXM7CiAJc3RydWN0 IG1zbV9tZHNzICptZHNzID0gcHJpdi0+bWRzczsKLQlzdHJ1Y3QgbXNtX3ZibGFua19jdHJsICp2 YmxfY3RybCA9ICZwcml2LT52YmxhbmtfY3RybDsKLQlzdHJ1Y3QgdmJsYW5rX2V2ZW50ICp2Ymxf ZXYsICp0bXA7CiAJaW50IGk7CiAKIAkvKiBXZSBtdXN0IGNhbmNlbCBhbmQgY2xlYW51cCBhbnkg cGVuZGluZyB2YmxhbmsgZW5hYmxlL2Rpc2FibGUKIAkgKiB3b3JrIGJlZm9yZSBkcm1faXJxX3Vu aW5zdGFsbCgpIHRvIGF2b2lkIHdvcmsgcmUtZW5hYmxpbmcgYW4KIAkgKiBpcnEgYWZ0ZXIgdW5p bnN0YWxsIGhhcyBkaXNhYmxlZCBpdC4KIAkgKi8KLQlmbHVzaF93b3JrKCZ2YmxfY3RybC0+d29y ayk7Ci0JbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKHZibF9ldiwgdG1wLCAmdmJsX2N0cmwtPmV2 ZW50X2xpc3QsIG5vZGUpIHsKLQkJbGlzdF9kZWwoJnZibF9ldi0+bm9kZSk7Ci0JCWtmcmVlKHZi bF9ldik7Ci0JfQogCiAJLyogY2xlYW4gdXAgZXZlbnQgd29ya2VyIHRocmVhZHMgKi8KIAlmb3Ig KGkgPSAwOyBpIDwgcHJpdi0+bnVtX2NydGNzOyBpKyspIHsKQEAgLTQ2OSw5ICs0NDUsNiBAQCBz dGF0aWMgaW50IG1zbV9kcm1faW5pdChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZHJp dmVyICpkcnYpCiAJcHJpdi0+d3EgPSBhbGxvY19vcmRlcmVkX3dvcmtxdWV1ZSgibXNtIiwgMCk7 CiAKIAlJTklUX0xJU1RfSEVBRCgmcHJpdi0+aW5hY3RpdmVfbGlzdCk7Ci0JSU5JVF9MSVNUX0hF QUQoJnByaXYtPnZibGFua19jdHJsLmV2ZW50X2xpc3QpOwotCUlOSVRfV09SSygmcHJpdi0+dmJs YW5rX2N0cmwud29yaywgdmJsYW5rX2N0cmxfd29ya2VyKTsKLQlzcGluX2xvY2tfaW5pdCgmcHJp di0+dmJsYW5rX2N0cmwubG9jayk7CiAKIAlkcm1fbW9kZV9jb25maWdfaW5pdChkZGV2KTsKIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmggYi9kcml2ZXJzL2dwdS9k cm0vbXNtL21zbV9kcnYuaAppbmRleCAwNWQzM2E3Li5kNGNiZGUyIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9k cnYuaApAQCAtNzcsMTIgKzc3LDYgQEAgZW51bSBtc21fbWRwX3BsYW5lX3Byb3BlcnR5IHsKIAlQ TEFORV9QUk9QX01BWF9OVU0KIH07CiAKLXN0cnVjdCBtc21fdmJsYW5rX2N0cmwgewotCXN0cnVj dCB3b3JrX3N0cnVjdCB3b3JrOwotCXN0cnVjdCBsaXN0X2hlYWQgZXZlbnRfbGlzdDsKLQlzcGlu bG9ja190IGxvY2s7Ci19OwotCiAjZGVmaW5lIE1TTV9HUFVfTUFYX1JJTkdTIDQKICNkZWZpbmUg TUFYX0hfVElMRVNfUEVSX0RJU1BMQVkgMgogCkBAIC0yMjUsNyArMjE5LDYgQEAgc3RydWN0IG1z bV9kcm1fcHJpdmF0ZSB7CiAJc3RydWN0IG5vdGlmaWVyX2Jsb2NrIHZtYXBfbm90aWZpZXI7CiAJ c3RydWN0IHNocmlua2VyIHNocmlua2VyOwogCi0Jc3RydWN0IG1zbV92YmxhbmtfY3RybCB2Ymxh bmtfY3RybDsKIAlzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqcG1fc3RhdGU7CiB9OwogCi0tIApU aGUgUXVhbGNvbW0gSW5ub3ZhdGlvbiBDZW50ZXIsIEluYy4gaXMgYSBtZW1iZXIgb2YgdGhlIENv ZGUgQXVyb3JhIEZvcnVtLAphIExpbnV4IEZvdW5kYXRpb24gQ29sbGFib3JhdGl2ZSBQcm9qZWN0 CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpGcmVlZHJl bm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9mcmVlZHJlbm8K