From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeykumar Sankaran Subject: [PATCH v2 5/5] drm/msm: subclass work object for vblank events Date: Tue, 6 Nov 2018 14:36:30 -0800 Message-ID: <1541543790-748-5-git-send-email-jsanka@codeaurora.org> References: <1541543790-748-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: <1541543790-748-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 IG9wdGltaXphdGlvbiBvbiBzeXN0ZW0gd3EgKFNlYW4gUGF1bCkKClNpZ25lZC1vZmYtYnk6IEpl eWt1bWFyIFNhbmthcmFuIDxqc2Fua2FAY29kZWF1cm9yYS5vcmc+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL21zbS9tc21fZHJ2LmMgfCA2NyArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuaCB8ICA3IC0tLS0tCiAyIGZp bGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDU0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9t c21fZHJ2LmMKaW5kZXggNmQ2YzczYi4uOGRhNWJlMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL21zbS9tc21fZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmMKQEAg LTIwMyw2MSArMjAzLDQ0IEBAIHUzMiBtc21fcmVhZGwoY29uc3Qgdm9pZCBfX2lvbWVtICphZGRy KQogCXJldHVybiB2YWw7CiB9CiAKLXN0cnVjdCB2YmxhbmtfZXZlbnQgewotCXN0cnVjdCBsaXN0 X2hlYWQgbm9kZTsKK3N0cnVjdCBtc21fdmJsYW5rX3dvcmsgeworCXN0cnVjdCB3b3JrX3N0cnVj dCB3b3JrOwogCWludCBjcnRjX2lkOwogCWJvb2wgZW5hYmxlOworCXN0cnVjdCBtc21fZHJtX3By aXZhdGUgKnByaXY7CiB9OwogCiBzdGF0aWMgdm9pZCB2YmxhbmtfY3RybF93b3JrZXIoc3RydWN0 IHdvcmtfc3RydWN0ICp3b3JrKQogewotCXN0cnVjdCBtc21fdmJsYW5rX2N0cmwgKnZibF9jdHJs ID0gY29udGFpbmVyX29mKHdvcmssCi0JCQkJCQlzdHJ1Y3QgbXNtX3ZibGFua19jdHJsLCB3b3Jr KTsKLQlzdHJ1Y3QgbXNtX2RybV9wcml2YXRlICpwcml2ID0gY29udGFpbmVyX29mKHZibF9jdHJs LAotCQkJCQlzdHJ1Y3QgbXNtX2RybV9wcml2YXRlLCB2YmxhbmtfY3RybCk7CisJc3RydWN0IG1z bV92Ymxhbmtfd29yayAqdmJsX3dvcmsgPSBjb250YWluZXJfb2Yod29yaywKKwkJCQkJCXN0cnVj dCBtc21fdmJsYW5rX3dvcmssIHdvcmspOworCXN0cnVjdCBtc21fZHJtX3ByaXZhdGUgKnByaXYg PSB2Ymxfd29yay0+cHJpdjsKIAlzdHJ1Y3QgbXNtX2ttcyAqa21zID0gcHJpdi0+a21zOwotCXN0 cnVjdCB2YmxhbmtfZXZlbnQgKnZibF9ldiwgKnRtcDsKLQl1bnNpZ25lZCBsb25nIGZsYWdzOwot Ci0Jc3Bpbl9sb2NrX2lycXNhdmUoJnZibF9jdHJsLT5sb2NrLCBmbGFncyk7Ci0JbGlzdF9mb3Jf ZWFjaF9lbnRyeV9zYWZlKHZibF9ldiwgdG1wLCAmdmJsX2N0cmwtPmV2ZW50X2xpc3QsIG5vZGUp IHsKLQkJbGlzdF9kZWwoJnZibF9ldi0+bm9kZSk7Ci0JCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JnZibF9jdHJsLT5sb2NrLCBmbGFncyk7Ci0KLQkJaWYgKHZibF9ldi0+ZW5hYmxlKQotCQkJa21z LT5mdW5jcy0+ZW5hYmxlX3ZibGFuayhrbXMsCi0JCQkJCQlwcml2LT5jcnRjc1t2YmxfZXYtPmNy dGNfaWRdKTsKLQkJZWxzZQotCQkJa21zLT5mdW5jcy0+ZGlzYWJsZV92Ymxhbmsoa21zLAotCQkJ CQkJcHJpdi0+Y3J0Y3NbdmJsX2V2LT5jcnRjX2lkXSk7CiAKLQkJa2ZyZWUodmJsX2V2KTsKLQot CQlzcGluX2xvY2tfaXJxc2F2ZSgmdmJsX2N0cmwtPmxvY2ssIGZsYWdzKTsKLQl9CisJaWYgKHZi bF93b3JrLT5lbmFibGUpCisJCWttcy0+ZnVuY3MtPmVuYWJsZV92Ymxhbmsoa21zLCBwcml2LT5j cnRjc1t2Ymxfd29yay0+Y3J0Y19pZF0pOworCWVsc2UKKwkJa21zLT5mdW5jcy0+ZGlzYWJsZV92 Ymxhbmsoa21zLAlwcml2LT5jcnRjc1t2Ymxfd29yay0+Y3J0Y19pZF0pOwogCi0Jc3Bpbl91bmxv Y2tfaXJxcmVzdG9yZSgmdmJsX2N0cmwtPmxvY2ssIGZsYWdzKTsKKwlrZnJlZSh2Ymxfd29yayk7 CiB9CiAKIHN0YXRpYyBpbnQgdmJsYW5rX2N0cmxfcXVldWVfd29yayhzdHJ1Y3QgbXNtX2RybV9w cml2YXRlICpwcml2LAogCQkJCQlpbnQgY3J0Y19pZCwgYm9vbCBlbmFibGUpCiB7Ci0Jc3RydWN0 IG1zbV92YmxhbmtfY3RybCAqdmJsX2N0cmwgPSAmcHJpdi0+dmJsYW5rX2N0cmw7Ci0Jc3RydWN0 IHZibGFua19ldmVudCAqdmJsX2V2OwotCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CisJc3RydWN0IG1z bV92Ymxhbmtfd29yayAqdmJsX3dvcms7CiAKLQl2YmxfZXYgPSBremFsbG9jKHNpemVvZigqdmJs X2V2KSwgR0ZQX0FUT01JQyk7Ci0JaWYgKCF2YmxfZXYpCisJdmJsX3dvcmsgPSBremFsbG9jKHNp emVvZigqdmJsX3dvcmspLCBHRlBfQVRPTUlDKTsKKwlpZiAoIXZibF93b3JrKQogCQlyZXR1cm4g LUVOT01FTTsKIAotCXZibF9ldi0+Y3J0Y19pZCA9IGNydGNfaWQ7Ci0JdmJsX2V2LT5lbmFibGUg PSBlbmFibGU7CisJSU5JVF9XT1JLKCZ2Ymxfd29yay0+d29yaywgdmJsYW5rX2N0cmxfd29ya2Vy KTsKIAotCXNwaW5fbG9ja19pcnFzYXZlKCZ2YmxfY3RybC0+bG9jaywgZmxhZ3MpOwotCWxpc3Rf YWRkX3RhaWwoJnZibF9ldi0+bm9kZSwgJnZibF9jdHJsLT5ldmVudF9saXN0KTsKLQlzcGluX3Vu bG9ja19pcnFyZXN0b3JlKCZ2YmxfY3RybC0+bG9jaywgZmxhZ3MpOworCXZibF93b3JrLT5jcnRj X2lkID0gY3J0Y19pZDsKKwl2Ymxfd29yay0+ZW5hYmxlID0gZW5hYmxlOworCXZibF93b3JrLT5w cml2ID0gcHJpdjsKIAotCXNjaGVkdWxlX3dvcmsoJnZibF9jdHJsLT53b3JrKTsKKwlzY2hlZHVs ZV93b3JrKCZ2Ymxfd29yay0+d29yayk7CiAKIAlyZXR1cm4gMDsKIH0KQEAgLTI2OSwxNCArMjUy LDEzIEBAIHN0YXRpYyBpbnQgbXNtX2RybV91bmluaXQoc3RydWN0IGRldmljZSAqZGV2KQogCXN0 cnVjdCBtc21fZHJtX3ByaXZhdGUgKnByaXYgPSBkZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1Y3Qg bXNtX2ttcyAqa21zID0gcHJpdi0+a21zOwogCXN0cnVjdCBtc21fbWRzcyAqbWRzcyA9IHByaXYt Pm1kc3M7Ci0Jc3RydWN0IG1zbV92YmxhbmtfY3RybCAqdmJsX2N0cmwgPSAmcHJpdi0+dmJsYW5r X2N0cmw7Ci0Jc3RydWN0IHZibGFua19ldmVudCAqdmJsX2V2LCAqdG1wOwogCWludCBpOwogCiAJ LyogV2UgbXVzdCBjYW5jZWwgYW5kIGNsZWFudXAgYW55IHBlbmRpbmcgdmJsYW5rIGVuYWJsZS9k aXNhYmxlCiAJICogd29yayBiZWZvcmUgZHJtX2lycV91bmluc3RhbGwoKSB0byBhdm9pZCB3b3Jr IHJlLWVuYWJsaW5nIGFuCiAJICogaXJxIGFmdGVyIHVuaW5zdGFsbCBoYXMgZGlzYWJsZWQgaXQu CiAJICovCisKIAltc21fZ2VtX3Nocmlua2VyX2NsZWFudXAoZGRldik7CiAKIAlkcm1fa21zX2hl bHBlcl9wb2xsX2ZpbmkoZGRldik7CkBAIC0yOTIsMTIgKzI3NCw2IEBAIHN0YXRpYyBpbnQgbXNt X2RybV91bmluaXQoc3RydWN0IGRldmljZSAqZGV2KQogI2VuZGlmCiAJZHJtX21vZGVfY29uZmln X2NsZWFudXAoZGRldik7CiAKLQlmbHVzaF93b3JrKCZ2YmxfY3RybC0+d29yayk7Ci0JbGlzdF9m b3JfZWFjaF9lbnRyeV9zYWZlKHZibF9ldiwgdG1wLCAmdmJsX2N0cmwtPmV2ZW50X2xpc3QsIG5v ZGUpIHsKLQkJbGlzdF9kZWwoJnZibF9ldi0+bm9kZSk7Ci0JCWtmcmVlKHZibF9ldik7Ci0JfQot CiAJLyogY2xlYW4gdXAgZXZlbnQgd29ya2VyIHRocmVhZHMgKi8KIAlmb3IgKGkgPSAwOyBpIDwg cHJpdi0+bnVtX2NydGNzOyBpKyspIHsKIAkJaWYgKHByaXYtPmV2ZW50X3RocmVhZFtpXS50aHJl YWQpIHsKQEAgLTQ2OSw5ICs0NDUsNiBAQCBzdGF0aWMgaW50IG1zbV9kcm1faW5pdChzdHJ1Y3Qg ZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZHJpdmVyICpkcnYpCiAJcHJpdi0+d3EgPSBhbGxvY19v cmRlcmVkX3dvcmtxdWV1ZSgibXNtIiwgMCk7CiAKIAlJTklUX0xJU1RfSEVBRCgmcHJpdi0+aW5h Y3RpdmVfbGlzdCk7Ci0JSU5JVF9MSVNUX0hFQUQoJnByaXYtPnZibGFua19jdHJsLmV2ZW50X2xp c3QpOwotCUlOSVRfV09SSygmcHJpdi0+dmJsYW5rX2N0cmwud29yaywgdmJsYW5rX2N0cmxfd29y a2VyKTsKLQlzcGluX2xvY2tfaW5pdCgmcHJpdi0+dmJsYW5rX2N0cmwubG9jayk7CiAKIAlkcm1f bW9kZV9jb25maWdfaW5pdChkZGV2KTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21z bS9tc21fZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuaAppbmRleCAwNWQzM2E3 Li5kNGNiZGUyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuaApAQCAtNzcsMTIgKzc3LDYgQEAgZW51bSBt c21fbWRwX3BsYW5lX3Byb3BlcnR5IHsKIAlQTEFORV9QUk9QX01BWF9OVU0KIH07CiAKLXN0cnVj dCBtc21fdmJsYW5rX2N0cmwgewotCXN0cnVjdCB3b3JrX3N0cnVjdCB3b3JrOwotCXN0cnVjdCBs aXN0X2hlYWQgZXZlbnRfbGlzdDsKLQlzcGlubG9ja190IGxvY2s7Ci19OwotCiAjZGVmaW5lIE1T TV9HUFVfTUFYX1JJTkdTIDQKICNkZWZpbmUgTUFYX0hfVElMRVNfUEVSX0RJU1BMQVkgMgogCkBA IC0yMjUsNyArMjE5LDYgQEAgc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSB7CiAJc3RydWN0IG5vdGlm aWVyX2Jsb2NrIHZtYXBfbm90aWZpZXI7CiAJc3RydWN0IHNocmlua2VyIHNocmlua2VyOwogCi0J c3RydWN0IG1zbV92YmxhbmtfY3RybCB2YmxhbmtfY3RybDsKIAlzdHJ1Y3QgZHJtX2F0b21pY19z dGF0ZSAqcG1fc3RhdGU7CiB9OwogCi0tIApUaGUgUXVhbGNvbW0gSW5ub3ZhdGlvbiBDZW50ZXIs IEluYy4gaXMgYSBtZW1iZXIgb2YgdGhlIENvZGUgQXVyb3JhIEZvcnVtLAphIExpbnV4IEZvdW5k YXRpb24gQ29sbGFib3JhdGl2ZSBQcm9qZWN0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpGcmVlZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9mcmVlZHJlbm8K