From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH v3 4/7] drm/i915: Turn off pipe gamma when it's not needed Date: Thu, 7 Feb 2019 22:21:43 +0200 Message-ID: <20190207202146.26423-5-ville.syrjala@linux.intel.com> References: <20190207202146.26423-1-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8C00E6ECE6 for ; Thu, 7 Feb 2019 20:22:03 +0000 (UTC) In-Reply-To: <20190207202146.26423-1-ville.syrjala@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: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClRo ZSBwaXBlIGludGVybmFsIHByZWNpc2lvbiBpcyBoaWdoZXIgdGhhbiB3aGF0IHdlIGN1cnJlbnRs eSBwcm9ncmFtIHRvCnRoZSBkZWdhbW1hL2dhbW1hIExVVHMuIFdlIGNhbiBnZXQgYSBoaWdoZXIg cXVhbGl0eSBpbWFnZSBieSBieXBhc3NpbmcKdGhlIExVVHMgd2hlbiB0aGV5J3JlIG5vdCBuZWVk ZWQuIExldCdzIGRvIHRoYXQuCgpFYWNoIHBsYW5lIGhhcyBpdHMgb3duIGNvbnRyb2wgYml0IGZv ciB0aGlzLCBzbyB3ZSBoYXZlIHRvIHVwZGF0ZQphbGwgYWN0aXZlIHBsYW5lcy4gVGhlIHdheSB3 ZSd2ZSBkb25lIHRoaXMgd2UgZG9uJ3QgYWN0dWFsbHkgaGF2ZQp0byBydW4gdGhyb3VnaCB0aGUg d2hvbGUgLmNoZWNrX3BsYW5lKCkgdGhpbmcuIEFuZCB3ZSBhY3R1YWxseQpkbyB0aGUgLmNvbG9y X2NoZWNrKCkgYWZ0ZXIgLmNoZWNrX3BsYW5lKCkgc28gd2UgY291bGRuJ3QgZXZlbiBkbwp0aGF0 IHdpdGhvdXQgc2h1ZmZsaW5nIHRoZSBjb2RlIGFyb3VuZC4KCkFkZGl0aW9uYWxseSBvbiBwcmUt c2tsIHdlIGhhdmUgdG8gdXBkYXRlIHRoZSBwcmltYXJ5IHBsYW5lIHJlZ2FyZGxlc3MKb2Ygd2hl dGhlciBpdCdzIGFjdGl2ZSBvciBub3Qgb24gYWNjb3VudCBvZiB0aGUgcHJpbWFyeSBwbGFuZSBn YW1tYQplbmFibGUgYml0IGFsc28gYWZmZWN0aW5nIHRoZSBwaXBlIGJvdHRvbSBjb2xvci4KCnYy OiBEcm9wIHRoZSAnLicgZnJvbSBwYXRjaCB0aXRsZSAoVW1hKQogICAgRml4ICdwcmltYXlyJyB0 eXBvIChVbWEsTWF0dCkKICAgIFJlYmFzZQoKU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOk IDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFVtYSBTaGFua2Fy IDx1bWEuc2hhbmthckBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBNYXR0IFJvcGVyIDxtYXR0aGV3 LmQucm9wZXJAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9y LmMgfCA1NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCA1 MyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2NvbG9yLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xv ci5jCmluZGV4IGUzYmYzYmQzNTVhYi4uYzcwMzBmNjgyODEyIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2NvbG9yLmMKQEAgLTYzNyw2ICs2MzcsNTEgQEAgdm9pZCBpbnRlbF9jb2xvcl9jb21taXQo Y29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJZGV2X3ByaXYtPmRp c3BsYXkuY29sb3JfY29tbWl0KGNydGNfc3RhdGUpOwogfQogCitzdGF0aWMgYm9vbCBuZWVkX3Bs YW5lX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfcGxhbmUgKnBsYW5lLAorCQkJICAgICAgY29uc3Qgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCit7CisJc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShwbGFuZS0+YmFzZS5kZXYpOworCisJLyoKKwkgKiBP biBwcmUtU0tMIHRoZSBwaXBlIGdhbW1hIGVuYWJsZSBhbmQgcGlwZSBjc2MgZW5hYmxlIGZvcgor CSAqIHRoZSBwaXBlIGJvdHRvbSBjb2xvciBhcmUgY29uZmlndXJlZCB2aWEgdGhlIHByaW1hcnkg cGxhbmUuCisJICogV2UgaGF2ZSB0byByZWNvbmZpZ3VyZSB0aGF0IGV2ZW4gaWYgdGhlIHBsYW5l IGlzIGluYWN0aXZlLgorCSAqLworCXJldHVybiBjcnRjX3N0YXRlLT5hY3RpdmVfcGxhbmVzICYg QklUKHBsYW5lLT5pZCkgfHwKKwkJKElOVEVMX0dFTihkZXZfcHJpdikgPCA5ICYmCisJCSBwbGFu ZS0+aWQgPT0gUExBTkVfUFJJTUFSWSk7Cit9CisKK3N0YXRpYyBpbnQKK2ludGVsX2NvbG9yX2Fk ZF9hZmZlY3RlZF9wbGFuZXMoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm5ld19jcnRjX3N0YXRl KQoreworCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhuZXdfY3J0Y19z dGF0ZS0+YmFzZS5jcnRjKTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0 b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKKwlzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0 ZSA9CisJCXRvX2ludGVsX2F0b21pY19zdGF0ZShuZXdfY3J0Y19zdGF0ZS0+YmFzZS5zdGF0ZSk7 CisJY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlID0KKwkJaW50 ZWxfYXRvbWljX2dldF9vbGRfY3J0Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7CisJc3RydWN0IGludGVs X3BsYW5lICpwbGFuZTsKKworCWlmIChuZXdfY3J0Y19zdGF0ZS0+Z2FtbWFfZW5hYmxlID09IG9s ZF9jcnRjX3N0YXRlLT5nYW1tYV9lbmFibGUpCisJCXJldHVybiAwOworCisJZm9yX2VhY2hfaW50 ZWxfcGxhbmVfb25fY3J0YygmZGV2X3ByaXYtPmRybSwgY3J0YywgcGxhbmUpIHsKKwkJc3RydWN0 IGludGVsX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKKworCQlpZiAoIW5lZWRfcGxhbmVfdXBk YXRlKHBsYW5lLCBuZXdfY3J0Y19zdGF0ZSkpCisJCQljb250aW51ZTsKKworCQlwbGFuZV9zdGF0 ZSA9IGludGVsX2F0b21pY19nZXRfcGxhbmVfc3RhdGUoc3RhdGUsIHBsYW5lKTsKKwkJaWYgKElT X0VSUihwbGFuZV9zdGF0ZSkpCisJCQlyZXR1cm4gUFRSX0VSUihwbGFuZV9zdGF0ZSk7CisKKwkJ bmV3X2NydGNfc3RhdGUtPnVwZGF0ZV9wbGFuZXMgfD0gQklUKHBsYW5lLT5pZCk7CisJfQorCisJ cmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgY2hlY2tfbHV0X3NpemUoY29uc3Qgc3RydWN0IGRy bV9wcm9wZXJ0eV9ibG9iICpsdXQsIGludCBleHBlY3RlZCkKIHsKIAlpbnQgbGVuOwpAQCAtNjYx LDIwICs3MDYsMjYgQEAgaW50IGludGVsX2NvbG9yX2NoZWNrKHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlKQogCWNvbnN0IHN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqZGVnYW1t YV9sdXQgPSBjcnRjX3N0YXRlLT5iYXNlLmRlZ2FtbWFfbHV0OwogCWludCBnYW1tYV9sZW5ndGgs IGRlZ2FtbWFfbGVuZ3RoOwogCXUzMiBnYW1tYV90ZXN0cywgZGVnYW1tYV90ZXN0czsKKwlpbnQg cmV0OwogCiAJZGVnYW1tYV9sZW5ndGggPSBJTlRFTF9JTkZPKGRldl9wcml2KS0+Y29sb3IuZGVn YW1tYV9sdXRfc2l6ZTsKIAlnYW1tYV9sZW5ndGggPSBJTlRFTF9JTkZPKGRldl9wcml2KS0+Y29s b3IuZ2FtbWFfbHV0X3NpemU7CiAJZGVnYW1tYV90ZXN0cyA9IElOVEVMX0lORk8oZGV2X3ByaXYp LT5jb2xvci5kZWdhbW1hX2x1dF90ZXN0czsKIAlnYW1tYV90ZXN0cyA9IElOVEVMX0lORk8oZGV2 X3ByaXYpLT5jb2xvci5nYW1tYV9sdXRfdGVzdHM7CiAKLQljcnRjX3N0YXRlLT5nYW1tYV9lbmFi bGUgPSB0cnVlOworCWNydGNfc3RhdGUtPmdhbW1hX2VuYWJsZSA9IGdhbW1hX2x1dCB8fCBkZWdh bW1hX2x1dDsKIAogCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDkgfHwKIAkgICAgSVNfQlJP QURXRUxMKGRldl9wcml2KSB8fCBJU19IQVNXRUxMKGRldl9wcml2KSkKIAkJY3J0Y19zdGF0ZS0+ Y3NjX2VuYWJsZSA9IHRydWU7CiAKKwlyZXQgPSBpbnRlbF9jb2xvcl9hZGRfYWZmZWN0ZWRfcGxh bmVzKGNydGNfc3RhdGUpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKIAkvKiBBbHdheXMg YWxsb3cgbGVnYWN5IGdhbW1hIExVVCB3aXRoIG5vIGZ1cnRoZXIgY2hlY2tpbmcuICovCi0JaWYg KGNydGNfc3RhdGVfaXNfbGVnYWN5X2dhbW1hKGNydGNfc3RhdGUpKSB7CisJaWYgKCFjcnRjX3N0 YXRlLT5nYW1tYV9lbmFibGUgfHwKKwkgICAgY3J0Y19zdGF0ZV9pc19sZWdhY3lfZ2FtbWEoY3J0 Y19zdGF0ZSkpIHsKIAkJY3J0Y19zdGF0ZS0+Z2FtbWFfbW9kZSA9IEdBTU1BX01PREVfTU9ERV84 QklUOwogCQlyZXR1cm4gMDsKIAl9Ci0tIAoyLjE5LjIKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=