From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Subject: [PATCH v6 5/6] drm/i915: Move CRTC updating in atomic_commit into it's own hook Date: Tue, 2 Aug 2016 18:37:36 -0400 Message-ID: <1470177458-31984-6-git-send-email-cpaul@redhat.com> References: <1470177458-31984-1-git-send-email-cpaul@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1470177458-31984-1-git-send-email-cpaul@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: intel-gfx@lists.freedesktop.org, =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Maarten Lankhorst , Matt Roper Cc: Radhakrishna Sripada , linux-kernel@vger.kernel.org, Hans de Goede , dri-devel@lists.freedesktop.org, Daniel Vetter , Lyude List-Id: intel-gfx@lists.freedesktop.org U2luY2Ugd2UgaGF2ZSB0byB3cml0ZSBkZGIgYWxsb2NhdGlvbnMgYXQgdGhlIHNhbWUgdGltZSBh cyB3ZSBkbyBvdGhlcgpwbGFuZSB1cGRhdGVzLCB3ZSdyZSBnb2luZyB0byBuZWVkIHRvIGJlIGFi bGUgdG8gY29udHJvbCB0aGUgb3JkZXIgaW4Kd2hpY2ggd2UgZXhlY3V0ZSBtb2Rlc2V0cyBvbiBl YWNoIHBpcGUuIFRoZSBlYXNpZXN0IHdheSB0byBkbyB0aGlzIGlzIHRvCmp1c3QgZmFjdG9yIHRo aXMgc2VjdGlvbiBvZiBpbnRlbF9hdG9taWNfY29tbWl0X3RhaWwoKQooaW50ZWxfYXRvbWljX2Nv bW1pdCgpIGZvciBzdGFibGUgYnJhbmNoZXMpIGludG8gaXQncyBvd24gZnVuY3Rpb24sIGFuZAph ZGQgYW4gYXBwcm9wcmlhdGUgZGlzcGxheSBmdW5jdGlvbiBob29rIGZvciBpdC4KCkJhc2VkIG9m ZiBvZiBNYXR0IFJvcGUncyBzdWdnZXN0aW9ucwoKQ2hhbmdlcyBzaW5jZSB2MToKIC0gRHJvcCBw aXBlX2NvbmZpZy0+YmFzZS5hY3RpdmUgY2hlY2sgaW4gaW50ZWxfdXBkYXRlX2NydGNzKCkgc2lu Y2Ugd2UKICAgY2hlY2sgdGhhdCBiZWZvcmUgY2FsbGluZyB0aGUgZnVuY3Rpb24KClNpZ25lZC1v ZmYtYnk6IEx5dWRlIDxjcGF1bEByZWRoYXQuY29tPgpSZXZpZXdlZC1ieTogTWF0dCBSb3BlciA8 bWF0dGhldy5kLnJvcGVyQGludGVsLmNvbT4KW29taXR0aW5nIENDIGZvciBzdGFibGUsIHNpbmNl IHRoaXMgcGF0Y2ggd2lsbCBuZWVkIHRvIGJlIGNoYW5nZWQgZm9yCnN1Y2ggYmFja3BvcnRzIGZp cnN0XQpDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4K Q2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAaW50ZWwuY29tPgpDYzogUmFkaGFrcmlz aG5hIFNyaXBhZGEgPHJhZGhha3Jpc2huYS5zcmlwYWRhQGludGVsLmNvbT4KQ2M6IEhhbnMgZGUg R29lZGUgPGhkZWdvZWRlQHJlZGhhdC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuaCAgICAgIHwgIDIgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j IHwgNzQgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5n ZWQsIDU0IGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oCmluZGV4IDg3MDE4ZDMuLjQ5NjRlM2YgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAt NjMyLDYgKzYzMiw4IEBAIHN0cnVjdCBkcm1faTkxNV9kaXNwbGF5X2Z1bmNzIHsKIAkJCQkgIHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKTsKIAl2b2lkICgqY3J0Y19lbmFibGUp KHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7CiAJdm9pZCAoKmNydGNfZGlzYWJsZSkoc3RydWN0IGRy bV9jcnRjICpjcnRjKTsKKwl2b2lkICgqdXBkYXRlX2NydGNzKShzdHJ1Y3QgZHJtX2F0b21pY19z dGF0ZSAqc3RhdGUsCisJCQkgICAgIHVuc2lnbmVkIGludCAqY3J0Y192YmxhbmtfbWFzayk7CiAJ dm9pZCAoKmF1ZGlvX2NvZGVjX2VuYWJsZSkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv ciwKIAkJCQkgICBzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIAkJCQkgICBjb25zdCBz dHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSk7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kaXNwbGF5LmMKaW5kZXggNzZlZmU1My4uNTljZjUxMyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYwpAQCAtMTM2MTIsNiArMTM2MTIsNTIgQEAgc3RhdGljIGJvb2wgbmVl ZHNfdmJsYW5rX3dhaXQoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJcmV0 dXJuIGZhbHNlOwogfQogCitzdGF0aWMgdm9pZCBpbnRlbF91cGRhdGVfY3J0YyhzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCisJCQkgICAgICBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCisJ CQkgICAgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlLAorCQkJICAgICAg dW5zaWduZWQgaW50ICpjcnRjX3ZibGFua19tYXNrKQoreworCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXYgPSBjcnRjLT5kZXY7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9f aTkxNShkZXYpOworCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0 YyhjcnRjKTsKKwlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcgPSB0b19pbnRl bF9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKKwlib29sIG1vZGVzZXQgPSBuZWVkc19tb2Rlc2V0 KGNydGMtPnN0YXRlKTsKKworCWlmIChtb2Rlc2V0KSB7CisJCXVwZGF0ZV9zY2FubGluZV9vZmZz ZXQoaW50ZWxfY3J0Yyk7CisJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZW5hYmxlKGNydGMpOwor CX0gZWxzZSB7CisJCWludGVsX3ByZV9wbGFuZV91cGRhdGUodG9faW50ZWxfY3J0Y19zdGF0ZShv bGRfY3J0Y19zdGF0ZSkpOworCX0KKworCWlmIChkcm1fYXRvbWljX2dldF9leGlzdGluZ19wbGFu ZV9zdGF0ZShzdGF0ZSwgY3J0Yy0+cHJpbWFyeSkpIHsKKwkJaW50ZWxfZmJjX2VuYWJsZSgKKwkJ ICAgIGludGVsX2NydGMsIHBpcGVfY29uZmlnLAorCQkgICAgdG9faW50ZWxfcGxhbmVfc3RhdGUo Y3J0Yy0+cHJpbWFyeS0+c3RhdGUpKTsKKwl9CisKKwlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRf cGxhbmVzX29uX2NydGMob2xkX2NydGNfc3RhdGUpOworCisJaWYgKG5lZWRzX3ZibGFua193YWl0 KHBpcGVfY29uZmlnKSkKKwkJKmNydGNfdmJsYW5rX21hc2sgfD0gZHJtX2NydGNfbWFzayhjcnRj KTsKK30KKworc3RhdGljIHZvaWQgaW50ZWxfdXBkYXRlX2NydGNzKHN0cnVjdCBkcm1fYXRvbWlj X3N0YXRlICpzdGF0ZSwKKwkJCSAgICAgICB1bnNpZ25lZCBpbnQgKmNydGNfdmJsYW5rX21hc2sp Cit7CisJc3RydWN0IGRybV9jcnRjICpjcnRjOworCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xk X2NydGNfc3RhdGU7CisJaW50IGk7CisKKwlmb3JfZWFjaF9jcnRjX2luX3N0YXRlKHN0YXRlLCBj cnRjLCBvbGRfY3J0Y19zdGF0ZSwgaSkgeworCQlpZiAoIWNydGMtPnN0YXRlLT5hY3RpdmUpCisJ CQljb250aW51ZTsKKworCQlpbnRlbF91cGRhdGVfY3J0YyhjcnRjLCBzdGF0ZSwgb2xkX2NydGNf c3RhdGUsCisJCQkJICBjcnRjX3ZibGFua19tYXNrKTsKKwl9Cit9CisKIHN0YXRpYyB2b2lkIGlu dGVsX2F0b21pY19jb21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiB7 CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IHN0YXRlLT5kZXY7CkBAIC0xMzcxMSwxNyArMTM3 NTcsOSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9hdG9taWNfY29tbWl0X3RhaWwoc3RydWN0IGRybV9h dG9taWNfc3RhdGUgKnN0YXRlKQogCQlpbnRlbF9tb2Rlc2V0X3ZlcmlmeV9kaXNhYmxlZChkZXYp OwogCX0KIAotCS8qIE5vdyBlbmFibGUgdGhlIGNsb2NrcywgcGxhbmUsIHBpcGUsIGFuZCBjb25u ZWN0b3JzIHRoYXQgd2Ugc2V0IHVwLiAqLworCS8qIENvbXBsZXRlIHRoZSBldmVudHMgZm9yIHBp cGVzIHRoYXQgaGF2ZSBub3cgYmVlbiBkaXNhYmxlZCAqLwogCWZvcl9lYWNoX2NydGNfaW5fc3Rh dGUoc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBpKSB7Ci0JCXN0cnVjdCBpbnRlbF9jcnRj ICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKIAkJYm9vbCBtb2Rlc2V0ID0gbmVl ZHNfbW9kZXNldChjcnRjLT5zdGF0ZSk7Ci0JCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBl X2NvbmZpZyA9Ci0JCQl0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKLQotCQlpZiAo bW9kZXNldCAmJiBjcnRjLT5zdGF0ZS0+YWN0aXZlKSB7Ci0JCQl1cGRhdGVfc2NhbmxpbmVfb2Zm c2V0KHRvX2ludGVsX2NydGMoY3J0YykpOwotCQkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19lbmFi bGUoY3J0Yyk7Ci0JCX0KIAogCQkvKiBDb21wbGV0ZSBldmVudHMgZm9yIG5vdyBkaXNhYmxlIHBp cGVzIGhlcmUuICovCiAJCWlmIChtb2Rlc2V0ICYmICFjcnRjLT5zdGF0ZS0+YWN0aXZlICYmIGNy dGMtPnN0YXRlLT5ldmVudCkgewpAQCAtMTM3MzEsMjEgKzEzNzY5LDExIEBAIHN0YXRpYyB2b2lk IGludGVsX2F0b21pY19jb21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUp CiAKIAkJCWNydGMtPnN0YXRlLT5ldmVudCA9IE5VTEw7CiAJCX0KLQotCQlpZiAoIW1vZGVzZXQp Ci0JCQlpbnRlbF9wcmVfcGxhbmVfdXBkYXRlKHRvX2ludGVsX2NydGNfc3RhdGUob2xkX2NydGNf c3RhdGUpKTsKLQotCQlpZiAoY3J0Yy0+c3RhdGUtPmFjdGl2ZSAmJgotCQkgICAgZHJtX2F0b21p Y19nZXRfZXhpc3RpbmdfcGxhbmVfc3RhdGUoc3RhdGUsIGNydGMtPnByaW1hcnkpKQotCQkJaW50 ZWxfZmJjX2VuYWJsZShpbnRlbF9jcnRjLCBwaXBlX2NvbmZpZywgdG9faW50ZWxfcGxhbmVfc3Rh dGUoY3J0Yy0+cHJpbWFyeS0+c3RhdGUpKTsKLQotCQlpZiAoY3J0Yy0+c3RhdGUtPmFjdGl2ZSkK LQkJCWRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9wbGFuZXNfb25fY3J0YyhvbGRfY3J0Y19zdGF0 ZSk7Ci0KLQkJaWYgKHBpcGVfY29uZmlnLT5iYXNlLmFjdGl2ZSAmJiBuZWVkc192Ymxhbmtfd2Fp dChwaXBlX2NvbmZpZykpCi0JCQljcnRjX3ZibGFua19tYXNrIHw9IDEgPDwgaTsKIAl9CiAKKwkv KiBOb3cgZW5hYmxlIHRoZSBjbG9ja3MsIHBsYW5lLCBwaXBlLCBhbmQgY29ubmVjdG9ycyB0aGF0 IHdlIHNldCB1cC4gKi8KKwlkZXZfcHJpdi0+ZGlzcGxheS51cGRhdGVfY3J0Y3Moc3RhdGUsICZj cnRjX3ZibGFua19tYXNrKTsKKwogCS8qIEZJWE1FOiBXZSBzaG91bGQgY2FsbCBkcm1fYXRvbWlj X2hlbHBlcl9jb21taXRfaHdfZG9uZSgpIGhlcmUKIAkgKiBhbHJlYWR5LCBidXQgc3RpbGwgbmVl ZCB0aGUgc3RhdGUgZm9yIHRoZSBkZWxheWVkIG9wdGltaXphdGlvbi4gVG8KIAkgKiBmaXggdGhp czoKQEAgLTE1MjA3LDYgKzE1MjM1LDggQEAgdm9pZCBpbnRlbF9pbml0X2Rpc3BsYXlfaG9va3Mo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCQlkZXZfcHJpdi0+ZGlzcGxheS5j cnRjX2Rpc2FibGUgPSBpOXh4X2NydGNfZGlzYWJsZTsKIAl9CiAKKwlkZXZfcHJpdi0+ZGlzcGxh eS51cGRhdGVfY3J0Y3MgPSBpbnRlbF91cGRhdGVfY3J0Y3M7CisKIAkvKiBSZXR1cm5zIHRoZSBj b3JlIGRpc3BsYXkgY2xvY2sgc3BlZWQgKi8KIAlpZiAoSVNfU0tZTEFLRShkZXZfcHJpdikgfHwg SVNfS0FCWUxBS0UoZGV2X3ByaXYpKQogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfZGlzcGxheV9j bG9ja19zcGVlZCA9Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vZHJpLWRldmVsCg==