From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrey Grodzovsky Subject: [PATCH v4 2/3] drm/nouveau/kms/nv50: Switch to using atomic helper for flip. Date: Wed, 1 Feb 2017 12:03:35 -0500 Message-ID: <1485968616-4296-3-git-send-email-Andrey.Grodzovsky@amd.com> References: <1485968616-4296-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: <1485968616-4296-1-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: dc_upstream@amd.com, nouveau@lists.freedesktop.org, amd-gfx@lists.freedesktop.org, laurent.pinchart@ideasonboard.com, daniel.vetter@intel.com List-Id: amd-gfx.lists.freedesktop.org djI6ClVwZGF0ZSBjb2RlIGFmdGVyIGZsaXBfZmxhZ3MgbW92ZWQgZnJvbSBwbGFuZV9zdGF0ZQp0 byBjcnRjX3N0YXRlCgpDaGFuZ2UtSWQ6IEk1YTMxODljMDNlMzg5YWYyZmY2YzEzZDg3MGE3ZDI4 MjgyYjdiMGVlClNpZ25lZC1vZmYtYnk6IEFuZHJleSBHcm9kem92c2t5IDxBbmRyZXkuR3JvZHpv dnNreUBhbWQuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252NTBfZGlzcGxheS5j IHwgODQgKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQs IDEwIGluc2VydGlvbnMoKyksIDc0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9ub3V2ZWF1L252NTBfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUv bnY1MF9kaXNwbGF5LmMKaW5kZXggMmMyYzY0NS4uMGQxOTRhZSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL25vdXZlYXUvbnY1MF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL25v dXZlYXUvbnY1MF9kaXNwbGF5LmMKQEAgLTgzMSw3ICs4MzEsOCBAQCBzdHJ1Y3QgbnY1MF93bmR3 X2Z1bmMgewogc3RhdGljIGludAogbnY1MF93bmR3X2F0b21pY19jaGVja19hY3F1aXJlKHN0cnVj dCBudjUwX3duZHcgKnduZHcsCiAJCQkgICAgICAgc3RydWN0IG52NTBfd25kd19hdG9tICphc3l3 LAotCQkJICAgICAgIHN0cnVjdCBudjUwX2hlYWRfYXRvbSAqYXN5aCkKKwkJCSAgICAgICBzdHJ1 Y3QgbnY1MF9oZWFkX2F0b20gKmFzeWgsCisJCQkgICAgICAgdTMyIHBmbGlwX2ZsYWdzKQogewog CXN0cnVjdCBub3V2ZWF1X2ZyYW1lYnVmZmVyICpmYiA9IG5vdXZlYXVfZnJhbWVidWZmZXIoYXN5 dy0+c3RhdGUuZmIpOwogCXN0cnVjdCBub3V2ZWF1X2RybSAqZHJtID0gbm91dmVhdV9kcm0od25k dy0+cGxhbmUuZGV2KTsKQEAgLTg0Niw2ICs4NDcsOSBAQCBzdHJ1Y3QgbnY1MF93bmR3X2Z1bmMg ewogCWFzeXctPmltYWdlLncgPSBmYi0+YmFzZS53aWR0aDsKIAlhc3l3LT5pbWFnZS5oID0gZmIt PmJhc2UuaGVpZ2h0OwogCWFzeXctPmltYWdlLmtpbmQgPSAoZmItPm52Ym8tPnRpbGVfZmxhZ3Mg JiAweDAwMDBmZjAwKSA+PiA4OworCisJYXN5dy0+aW50ZXJ2YWwgPSBwZmxpcF9mbGFncyAmIERS TV9NT0RFX1BBR0VfRkxJUF9BU1lOQyA/IDAgOiAxOworCiAJaWYgKGFzeXctPmltYWdlLmtpbmQp IHsKIAkJYXN5dy0+aW1hZ2UubGF5b3V0ID0gMDsKIAkJaWYgKGRybS0+ZGV2aWNlLmluZm8uY2hp cHNldCA+PSAweGMwKQpAQCAtODgzLDYgKzg4Nyw3IEBAIHN0cnVjdCBudjUwX3duZHdfZnVuYyB7 CiAJc3RydWN0IG52NTBfaGVhZF9hdG9tICpoYXJtID0gTlVMTCwgKmFzeWggPSBOVUxMOwogCWJv b2wgdmFybSA9IGZhbHNlLCBhc3l2ID0gZmFsc2UsIGFzeW0gPSBmYWxzZTsKIAlpbnQgcmV0Owor CXUzMiBwZmxpcF9mbGFncyA9IDA7CiAKIAlOVl9BVE9NSUMoZHJtLCAiJXMgYXRvbWljX2NoZWNr XG4iLCBwbGFuZS0+bmFtZSk7CiAJaWYgKGFzeXctPnN0YXRlLmNydGMpIHsKQEAgLTg5MSw2ICs4 OTYsNyBAQCBzdHJ1Y3QgbnY1MF93bmR3X2Z1bmMgewogCQkJcmV0dXJuIFBUUl9FUlIoYXN5aCk7 CiAJCWFzeW0gPSBkcm1fYXRvbWljX2NydGNfbmVlZHNfbW9kZXNldCgmYXN5aC0+c3RhdGUpOwog CQlhc3l2ID0gYXN5aC0+c3RhdGUuYWN0aXZlOworCQlwZmxpcF9mbGFncyA9IGFzeWgtPnN0YXRl LnBmbGlwX2ZsYWdzOwogCX0KIAogCWlmIChhcm13LT5zdGF0ZS5jcnRjKSB7CkBAIC05MDcsNyAr OTEzLDggQEAgc3RydWN0IG52NTBfd25kd19mdW5jIHsKIAkJCWFzeXctPnNldC5wb2ludCA9IHRy dWU7CiAKIAkJaWYgKCF2YXJtIHx8IGFzeW0gfHwgYXJtdy0+c3RhdGUuZmIgIT0gYXN5dy0+c3Rh dGUuZmIpIHsKLQkJCXJldCA9IG52NTBfd25kd19hdG9taWNfY2hlY2tfYWNxdWlyZSh3bmR3LCBh c3l3LCBhc3loKTsKKwkJCXJldCA9IG52NTBfd25kd19hdG9taWNfY2hlY2tfYWNxdWlyZSgKKwkJ CQkJd25kdywgYXN5dywgYXN5aCwgcGZsaXBfZmxhZ3MpOwogCQkJaWYgKHJldCkKIAkJCQlyZXR1 cm4gcmV0OwogCQl9CkBAIC0yMjIxLDc3ICsyMjI4LDYgQEAgc3RydWN0IG52NTBfYmFzZSB7CiAJ LmF0b21pY19jaGVjayA9IG52NTBfaGVhZF9hdG9taWNfY2hlY2ssCiB9OwogCi0vKiBUaGlzIGlz IGlkZW50aWNhbCB0byB0aGUgdmVyc2lvbiBpbiB0aGUgYXRvbWljIGhlbHBlcnMsIGV4Y2VwdCB0 aGF0Ci0gKiBpdCBzdXBwb3J0cyBub24tdmJsYW5rZWQgKCJhc3luYyIpIHBhZ2UgZmxpcHMuCi0g Ki8KLXN0YXRpYyBpbnQKLW52NTBfaGVhZF9wYWdlX2ZsaXAoc3RydWN0IGRybV9jcnRjICpjcnRj LCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKLQkJICAgIHN0cnVjdCBkcm1fcGVuZGluZ192 YmxhbmtfZXZlbnQgKmV2ZW50LCB1MzIgZmxhZ3MpCi17Ci0Jc3RydWN0IGRybV9wbGFuZSAqcGxh bmUgPSBjcnRjLT5wcmltYXJ5OwotCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKLQlz dHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKLQlzdHJ1Y3QgZHJtX2NydGNfc3Rh dGUgKmNydGNfc3RhdGU7Ci0JaW50IHJldCA9IDA7Ci0KLQlzdGF0ZSA9IGRybV9hdG9taWNfc3Rh dGVfYWxsb2MocGxhbmUtPmRldik7Ci0JaWYgKCFzdGF0ZSkKLQkJcmV0dXJuIC1FTk9NRU07Ci0K LQlzdGF0ZS0+YWNxdWlyZV9jdHggPSBkcm1fbW9kZXNldF9sZWdhY3lfYWNxdWlyZV9jdHgoY3J0 Yyk7Ci1yZXRyeToKLQljcnRjX3N0YXRlID0gZHJtX2F0b21pY19nZXRfY3J0Y19zdGF0ZShzdGF0 ZSwgY3J0Yyk7Ci0JaWYgKElTX0VSUihjcnRjX3N0YXRlKSkgewotCQlyZXQgPSBQVFJfRVJSKGNy dGNfc3RhdGUpOwotCQlnb3RvIGZhaWw7Ci0JfQotCWNydGNfc3RhdGUtPmV2ZW50ID0gZXZlbnQ7 Ci0KLQlwbGFuZV9zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X3BsYW5lX3N0YXRlKHN0YXRlLCBwbGFu ZSk7Ci0JaWYgKElTX0VSUihwbGFuZV9zdGF0ZSkpIHsKLQkJcmV0ID0gUFRSX0VSUihwbGFuZV9z dGF0ZSk7Ci0JCWdvdG8gZmFpbDsKLQl9Ci0KLQlyZXQgPSBkcm1fYXRvbWljX3NldF9jcnRjX2Zv cl9wbGFuZShwbGFuZV9zdGF0ZSwgY3J0Yyk7Ci0JaWYgKHJldCAhPSAwKQotCQlnb3RvIGZhaWw7 Ci0JZHJtX2F0b21pY19zZXRfZmJfZm9yX3BsYW5lKHBsYW5lX3N0YXRlLCBmYik7Ci0KLQkvKiBN YWtlIHN1cmUgd2UgZG9uJ3QgYWNjaWRlbnRhbGx5IGRvIGEgZnVsbCBtb2Rlc2V0LiAqLwotCXN0 YXRlLT5hbGxvd19tb2Rlc2V0ID0gZmFsc2U7Ci0JaWYgKCFjcnRjX3N0YXRlLT5hY3RpdmUpIHsK LQkJRFJNX0RFQlVHX0FUT01JQygiW0NSVEM6JWRdIGRpc2FibGVkLCByZWplY3RpbmcgbGVnYWN5 IGZsaXBcbiIsCi0JCQkJIGNydGMtPmJhc2UuaWQpOwotCQlyZXQgPSAtRUlOVkFMOwotCQlnb3Rv IGZhaWw7Ci0JfQotCi0JaWYgKGZsYWdzICYgRFJNX01PREVfUEFHRV9GTElQX0FTWU5DKQotCQlu djUwX3duZHdfYXRvbShwbGFuZV9zdGF0ZSktPmludGVydmFsID0gMDsKLQotCXJldCA9IGRybV9h dG9taWNfbm9uYmxvY2tpbmdfY29tbWl0KHN0YXRlKTsKLWZhaWw6Ci0JaWYgKHJldCA9PSAtRURF QURMSykKLQkJZ290byBiYWNrb2ZmOwotCi0JZHJtX2F0b21pY19zdGF0ZV9wdXQoc3RhdGUpOwot CXJldHVybiByZXQ7Ci0KLWJhY2tvZmY6Ci0JZHJtX2F0b21pY19zdGF0ZV9jbGVhcihzdGF0ZSk7 Ci0JZHJtX2F0b21pY19sZWdhY3lfYmFja29mZihzdGF0ZSk7Ci0KLQkvKgotCSAqIFNvbWVvbmUg bWlnaHQgaGF2ZSBleGNoYW5nZWQgdGhlIGZyYW1lYnVmZmVyIHdoaWxlIHdlIGRyb3BwZWQgbG9j a3MKLQkgKiBpbiB0aGUgYmFja29mZiBjb2RlLiBXZSBuZWVkIHRvIGZpeCB1cCB0aGUgZmIgcmVm Y291bnQgdHJhY2tpbmcgdGhlCi0JICogY29yZSBkb2VzIGZvciB1cy4KLQkgKi8KLQlwbGFuZS0+ b2xkX2ZiID0gcGxhbmUtPmZiOwotCi0JZ290byByZXRyeTsKLX0KLQogc3RhdGljIGludAogbnY1 MF9oZWFkX2dhbW1hX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqciwgdTE2ICpnLCB1 MTYgKmIsCiAJCSAgICB1aW50MzJfdCBzaXplKQpAQCAtMjM4Niw3ICsyMzIyLDcgQEAgc3RydWN0 IG52NTBfYmFzZSB7CiAJLmdhbW1hX3NldCA9IG52NTBfaGVhZF9nYW1tYV9zZXQsCiAJLmRlc3Ry b3kgPSBudjUwX2hlYWRfZGVzdHJveSwKIAkuc2V0X2NvbmZpZyA9IGRybV9hdG9taWNfaGVscGVy X3NldF9jb25maWcsCi0JLnBhZ2VfZmxpcCA9IG52NTBfaGVhZF9wYWdlX2ZsaXAsCisJLnBhZ2Vf ZmxpcCA9IGRybV9hdG9taWNfaGVscGVyX3BhZ2VfZmxpcCwKIAkuc2V0X3Byb3BlcnR5ID0gZHJt X2F0b21pY19oZWxwZXJfY3J0Y19zZXRfcHJvcGVydHksCiAJLmF0b21pY19kdXBsaWNhdGVfc3Rh dGUgPSBudjUwX2hlYWRfYXRvbWljX2R1cGxpY2F0ZV9zdGF0ZSwKIAkuYXRvbWljX2Rlc3Ryb3lf c3RhdGUgPSBudjUwX2hlYWRfYXRvbWljX2Rlc3Ryb3lfc3RhdGUsCi0tIAoxLjkuMQoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==