From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrey Grodzovsky Subject: [PATCH 3/4] drm/amd/display: Switch to using atomic_helper for flip. Date: Mon, 16 Jan 2017 10:44:57 -0500 Message-ID: <1484581498-32309-4-git-send-email-Andrey.Grodzovsky@amd.com> References: <1484581498-32309-1-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-1-git-send-email-Andrey.Grodzovsky-5C7GfCeVMHo@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Andrey Grodzovsky , nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Alexander.Deucher-5C7GfCeVMHo@public.gmane.org, daniel.vetter-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org, Harry.Wentland-5C7GfCeVMHo@public.gmane.org List-Id: nouveau.vger.kernel.org Q2hhbmdlLUlkOiBJYWQzZTBiOWIzNTQ2ZTRlNGRjNzliZTkyMzNkYWY0ZmU0ZGJhODNlMApTaWdu ZWQtb2ZmLWJ5OiBBbmRyZXkgR3JvZHpvdnNreSA8QW5kcmV5Lkdyb2R6b3Zza3lAYW1kLmNvbT4K LS0tCiAuLi4vZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG1fdHlwZXMuYyAgICB8 IDkyICsrLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMo KyksIDg2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlz cGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtX3R5cGVzLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rp c3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbV90eXBlcy5jCmluZGV4IGE0NDNiNzAuLmQ0NjY0YmYg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1 X2RtX3R5cGVzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9h bWRncHVfZG1fdHlwZXMuYwpAQCAtMTA2MCw4MyArMTA2MCw2IEBAIHN0YXRpYyBpbnQgZG1fY3J0 Y19mdW5jc19hdG9taWNfc2V0X3Byb3BlcnR5KAogCXJldHVybiAwOwogfQogCi0KLXN0YXRpYyBp bnQgYW1kZ3B1X2F0b21pY19oZWxwZXJfcGFnZV9mbGlwKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK LQkJCQlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKLQkJCQlzdHJ1Y3QgZHJtX3BlbmRpbmdf dmJsYW5rX2V2ZW50ICpldmVudCwKLQkJCQl1aW50MzJfdCBmbGFncykKLXsKLQlzdHJ1Y3QgZHJt X3BsYW5lICpwbGFuZSA9IGNydGMtPnByaW1hcnk7Ci0Jc3RydWN0IGFtZGdwdV9jcnRjICphY3J0 YyA9IHRvX2FtZGdwdV9jcnRjKGNydGMpOwotCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0 ZTsKLQlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKLQlzdHJ1Y3QgZHJtX2Ny dGNfc3RhdGUgKmNydGNfc3RhdGU7Ci0JaW50IHJldCA9IDA7Ci0KLQlzdGF0ZSA9IGRybV9hdG9t aWNfc3RhdGVfYWxsb2MocGxhbmUtPmRldik7Ci0JaWYgKCFzdGF0ZSkKLQkJcmV0dXJuIC1FTk9N RU07Ci0KLQlyZXQgPSBkcm1fY3J0Y192YmxhbmtfZ2V0KGNydGMpOwotCWlmIChyZXQpCi0JCXJl dHVybiByZXQ7Ci0KLQlzdGF0ZS0+YWNxdWlyZV9jdHggPSBkcm1fbW9kZXNldF9sZWdhY3lfYWNx dWlyZV9jdHgoY3J0Yyk7Ci1yZXRyeToKLQljcnRjX3N0YXRlID0gZHJtX2F0b21pY19nZXRfY3J0 Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7Ci0JaWYgKElTX0VSUihjcnRjX3N0YXRlKSkgewotCQlyZXQg PSBQVFJfRVJSKGNydGNfc3RhdGUpOwotCQlnb3RvIGZhaWw7Ci0JfQotCWNydGNfc3RhdGUtPmV2 ZW50ID0gZXZlbnQ7Ci0KLQlwbGFuZV9zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X3BsYW5lX3N0YXRl KHN0YXRlLCBwbGFuZSk7Ci0JaWYgKElTX0VSUihwbGFuZV9zdGF0ZSkpIHsKLQkJcmV0ID0gUFRS X0VSUihwbGFuZV9zdGF0ZSk7Ci0JCWdvdG8gZmFpbDsKLQl9Ci0KLQlyZXQgPSBkcm1fYXRvbWlj X3NldF9jcnRjX2Zvcl9wbGFuZShwbGFuZV9zdGF0ZSwgY3J0Yyk7Ci0JaWYgKHJldCAhPSAwKQot CQlnb3RvIGZhaWw7Ci0JZHJtX2F0b21pY19zZXRfZmJfZm9yX3BsYW5lKHBsYW5lX3N0YXRlLCBm Yik7Ci0KLQkvKiBNYWtlIHN1cmUgd2UgZG9uJ3QgYWNjaWRlbnRhbGx5IGRvIGEgZnVsbCBtb2Rl c2V0LiAqLwotCXN0YXRlLT5hbGxvd19tb2Rlc2V0ID0gZmFsc2U7Ci0JaWYgKCFjcnRjX3N0YXRl LT5hY3RpdmUpIHsKLQkJRFJNX0RFQlVHX0FUT01JQygiW0NSVEM6JWRdIGRpc2FibGVkLCByZWpl Y3RpbmcgbGVnYWN5IGZsaXBcbiIsCi0JCQkJIGNydGMtPmJhc2UuaWQpOwotCQlyZXQgPSAtRUlO VkFMOwotCQlnb3RvIGZhaWw7Ci0JfQotCWFjcnRjLT5mbGlwX2ZsYWdzID0gZmxhZ3M7Ci0KLQly ZXQgPSBkcm1fYXRvbWljX25vbmJsb2NraW5nX2NvbW1pdChzdGF0ZSk7Ci0KLWZhaWw6Ci0JaWYg KHJldCA9PSAtRURFQURMSykKLQkJZ290byBiYWNrb2ZmOwotCi0JaWYgKHJldCkKLQkJZHJtX2Ny dGNfdmJsYW5rX3B1dChjcnRjKTsKLQotCWRybV9hdG9taWNfc3RhdGVfcHV0KHN0YXRlKTsKLQot CXJldHVybiByZXQ7Ci1iYWNrb2ZmOgotCWRybV9hdG9taWNfc3RhdGVfY2xlYXIoc3RhdGUpOwot CWRybV9hdG9taWNfbGVnYWN5X2JhY2tvZmYoc3RhdGUpOwotCi0JLyoKLQkgKiBTb21lb25lIG1p Z2h0IGhhdmUgZXhjaGFuZ2VkIHRoZSBmcmFtZWJ1ZmZlciB3aGlsZSB3ZSBkcm9wcGVkIGxvY2tz Ci0JICogaW4gdGhlIGJhY2tvZmYgY29kZS4gV2UgbmVlZCB0byBmaXggdXAgdGhlIGZiIHJlZmNv dW50IHRyYWNraW5nIHRoZQotCSAqIGNvcmUgZG9lcyBmb3IgdXMuCi0JICovCi0JcGxhbmUtPm9s ZF9mYiA9IHBsYW5lLT5mYjsKLQotCWdvdG8gcmV0cnk7Ci19Ci0KIC8qIEltcGxlbWVudGVkIG9u bHkgdGhlIG9wdGlvbnMgY3VycmVudGx5IGF2YWlsaWJsZSBmb3IgdGhlIGRyaXZlciAqLwogc3Rh dGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19mdW5jcyBhbWRncHVfZG1fY3J0Y19mdW5jcyA9IHsK IAkucmVzZXQgPSBkcm1fYXRvbWljX2hlbHBlcl9jcnRjX3Jlc2V0LApAQCAtMTE0NSw3ICsxMDY4 LDcgQEAgc3RhdGljIGludCBhbWRncHVfYXRvbWljX2hlbHBlcl9wYWdlX2ZsaXAoc3RydWN0IGRy bV9jcnRjICpjcnRjLAogCS5kZXN0cm95ID0gYW1kZ3B1X2RtX2NydGNfZGVzdHJveSwKIAkuZ2Ft bWFfc2V0ID0gYW1kZ3B1X2RtX2F0b21pY19jcnRjX2dhbW1hX3NldCwKIAkuc2V0X2NvbmZpZyA9 IGRybV9hdG9taWNfaGVscGVyX3NldF9jb25maWcsCi0JLnBhZ2VfZmxpcCA9IGFtZGdwdV9hdG9t aWNfaGVscGVyX3BhZ2VfZmxpcCwKKwkucGFnZV9mbGlwX3RhcmdldCA9IGRybV9hdG9taWNfaGVs cGVyX3BhZ2VfZmxpcF90YXJnZXQsCiAJLmF0b21pY19kdXBsaWNhdGVfc3RhdGUgPSBkcm1fYXRv bWljX2hlbHBlcl9jcnRjX2R1cGxpY2F0ZV9zdGF0ZSwKIAkuYXRvbWljX2Rlc3Ryb3lfc3RhdGUg PSBkcm1fYXRvbWljX2hlbHBlcl9jcnRjX2Rlc3Ryb3lfc3RhdGUsCiAJLmF0b21pY19zZXRfcHJv cGVydHkgPSBkbV9jcnRjX2Z1bmNzX2F0b21pY19zZXRfcHJvcGVydHkKQEAgLTE2NzksNyArMTYw Miw3IEBAIHN0YXRpYyBib29sIHBhZ2VfZmxpcF9uZWVkZWQoCiAJCQkJICAgIHNpemVvZihvbGRf c3RhdGVfdG1wKSkgPT0gMCA/IHRydWU6ZmFsc2U7CiAJaWYgKG5ld19zdGF0ZS0+Y3J0YyAmJiBw YWdlX2ZsaXBfcmVxdWlyZWQgPT0gZmFsc2UpIHsKIAkJYWNydGNfbmV3ID0gdG9fYW1kZ3B1X2Ny dGMobmV3X3N0YXRlLT5jcnRjKTsKLQkJaWYgKGFjcnRjX25ldy0+ZmxpcF9mbGFncyAmIERSTV9N T0RFX1BBR0VfRkxJUF9BU1lOQykKKwkJaWYgKG5ld19zdGF0ZS0+cGZsaXBfZmxhZ3MgJiBEUk1f TU9ERV9QQUdFX0ZMSVBfQVNZTkMpCiAJCQlwYWdlX2ZsaXBfcmVxdWlyZWQgPSB0cnVlOwogCX0K IAlyZXR1cm4gcGFnZV9mbGlwX3JlcXVpcmVkOwpAQCAtMjc2MCw3ICsyNjgzLDYgQEAgaW50IGFt ZGdwdV9kbV9hdG9taWNfY29tbWl0KAogCWZvcl9lYWNoX3BsYW5lX2luX3N0YXRlKHN0YXRlLCBw bGFuZSwgb2xkX3BsYW5lX3N0YXRlLCBpKSB7CiAJCXN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnBs YW5lX3N0YXRlID0gcGxhbmUtPnN0YXRlOwogCQlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSBwbGFu ZV9zdGF0ZS0+Y3J0YzsKLQkJc3RydWN0IGFtZGdwdV9jcnRjICphY3J0YyA9IHRvX2FtZGdwdV9j cnRjKGNydGMpOwogCQlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHBsYW5lX3N0YXRlLT5m YjsKIAogCQlpZiAoIWZiIHx8ICFjcnRjIHx8ICFjcnRjLT5zdGF0ZS0+cGxhbmVzX2NoYW5nZWQg fHwKQEAgLTI3NzEsMTAgKzI2OTMsOSBAQCBpbnQgYW1kZ3B1X2RtX2F0b21pY19jb21taXQoCiAJ CQlyZXQgPSBhbWRncHVfY3J0Y19wYWdlX2ZsaXBfdGFyZ2V0KGNydGMsCiAJCQkJCQkJICAgZmIs CiAJCQkJCQkJICAgY3J0Yy0+c3RhdGUtPmV2ZW50LAotCQkJCQkJCSAgIGFjcnRjLT5mbGlwX2Zs YWdzLAotCQkJCQkJCSAgIGRybV9jcnRjX3ZibGFua19jb3VudChjcnRjKSk7Ci0JCQkvKmNsZWFu IHVwIHRoZSBmbGFncyBmb3IgbmV4dCB1c2FnZSovCi0JCQlhY3J0Yy0+ZmxpcF9mbGFncyA9IDA7 CisJCQkJCQkJICAgcGxhbmVfc3RhdGUtPnBmbGlwX2ZsYWdzLAorCQkJCQkJCSAgIGNydGMtPnN0 YXRlLT50YXJnZXRfdmJsYW5rKTsKKwogCQkJaWYgKHJldCkKIAkJCQlicmVhazsKIAkJfQpAQCAt MzE0Myw4ICszMDY0LDcgQEAgaW50IGFtZGdwdV9kbV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9k ZXZpY2UgKmRldiwKIAkJCSAqIDEuIFRoaXMgY29tbWl0IGlzIG5vdCBhIHBhZ2UgZmxpcC4KIAkJ CSAqIDIuIFRoaXMgY29tbWl0IGlzIGEgcGFnZSBmbGlwLCBhbmQgdGFyZ2V0cyBhcmUgY3JlYXRl ZC4KIAkJCSAqLwotCQkJaWYgKCFwYWdlX2ZsaXBfbmVlZGVkKHBsYW5lX3N0YXRlLCBvbGRfcGxh bmVfc3RhdGUsCi0JCQkJCSAgICAgIHRydWUpIHx8CisJCQlpZiAoIXBhZ2VfZmxpcF9uZWVkZWQo cGxhbmVfc3RhdGUsIG9sZF9wbGFuZV9zdGF0ZSwgdHJ1ZSkgfHwKIAkJCQkJYWN0aW9uID09IERN X0NPTU1JVF9BQ1RJT05fRFBNU19PTiB8fAogCQkJCQlhY3Rpb24gPT0gRE1fQ09NTUlUX0FDVElP Tl9TRVQpIHsKIAkJCQlzdHJ1Y3QgZGNfc3VyZmFjZSAqc3VyZmFjZTsKLS0gCjEuOS4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxp bmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK