From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH v4] drm/i915: Add timeline barrier support Date: Thu, 24 Jan 2019 21:25:39 +0000 Message-ID: <20190124212539.3333-1-chris@chris-wilson.co.uk> References: <20190124114203.18952-5-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 35F836F236 for ; Thu, 24 Jan 2019 21:26:03 +0000 (UTC) In-Reply-To: <20190124114203.18952-5-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KClRpbWVsaW5l IGJhcnJpZXIgYWxsb3dzIHNlcmlhbGl6YXRpb24gYmV0d2VlbiBkaWZmZXJlbnQgdGltZWxpbmVz LgoKQWZ0ZXIgY2FsbGluZyBpOTE1X3RpbWVsaW5lX3NldF9iYXJyaWVyIHdpdGggYSByZXF1ZXN0 LCBhbGwgZm9sbG93aW5nCnN1Ym1pc3Npb25zIG9uIHRoaXMgdGltZWxpbmUgd2lsbCBiZSBzZXQg dXAgYXMgZGVwZW5kaW5nIG9uIHRoaXMgcmVxdWVzdCwKb3IgYmFycmllci4gT25jZSB0aGUgYmFy cmllciBoYXMgYmVlbiBjb21wbGV0ZWQgaXQgYXV0b21hdGljYWxseSBnZXRzCmNsZWFyZWQgYW5k IHRoaW5ncyBjb250aW51ZSBhcyBub3JtYWwuCgpUaGlzIGZhY2lsaXR5IHdpbGwgYmUgdXNlZCBi eSB0aGUgdXBjb21pbmcgY29udGV4dCBTU0VVIGNvZGUuCgp2MjoKICogQXNzZXJ0IGJhcnJpZXIg aGFzIGJlZW4gcmV0aXJlZCBvbiB0aW1lbGluZV9maW5pLiAoQ2hyaXMgV2lsc29uKQogKiBGaXgg bW9ja190aW1lbGluZS4KCnYzOgogKiBJbXByb3ZlZCBjb21tZW50IGxhbmd1YWdlLiAoQ2hyaXMg V2lsc29uKQoKdjQ6CiAqIE1haW50YWluIG9yZGVyaW5nIHdpdGggcHJldmlvdXMgYmFycmllcnMg c2V0IG9uIHRoZSB0aW1lbGluZS4KClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0 a28udXJzdWxpbkBpbnRlbC5jb20+ClN1Z2dlc3RlZC1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0Bj aHJpcy13aWxzb24uY28udWs+CkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5j by51az4KUmV2aWV3ZWQtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVr PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVxdWVzdC5jICAgICAgICAgICB8IDEz ICsrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RpbWVsaW5lLmMgICAgICAg ICAgfCAyMyArKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Rp bWVsaW5lLmggICAgICAgICAgfCAyMiArKysrKysrKysrKysrKysrKysKIC4uLi9ncHUvZHJtL2k5 MTUvc2VsZnRlc3RzL21vY2tfdGltZWxpbmUuYyAgICB8ICAyICsrCiA0IGZpbGVzIGNoYW5nZWQs IDYwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3JlcXVlc3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVxdWVzdC5jCmluZGV4IGY5 NDFlNDBmZDM3My4uZWE2NTljNjIwNDYxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3JlcXVlc3QuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlcXVlc3Qu YwpAQCAtNTE3LDYgKzUxNywxNSBAQCBpOTE1X3JlcXVlc3RfYWxsb2Nfc2xvdyhzdHJ1Y3QgaW50 ZWxfY29udGV4dCAqY2UpCiAJcmV0dXJuIGttZW1fY2FjaGVfYWxsb2MoY2UtPmdlbV9jb250ZXh0 LT5pOTE1LT5yZXF1ZXN0cywgR0ZQX0tFUk5FTCk7CiB9CiAKK3N0YXRpYyBpbnQgYWRkX3RpbWVs aW5lX2JhcnJpZXIoc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEpCit7CisJc3RydWN0IGk5MTVfcmVx dWVzdCAqYmFycmllciA9CisJCWk5MTVfZ2VtX2FjdGl2ZV9yYXcoJnJxLT50aW1lbGluZS0+YmFy cmllciwKKwkJCQkgICAgJnJxLT5pOTE1LT5kcm0uc3RydWN0X211dGV4KTsKKworCXJldHVybiBi YXJyaWVyID8gaTkxNV9yZXF1ZXN0X2F3YWl0X2RtYV9mZW5jZShycSwgJmJhcnJpZXItPmZlbmNl KSA6IDA7Cit9CisKIC8qKgogICogaTkxNV9yZXF1ZXN0X2FsbG9jIC0gYWxsb2NhdGUgYSByZXF1 ZXN0IHN0cnVjdHVyZQogICoKQEAgLTY2MCw2ICs2NjksMTAgQEAgaTkxNV9yZXF1ZXN0X2FsbG9j KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwgc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQg KmN0eCkKIAkgKi8KIAlycS0+aGVhZCA9IHJxLT5yaW5nLT5lbWl0OwogCisJcmV0ID0gYWRkX3Rp bWVsaW5lX2JhcnJpZXIocnEpOworCWlmIChyZXQpCisJCWdvdG8gZXJyX3Vud2luZDsKKwogCXJl dCA9IGVuZ2luZS0+cmVxdWVzdF9hbGxvYyhycSk7CiAJaWYgKHJldCkKIAkJZ290byBlcnJfdW53 aW5kOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90aW1lbGluZS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90aW1lbGluZS5jCmluZGV4IDQ2NjdjYzA4YzQxNi4u NDYzMjc1MDBlOGNkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RpbWVs aW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90aW1lbGluZS5jCkBAIC0zNyw2 ICszNyw4IEBAIHZvaWQgaTkxNV90aW1lbGluZV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1LAogCUlOSVRfTElTVF9IRUFEKCZ0aW1lbGluZS0+cmVxdWVzdHMpOwogCiAJaTkxNV9z eW5jbWFwX2luaXQoJnRpbWVsaW5lLT5zeW5jKTsKKworCWluaXRfcmVxdWVzdF9hY3RpdmUoJnRp bWVsaW5lLT5iYXJyaWVyLCBOVUxMKTsKIH0KIAogLyoqCkBAIC02OSw2ICs3MSw3IEBAIHZvaWQg aTkxNV90aW1lbGluZXNfcGFyayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIHZvaWQg aTkxNV90aW1lbGluZV9maW5pKHN0cnVjdCBpOTE1X3RpbWVsaW5lICp0aW1lbGluZSkKIHsKIAlH RU1fQlVHX09OKCFsaXN0X2VtcHR5KCZ0aW1lbGluZS0+cmVxdWVzdHMpKTsKKwlHRU1fQlVHX09O KGk5MTVfZ2VtX2FjdGl2ZV9pc3NldCgmdGltZWxpbmUtPmJhcnJpZXIpKTsKIAogCWk5MTVfc3lu Y21hcF9mcmVlKCZ0aW1lbGluZS0+c3luYyk7CiAKQEAgLTkwLDYgKzkzLDI2IEBAIGk5MTVfdGlt ZWxpbmVfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LCBjb25zdCBjaGFyICpu YW1lKQogCXJldHVybiB0aW1lbGluZTsKIH0KIAoraW50IGk5MTVfdGltZWxpbmVfc2V0X2JhcnJp ZXIoc3RydWN0IGk5MTVfdGltZWxpbmUgKnRsLAorCQkJICAgICAgc3RydWN0IGk5MTVfcmVxdWVz dCAqcnEpCit7CisJc3RydWN0IGk5MTVfcmVxdWVzdCAqb2xkOworCWludCBlcnI7CisKKwlsb2Nr ZGVwX2Fzc2VydF9oZWxkKCZ0bC0+aTkxNS0+ZHJtLnN0cnVjdF9tdXRleCk7CisKKwkvKiBNdXN0 IG1haW50YWluIG9yZGVyaW5nIHdydCBleGlzdGluZyBiYXJyaWVycyAqLworCW9sZCA9IGk5MTVf Z2VtX2FjdGl2ZV9yYXcoJnRsLT5iYXJyaWVyLCAmdGwtPmk5MTUtPmRybS5zdHJ1Y3RfbXV0ZXgp OworCWlmIChvbGQpIHsKKwkJZXJyID0gaTkxNV9yZXF1ZXN0X2F3YWl0X2RtYV9mZW5jZShycSwg Jm9sZC0+ZmVuY2UpOworCQlpZiAoZXJyKQorCQkJcmV0dXJuIGVycjsKKwl9CisKKwlpOTE1X2dl bV9hY3RpdmVfc2V0KCZ0bC0+YmFycmllciwgcnEpOworCXJldHVybiAwOworfQorCiB2b2lkIF9f aTkxNV90aW1lbGluZV9mcmVlKHN0cnVjdCBrcmVmICprcmVmKQogewogCXN0cnVjdCBpOTE1X3Rp bWVsaW5lICp0aW1lbGluZSA9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3RpbWVsaW5lLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RpbWVsaW5lLmgKaW5kZXgg MzhjMWUxNWU5MjdhLi5jOGQ3MTE3YmIyMDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfdGltZWxpbmUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RpbWVs aW5lLmgKQEAgLTY0LDYgKzY0LDE2IEBAIHN0cnVjdCBpOTE1X3RpbWVsaW5lIHsKIAkgKi8KIAlz dHJ1Y3QgaTkxNV9zeW5jbWFwICpzeW5jOwogCisJLyoqCisJICogQmFycmllciBwcm92aWRlcyB0 aGUgYWJpbGl0eSB0byBzZXJpYWxpemUgb3JkZXJpbmcgYmV0d2VlbiBkaWZmZXJlbnQKKwkgKiB0 aW1lbGluZXMuCisJICoKKwkgKiBVc2VycyBjYW4gY2FsbCBpOTE1X3RpbWVsaW5lX3NldF9iYXJy aWVyIHdoaWNoIHdpbGwgbWFrZSBhbGwKKwkgKiBzdWJzZXF1ZW50IHN1Ym1pc3Npb25zIHRvIHRo aXMgdGltZWxpbmUgYmUgZXhlY3V0ZWQgb25seSBhZnRlciB0aGUKKwkgKiBiYXJyaWVyIGhhcyBi ZWVuIGNvbXBsZXRlZC4KKwkgKi8KKwlzdHJ1Y3QgaTkxNV9nZW1fYWN0aXZlIGJhcnJpZXI7CisK IAlzdHJ1Y3QgbGlzdF9oZWFkIGxpbms7CiAJY29uc3QgY2hhciAqbmFtZTsKIApAQCAtMTM2LDQg KzE0NiwxNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaTkxNV90aW1lbGluZV9zeW5jX2lzX2xhdGVy KHN0cnVjdCBpOTE1X3RpbWVsaW5lICp0bCwKIAogdm9pZCBpOTE1X3RpbWVsaW5lc19wYXJrKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKIAorLyoqCisgKiBpOTE1X3RpbWVsaW5lX3Nl dF9iYXJyaWVyIC0gb3JkZXJzIHN1Ym1pc3Npb24gYmV0d2VlbiBkaWZmZXJlbnQgdGltZWxpbmVz CisgKiBAdGltZWxpbmU6IHRpbWVsaW5lIHRvIHNldCB0aGUgYmFycmllciBvbgorICogQHJxOiBy ZXF1ZXN0IGFmdGVyIHdoaWNoIG5ldyBzdWJtaXNzaW9ucyBjYW4gcHJvY2VlZAorICoKKyAqIFNl dHMgdGhlIHBhc3NlZCBpbiByZXF1ZXN0IGFzIHRoZSBzZXJpYWxpemF0aW9uIHBvaW50IGZvciBh bGwgc3Vic2VxdWVudAorICogc3VibWlzc2lvbnMgb24gQHRpbWVsaW5lLiBTdWJzZXF1ZW50IHJl cXVlc3RzIHdpbGwgbm90IGJlIHN1Ym1pdHRlZCB0byBHUFUKKyAqIHVudGlsIHRoZSBiYXJyaWVy IGhhcyBiZWVuIGNvbXBsZXRlZC4KKyAqLworaW50IGk5MTVfdGltZWxpbmVfc2V0X2JhcnJpZXIo c3RydWN0IGk5MTVfdGltZWxpbmUgKnRpbWVsaW5lLAorCQkJICAgICAgc3RydWN0IGk5MTVfcmVx dWVzdCAqcnEpOworCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3Nl bGZ0ZXN0cy9tb2NrX3RpbWVsaW5lLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMv bW9ja190aW1lbGluZS5jCmluZGV4IGRjZjNiMTZmNWEwNy4uYTcxOGI2NGM5ODhlIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvbW9ja190aW1lbGluZS5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9tb2NrX3RpbWVsaW5lLmMKQEAgLTE5LDYg KzE5LDggQEAgdm9pZCBtb2NrX3RpbWVsaW5lX2luaXQoc3RydWN0IGk5MTVfdGltZWxpbmUgKnRp bWVsaW5lLCB1NjQgY29udGV4dCkKIAogCWk5MTVfc3luY21hcF9pbml0KCZ0aW1lbGluZS0+c3lu Yyk7CiAKKwlpbml0X3JlcXVlc3RfYWN0aXZlKCZ0aW1lbGluZS0+YmFycmllciwgTlVMTCk7CisK IAlJTklUX0xJU1RfSEVBRCgmdGltZWxpbmUtPmxpbmspOwogfQogCi0tIAoyLjIwLjEKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWls aW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=