From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christian Gmeiner Subject: [PATCH V5 01/25] drm/etnaviv: use bitmap to keep track of events Date: Sun, 24 Sep 2017 15:15:19 +0200 Message-ID: <20170924131543.4066-2-christian.gmeiner@gmail.com> References: <20170924131543.4066-1-christian.gmeiner@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170924131543.4066-1-christian.gmeiner@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: linux+etnaviv@armlinux.org.uk, etnaviv@lists.freedesktop.org, cphealy@gmail.com List-Id: dri-devel@lists.freedesktop.org VGhpcyBpcyBwcmVwIHdvcmsgdG8gYmUgYWJsZSB0byBhbGxvY2F0ZSBtdWx0aXBsZSBldmVudHMg aW4gb25lIGdvLgoKU2lnbmVkLW9mZi1ieTogQ2hyaXN0aWFuIEdtZWluZXIgPGNocmlzdGlhbi5n bWVpbmVyQGdtYWlsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZXRuYXZpdi9ldG5hdml2X2dw dS5jIHwgMzEgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJt L2V0bmF2aXYvZXRuYXZpdl9ncHUuaCB8ICA2ICsrKystLQogMiBmaWxlcyBjaGFuZ2VkLCAxNyBp bnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vZXRuYXZpdi9ldG5hdml2X2dwdS5jIGIvZHJpdmVycy9ncHUvZHJtL2V0bmF2aXYvZXRuYXZp dl9ncHUuYwppbmRleCBhZGE0NWZkZDBlYWUuLmZhOWM3YmQ5OGU5YyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2V0bmF2aXYvZXRuYXZpdl9ncHUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v ZXRuYXZpdi9ldG5hdml2X2dwdS5jCkBAIC03MzksMTAgKzczOSw5IEBAIGludCBldG5hdml2X2dw dV9pbml0KHN0cnVjdCBldG5hdml2X2dwdSAqZ3B1KQogCS8qIFNldHVwIGV2ZW50IG1hbmFnZW1l bnQgKi8KIAlzcGluX2xvY2tfaW5pdCgmZ3B1LT5ldmVudF9zcGlubG9jayk7CiAJaW5pdF9jb21w bGV0aW9uKCZncHUtPmV2ZW50X2ZyZWUpOwotCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGdw dS0+ZXZlbnQpOyBpKyspIHsKLQkJZ3B1LT5ldmVudFtpXS51c2VkID0gZmFsc2U7CisJYml0bWFw X3plcm8oZ3B1LT5ldmVudF9iaXRtYXAsIEVUTkFfTlJfRVZFTlRTKTsKKwlmb3IgKGkgPSAwOyBp IDwgQVJSQVlfU0laRShncHUtPmV2ZW50KTsgaSsrKQogCQljb21wbGV0ZSgmZ3B1LT5ldmVudF9m cmVlKTsKLQl9CiAKIAkvKiBOb3cgcHJvZ3JhbSB0aGUgaGFyZHdhcmUgKi8KIAltdXRleF9sb2Nr KCZncHUtPmxvY2spOwpAQCAtOTI2LDcgKzkyNSw3IEBAIHN0YXRpYyB2b2lkIHJlY292ZXJfd29y a2VyKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKIAlzdHJ1Y3QgZXRuYXZpdl9ncHUgKmdwdSA9 IGNvbnRhaW5lcl9vZih3b3JrLCBzdHJ1Y3QgZXRuYXZpdl9ncHUsCiAJCQkJCSAgICAgICByZWNv dmVyX3dvcmspOwogCXVuc2lnbmVkIGxvbmcgZmxhZ3M7Ci0JdW5zaWduZWQgaW50IGk7CisJdW5z aWduZWQgaW50IGkgPSAwOwogCiAJZGV2X2VycihncHUtPmRldiwgImhhbmdjaGVjayByZWNvdmVy IVxuIik7CiAKQEAgLTk0NSwxNCArOTQ0LDEyIEBAIHN0YXRpYyB2b2lkIHJlY292ZXJfd29ya2Vy KHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKIAogCS8qIGNvbXBsZXRlIGFsbCBldmVudHMsIHRo ZSBHUFUgd29uJ3QgZG8gaXQgYWZ0ZXIgdGhlIHJlc2V0ICovCiAJc3Bpbl9sb2NrX2lycXNhdmUo JmdwdS0+ZXZlbnRfc3BpbmxvY2ssIGZsYWdzKTsKLQlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0la RShncHUtPmV2ZW50KTsgaSsrKSB7Ci0JCWlmICghZ3B1LT5ldmVudFtpXS51c2VkKQotCQkJY29u dGludWU7CisJZm9yX2VhY2hfc2V0X2JpdF9mcm9tKGksIGdwdS0+ZXZlbnRfYml0bWFwLCBFVE5B X05SX0VWRU5UUykgewogCQlkbWFfZmVuY2Vfc2lnbmFsKGdwdS0+ZXZlbnRbaV0uZmVuY2UpOwog CQlncHUtPmV2ZW50W2ldLmZlbmNlID0gTlVMTDsKLQkJZ3B1LT5ldmVudFtpXS51c2VkID0gZmFs c2U7CiAJCWNvbXBsZXRlKCZncHUtPmV2ZW50X2ZyZWUpOwogCX0KKwliaXRtYXBfemVybyhncHUt PmV2ZW50X2JpdG1hcCwgRVROQV9OUl9FVkVOVFMpOwogCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmdwdS0+ZXZlbnRfc3BpbmxvY2ssIGZsYWdzKTsKIAlncHUtPmNvbXBsZXRlZF9mZW5jZSA9IGdw dS0+YWN0aXZlX2ZlbmNlOwogCkBAIC0xMTQzLDcgKzExNDAsNyBAQCBpbnQgZXRuYXZpdl9ncHVf ZmVuY2Vfc3luY19vYmooc3RydWN0IGV0bmF2aXZfZ2VtX29iamVjdCAqZXRuYXZpdl9vYmosCiBz dGF0aWMgdW5zaWduZWQgaW50IGV2ZW50X2FsbG9jKHN0cnVjdCBldG5hdml2X2dwdSAqZ3B1KQog ewogCXVuc2lnbmVkIGxvbmcgcmV0LCBmbGFnczsKLQl1bnNpZ25lZCBpbnQgaSwgZXZlbnQgPSB+ MFU7CisJdW5zaWduZWQgaW50IGV2ZW50OwogCiAJcmV0ID0gd2FpdF9mb3JfY29tcGxldGlvbl90 aW1lb3V0KCZncHUtPmV2ZW50X2ZyZWUsCiAJCQkJCSAgbXNlY3NfdG9famlmZmllcygxMCAqIDEw MDAwKSk7CkBAIC0xMTUzLDEzICsxMTUwLDExIEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQgZXZlbnRf YWxsb2Moc3RydWN0IGV0bmF2aXZfZ3B1ICpncHUpCiAJc3Bpbl9sb2NrX2lycXNhdmUoJmdwdS0+ ZXZlbnRfc3BpbmxvY2ssIGZsYWdzKTsKIAogCS8qIGZpbmQgZmlyc3QgZnJlZSBldmVudCAqLwot CWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGdwdS0+ZXZlbnQpOyBpKyspIHsKLQkJaWYgKGdw dS0+ZXZlbnRbaV0udXNlZCA9PSBmYWxzZSkgewotCQkJZ3B1LT5ldmVudFtpXS51c2VkID0gdHJ1 ZTsKLQkJCWV2ZW50ID0gaTsKLQkJCWJyZWFrOwotCQl9Ci0JfQorCWV2ZW50ID0gZmluZF9maXJz dF96ZXJvX2JpdChncHUtPmV2ZW50X2JpdG1hcCwgRVROQV9OUl9FVkVOVFMpOworCWlmIChldmVu dCA8IEVUTkFfTlJfRVZFTlRTKQorCQlzZXRfYml0KGV2ZW50LCBncHUtPmV2ZW50X2JpdG1hcCk7 CisJZWxzZQorCQlldmVudCA9IH4wVTsKIAogCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmdwdS0+ ZXZlbnRfc3BpbmxvY2ssIGZsYWdzKTsKIApAQCAtMTE3MiwxMiArMTE2NywxMiBAQCBzdGF0aWMg dm9pZCBldmVudF9mcmVlKHN0cnVjdCBldG5hdml2X2dwdSAqZ3B1LCB1bnNpZ25lZCBpbnQgZXZl bnQpCiAKIAlzcGluX2xvY2tfaXJxc2F2ZSgmZ3B1LT5ldmVudF9zcGlubG9jaywgZmxhZ3MpOwog Ci0JaWYgKGdwdS0+ZXZlbnRbZXZlbnRdLnVzZWQgPT0gZmFsc2UpIHsKKwlpZiAoIXRlc3RfYml0 KGV2ZW50LCBncHUtPmV2ZW50X2JpdG1hcCkpIHsKIAkJZGV2X3dhcm4oZ3B1LT5kZXYsICJldmVu dCAldSBpcyBhbHJlYWR5IG1hcmtlZCBhcyBmcmVlIiwKIAkJCSBldmVudCk7CiAJCXNwaW5fdW5s b2NrX2lycXJlc3RvcmUoJmdwdS0+ZXZlbnRfc3BpbmxvY2ssIGZsYWdzKTsKIAl9IGVsc2Ugewot CQlncHUtPmV2ZW50W2V2ZW50XS51c2VkID0gZmFsc2U7CisJCWNsZWFyX2JpdChldmVudCwgZ3B1 LT5ldmVudF9iaXRtYXApOwogCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZncHUtPmV2ZW50X3Nw aW5sb2NrLCBmbGFncyk7CiAKIAkJY29tcGxldGUoJmdwdS0+ZXZlbnRfZnJlZSk7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vZXRuYXZpdi9ldG5hdml2X2dwdS5oIGIvZHJpdmVycy9ncHUv ZHJtL2V0bmF2aXYvZXRuYXZpdl9ncHUuaAppbmRleCA2ODljYjhmMzY4MGMuLjcwZTY1OTBhYWNk ZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2V0bmF2aXYvZXRuYXZpdl9ncHUuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vZXRuYXZpdi9ldG5hdml2X2dwdS5oCkBAIC04OCwxMyArODgsMTQg QEAgc3RydWN0IGV0bmF2aXZfY2hpcF9pZGVudGl0eSB7CiB9OwogCiBzdHJ1Y3QgZXRuYXZpdl9l dmVudCB7Ci0JYm9vbCB1c2VkOwogCXN0cnVjdCBkbWFfZmVuY2UgKmZlbmNlOwogfTsKIAogc3Ry dWN0IGV0bmF2aXZfY21kYnVmX3N1YmFsbG9jOwogc3RydWN0IGV0bmF2aXZfY21kYnVmOwogCisj ZGVmaW5lIEVUTkFfTlJfRVZFTlRTIDMwCisKIHN0cnVjdCBldG5hdml2X2dwdSB7CiAJc3RydWN0 IGRybV9kZXZpY2UgKmRybTsKIAlzdHJ1Y3QgdGhlcm1hbF9jb29saW5nX2RldmljZSAqY29vbGlu ZzsKQEAgLTExMiw3ICsxMTMsOCBAQCBzdHJ1Y3QgZXRuYXZpdl9ncHUgewogCXUzMiBtZW1vcnlf YmFzZTsKIAogCS8qIGV2ZW50IG1hbmFnZW1lbnQ6ICovCi0Jc3RydWN0IGV0bmF2aXZfZXZlbnQg ZXZlbnRbMzBdOworCURFQ0xBUkVfQklUTUFQKGV2ZW50X2JpdG1hcCwgRVROQV9OUl9FVkVOVFMp OworCXN0cnVjdCBldG5hdml2X2V2ZW50IGV2ZW50W0VUTkFfTlJfRVZFTlRTXTsKIAlzdHJ1Y3Qg Y29tcGxldGlvbiBldmVudF9mcmVlOwogCXNwaW5sb2NrX3QgZXZlbnRfc3BpbmxvY2s7CiAKLS0g CjIuMTMuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K ZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==