From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Thompson Subject: Re: [PATCH] drm/atomic-helper: implement ->page_flip Date: Wed, 05 Nov 2014 11:35:05 +0000 Message-ID: <545A0B69.8080101@linaro.org> References: <1414934370-11924-15-git-send-email-daniel.vetter@ffwll.ch> <1415138972-13178-1-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1415138972-13178-1-git-send-email-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter , DRI Development Cc: Intel Graphics Development List-Id: dri-devel@lists.freedesktop.org T24gMDQvMTEvMTQgMjI6MDksIERhbmllbCBWZXR0ZXIgd3JvdGU6Cj4gQ3VycmVudGx5IHRoZXJl IGlzIG5vIHdheSB0byBpbXBsZW1lbnQgYXN5bmMgZmxpcHMgdXNpbmcgYXRvbWljLCB0aGF0Cj4g ZXNzZW50aWFsbHkgcmVxdWlyZXMgdXMgdG8gYmUgYWJsZSB0byBjYW5jZWwgcGVuZGluZyByZXF1 ZXN0cwo+IG1pZC1mbGlnaHQuCj4gCj4gVG8gYmUgYWJsZSB0byBkbyB0aGF0IChhbmQgSSBndWVz cyB3ZSB3YW50IHRoaXMgc2luY2UgdmJsYW5rIHN5bmNlZAo+IHVwZGF0ZXMgd2hpYyBvcHBvcnR1 bmlzdGljYWxseSBjYW5jZWwgc3RpbGwgcGVuZGluZyB1cGRhdGVzIHNlZW0gdG8gYmUKPiB3YW50 ZWQpIHdlJ2QgbmVlZCB0byBhZGQgYSBtYW5kYXRvcnkgY2FuY2VsbGF0aW9uIG1vZGUuIERlcGVu ZGluZyB1cG9uCj4gdGhlIGV4YWN0IHNlbWFudGljcyB3ZSBkZWNpZGUgdXBvbiB0aGF0IGNvdWxk IG1lYW4gdGhhdCB1c2Vyc3BhY2Ugd2lsbAo+IG5vdCBnZXQgY29tcGxldGlvbiBldmVudHMsIG9y IHdpbGwgZ2V0IHRoZW0gYWxsIHN0YWNrZWQgdXAuCj4gCj4gU28gcmVqZWN0IGFzeW5jIHVwZGF0 ZXMgZm9yIG5vdy4gQWxzbyBhc3luYyB1cGRhdGVzIHVzdWFsbHkgbWVhbnMgbm90Cj4gdmJsYW5r IHN5bmNlZCBhdCBhbGwsIGFuZCBJIGd1ZXNzIGZvciBkcml2ZXJzIHdoaWNoIHdhbnQgdG8gc3Vw cG9ydAo+IHRoaXMgdGhleSBzaG91bGQgc2ltcGx5IGFkZCBhIHNwZWNpYWwgcGFnZWZsaXAgaGFu ZGxlciAoc2luY2UgdXN1YWxseQo+IHlvdSBuZWVkIGEgc3BlY2lhbCBmbGlwIGNtZCB0byBhY2hp ZXZlIHRoaXMpLiBUaGF0IGtpbmQgb2YgYXN5bmMgZmxpcAo+IGlzIHByZXR0eSBtdWNoIGV4Y2x1 c2l2ZWx5IGp1c3QgdXNlZCBmb3IgZ2FtZXMgYW5kIGJlbmNobWFya3Mgd2hlcmUKPiBkcm9wcGlu ZyBqdXN0IG9uZSBmcmFtZSBtZWFucyB5b3UnbGwgZ2V0IGEgaGVhZHNob3Qgb3Igc29tZXRoaW5n IGJhZAo+IGxpa2UgdGhhdCAuLi4gQW5kIHNvIHNsaWdodCBhbW91bnRzIG9mIHRlYXJpbmcgaXMg YWNjZXB0YWJsZS4KPiAKPiB2MjogRml4dXAga2VybmVsZG9jLCByZXBvcnRlZCBieSBQYXVsby4K PiAKPiB2MzogVXNlIHRoZSBzZXRfY3J0Y19mb3JfcGxhbmUgZnVuY3Rpb24gdG8gYXNzaWduIHRo ZSBjcnRjLCBzaW5jZQo+IG90aGVyd2lzZSB0aGUgYm9vay1rZWVwaW5nIGlzIG9mZi4KPiAKPiB2 NDogVXBkYXRlIGNydGMtPnByaW1hcnktPmZiIHNpbmNlIC0+cGFnZV9mbGlwIGlzIHRoZSBvbmx5 IGRyaXZlcgo+IGNhbGxiYWNrIHdoZXJlIHRoZSBjb3JlIHdvbid0IGRvIHRoaXMgaXRzZWxmLiBX ZSBtaWdodCB3YW50IHRvIGZpeAo+IHRoaXMgaW5jb25zaXN0ZW5jeSBldmVudHVhbGx5Lgo+IAo+ IHY1OiBVc2Ugc2V0X2NydGNfZm9yX2Nvbm5lY3RvciBhcyBzdWdnZXN0ZWQgYnkgU2Vhbi4KPiAK PiBDYzogU2VhbiBQYXVsIDxzZWFucGF1bEBjaHJvbWl1bS5vcmc+Cj4gQ2M6IFBhdWxvIFphbm9u aSA8cHJ6YW5vbmlAZ21haWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IERhbmllbCBWZXR0ZXIgPGRh bmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWlj X2hlbHBlci5jIHwgOTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBp bmNsdWRlL2RybS9kcm1fYXRvbWljX2hlbHBlci5oICAgICB8ICA1ICsrCj4gIDIgZmlsZXMgY2hh bmdlZCwgOTcgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v ZHJtX2F0b21pY19oZWxwZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5j Cj4gaW5kZXggNzkwZWRjMThiMmNiLi4zNmNjYzQyZDQzZGIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2F0b21pY19oZWxwZXIuYwo+IEBAIC0xNjMzLDMgKzE2MzMsOTUgQEAgYmFja29mZjoKPiAgCWdv dG8gcmV0cnk7Cj4gIH0KPiAgRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0 b3Jfc2V0X3Byb3BlcnR5KTsKPiArCj4gKy8qKgo+ICsgKiBkcm1fYXRvbWljX2hlbHBlcl9wYWdl X2ZsaXAgLSBleGVjdXRlIGEgbGVnYWN5IHBhZ2UgZmxpcAo+ICsgKiBAY3J0YzogRFJNIGNydGMK PiArICogQGZiOiBEUk0gZnJhbWVidWZmZXIKPiArICogQGV2ZW50OiBvcHRpb25hbCBEUk0gZXZl bnQgdG8gc2lnbmFsIHVwb24gY29tcGxldGlvbgo+ICsgKiBAZmxhZ3M6IGZsaXAgZmxhZ3MgZm9y IG5vbi12Ymxhbmsgc3luYydlZCB1cGRhdGVzCj4gKyAqCj4gKyAqIFByb3ZpZGVzIGEgZGVmYXVs dCBwYWdlIGZsaXAgaW1wbGVtZW50YXRpb24gdXNpbmcgdGhlIGF0b21pYyBkcml2ZXIgaW50ZXJm YWNlLgo+ICsgKgo+ICsgKiBOb3RlIHRoYXQgZm9yIG5vdyBzbyBjYWxsZWQgYXN5bmMgcGFnZSBm bGlwcyAoaS5lLiB1cGRhdGVzIHdoaWNoIGFyZSBub3QKPiArICogc3luY2hyb25pemVkIHRvIHZi bGFuaykgYXJlIG5vdCBzdXBwb3J0ZWQsIHNpbmNlIHRoZSBhdG9taWMgaW50ZXJmYWNlcyBoYXZl Cj4gKyAqIG5vIHByb3Zpc2lvbnMgZm9yIHRoaXMgeWV0Lgo+ICsgKgo+ICsgKiBSZXR1cm5zOgo+ ICsgKiBSZXR1cm5zIDAgb24gc3VjY2VzcywgbmVnYXRpdmUgZXJybm8gbnVtYmVycyBvbiBmYWls dXJlLgo+ICsgKi8KPiAraW50IGRybV9hdG9taWNfaGVscGVyX3BhZ2VfZmxpcChzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCj4gKwkJCQlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKPiArCQkJCXN0 cnVjdCBkcm1fcGVuZGluZ192YmxhbmtfZXZlbnQgKmV2ZW50LAo+ICsJCQkJdWludDMyX3QgZmxh Z3MpCj4gK3sKPiArCXN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lID0gY3J0Yy0+cHJpbWFyeTsKPiAr CXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKPiArCXN0cnVjdCBkcm1fcGxhbmVfc3Rh dGUgKnBsYW5lX3N0YXRlOwo+ICsJc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwo+ ICsJaW50IHJldCA9IDA7Cj4gKwo+ICsJaWYgKGZsYWdzICYgRFJNX01PREVfUEFHRV9GTElQX0FT WU5DKQo+ICsJCXJldHVybiAtRUlOVkFMOwo+ICsKPiArCXN0YXRlID0gZHJtX2F0b21pY19zdGF0 ZV9hbGxvYyhwbGFuZS0+ZGV2KTsKPiArCWlmICghc3RhdGUpCj4gKwkJcmV0dXJuIC1FTk9NRU07 Cj4gKwo+ICsJc3RhdGUtPmFjcXVpcmVfY3R4ID0gZHJtX21vZGVzZXRfbGVnYWN5X2FjcXVpcmVf Y3R4KGNydGMpOwo+ICtyZXRyeToKPiArCWNydGNfc3RhdGUgPSBkcm1fYXRvbWljX2dldF9jcnRj X3N0YXRlKHN0YXRlLCBjcnRjKTsKPiArCWlmIChJU19FUlIoY3J0Y19zdGF0ZSkpIHsKPiArCQly ZXQgPSBQVFJfRVJSKGNydGNfc3RhdGUpOwo+ICsJCWlmIChyZXQgPT0gLUVERUFETEspCj4gKwkJ CWdvdG8gYmFja29mZjsKPiArCQllbHNlCj4gKwkJCWdvdG8gZmFpbDsKPiArCX0KPiArCWNydGNf c3RhdGUtPmV2ZW50ID0gZXZlbnQ7Cj4gKwo+ICsJcGxhbmVfc3RhdGUgPSBkcm1fYXRvbWljX2dl dF9wbGFuZV9zdGF0ZShzdGF0ZSwgcGxhbmUpOwo+ICsJaWYgKElTX0VSUihwbGFuZV9zdGF0ZSkp IHsKPiArCQlyZXQgPSBQVFJfRVJSKHBsYW5lX3N0YXRlKTsKPiArCQlpZiAocmV0ID09IC1FREVB RExLKQo+ICsJCQlnb3RvIGJhY2tvZmY7Cj4gKwkJZWxzZQo+ICsJCQlnb3RvIGZhaWw7Cj4gKwl9 Cj4gKwo+ICsJcmV0ID0gZHJtX2F0b21pY19zZXRfY3J0Y19mb3JfcGxhbmUocGxhbmVfc3RhdGUs IGNydGMpOwo+ICsJaWYgKHJldCA9PSAtRURFQURMSykKPiArCQlnb3RvIGJhY2tvZmY7CgpUaGUg a2VybmVsZG9jIGZvciB0aGlzIGZ1bmN0aW9uIHN0YXRlcyB0aGF0IGl0IGNhbiByZXR1cm4gLUVO T01FTSB0b28KYW5kLCBldmVuIGlmIGl0IGRpZG4ndCwgdGhpcyBhcHByb2FjaCB0byBlcnJvciBo YW5kbGluZyBpcyBwb3RlbnRpYWxseQpmcmFnaWxlIGFzIHRoZSBrZXJuZWwgY2hhbmdlcy4KCgo+ ICsJcGxhbmVfc3RhdGUtPmZiID0gZmI7Cj4gKwo+ICsJcmV0ID0gZHJtX2F0b21pY19hc3luY19j b21taXQoc3RhdGUpOwo+ICsJaWYgKHJldCA9PSAtRURFQURMSykKPiArCQlnb3RvIGJhY2tvZmY7 CgpBIGZ1c3N5IHBvaW50IGJ1dCB0aGlzIHdvdWxkIGJlIGVhc2llciB0byByZWFkIGlmIGl0IGZv bGxvd2VkIHRoZSBzYW1lCnBhdHRlcm4gYXMgdGhlIGFib3ZlIGVycm9yIGNoZWNrcyB3aXRoIGEg ImdvdG8gZmFpbCIuIFRoZSB0aGUgc3VjY2VzcwpwYXRoIGJlbG93IGNhbiBiZSBvdXRkZW50ZWQg YW5kIG1hZGUgbW9yZSBvYnZpb3VzLgoKCj4gKwo+ICsJLyogRHJpdmVyIHRha2VzIG93bmVyc2hp cCBvZiBzdGF0ZSBvbiBzdWNjZXNzZnVsIGFzeW5jIGNvbW1pdC4gKi8KPiArCWlmIChyZXQgPT0g MCkgewo+ICsJCS8qIFRPRE86IC0+cGFnZV9mbGlwIGlzIHRoZSBvbmx5IGRyaXZlciBjYWxsYmFj ayB3aGVyZSB0aGUgY29yZQo+ICsJCSAqIGRvZXNuJ3QgdXBkYXRlIHBsYW5lLT5mYi4gRm9yIG5v dyBwYXRjaCBpdCB1cCBoZXJlLiAqLwo+ICsJCXBsYW5lLT5mYiA9IHBsYW5lLT5zdGF0ZS0+ZmI7 Cj4gKwo+ICsJCXJldHVybiAwOwo+ICsJfQo+ICsKPiArZmFpbDoKPiArCWRybV9hdG9taWNfc3Rh dGVfZnJlZShzdGF0ZSk7Cj4gKwo+ICsJcmV0dXJuIHJldDsKPiArYmFja29mZjoKPiArCWRybV9h dG9taWNfbGVnYWN5X2JhY2tvZmYoc3RhdGUpOwo+ICsJZHJtX2F0b21pY19zdGF0ZV9jbGVhcihz dGF0ZSk7Cj4gKwo+ICsJLyoKPiArCSAqIFNvbWVvbmUgbWlnaHQgaGF2ZSBleGNoYW5nZWQgdGhl IGZyYW1lYnVmZmVyIHdoaWxlIHdlIGRyb3BwZWQgbG9ja3MKPiArCSAqIGluIHRoZSBiYWNrb2Zm IGNvZGUuIFdlIG5lZWQgdG8gZml4IHVwIHRoZSBmYiByZWZjb3VudCB0cmFja2luZyB0aGUKPiAr CSAqIGNvcmUgZG9lcyBmb3IgdXMuCj4gKwkgKi8KPiArCXBsYW5lLT5vbGRfZmIgPSBwbGFuZS0+ ZmI7Cj4gKwo+ICsJZ290byByZXRyeTsKPiArfQo+ICtFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNf aGVscGVyX3BhZ2VfZmxpcCk7Cj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9hdG9taWNf aGVscGVyLmggYi9pbmNsdWRlL2RybS9kcm1fYXRvbWljX2hlbHBlci5oCj4gaW5kZXggOGNkNmZl N2E0OGU1Li4yOGEyZjNhODE1ZmQgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2F0b21p Y19oZWxwZXIuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9hdG9taWNfaGVscGVyLmgKPiBAQCAt NjksNSArNjksMTAgQEAgaW50IGRybV9hdG9taWNfaGVscGVyX3BsYW5lX3NldF9wcm9wZXJ0eShz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiAgaW50IGRybV9hdG9taWNfaGVscGVyX2Nvbm5lY3Rv cl9zZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiAgCQkJCQlz dHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wZXJ0eSwKPiAgCQkJCQl1aW50NjRfdCB2YWwpOwo+ICtp bnQgZHJtX2F0b21pY19oZWxwZXJfcGFnZV9mbGlwKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAr CQkJCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAo+ICsJCQkJc3RydWN0IGRybV9wZW5kaW5n X3ZibGFua19ldmVudCAqZXZlbnQsCj4gKwkJCQl1aW50MzJfdCBmbGFncyk7Cj4gKwo+ICAKPiAg I2VuZGlmIC8qIERSTV9BVE9NSUNfSEVMUEVSX0hfICovCj4gCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=