From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Subject: [PATCH v12 6/7] drm/i915: Move CRTC updating in atomic_commit into it's own hook Date: Wed, 17 Aug 2016 15:55:58 -0400 Message-ID: <1471463761-26796-7-git-send-email-cpaul@redhat.com> References: <1471463761-26796-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: <1471463761-26796-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+CgpTaWduZWQtb2ZmLWJ5OiBMeXVkZSA8Y3BhdWxA cmVkaGF0LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgfCAg MiArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA3NCArKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNTQgaW5zZXJ0aW9u cygrKSwgMjIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggZjIwNTMw YmIuLjI1NjU2MjQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtNTA2LDYgKzUwNiw4IEBA IHN0cnVjdCBkcm1faTkxNV9kaXNwbGF5X2Z1bmNzIHsKIAkJCQkgIHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlKTsKIAl2b2lkICgqY3J0Y19lbmFibGUpKHN0cnVjdCBkcm1fY3J0 YyAqY3J0Yyk7CiAJdm9pZCAoKmNydGNfZGlzYWJsZSkoc3RydWN0IGRybV9jcnRjICpjcnRjKTsK Kwl2b2lkICgqdXBkYXRlX2NydGNzKShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCisJ CQkgICAgIHVuc2lnbmVkIGludCAqY3J0Y192YmxhbmtfbWFzayk7CiAJdm9pZCAoKmF1ZGlvX2Nv ZGVjX2VuYWJsZSkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKIAkJCQkgICBzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIAkJCQkgICBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMK aW5kZXggY2E0MjliNS4uNGIwNzhlOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku YwpAQCAtMTQwNzYsNiArMTQwNzYsNTIgQEAgc3RhdGljIGJvb2wgbmVlZHNfdmJsYW5rX3dhaXQo c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJcmV0dXJuIGZhbHNlOwogfQog CitzdGF0aWMgdm9pZCBpbnRlbF91cGRhdGVfY3J0YyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCisJ CQkgICAgICBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCisJCQkgICAgICBzdHJ1Y3Qg ZHJtX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlLAorCQkJICAgICAgdW5zaWduZWQgaW50ICpj cnRjX3ZibGFua19tYXNrKQoreworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7 CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOworCXN0 cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKKwlzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcgPSB0b19pbnRlbF9jcnRjX3N0YXRlKGNy dGMtPnN0YXRlKTsKKwlib29sIG1vZGVzZXQgPSBuZWVkc19tb2Rlc2V0KGNydGMtPnN0YXRlKTsK KworCWlmIChtb2Rlc2V0KSB7CisJCXVwZGF0ZV9zY2FubGluZV9vZmZzZXQoaW50ZWxfY3J0Yyk7 CisJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZW5hYmxlKGNydGMpOworCX0gZWxzZSB7CisJCWlu dGVsX3ByZV9wbGFuZV91cGRhdGUodG9faW50ZWxfY3J0Y19zdGF0ZShvbGRfY3J0Y19zdGF0ZSkp OworCX0KKworCWlmIChkcm1fYXRvbWljX2dldF9leGlzdGluZ19wbGFuZV9zdGF0ZShzdGF0ZSwg Y3J0Yy0+cHJpbWFyeSkpIHsKKwkJaW50ZWxfZmJjX2VuYWJsZSgKKwkJICAgIGludGVsX2NydGMs IHBpcGVfY29uZmlnLAorCQkgICAgdG9faW50ZWxfcGxhbmVfc3RhdGUoY3J0Yy0+cHJpbWFyeS0+ c3RhdGUpKTsKKwl9CisKKwlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfcGxhbmVzX29uX2NydGMo b2xkX2NydGNfc3RhdGUpOworCisJaWYgKG5lZWRzX3ZibGFua193YWl0KHBpcGVfY29uZmlnKSkK KwkJKmNydGNfdmJsYW5rX21hc2sgfD0gZHJtX2NydGNfbWFzayhjcnRjKTsKK30KKworc3RhdGlj IHZvaWQgaW50ZWxfdXBkYXRlX2NydGNzKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwK KwkJCSAgICAgICB1bnNpZ25lZCBpbnQgKmNydGNfdmJsYW5rX21hc2spCit7CisJc3RydWN0IGRy bV9jcnRjICpjcnRjOworCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGU7CisJ aW50IGk7CisKKwlmb3JfZWFjaF9jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19z dGF0ZSwgaSkgeworCQlpZiAoIWNydGMtPnN0YXRlLT5hY3RpdmUpCisJCQljb250aW51ZTsKKwor CQlpbnRlbF91cGRhdGVfY3J0YyhjcnRjLCBzdGF0ZSwgb2xkX2NydGNfc3RhdGUsCisJCQkJICBj cnRjX3ZibGFua19tYXNrKTsKKwl9Cit9CisKIHN0YXRpYyB2b2lkIGludGVsX2F0b21pY19jb21t aXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiB7CiAJc3RydWN0IGRybV9k ZXZpY2UgKmRldiA9IHN0YXRlLT5kZXY7CkBAIC0xNDE3NCwxNyArMTQyMjAsOSBAQCBzdGF0aWMg dm9pZCBpbnRlbF9hdG9taWNfY29tbWl0X3RhaWwoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0 YXRlKQogCQlpbnRlbF9tb2Rlc2V0X3ZlcmlmeV9kaXNhYmxlZChkZXYpOwogCX0KIAotCS8qIE5v dyBlbmFibGUgdGhlIGNsb2NrcywgcGxhbmUsIHBpcGUsIGFuZCBjb25uZWN0b3JzIHRoYXQgd2Ug c2V0IHVwLiAqLworCS8qIENvbXBsZXRlIHRoZSBldmVudHMgZm9yIHBpcGVzIHRoYXQgaGF2ZSBu b3cgYmVlbiBkaXNhYmxlZCAqLwogCWZvcl9lYWNoX2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMs IG9sZF9jcnRjX3N0YXRlLCBpKSB7Ci0JCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0g dG9faW50ZWxfY3J0YyhjcnRjKTsKIAkJYm9vbCBtb2Rlc2V0ID0gbmVlZHNfbW9kZXNldChjcnRj LT5zdGF0ZSk7Ci0JCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZyA9Ci0JCQl0 b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKLQotCQlpZiAobW9kZXNldCAmJiBjcnRj LT5zdGF0ZS0+YWN0aXZlKSB7Ci0JCQl1cGRhdGVfc2NhbmxpbmVfb2Zmc2V0KHRvX2ludGVsX2Ny dGMoY3J0YykpOwotCQkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19lbmFibGUoY3J0Yyk7Ci0JCX0K IAogCQkvKiBDb21wbGV0ZSBldmVudHMgZm9yIG5vdyBkaXNhYmxlIHBpcGVzIGhlcmUuICovCiAJ CWlmIChtb2Rlc2V0ICYmICFjcnRjLT5zdGF0ZS0+YWN0aXZlICYmIGNydGMtPnN0YXRlLT5ldmVu dCkgewpAQCAtMTQxOTQsMjEgKzE0MjMyLDExIEBAIHN0YXRpYyB2b2lkIGludGVsX2F0b21pY19j b21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiAKIAkJCWNydGMtPnN0 YXRlLT5ldmVudCA9IE5VTEw7CiAJCX0KLQotCQlpZiAoIW1vZGVzZXQpCi0JCQlpbnRlbF9wcmVf cGxhbmVfdXBkYXRlKHRvX2ludGVsX2NydGNfc3RhdGUob2xkX2NydGNfc3RhdGUpKTsKLQotCQlp ZiAoY3J0Yy0+c3RhdGUtPmFjdGl2ZSAmJgotCQkgICAgZHJtX2F0b21pY19nZXRfZXhpc3Rpbmdf cGxhbmVfc3RhdGUoc3RhdGUsIGNydGMtPnByaW1hcnkpKQotCQkJaW50ZWxfZmJjX2VuYWJsZShp bnRlbF9jcnRjLCBwaXBlX2NvbmZpZywgdG9faW50ZWxfcGxhbmVfc3RhdGUoY3J0Yy0+cHJpbWFy eS0+c3RhdGUpKTsKLQotCQlpZiAoY3J0Yy0+c3RhdGUtPmFjdGl2ZSkKLQkJCWRybV9hdG9taWNf aGVscGVyX2NvbW1pdF9wbGFuZXNfb25fY3J0YyhvbGRfY3J0Y19zdGF0ZSk7Ci0KLQkJaWYgKHBp cGVfY29uZmlnLT5iYXNlLmFjdGl2ZSAmJiBuZWVkc192Ymxhbmtfd2FpdChwaXBlX2NvbmZpZykp Ci0JCQljcnRjX3ZibGFua19tYXNrIHw9IDEgPDwgaTsKIAl9CiAKKwkvKiBOb3cgZW5hYmxlIHRo ZSBjbG9ja3MsIHBsYW5lLCBwaXBlLCBhbmQgY29ubmVjdG9ycyB0aGF0IHdlIHNldCB1cC4gKi8K KwlkZXZfcHJpdi0+ZGlzcGxheS51cGRhdGVfY3J0Y3Moc3RhdGUsICZjcnRjX3ZibGFua19tYXNr KTsKKwogCS8qIEZJWE1FOiBXZSBzaG91bGQgY2FsbCBkcm1fYXRvbWljX2hlbHBlcl9jb21taXRf aHdfZG9uZSgpIGhlcmUKIAkgKiBhbHJlYWR5LCBidXQgc3RpbGwgbmVlZCB0aGUgc3RhdGUgZm9y IHRoZSBkZWxheWVkIG9wdGltaXphdGlvbi4gVG8KIAkgKiBmaXggdGhpczoKQEAgLTE1NzMzLDYg KzE1NzYxLDggQEAgdm9pZCBpbnRlbF9pbml0X2Rpc3BsYXlfaG9va3Moc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KQogCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2Rpc2FibGUgPSBp OXh4X2NydGNfZGlzYWJsZTsKIAl9CiAKKwlkZXZfcHJpdi0+ZGlzcGxheS51cGRhdGVfY3J0Y3Mg PSBpbnRlbF91cGRhdGVfY3J0Y3M7CisKIAkvKiBSZXR1cm5zIHRoZSBjb3JlIGRpc3BsYXkgY2xv Y2sgc3BlZWQgKi8KIAlpZiAoSVNfU0tZTEFLRShkZXZfcHJpdikgfHwgSVNfS0FCWUxBS0UoZGV2 X3ByaXYpKQogCQlkZXZfcHJpdi0+ZGlzcGxheS5nZXRfZGlzcGxheV9jbG9ja19zcGVlZCA9Ci0t IAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K ZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==