From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Subject: [RESEND PATCH v13 6/7] drm/i915: Move CRTC updating in atomic_commit into it's own hook Date: Tue, 23 Aug 2016 10:12:44 -0400 Message-ID: <1471961565-28540-1-git-send-email-cpaul@redhat.com> References: <1a236eb1-0237-0fb5-1525-3e6c1546cdd0@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1a236eb1-0237-0fb5-1525-3e6c1546cdd0@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst Cc: David Airlie , intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, Hans de Goede , dri-devel@lists.freedesktop.org, Daniel Vetter List-Id: dri-devel@lists.freedesktop.org U2luY2Ugd2UgaGF2ZSB0byB3cml0ZSBkZGIgYWxsb2NhdGlvbnMgYXQgdGhlIHNhbWUgdGltZSBh cyB3ZSBkbyBvdGhlcgpwbGFuZSB1cGRhdGVzLCB3ZSdyZSBnb2luZyB0byBuZWVkIHRvIGJlIGFi bGUgdG8gY29udHJvbCB0aGUgb3JkZXIgaW4Kd2hpY2ggd2UgZXhlY3V0ZSBtb2Rlc2V0cyBvbiBl YWNoIHBpcGUuIFRoZSBlYXNpZXN0IHdheSB0byBkbyB0aGlzIGlzIHRvCmp1c3QgZmFjdG9yIHRo aXMgc2VjdGlvbiBvZiBpbnRlbF9hdG9taWNfY29tbWl0X3RhaWwoKQooaW50ZWxfYXRvbWljX2Nv bW1pdCgpIGZvciBzdGFibGUgYnJhbmNoZXMpIGludG8gaXQncyBvd24gZnVuY3Rpb24sIGFuZAph ZGQgYW4gYXBwcm9wcmlhdGUgZGlzcGxheSBmdW5jdGlvbiBob29rIGZvciBpdC4KCkJhc2VkIG9m ZiBvZiBNYXR0IFJvcGUncyBzdWdnZXN0aW9ucwoKQ2hhbmdlcyBzaW5jZSB2MToKIC0gRHJvcCBw aXBlX2NvbmZpZy0+YmFzZS5hY3RpdmUgY2hlY2sgaW4gaW50ZWxfdXBkYXRlX2NydGNzKCkgc2lu Y2Ugd2UKICAgY2hlY2sgdGhhdCBiZWZvcmUgY2FsbGluZyB0aGUgZnVuY3Rpb24KClNpZ25lZC1v ZmYtYnk6IEx5dWRlIDxjcGF1bEByZWRoYXQuY29tPgpSZXZpZXdlZC1ieTogTWF0dCBSb3BlciA8 bWF0dGhldy5kLnJvcGVyQGludGVsLmNvbT4KW29taXR0aW5nIENDIGZvciBzdGFibGUsIHNpbmNl IHRoaXMgcGF0Y2ggd2lsbCBuZWVkIHRvIGJlIGNoYW5nZWQgZm9yCnN1Y2ggYmFja3BvcnRzIGZp cnN0XQpDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4K Q2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAaW50ZWwuY29tPgpDYzogUmFkaGFrcmlz aG5hIFNyaXBhZGEgPHJhZGhha3Jpc2huYS5zcmlwYWRhQGludGVsLmNvbT4KQ2M6IEhhbnMgZGUg R29lZGUgPGhkZWdvZWRlQHJlZGhhdC5jb20+CgpTaWduZWQtb2ZmLWJ5OiBMeXVkZSA8Y3BhdWxA cmVkaGF0LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgfCAg MiArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA3NCArKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNTQgaW5zZXJ0aW9u cygrKSwgMjIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggZmY5NmI3 YS4uMDRiNGZkNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC01MTQsNiArNTE0LDggQEAg c3RydWN0IGRybV9pOTE1X2Rpc3BsYXlfZnVuY3MgewogCQkJICAgIHN0cnVjdCBkcm1fYXRvbWlj X3N0YXRlICpvbGRfc3RhdGUpOwogCXZvaWQgKCpjcnRjX2Rpc2FibGUpKHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSwKIAkJCSAgICAgc3RydWN0IGRybV9hdG9taWNfc3Rh dGUgKm9sZF9zdGF0ZSk7CisJdm9pZCAoKnVwZGF0ZV9jcnRjcykoc3RydWN0IGRybV9hdG9taWNf c3RhdGUgKnN0YXRlLAorCQkJICAgICB1bnNpZ25lZCBpbnQgKmNydGNfdmJsYW5rX21hc2spOwog CXZvaWQgKCphdWRpb19jb2RlY19lbmFibGUpKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3IsCiAJCQkJICAgc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCiAJCQkJICAgY29uc3Qg c3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUpOwpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCmluZGV4IGIxMGJlYTYuLjMzMGRmNjkgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMKQEAgLTE0MTk4LDYgKzE0MTk4LDUyIEBAIHN0YXRpYyBib29sIG5l ZWRzX3ZibGFua193YWl0KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogCXJl dHVybiBmYWxzZTsKIH0KIAorc3RhdGljIHZvaWQgaW50ZWxfdXBkYXRlX2NydGMoc3RydWN0IGRy bV9jcnRjICpjcnRjLAorCQkJICAgICAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAor CQkJICAgICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSwKKwkJCSAgICAg IHVuc2lnbmVkIGludCAqY3J0Y192YmxhbmtfbWFzaykKK3sKKwlzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2ID0gY3J0Yy0+ZGV2OworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRv X2k5MTUoZGV2KTsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2Ny dGMoY3J0Yyk7CisJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnID0gdG9faW50 ZWxfY3J0Y19zdGF0ZShjcnRjLT5zdGF0ZSk7CisJYm9vbCBtb2Rlc2V0ID0gbmVlZHNfbW9kZXNl dChjcnRjLT5zdGF0ZSk7CisKKwlpZiAobW9kZXNldCkgeworCQl1cGRhdGVfc2NhbmxpbmVfb2Zm c2V0KGludGVsX2NydGMpOworCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2VuYWJsZShwaXBlX2Nv bmZpZywgc3RhdGUpOworCX0gZWxzZSB7CisJCWludGVsX3ByZV9wbGFuZV91cGRhdGUodG9faW50 ZWxfY3J0Y19zdGF0ZShvbGRfY3J0Y19zdGF0ZSkpOworCX0KKworCWlmIChkcm1fYXRvbWljX2dl dF9leGlzdGluZ19wbGFuZV9zdGF0ZShzdGF0ZSwgY3J0Yy0+cHJpbWFyeSkpIHsKKwkJaW50ZWxf ZmJjX2VuYWJsZSgKKwkJICAgIGludGVsX2NydGMsIHBpcGVfY29uZmlnLAorCQkgICAgdG9faW50 ZWxfcGxhbmVfc3RhdGUoY3J0Yy0+cHJpbWFyeS0+c3RhdGUpKTsKKwl9CisKKwlkcm1fYXRvbWlj X2hlbHBlcl9jb21taXRfcGxhbmVzX29uX2NydGMob2xkX2NydGNfc3RhdGUpOworCisJaWYgKG5l ZWRzX3ZibGFua193YWl0KHBpcGVfY29uZmlnKSkKKwkJKmNydGNfdmJsYW5rX21hc2sgfD0gZHJt X2NydGNfbWFzayhjcnRjKTsKK30KKworc3RhdGljIHZvaWQgaW50ZWxfdXBkYXRlX2NydGNzKHN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKKwkJCSAgICAgICB1bnNpZ25lZCBpbnQgKmNy dGNfdmJsYW5rX21hc2spCit7CisJc3RydWN0IGRybV9jcnRjICpjcnRjOworCXN0cnVjdCBkcm1f Y3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGU7CisJaW50IGk7CisKKwlmb3JfZWFjaF9jcnRjX2lu X3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgaSkgeworCQlpZiAoIWNydGMtPnN0 YXRlLT5hY3RpdmUpCisJCQljb250aW51ZTsKKworCQlpbnRlbF91cGRhdGVfY3J0YyhjcnRjLCBz dGF0ZSwgb2xkX2NydGNfc3RhdGUsCisJCQkJICBjcnRjX3ZibGFua19tYXNrKTsKKwl9Cit9CisK IHN0YXRpYyB2b2lkIGludGVsX2F0b21pY19jb21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21pY19z dGF0ZSAqc3RhdGUpCiB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IHN0YXRlLT5kZXY7CkBA IC0xNDI5NiwxNyArMTQzNDIsOSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9hdG9taWNfY29tbWl0X3Rh aWwoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQogCQlpbnRlbF9tb2Rlc2V0X3Zlcmlm eV9kaXNhYmxlZChkZXYpOwogCX0KIAotCS8qIE5vdyBlbmFibGUgdGhlIGNsb2NrcywgcGxhbmUs IHBpcGUsIGFuZCBjb25uZWN0b3JzIHRoYXQgd2Ugc2V0IHVwLiAqLworCS8qIENvbXBsZXRlIHRo ZSBldmVudHMgZm9yIHBpcGVzIHRoYXQgaGF2ZSBub3cgYmVlbiBkaXNhYmxlZCAqLwogCWZvcl9l YWNoX2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBpKSB7Ci0JCXN0 cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKIAkJYm9v bCBtb2Rlc2V0ID0gbmVlZHNfbW9kZXNldChjcnRjLT5zdGF0ZSk7Ci0JCXN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpwaXBlX2NvbmZpZyA9Ci0JCQl0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPnN0 YXRlKTsKLQotCQlpZiAobW9kZXNldCAmJiBjcnRjLT5zdGF0ZS0+YWN0aXZlKSB7Ci0JCQl1cGRh dGVfc2NhbmxpbmVfb2Zmc2V0KHRvX2ludGVsX2NydGMoY3J0YykpOwotCQkJZGV2X3ByaXYtPmRp c3BsYXkuY3J0Y19lbmFibGUocGlwZV9jb25maWcsIHN0YXRlKTsKLQkJfQogCiAJCS8qIENvbXBs ZXRlIGV2ZW50cyBmb3Igbm93IGRpc2FibGUgcGlwZXMgaGVyZS4gKi8KIAkJaWYgKG1vZGVzZXQg JiYgIWNydGMtPnN0YXRlLT5hY3RpdmUgJiYgY3J0Yy0+c3RhdGUtPmV2ZW50KSB7CkBAIC0xNDMx NiwyMSArMTQzNTQsMTEgQEAgc3RhdGljIHZvaWQgaW50ZWxfYXRvbWljX2NvbW1pdF90YWlsKHN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIAogCQkJY3J0Yy0+c3RhdGUtPmV2ZW50ID0g TlVMTDsKIAkJfQotCi0JCWlmICghbW9kZXNldCkKLQkJCWludGVsX3ByZV9wbGFuZV91cGRhdGUo dG9faW50ZWxfY3J0Y19zdGF0ZShvbGRfY3J0Y19zdGF0ZSkpOwotCi0JCWlmIChjcnRjLT5zdGF0 ZS0+YWN0aXZlICYmCi0JCSAgICBkcm1fYXRvbWljX2dldF9leGlzdGluZ19wbGFuZV9zdGF0ZShz dGF0ZSwgY3J0Yy0+cHJpbWFyeSkpCi0JCQlpbnRlbF9mYmNfZW5hYmxlKGludGVsX2NydGMsIHBp cGVfY29uZmlnLCB0b19pbnRlbF9wbGFuZV9zdGF0ZShjcnRjLT5wcmltYXJ5LT5zdGF0ZSkpOwot Ci0JCWlmIChjcnRjLT5zdGF0ZS0+YWN0aXZlKQotCQkJZHJtX2F0b21pY19oZWxwZXJfY29tbWl0 X3BsYW5lc19vbl9jcnRjKG9sZF9jcnRjX3N0YXRlKTsKLQotCQlpZiAocGlwZV9jb25maWctPmJh c2UuYWN0aXZlICYmIG5lZWRzX3ZibGFua193YWl0KHBpcGVfY29uZmlnKSkKLQkJCWNydGNfdmJs YW5rX21hc2sgfD0gMSA8PCBpOwogCX0KIAorCS8qIE5vdyBlbmFibGUgdGhlIGNsb2NrcywgcGxh bmUsIHBpcGUsIGFuZCBjb25uZWN0b3JzIHRoYXQgd2Ugc2V0IHVwLiAqLworCWRldl9wcml2LT5k aXNwbGF5LnVwZGF0ZV9jcnRjcyhzdGF0ZSwgJmNydGNfdmJsYW5rX21hc2spOworCiAJLyogRklY TUU6IFdlIHNob3VsZCBjYWxsIGRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9od19kb25lKCkgaGVy ZQogCSAqIGFscmVhZHksIGJ1dCBzdGlsbCBuZWVkIHRoZSBzdGF0ZSBmb3IgdGhlIGRlbGF5ZWQg b3B0aW1pemF0aW9uLiBUbwogCSAqIGZpeCB0aGlzOgpAQCAtMTU4NTUsNiArMTU4ODMsOCBAQCB2 b2lkIGludGVsX2luaXRfZGlzcGxheV9ob29rcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpCiAJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZGlzYWJsZSA9IGk5eHhfY3J0Y19kaXNh YmxlOwogCX0KIAorCWRldl9wcml2LT5kaXNwbGF5LnVwZGF0ZV9jcnRjcyA9IGludGVsX3VwZGF0 ZV9jcnRjczsKKwogCS8qIFJldHVybnMgdGhlIGNvcmUgZGlzcGxheSBjbG9jayBzcGVlZCAqLwog CWlmIChJU19TS1lMQUtFKGRldl9wcml2KSB8fCBJU19LQUJZTEFLRShkZXZfcHJpdikpCiAJCWRl dl9wcml2LT5kaXNwbGF5LmdldF9kaXNwbGF5X2Nsb2NrX3NwZWVkID0KLS0gCjIuNy40CgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK