From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH 3/4] drm/amd/display: Switch to using atomic_helper for flip. Date: Tue, 17 Jan 2017 00:16:45 +0200 Message-ID: <2158092.LKM1DbUVy7@avalon> References: <1484581498-32309-1-git-send-email-Andrey.Grodzovsky@amd.com> <1484581498-32309-4-git-send-email-Andrey.Grodzovsky@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1484581498-32309-4-git-send-email-Andrey.Grodzovsky@amd.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: Alexander.Deucher@amd.com, daniel.vetter@intel.com, amd-gfx@lists.freedesktop.org, nouveau@lists.freedesktop.org List-Id: nouveau.vger.kernel.org SGkgQW5kcmV5LAoKVGhhbmsgeW91IGZvciB0aGUgcGF0Y2guCgpPbiBNb25kYXkgMTYgSmFuIDIw MTcgMTA6NDQ6NTcgQW5kcmV5IEdyb2R6b3Zza3kgd3JvdGU6Cj4gQ2hhbmdlLUlkOiBJYWQzZTBi OWIzNTQ2ZTRlNGRjNzliZTkyMzNkYWY0ZmU0ZGJhODNlMAo+IFNpZ25lZC1vZmYtYnk6IEFuZHJl eSBHcm9kem92c2t5IDxBbmRyZXkuR3JvZHpvdnNreUBhbWQuY29tPgo+IC0tLQo+ICAuLi4vZHJt L2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG1fdHlwZXMuYyAgICB8IDkyICsrLS0tLS0t LS0tLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA4NiBkZWxldGlv bnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdw dV9kbS9hbWRncHVfZG1fdHlwZXMuYwo+IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2Ft ZGdwdV9kbS9hbWRncHVfZG1fdHlwZXMuYyBpbmRleAo+IGE0NDNiNzAuLmQ0NjY0YmYgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG1f dHlwZXMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1k Z3B1X2RtX3R5cGVzLmMKPiBAQCAtMTA2MCw4MyArMTA2MCw2IEBAIHN0YXRpYyBpbnQgZG1fY3J0 Y19mdW5jc19hdG9taWNfc2V0X3Byb3BlcnR5KAo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAKPiAtCj4g LXN0YXRpYyBpbnQgYW1kZ3B1X2F0b21pY19oZWxwZXJfcGFnZV9mbGlwKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YywKPiAtCQkJCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAo+IC0JCQkJc3RydWN0 IGRybV9wZW5kaW5nX3ZibGFua19ldmVudCAqZXZlbnQsCj4gLQkJCQl1aW50MzJfdCBmbGFncykK PiAtewo+IC0Jc3RydWN0IGRybV9wbGFuZSAqcGxhbmUgPSBjcnRjLT5wcmltYXJ5Owo+IC0Jc3Ry dWN0IGFtZGdwdV9jcnRjICphY3J0YyA9IHRvX2FtZGdwdV9jcnRjKGNydGMpOwo+IC0Jc3RydWN0 IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlOwo+IC0Jc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxh bmVfc3RhdGU7Cj4gLQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGU7Cj4gLQlpbnQg cmV0ID0gMDsKPiAtCj4gLQlzdGF0ZSA9IGRybV9hdG9taWNfc3RhdGVfYWxsb2MocGxhbmUtPmRl dik7Cj4gLQlpZiAoIXN0YXRlKQo+IC0JCXJldHVybiAtRU5PTUVNOwo+IC0KPiAtCXJldCA9IGRy bV9jcnRjX3ZibGFua19nZXQoY3J0Yyk7CgpUaGUgRFJNIGNvcmUncyBhdG9taWMgcGFnZSBmbGlw IGhlbHBlciBkb2Vzbid0IGdldC9wdXQgdmJsYW5rLiBIYXZlIHlvdSAKZG91YmxlLWNoZWNrZWQg dGhhdCByZW1vdmluZyB0aGVtIGlzbid0IGEgcHJvYmxlbSA/Cgo+IC0JaWYgKHJldCkKPiAtCQly ZXR1cm4gcmV0Owo+IC0KPiAtCXN0YXRlLT5hY3F1aXJlX2N0eCA9IGRybV9tb2Rlc2V0X2xlZ2Fj eV9hY3F1aXJlX2N0eChjcnRjKTsKPiAtcmV0cnk6Cj4gLQljcnRjX3N0YXRlID0gZHJtX2F0b21p Y19nZXRfY3J0Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7Cj4gLQlpZiAoSVNfRVJSKGNydGNfc3RhdGUp KSB7Cj4gLQkJcmV0ID0gUFRSX0VSUihjcnRjX3N0YXRlKTsKPiAtCQlnb3RvIGZhaWw7Cj4gLQl9 Cj4gLQljcnRjX3N0YXRlLT5ldmVudCA9IGV2ZW50Owo+IC0KPiAtCXBsYW5lX3N0YXRlID0gZHJt X2F0b21pY19nZXRfcGxhbmVfc3RhdGUoc3RhdGUsIHBsYW5lKTsKPiAtCWlmIChJU19FUlIocGxh bmVfc3RhdGUpKSB7Cj4gLQkJcmV0ID0gUFRSX0VSUihwbGFuZV9zdGF0ZSk7Cj4gLQkJZ290byBm YWlsOwo+IC0JfQo+IC0KPiAtCXJldCA9IGRybV9hdG9taWNfc2V0X2NydGNfZm9yX3BsYW5lKHBs YW5lX3N0YXRlLCBjcnRjKTsKPiAtCWlmIChyZXQgIT0gMCkKPiAtCQlnb3RvIGZhaWw7Cj4gLQlk cm1fYXRvbWljX3NldF9mYl9mb3JfcGxhbmUocGxhbmVfc3RhdGUsIGZiKTsKPiAtCj4gLQkvKiBN YWtlIHN1cmUgd2UgZG9uJ3QgYWNjaWRlbnRhbGx5IGRvIGEgZnVsbCBtb2Rlc2V0LiAqLwo+IC0J c3RhdGUtPmFsbG93X21vZGVzZXQgPSBmYWxzZTsKPiAtCWlmICghY3J0Y19zdGF0ZS0+YWN0aXZl KSB7Cj4gLQkJRFJNX0RFQlVHX0FUT01JQygiW0NSVEM6JWRdIGRpc2FibGVkLCByZWplY3Rpbmcg bGVnYWN5IApmbGlwXG4iLAo+IC0JCQkJIGNydGMtPmJhc2UuaWQpOwo+IC0JCXJldCA9IC1FSU5W QUw7Cj4gLQkJZ290byBmYWlsOwo+IC0JfQo+IC0JYWNydGMtPmZsaXBfZmxhZ3MgPSBmbGFnczsK PiAtCj4gLQlyZXQgPSBkcm1fYXRvbWljX25vbmJsb2NraW5nX2NvbW1pdChzdGF0ZSk7Cj4gLQo+ IC1mYWlsOgo+IC0JaWYgKHJldCA9PSAtRURFQURMSykKPiAtCQlnb3RvIGJhY2tvZmY7Cj4gLQo+ IC0JaWYgKHJldCkKPiAtCQlkcm1fY3J0Y192YmxhbmtfcHV0KGNydGMpOwo+IC0KPiAtCWRybV9h dG9taWNfc3RhdGVfcHV0KHN0YXRlKTsKPiAtCj4gLQlyZXR1cm4gcmV0Owo+IC1iYWNrb2ZmOgo+ IC0JZHJtX2F0b21pY19zdGF0ZV9jbGVhcihzdGF0ZSk7Cj4gLQlkcm1fYXRvbWljX2xlZ2FjeV9i YWNrb2ZmKHN0YXRlKTsKPiAtCj4gLQkvKgo+IC0JICogU29tZW9uZSBtaWdodCBoYXZlIGV4Y2hh bmdlZCB0aGUgZnJhbWVidWZmZXIgd2hpbGUgd2UgZHJvcHBlZCBsb2Nrcwo+IC0JICogaW4gdGhl IGJhY2tvZmYgY29kZS4gV2UgbmVlZCB0byBmaXggdXAgdGhlIGZiIHJlZmNvdW50IHRyYWNraW5n IHRoZQo+IC0JICogY29yZSBkb2VzIGZvciB1cy4KPiAtCSAqLwo+IC0JcGxhbmUtPm9sZF9mYiA9 IHBsYW5lLT5mYjsKPiAtCj4gLQlnb3RvIHJldHJ5Owo+IC19Cj4gLQo+ICAvKiBJbXBsZW1lbnRl ZCBvbmx5IHRoZSBvcHRpb25zIGN1cnJlbnRseSBhdmFpbGlibGUgZm9yIHRoZSBkcml2ZXIgKi8K PiAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19mdW5jcyBhbWRncHVfZG1fY3J0Y19mdW5j cyA9IHsKPiAgCS5yZXNldCA9IGRybV9hdG9taWNfaGVscGVyX2NydGNfcmVzZXQsCj4gQEAgLTEx NDUsNyArMTA2OCw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2F0b21pY19oZWxwZXJfcGFnZV9mbGlw KHN0cnVjdAo+IGRybV9jcnRjICpjcnRjLCAuZGVzdHJveSA9IGFtZGdwdV9kbV9jcnRjX2Rlc3Ry b3ksCj4gIAkuZ2FtbWFfc2V0ID0gYW1kZ3B1X2RtX2F0b21pY19jcnRjX2dhbW1hX3NldCwKPiAg CS5zZXRfY29uZmlnID0gZHJtX2F0b21pY19oZWxwZXJfc2V0X2NvbmZpZywKPiAtCS5wYWdlX2Zs aXAgPSBhbWRncHVfYXRvbWljX2hlbHBlcl9wYWdlX2ZsaXAsCj4gKwkucGFnZV9mbGlwX3Rhcmdl dCA9IGRybV9hdG9taWNfaGVscGVyX3BhZ2VfZmxpcF90YXJnZXQsCj4gIAkuYXRvbWljX2R1cGxp Y2F0ZV9zdGF0ZSA9IGRybV9hdG9taWNfaGVscGVyX2NydGNfZHVwbGljYXRlX3N0YXRlLAo+ICAJ LmF0b21pY19kZXN0cm95X3N0YXRlID0gZHJtX2F0b21pY19oZWxwZXJfY3J0Y19kZXN0cm95X3N0 YXRlLAo+ICAJLmF0b21pY19zZXRfcHJvcGVydHkgPSBkbV9jcnRjX2Z1bmNzX2F0b21pY19zZXRf cHJvcGVydHkKPiBAQCAtMTY3OSw3ICsxNjAyLDcgQEAgc3RhdGljIGJvb2wgcGFnZV9mbGlwX25l ZWRlZCgKPiAgCQkJCSAgICBzaXplb2Yob2xkX3N0YXRlX3RtcCkpID09IDAgPyB0cnVlOmZhbHNl Owo+ICAJaWYgKG5ld19zdGF0ZS0+Y3J0YyAmJiBwYWdlX2ZsaXBfcmVxdWlyZWQgPT0gZmFsc2Up IHsKPiAgCQlhY3J0Y19uZXcgPSB0b19hbWRncHVfY3J0YyhuZXdfc3RhdGUtPmNydGMpOwo+IC0J CWlmIChhY3J0Y19uZXctPmZsaXBfZmxhZ3MgJiBEUk1fTU9ERV9QQUdFX0ZMSVBfQVNZTkMpCj4g KwkJaWYgKG5ld19zdGF0ZS0+cGZsaXBfZmxhZ3MgJiBEUk1fTU9ERV9QQUdFX0ZMSVBfQVNZTkMp Cj4gIAkJCXBhZ2VfZmxpcF9yZXF1aXJlZCA9IHRydWU7Cj4gIAl9Cj4gIAlyZXR1cm4gcGFnZV9m bGlwX3JlcXVpcmVkOwo+IEBAIC0yNzYwLDcgKzI2ODMsNiBAQCBpbnQgYW1kZ3B1X2RtX2F0b21p Y19jb21taXQoCj4gIAlmb3JfZWFjaF9wbGFuZV9pbl9zdGF0ZShzdGF0ZSwgcGxhbmUsIG9sZF9w bGFuZV9zdGF0ZSwgaSkgewo+ICAJCXN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRl ID0gcGxhbmUtPnN0YXRlOwo+ICAJCXN0cnVjdCBkcm1fY3J0YyAqY3J0YyA9IHBsYW5lX3N0YXRl LT5jcnRjOwo+IC0JCXN0cnVjdCBhbWRncHVfY3J0YyAqYWNydGMgPSB0b19hbWRncHVfY3J0Yyhj cnRjKTsKPiAgCQlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHBsYW5lX3N0YXRlLT5mYjsK PiAKPiAgCQlpZiAoIWZiIHx8ICFjcnRjIHx8ICFjcnRjLT5zdGF0ZS0+cGxhbmVzX2NoYW5nZWQg fHwKPiBAQCAtMjc3MSwxMCArMjY5Myw5IEBAIGludCBhbWRncHVfZG1fYXRvbWljX2NvbW1pdCgK PiAgCQkJcmV0ID0gYW1kZ3B1X2NydGNfcGFnZV9mbGlwX3RhcmdldChjcnRjLAo+ICAJCQkJCQkJ ICAgZmIsCj4gIAkJCQkJCQkgICBjcnRjLT5zdGF0ZS0+ZXZlbnQsCj4gLQkJCQkJCQkgICBhY3J0 Yy0+ZmxpcF9mbGFncywKPiAtCQkJCQkJCSAgIApkcm1fY3J0Y192YmxhbmtfY291bnQoY3J0Yykp Owo+IC0JCQkvKmNsZWFuIHVwIHRoZSBmbGFncyBmb3IgbmV4dCB1c2FnZSovCj4gLQkJCWFjcnRj LT5mbGlwX2ZsYWdzID0gMDsKPiArCQkJCQkJCSAgIHBsYW5lX3N0YXRlLQo+cGZsaXBfZmxhZ3Ms Cj4gKwkJCQkJCQkgICBjcnRjLT5zdGF0ZS0KPnRhcmdldF92YmxhbmspOwo+ICsKPiAgCQkJaWYg KHJldCkKPiAgCQkJCWJyZWFrOwo+ICAJCX0KPiBAQCAtMzE0Myw4ICszMDY0LDcgQEAgaW50IGFt ZGdwdV9kbV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCQkJICogMS4g VGhpcyBjb21taXQgaXMgbm90IGEgcGFnZSBmbGlwLgo+ICAJCQkgKiAyLiBUaGlzIGNvbW1pdCBp cyBhIHBhZ2UgZmxpcCwgYW5kIHRhcmdldHMgYXJlIApjcmVhdGVkLgo+ICAJCQkgKi8KPiAtCQkJ aWYgKCFwYWdlX2ZsaXBfbmVlZGVkKHBsYW5lX3N0YXRlLCBvbGRfcGxhbmVfc3RhdGUsCj4gLQkJ CQkJICAgICAgdHJ1ZSkgfHwKPiArCQkJaWYgKCFwYWdlX2ZsaXBfbmVlZGVkKHBsYW5lX3N0YXRl LCBvbGRfcGxhbmVfc3RhdGUsIAp0cnVlKSB8fAoKVGhpcyBzZWVtcyB0byBiZSBhbiB1bnJlbGF0 ZWQgY2hhbmdlLgoKPiAgCQkJCQlhY3Rpb24gPT0gRE1fQ09NTUlUX0FDVElPTl9EUE1TX09OIHx8 Cj4gIAkJCQkJYWN0aW9uID09IERNX0NPTU1JVF9BQ1RJT05fU0VUKSB7Cj4gIAkJCQlzdHJ1Y3Qg ZGNfc3VyZmFjZSAqc3VyZmFjZTsKCi0tIApSZWdhcmRzLAoKTGF1cmVudCBQaW5jaGFydAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1h aWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==