From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rob Clark Subject: [PATCH 3/9] drm/msm/dpu: handle_frame_done() from vblank irq Date: Tue, 27 Aug 2019 14:33:33 -0700 Message-ID: <20190827213421.21917-4-robdclark@gmail.com> References: <20190827213421.21917-1-robdclark@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190827213421.21917-1-robdclark-Re5JQEeQqe8AvxtiuMwx3w@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 Cc: Rob Clark , "open list:DRM DRIVER FOR MSM ADRENO GPU" , David Airlie , "open list:DRM DRIVER FOR MSM ADRENO GPU" , Jordan Crouse , open list , Bruce Wang , Rob Clark , Daniel Vetter , Jeykumar Sankaran , Sean Paul , Thomas Gleixner , Sravanthi Kollukuduru List-Id: dri-devel@lists.freedesktop.org RnJvbTogUm9iIENsYXJrIDxyb2JkY2xhcmtAY2hyb21pdW0ub3JnPgoKUHJldmlvdXNseSB0aGUg Y2FsbGJhY2sgd2FzIGNhbGxlZCBmcm9tIHdob2V2ZXIgY2FsbGVkIHdhaXRfZm9yX3ZibGFuaygp LApidXQgdGhhdCBpc24ndCBhIGdyZWF0IHBsYW4gd2hlbiB3YWl0X2Zvcl92YmxhbmsoKSBzdG9w cyBnZXR0aW5nIGNhbGxlZCwKYW5kIHJlc3VsdHMgaW4gZnJhbWVfZG9uZV90aW1lciBleHBpcmlu Zy4KClNpZ25lZC1vZmYtYnk6IFJvYiBDbGFyayA8cm9iZGNsYXJrQGNocm9taXVtLm9yZz4KLS0t CiBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfY3J0Yy5jICAgICAgfCAgNyArLS0t LS0KIC4uLi9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlcl9waHlzX3ZpZC5jICB8IDI1ICsr KysrKy0tLS0tLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAyMyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2NydGMuYwppbmRl eCBjM2Y3MTU0MDE3YzQuLmU3MzU0YWVmOTgwNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L21zbS9kaXNwL2RwdTEvZHB1X2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfY3J0Yy5jCkBAIC0zMTEsMTIgKzMxMSw3IEBAIHN0YXRpYyB2b2lkIGRwdV9jcnRj X2ZyYW1lX2V2ZW50X3dvcmsoc3RydWN0IGt0aHJlYWRfd29yayAqd29yaykKIAkJCQl8IERQVV9F TkNPREVSX0ZSQU1FX0VWRU5UX1BBTkVMX0RFQUQpKSB7CiAKIAkJaWYgKGF0b21pY19yZWFkKCZk cHVfY3J0Yy0+ZnJhbWVfcGVuZGluZykgPCAxKSB7Ci0JCQkvKiB0aGlzIHNob3VsZCBub3QgaGFw cGVuICovCi0JCQlEUk1fRVJST1IoImNydGMlZCBldjoldSB0czolbGxkIGZyYW1lX3BlbmRpbmc6 JWRcbiIsCi0JCQkJCWNydGMtPmJhc2UuaWQsCi0JCQkJCWZldmVudC0+ZXZlbnQsCi0JCQkJCWt0 aW1lX3RvX25zKGZldmVudC0+dHMpLAotCQkJCQlhdG9taWNfcmVhZCgmZHB1X2NydGMtPmZyYW1l X3BlbmRpbmcpKTsKKwkJCS8qIGlnbm9yZSB2Ymxhbmsgd2hlbiBub3QgcGVuZGluZyAqLwogCQl9 IGVsc2UgaWYgKGF0b21pY19kZWNfcmV0dXJuKCZkcHVfY3J0Yy0+ZnJhbWVfcGVuZGluZykgPT0g MCkgewogCQkJLyogcmVsZWFzZSBiYW5kd2lkdGggYW5kIG90aGVyIHJlc291cmNlcyAqLwogCQkJ dHJhY2VfZHB1X2NydGNfZnJhbWVfZXZlbnRfZG9uZShEUk1JRChjcnRjKSwKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXNfdmlkLmMgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlcl9waHlzX3ZpZC5jCmluZGV4 IDdjNzNiMDk4OTRmMC4uYjljODRmYjRkNGExIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v bXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlcl9waHlzX3ZpZC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXNfdmlkLmMKQEAgLTMyNCw2ICszMjQsMTAg QEAgc3RhdGljIHZvaWQgZHB1X2VuY29kZXJfcGh5c192aWRfdmJsYW5rX2lycSh2b2lkICphcmcs IGludCBpcnFfaWR4KQogCiAJLyogU2lnbmFsIGFueSB3YWl0aW5nIGF0b21pYyBjb21taXQgdGhy ZWFkICovCiAJd2FrZV91cF9hbGwoJnBoeXNfZW5jLT5wZW5kaW5nX2tpY2tvZmZfd3EpOworCisJ cGh5c19lbmMtPnBhcmVudF9vcHMtPmhhbmRsZV9mcmFtZV9kb25lKHBoeXNfZW5jLT5wYXJlbnQs IHBoeXNfZW5jLAorCQkJRFBVX0VOQ09ERVJfRlJBTUVfRVZFTlRfRE9ORSk7CisKIAlEUFVfQVRS QUNFX0VORCgidmJsYW5rX2lycSIpOwogfQogCkBAIC00ODMsOCArNDg3LDggQEAgc3RhdGljIHZv aWQgZHB1X2VuY29kZXJfcGh5c192aWRfZ2V0X2h3X3Jlc291cmNlcygKIAlod19yZXMtPmludGZz W3BoeXNfZW5jLT5pbnRmX2lkeCAtIElOVEZfMF0gPSBJTlRGX01PREVfVklERU87CiB9CiAKLXN0 YXRpYyBpbnQgX2RwdV9lbmNvZGVyX3BoeXNfdmlkX3dhaXRfZm9yX3ZibGFuaygKLQkJc3RydWN0 IGRwdV9lbmNvZGVyX3BoeXMgKnBoeXNfZW5jLCBib29sIG5vdGlmeSkKK3N0YXRpYyBpbnQgZHB1 X2VuY29kZXJfcGh5c192aWRfd2FpdF9mb3JfdmJsYW5rKAorCQlzdHJ1Y3QgZHB1X2VuY29kZXJf cGh5cyAqcGh5c19lbmMpCiB7CiAJc3RydWN0IGRwdV9lbmNvZGVyX3dhaXRfaW5mbyB3YWl0X2lu Zm87CiAJaW50IHJldDsKQEAgLTQ5OSwxMCArNTAzLDYgQEAgc3RhdGljIGludCBfZHB1X2VuY29k ZXJfcGh5c192aWRfd2FpdF9mb3JfdmJsYW5rKAogCXdhaXRfaW5mby50aW1lb3V0X21zID0gS0lD S09GRl9USU1FT1VUX01TOwogCiAJaWYgKCFkcHVfZW5jb2Rlcl9waHlzX3ZpZF9pc19tYXN0ZXIo cGh5c19lbmMpKSB7Ci0JCWlmIChub3RpZnkgJiYgcGh5c19lbmMtPnBhcmVudF9vcHMtPmhhbmRs ZV9mcmFtZV9kb25lKQotCQkJcGh5c19lbmMtPnBhcmVudF9vcHMtPmhhbmRsZV9mcmFtZV9kb25l KAotCQkJCQlwaHlzX2VuYy0+cGFyZW50LCBwaHlzX2VuYywKLQkJCQkJRFBVX0VOQ09ERVJfRlJB TUVfRVZFTlRfRE9ORSk7CiAJCXJldHVybiAwOwogCX0KIApAQCAtNTEyLDIwICs1MTIsMTEgQEAg c3RhdGljIGludCBfZHB1X2VuY29kZXJfcGh5c192aWRfd2FpdF9mb3JfdmJsYW5rKAogCiAJaWYg KHJldCA9PSAtRVRJTUVET1VUKSB7CiAJCWRwdV9lbmNvZGVyX2hlbHBlcl9yZXBvcnRfaXJxX3Rp bWVvdXQocGh5c19lbmMsIElOVFJfSURYX1ZTWU5DKTsKLQl9IGVsc2UgaWYgKCFyZXQgJiYgbm90 aWZ5ICYmIHBoeXNfZW5jLT5wYXJlbnRfb3BzLT5oYW5kbGVfZnJhbWVfZG9uZSkKLQkJcGh5c19l bmMtPnBhcmVudF9vcHMtPmhhbmRsZV9mcmFtZV9kb25lKAotCQkJCXBoeXNfZW5jLT5wYXJlbnQs IHBoeXNfZW5jLAotCQkJCURQVV9FTkNPREVSX0ZSQU1FX0VWRU5UX0RPTkUpOworCX0KIAogCXJl dHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgZHB1X2VuY29kZXJfcGh5c192aWRfd2FpdF9mb3Jf dmJsYW5rKAotCQlzdHJ1Y3QgZHB1X2VuY29kZXJfcGh5cyAqcGh5c19lbmMpCi17Ci0JcmV0dXJu IF9kcHVfZW5jb2Rlcl9waHlzX3ZpZF93YWl0X2Zvcl92YmxhbmsocGh5c19lbmMsIHRydWUpOwot fQotCiBzdGF0aWMgaW50IGRwdV9lbmNvZGVyX3BoeXNfdmlkX3dhaXRfZm9yX2NvbW1pdF9kb25l KAogCQlzdHJ1Y3QgZHB1X2VuY29kZXJfcGh5cyAqcGh5c19lbmMpCiB7CkBAIC02MTUsNyArNjA2 LDcgQEAgc3RhdGljIHZvaWQgZHB1X2VuY29kZXJfcGh5c192aWRfZGlzYWJsZShzdHJ1Y3QgZHB1 X2VuY29kZXJfcGh5cyAqcGh5c19lbmMpCiAJICogc2Nhbm91dCBidWZmZXIpIGRvbid0IGxhdGNo IHByb3Blcmx5Li4KIAkgKi8KIAlpZiAoZHB1X2VuY29kZXJfcGh5c192aWRfaXNfbWFzdGVyKHBo eXNfZW5jKSkgewotCQlyZXQgPSBfZHB1X2VuY29kZXJfcGh5c192aWRfd2FpdF9mb3JfdmJsYW5r KHBoeXNfZW5jLCBmYWxzZSk7CisJCXJldCA9IGRwdV9lbmNvZGVyX3BoeXNfdmlkX3dhaXRfZm9y X3ZibGFuayhwaHlzX2VuYyk7CiAJCWlmIChyZXQpIHsKIAkJCWF0b21pY19zZXQoJnBoeXNfZW5j LT5wZW5kaW5nX2tpY2tvZmZfY250LCAwKTsKIAkJCURSTV9FUlJPUigid2FpdCBkaXNhYmxlIGZh aWxlZDogaWQ6JXUgaW50ZjolZCByZXQ6JWRcbiIsCi0tIAoyLjIxLjAKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxpc3QK RnJlZWRyZW5vQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZyZWVkcmVubw==