From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [RFC] drm/i915: Android native sync support Date: Thu, 22 Jan 2015 13:41:48 +0000 Message-ID: <54C0FE1C.3050608@linux.intel.com> References: <1421925340-2755-1-git-send-email-tvrtko.ursulin@linux.intel.com> <20150122114225.GP18602@nuc-i3427.alporthouse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id A4C806E2B3 for ; Thu, 22 Jan 2015 05:42:16 -0800 (PST) In-Reply-To: <20150122114225.GP18602@nuc-i3427.alporthouse.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDAxLzIyLzIwMTUgMTE6NDIgQU0sIENocmlzIFdpbHNvbiB3cm90ZToKPiBPbiBUaHUsIEph biAyMiwgMjAxNSBhdCAxMToxNTo0MEFNICswMDAwLCBUdnJ0a28gVXJzdWxpbiB3cm90ZToKPj4g RnJvbTogSmVzc2UgQmFybmVzIDxqYmFybmVzQHZpcnR1b3VzZ2Vlay5vcmc+Cj4+Cj4+IEFkZCBB bmRyb2lkIG5hdGl2ZSBzeW5jIHN1cHBvcnQgd2l0aCBmZW5jZXMgZXhwb3J0ZWQgYXMgZmlsZSBk ZXNjcmlwdG9ycyB2aWEKPj4gdGhlIGV4ZWNidWYgaW9jdGwgKHJzdmQyIGZpZWxkIGlzIHVzZWQp Lgo+Pgo+PiBUaGlzIGlzIGEgY29udGludWF0aW9uIG9mIEplc3NlIEJhcm5lcydzIHByZXZpb3Vz IHdvcmssIHNxdWFzaGVkIHRvIGFycml2ZSBhdAo+PiB0aGUgZmluYWwgZGVzdGluYXRpb24sIGNs ZWFuZWQgdXAsIHdpdGggc29tZSBmaXhlcyBhbmQgcHJlbGltaW5hcnkgbGlnaHQKPj4gdGVzdGlu Zy4KPj4KPj4gR0VNIHJlcXVlc3RzIGFyZSBleHRlbmRlZCB3aXRoIGZlbmNlIHN0cnVjdHVyZXMg d2hpY2ggYXJlIGFzc29jaWF0ZWQgd2l0aAo+PiBBbmRyb2lkIHN5bmMgZmVuY2VzIGV4cG9ydGVk IHRvIHVzZXIgc3BhY2UgdmlhIGZpbGUgZGVzY3JpcHRvcnMuIEZlbmNlcyB3aGljaAo+PiBhcmUg d2FpdGVkIHVwb24sIGFuZCB3aGlsZSBleHBvcnRlZCB0byB1c2Vyc3BhY2UsIGFyZSByZWZlcmVu Y2VkIGFuZCBhZGRlZCB0bwo+PiB0aGUgaXJxX3F1ZXVlIHNvIHRoZXkgYXJlIHNpZ25hbGxlZCB3 aGVuIHJlcXVlc3RzIGFyZSBjb21wbGV0ZWQuIFRoZXJlIGlzIG5vCj4+IG92ZXJoZWFkIGFwYXJ0 IGZyb20gdGhlIHdoZXJlIGZlbmNlcyBhcmUgbm90IHJlcXVlc3RlZC4KPj4KPj4gQmFzZWQgb24g cGF0Y2hlcyBieSBKZXNzZSBCYXJuZXM6Cj4+ICAgICBkcm0vaTkxNTogQW5kcm9pZCBzeW5jIHBv aW50cyBmb3IgaTkxNSB2Mwo+PiAgICAgZHJtL2k5MTU6IGFkZCBmZW5jZXMgdG8gdGhlIHJlcXVl c3Qgc3RydWN0Cj4+ICAgICBkcm0vaTkxNTogc3luYyBmZW5jZSBmaXhlcy91cGRhdGVzCj4+Cj4+ IFRvIGRvOgo+PiAgICAgKiBFeHRlbmQgZHJpdmVyIGRhdGEgd2l0aCBjb250ZXh0IGlkIC8gcmlu ZyBpZC4KPj4gICAgICogTW9yZSB0ZXN0aW5nLgo+Pgo+PiBTaWduZWQtb2ZmLWJ5OiBUdnJ0a28g VXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgo+PiBDYzogSmVzc2UgQmFybmVzIDxq YmFybmVzQHZpcnR1b3VzZ2Vlay5vcmc+Cj4+IENjOiBKb2huIEhhcnJpc29uIDxKb2huLkMuSGFy cmlzb25ASW50ZWwuY29tPgo+PiAtLS0KPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9LY29uZmln ICAgICAgICAgICAgICAgfCAgMTQgKysKPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmls ZSAgICAgICAgICAgICAgfCAgIDEgKwo+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmggICAgICAgICAgICB8ICAyNSArKysKPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9leGVjYnVmZmVyLmMgfCAgMTkgKysrCj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9z eW5jLmMgICAgICAgICAgIHwgMjQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4+ICAg aW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oICAgICAgICAgICAgICAgIHwgICA4ICstCj4+ICAg NiBmaWxlcyBjaGFuZ2VkLCAzMTIgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKPj4gICBj cmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9zeW5jLmMKPj4KPj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L0tjb25maWcgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9LY29uZmlnCj4+IGluZGV4IDRlMzlhYjMuLjZiMjNkMTcgMTAwNjQ0Cj4+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L0tjb25maWcKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvS2NvbmZpZwo+PiBAQCAtNDMsNiArNDMsMjAgQEAgY29uZmlnIERSTV9JOTE1X0tNUwo+Pgo+ PiAgIAkgIElmIGluIGRvdWJ0LCBzYXkgIlkiLgo+Pgo+PiArY29uZmlnIERSTV9JOTE1X1NZTkMK Pj4gKwlib29sICJFbmFibGUgZXhwbGljaXQgc3luYyBzdXBwb3J0Igo+PiArCWRlcGVuZHMgb24g RFJNX0k5MTUKPj4gKwlkZWZhdWx0IHkKPj4gKwlzZWxlY3QgU1RBR0lORwo+PiArCXNlbGVjdCBB TkRST0lECj4+ICsJc2VsZWN0IFNZTkMKPj4gKwloZWxwCj4+ICsJICBDaG9vc2UgdGhpcyBvcHRp b24gdG8gZW5hYmxlIEFuZHJvaWQgbmF0aXZlIHN5bmMgc3VwcG9ydCBhbmQgdGhlCj4+ICsJICBj b3JyZXNwb25kaW5nIGk5MTUgZHJpdmVyIGNvZGUgdG8gZXhwb3NlIGl0LiAgU2xpZ2h0bHkgaW5j cmVhc2VzCj4+ICsJICBkcml2ZXIgc2l6ZSBhbmQgcHVsbHMgaW4gc3luYyBzdXBwb3J0IGZyb20g c3RhZ2luZy4KPj4gKwo+PiArCSAgSWYgaW4gZG91YnQsIHNheSAiWSIuCj4KPiBTbyB3ZSBzaG91 bGQgbW92ZSBpOTE1IGludG8gc3RhZ2luZz8gSSB0aGluayB5b3UgbWVhbgo+ICJkZWZhdWx0IHkg aWYgU1RBR0lORyIKCkRpZCBub3QgcGF5IGF0dGVudGlvbiB0byB0aGlzIHBhcnQsIHdpbGwgY2hh bmdlLgoKPj4gKwlpZiAoYXJncy0+ZmxhZ3MgJiBJOTE1X0VYRUNfRkVOQ0VfT1VUKSB7Cj4+ICsJ CXJldCA9IGk5MTVfY3JlYXRlX3N5bmNfZmVuY2VfcmluZyhyaW5nLCBjdHgsCj4+ICsJCQkJCQkg ICZzeW5jX2ZlbmNlLCAmZmVuY2VfZmQpOwo+PiArCQlpZiAocmV0KQo+PiArCQkJZ290byBzeW5j X2VycjsKPj4gKwl9Cj4+ICsKPj4gICAJcmV0ID0gZGV2X3ByaXYtPmd0LmRvX2V4ZWNidWYoZGV2 LCBmaWxlLCByaW5nLCBjdHgsIGFyZ3MsCj4+ICAgCQkJCSAgICAgICZlYi0+dm1hcywgYmF0Y2hf b2JqLCBleGVjX3N0YXJ0LCBmbGFncyk7Cj4KPiBZb3UgZW1pdCB0aGUgZmVuY2UgcHJpb3IgdG8g dGhlIGV4ZWN1dGlvbiBvZiB0aGUgYmF0Y2g/IEludGVyZXN0aW5nLiBOb3QKPiBleGFjdGx5IHdo ZXJlIEkgd291bGQgZXhwZWN0IHRoZSBmZW5jZS4gQm90aCBiZWZvcmUvYWZ0ZXIgYXJlCj4ganVz dGlmaWFibGUuCgpXaGF0IGRvIHlvIGNvbnNpZGVyIGVtaXR0aW5nPyBUbyBtZSB0aGF0IGlzIGZk X2luc3RhbGwgYW5kIHRoYXQgaGFwcGVucyAKYWZ0ZXIgcmVxdWVzdCB3YXMgc3VjY2Vzc2Z1bGx5 IHN1Ym1pdHRlZC4gSSB0aG91Z2h0IGl0IGlzIHRpZGllciB0byBzZXQgCnVwIHJlcXVpcmVkIG9i amVjdHMgYmVmb3JlIGFuZCB0aGVuIGluc3RhbGwgdGhlIGZlbmNlLCBvciBkaXNjYXJkIGl0LCAK ZGVwZW5kaW5nIG9uIHRoZSBvdXRjb21lLiBZb3UgdGhpbmsgZGlmZmVyZW50bHk/Cgo+PiArCWlm ICghcmV0ICYmIHN5bmNfZmVuY2UpIHsKPj4gKwkJc3luY19mZW5jZV9pbnN0YWxsKHN5bmNfZmVu Y2UsIGZlbmNlX2ZkKTsKPj4gKwkJYXJncy0+cnN2ZDIgPSBmZW5jZV9mZDsKPj4gKwl9IGVsc2Ug aWYgKHN5bmNfZmVuY2UpIHsKPj4gKwkJZnB1dChzeW5jX2ZlbmNlLT5maWxlKTsKPj4gKwkJcHV0 X3VudXNlZF9mZChmZW5jZV9mZCk7Cj4+ICsJfQo+Cj4gSSB0aGluayB0aGlzIGNhbiBiZSB0aWRp ZWQgdXAgYW5kIG1hZGUgY29uc2lzdGVudCB3aXRoIHRoZSBleGlzdGluZwo+IHN0eWxlIG9mIGVy cm9yIGhhbmRsaW5nIHRodXNseToKPgo+IGlmIChyZXQpCj4gCWdvdG8gZmVuY2VfZXJyOwo+Cj4g aWYgKHN5bmNfZmVuY2UpIHsKPiAJLyogdHJhbnNmZXJyIG93bmVyc2h1cCB0byB1c2Vyc3BhY2Ug Ki8KPiAJc3luY19mZW5jZV9pbnN0YWxsKHN5bmNfZmVuY2UsIGZlbmNlX2ZkKTsKPiAJYXJncy0+ cnN2ZDIgPSBmZW5jZV9mZDsKPiAJc3luY19mZW5jZSA9IE5VTEw7Cj4gfQo+Cj4gZmVuY2VfZXJy Ogo+IGlmIChzeW5jX2ZlbmNlKSB7Cj4gCWZwdXQoc3luY19mZW5jZS0+ZmlsZSk7Cj4gCXB1dF91 bnVzZWRfZmQoZmVuY2VfZmQpOwo+IH0KClllYWggbWFrZXMgc2Vuc2UsIHdpbGwgY2hhbmdlLgoK Pj4gK3N5bmNfZXJyOgo+Cj4KPj4gK3N0YXRpYyBzaWduZWQgbG9uZwo+PiAraTkxNV9mZW5jZV9y aW5nX3dhaXQoc3RydWN0IGZlbmNlICpmZW5jZSwgYm9vbCBpbnRyLCBzaWduZWQgbG9uZyB0aW1l b3V0X2pzKQo+PiArewo+PiArCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxID0gdG9f aTkxNV9yZXF1ZXN0KGZlbmNlKTsKPj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSByZXEtPnJpbmctPmRldi0+ZGV2X3ByaXZhdGU7Cj4+ICsJaW50IHJldDsKPj4gKwlzNjQg dGltZW91dDsKPj4gKwo+PiArCXRpbWVvdXQgPSBqaWZmaWVzX3RvX25zZWNzKHRpbWVvdXRfanMp Owo+PiArCj4+ICsJcmV0ID0gX19pOTE1X3dhaXRfcmVxdWVzdChyZXEsCj4+ICsJCQkJICBhdG9t aWNfcmVhZCgmZGV2X3ByaXYtPmdwdV9lcnJvci5yZXNldF9jb3VudGVyKSwKPj4gKwkJCQkgIGlu dHIsICZ0aW1lb3V0LCBOVUxMKTsKPj4gKwlpZiAocmV0ID09IC1FVElNRSkKPj4gKwkJcmV0dXJu IG5zZWNzX3RvX2ppZmZpZXModGltZW91dCk7Cj4KPiBUaGlzIHNob3VsZCBiZSBlcXVpdmFsZW50 IHRvIHJldHVybiAwOyBpbnRlbmRlZD8KCkkgY2FuJ3Qgc2VlIHRoYXQgaXQgd2FzIGludGVuZGVk IHNvIEknbGwgc2ltcGxpZnkgaXQgdW5sZXNzIEplc3NlIGtub3cgCmJldHRlci4KCj4+ICsKPj4g KwlyZXR1cm4gcmV0Owo+PiArfQo+Cj4+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2k5 MTVfZHJtLmggYi9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKPj4gaW5kZXggMmU1NTlmNmUu LmMxOTc3NzAgMTAwNjQ0Cj4+IC0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAo+PiAr KysgYi9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKPj4gQEAgLTI0Niw3ICsyNDYsNyBAQCB0 eXBlZGVmIHN0cnVjdCBfZHJtX2k5MTVfc2FyZWEgewo+PiAgICNkZWZpbmUgRFJNX0lPQ1RMX0k5 MTVfSFdTX0FERFIJCURSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0hXU19BRERS LCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2luaXQpCj4+ICAgI2RlZmluZSBEUk1fSU9DVExfSTkxNV9H RU1fSU5JVAkJRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0lOSVQsIHN0 cnVjdCBkcm1faTkxNV9nZW1faW5pdCkKPj4gICAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9F WEVDQlVGRkVSCURSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9FWEVDQlVG RkVSLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIpCj4+IC0jZGVmaW5lIERSTV9JT0NU TF9JOTE1X0dFTV9FWEVDQlVGRkVSMglEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkx NV9HRU1fRVhFQ0JVRkZFUjIsIHN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIpCj4+ICsj ZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMglEUk1fSU9XUihEUk1fQ09NTUFO RF9CQVNFICsgRFJNX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4 ZWNidWZmZXIyKQo+PiAgICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1BJTgkJRFJNX0lPV1Io RFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9QSU4sIHN0cnVjdCBkcm1faTkxNV9nZW1f cGluKQo+PiAgICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1VOUElOCURSTV9JT1coRFJNX0NP TU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9VTlBJTiwgc3RydWN0IGRybV9pOTE1X2dlbV91bnBp bikKPj4gICAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9CVVNZCQlEUk1fSU9XUihEUk1fQ09N TUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0JVU1ksIHN0cnVjdCBkcm1faTkxNV9nZW1fYnVzeSkK Pj4gQEAgLTcxOCw3ICs3MTgsNyBAQCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyIHsK Pj4gICAjZGVmaW5lIEk5MTVfRVhFQ19DT05TVEFOVFNfUkVMX1NVUkZBQ0UgKDI8PDYpIC8qIGdl bjQvNSBvbmx5ICovCj4+ICAgCV9fdTY0IGZsYWdzOwo+PiAgIAlfX3U2NCByc3ZkMTsgLyogbm93 IHVzZWQgZm9yIGNvbnRleHQgaW5mbyAqLwo+PiAtCV9fdTY0IHJzdmQyOwo+PiArCV9fdTY0IHJz dmQyOyAvKiBub3cgdXNlZCBmb3IgZmVuY2UgZmQgKi8KPiBJZiB3ZSBhcmUgZ29pbmcgdG8gdXNl IHRoaXMgc2xvdCBmb3IgZmVuY2UgZmQsIG1heSBhcyB3ZWxsIG1ha2UgaXQKPiBzdXBwbHkgYm90 aCBiZWZvcmUvYWZ0ZXIuCgpOb3Qgc3VyZSB3aGF0IHlvdSBtZWFuIGJ5IGJlZm9yZS9hZnRlcj8K CkluIHRoZSBmdXR1cmUgaXQgd2lsbCB0YWtlIGluIHRoZSBpbnB1dCBmZW5jZSBmZCBhbmQgcmV0 dXJuIHRoZSBvdXRwdXQgCmZlbmNlIGlmIHRoYXQncyB3aGF0IHlvdSBtZWFuLgoKUmVnYXJkcywK ClR2cnRrbwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=