From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan de Oliveira Subject: [PATCH v3] drm/i915/glk: Program pipe gamma and degamma tables Date: Fri, 27 Jan 2017 11:02:30 +0200 Message-ID: <20170127090230.20302-1-ander.conselvan.de.oliveira@intel.com> References: <20170126142108.GF31595@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8B7826ECB9 for ; Fri, 27 Jan 2017 09:03:32 +0000 (UTC) In-Reply-To: <20170126142108.GF31595@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 Cc: Ander Conselvan de Oliveira List-Id: intel-gfx@lists.freedesktop.org VGhlIGdhbW1hIHRhYmxlcyBpbiBHZW1pbmlsYWtlIHdlcmUgY2hhbmdlZC4gVGhlcmUgaXMgbm8g c3BsaXQtZ2FtbWEKbW9kZS4gSW5zdGVhZCwgdGhlcmUgaXMgYSBkZWRpY2F0ZWQgZGVnYW1tYSB0 YWJsZSB0aGF0IGlzIGVuYWJsZWQKd2hlbmV2ZXIgcGlwZSBDU0MgaXMgZW5hYmxlZC4KClRoZSBk ZWRpY2F0ZWQgZ2FtbWEgdGFibGUgaGFzIDE2IGJpdCBwcmVjaXNpb24gYnV0IGRvZXNuJ3Qgc3Vw cG9ydApzZXBhcmF0ZSBjaGFubmVscy4gU2luY2UgdGhhdCBkb2Vzbid0IG1hdGNoIHRoZSBwZXIt Y2hhbm5lbCBmb3JtYXQgb2YKdGhlIGRlZ2FtbWEgTFVUIHByb3BlcnR5LCBmb3Igbm93IG9ubHkg YSBsaW5lYXIgdGFibGUgaXMgbG9hZGVkIGFuZCB0aGUKcHJvcGVydHkgaWdub3JlZC4KCnYyOiBS ZW1vdmUgZW1wdHkgbGluZS4gKFZpbGxlKQogICAgUmV1c2UgYnJvYWR3ZWxsIGNvZGUuIChWaWxs ZSkKCnYzOiBEb24ndCB3cml0ZSBQSVBFX0NTQ19NT0RFLiAoVmlsbGUpCgpDYzogVmlsbGUgU3ly asOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogQW5k ZXIgQ29uc2VsdmFuIGRlIE9saXZlaXJhIDxhbmRlci5jb25zZWx2YW4uZGUub2xpdmVpcmFAaW50 ZWwuY29tPgoKRG9uJ3Qgd3JpdGUgQ1NDX01PREUKLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X3BjaS5jICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAgICB8 IDE0ICsrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYyB8IDU4ICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiAzIGZpbGVzIGNoYW5nZWQsIDcy IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3BjaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2kuYwppbmRl eCBlY2I0ODdiLi5kZjIwNTFiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3BjaS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGNpLmMKQEAgLTQwMyw2ICs0 MDMsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVsX2RldmljZV9pbmZvIGludGVsX2dlbWlu aWxha2VfaW5mbyA9IHsKIAkucGxhdGZvcm0gPSBJTlRFTF9HRU1JTklMQUtFLAogCS5pc19hbHBo YV9zdXBwb3J0ID0gMSwKIAkuZGRiX3NpemUgPSAxMDI0LAorCS5jb2xvciA9IHsgLmRlZ2FtbWFf bHV0X3NpemUgPSAwLCAuZ2FtbWFfbHV0X3NpemUgPSAxMDI0IH0KIH07CiAKIHN0YXRpYyBjb25z dCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfa2FieWxha2VfaW5mbyA9IHsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3JlZy5oCmluZGV4IDA2YmJlNTUuLmUwMjk2OTEgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9yZWcuaApAQCAtODE4MSwxMiArODE4MSwyNiBAQCBlbnVtIHsKICNkZWZpbmUgX1BBTF9QUkVD X0VYVF9HQ19NQVhfQQkweDRBNDIwCiAjZGVmaW5lIF9QQUxfUFJFQ19FWFRfR0NfTUFYX0IJMHg0 QUMyMAogI2RlZmluZSBfUEFMX1BSRUNfRVhUX0dDX01BWF9DCTB4NEI0MjAKKyNkZWZpbmUgX1BB TF9QUkVDX0VYVDJfR0NfTUFYX0EJMHg0QTQzMAorI2RlZmluZSBfUEFMX1BSRUNfRVhUMl9HQ19N QVhfQgkweDRBQzMwCisjZGVmaW5lIF9QQUxfUFJFQ19FWFQyX0dDX01BWF9DCTB4NEI0MzAKIAog I2RlZmluZSBQUkVDX1BBTF9JTkRFWChwaXBlKQkJX01NSU9fUElQRShwaXBlLCBfUEFMX1BSRUNf SU5ERVhfQSwgX1BBTF9QUkVDX0lOREVYX0IpCiAjZGVmaW5lIFBSRUNfUEFMX0RBVEEocGlwZSkJ CV9NTUlPX1BJUEUocGlwZSwgX1BBTF9QUkVDX0RBVEFfQSwgX1BBTF9QUkVDX0RBVEFfQikKICNk ZWZpbmUgUFJFQ19QQUxfR0NfTUFYKHBpcGUsIGkpCV9NTUlPKF9QSVBFKHBpcGUsIF9QQUxfUFJF Q19HQ19NQVhfQSwgX1BBTF9QUkVDX0dDX01BWF9CKSArIChpKSAqIDQpCiAjZGVmaW5lIFBSRUNf UEFMX0VYVF9HQ19NQVgocGlwZSwgaSkJX01NSU8oX1BJUEUocGlwZSwgX1BBTF9QUkVDX0VYVF9H Q19NQVhfQSwgX1BBTF9QUkVDX0VYVF9HQ19NQVhfQikgKyAoaSkgKiA0KQogCisjZGVmaW5lIF9Q UkVfQ1NDX0dBTUNfSU5ERVhfQQkweDRBNDg0CisjZGVmaW5lIF9QUkVfQ1NDX0dBTUNfSU5ERVhf QgkweDRBQzg0CisjZGVmaW5lIF9QUkVfQ1NDX0dBTUNfSU5ERVhfQwkweDRCNDg0CisjZGVmaW5l ICAgUFJFX0NTQ19HQU1DX0FVVE9fSU5DUkVNRU5UCSgxIDw8IDEwKQorI2RlZmluZSBfUFJFX0NT Q19HQU1DX0RBVEFfQQkweDRBNDg4CisjZGVmaW5lIF9QUkVfQ1NDX0dBTUNfREFUQV9CCTB4NEFD ODgKKyNkZWZpbmUgX1BSRV9DU0NfR0FNQ19EQVRBX0MJMHg0QjQ4OAorCisjZGVmaW5lIFBSRV9D U0NfR0FNQ19JTkRFWChwaXBlKQlfTU1JT19QSVBFKHBpcGUsIF9QUkVfQ1NDX0dBTUNfSU5ERVhf QSwgX1BSRV9DU0NfR0FNQ19JTkRFWF9CKQorI2RlZmluZSBQUkVfQ1NDX0dBTUNfREFUQShwaXBl KQkJX01NSU9fUElQRShwaXBlLCBfUFJFX0NTQ19HQU1DX0RBVEFfQSwgX1BSRV9DU0NfR0FNQ19E QVRBX0IpCisKIC8qIHBpcGUgQ1NDICYgZGVnYW1tYS9nYW1tYSBMVVRzIG9uIENIViAqLwogI2Rl ZmluZSBfQ0dNX1BJUEVfQV9DU0NfQ09FRkYwMQkoVkxWX0RJU1BMQVlfQkFTRSArIDB4Njc5MDAp CiAjZGVmaW5lIF9DR01fUElQRV9BX0NTQ19DT0VGRjIzCShWTFZfRElTUExBWV9CQVNFICsgMHg2 NzkwNCkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jCmluZGV4IDgyYTNiYzkuLjA2MjdlZWUg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYwpAQCAtMzgwLDcgKzM4MCw5IEBAIHN0YXRp YyB2b2lkIGJkd19sb2FkX2dhbW1hX2x1dChzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlLCB1 MzIgb2Zmc2V0KQogCVdBUk5fT04ob2Zmc2V0ICYgflBBTF9QUkVDX0lOREVYX1ZBTFVFX01BU0sp OwogCiAJSTkxNV9XUklURShQUkVDX1BBTF9JTkRFWChwaXBlKSwKLQkJICAgUEFMX1BSRUNfU1BM SVRfTU9ERSB8IFBBTF9QUkVDX0FVVE9fSU5DUkVNRU5UIHwgb2Zmc2V0KTsKKwkJICAgKG9mZnNl dCA/IFBBTF9QUkVDX1NQTElUX01PREUgOiAwKSB8CisJCSAgIFBBTF9QUkVDX0FVVE9fSU5DUkVN RU5UIHwKKwkJICAgb2Zmc2V0KTsKIAogCWlmIChzdGF0ZS0+Z2FtbWFfbHV0KSB7CiAJCXN0cnVj dCBkcm1fY29sb3JfbHV0ICpsdXQgPQpAQCAtNDQzLDYgKzQ0NSw1NyBAQCBzdGF0aWMgdm9pZCBi cm9hZHdlbGxfbG9hZF9sdXRzKHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUpCiAJSTkxNV9X UklURShQUkVDX1BBTF9JTkRFWChwaXBlKSwgMCk7CiB9CiAKK3N0YXRpYyB2b2lkIGdsa19sb2Fk X2RlZ2FtbWFfbHV0KHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUpCit7CisJc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShzdGF0ZS0+Y3J0Yy0+ZGV2KTsKKwll bnVtIHBpcGUgcGlwZSA9IHRvX2ludGVsX2NydGMoc3RhdGUtPmNydGMpLT5waXBlOworCWNvbnN0 IHVpbnQzMl90IGx1dF9zaXplID0gMzM7CisJdWludDMyX3QgaTsKKworCS8qCisJICogV2hlbiBz ZXR0aW5nIHRoZSBhdXRvLWluY3JlbWVudCBiaXQsIHRoZSBoYXJkd2FyZSBzZWVtcyB0bworCSAq IGlnbm9yZSB0aGUgaW5kZXggYml0cywgc28gd2UgbmVlZCB0byByZXNldCBpdCB0byBpbmRleCAw CisJICogc2VwYXJhdGVseS4KKwkgKi8KKwlJOTE1X1dSSVRFKFBSRV9DU0NfR0FNQ19JTkRFWChw aXBlKSwgMCk7CisJSTkxNV9XUklURShQUkVfQ1NDX0dBTUNfSU5ERVgocGlwZSksIFBSRV9DU0Nf R0FNQ19BVVRPX0lOQ1JFTUVOVCk7CisKKwkvKgorCSAqICBGSVhNRTogVGhlIHBpcGUgZGVnYW1t YSB0YWJsZSBpbiBnZW1pbmlsYWtlIGRvZXNuJ3Qgc3VwcG9ydAorCSAqICBkaWZmZXJlbnQgdmFs dWVzIHBlciBjaGFubmVsLCBzbyB0aGlzIGp1c3QgbG9hZHMgYSBsaW5lYXIgdGFibGUuCisJICov CisJZm9yIChpID0gMDsgaSA8IGx1dF9zaXplOyBpKyspIHsKKwkJdWludDMyX3QgdiA9IChpICog KCgxIDw8IDE2KSAtIDEpKSAvIChsdXRfc2l6ZSAtIDEpOworCisJCUk5MTVfV1JJVEUoUFJFX0NT Q19HQU1DX0RBVEEocGlwZSksIHYpOworCX0KKworCS8qIENsYW1wIHZhbHVlcyA+IDEuMC4gKi8K Kwl3aGlsZSAoaSsrIDwgMzUpCisJCUk5MTVfV1JJVEUoUFJFX0NTQ19HQU1DX0RBVEEocGlwZSks ICgxIDw8IDE2KSAtIDEpOworfQorCitzdGF0aWMgdm9pZCBnbGtfbG9hZF9sdXRzKHN0cnVjdCBk cm1fY3J0Y19zdGF0ZSAqc3RhdGUpCit7CisJc3RydWN0IGRybV9jcnRjICpjcnRjID0gc3RhdGUt PmNydGM7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKKwlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7CisJc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKmludGVsX3N0YXRlID0gdG9faW50ZWxfY3J0Y19zdGF0ZShzdGF0ZSk7CisJZW51 bSBwaXBlIHBpcGUgPSB0b19pbnRlbF9jcnRjKGNydGMpLT5waXBlOworCisJaWYgKGNydGNfc3Rh dGVfaXNfbGVnYWN5KHN0YXRlKSkgeworCQloYXN3ZWxsX2xvYWRfbHV0cyhzdGF0ZSk7CisJCXJl dHVybjsKKwl9CisKKwlnbGtfbG9hZF9kZWdhbW1hX2x1dChzdGF0ZSk7CisJYmR3X2xvYWRfZ2Ft bWFfbHV0KHN0YXRlLCAwKTsKKworCWludGVsX3N0YXRlLT5nYW1tYV9tb2RlID0gR0FNTUFfTU9E RV9NT0RFXzEwQklUOworCUk5MTVfV1JJVEUoR0FNTUFfTU9ERShwaXBlKSwgR0FNTUFfTU9ERV9N T0RFXzEwQklUKTsKKwlQT1NUSU5HX1JFQUQoR0FNTUFfTU9ERShwaXBlKSk7Cit9CisKIC8qIExv YWRzIHRoZSBwYWxldHRlL2dhbW1hIHVuaXQgZm9yIHRoZSBDUlRDIG9uIENoZXJyeVZpZXcuICov CiBzdGF0aWMgdm9pZCBjaGVycnl2aWV3X2xvYWRfbHV0cyhzdHJ1Y3QgZHJtX2NydGNfc3RhdGUg KnN0YXRlKQogewpAQCAtNTYxLDYgKzYxNCw5IEBAIHZvaWQgaW50ZWxfY29sb3JfaW5pdChzdHJ1 Y3QgZHJtX2NydGMgKmNydGMpCiAJCSAgIElTX0JST1hUT04oZGV2X3ByaXYpKSB7CiAJCWRldl9w cml2LT5kaXNwbGF5LmxvYWRfY3NjX21hdHJpeCA9IGk5eHhfbG9hZF9jc2NfbWF0cml4OwogCQlk ZXZfcHJpdi0+ZGlzcGxheS5sb2FkX2x1dHMgPSBicm9hZHdlbGxfbG9hZF9sdXRzOworCX0gZWxz ZSBpZiAoSVNfR0VNSU5JTEFLRShkZXZfcHJpdikpIHsKKwkJZGV2X3ByaXYtPmRpc3BsYXkubG9h ZF9jc2NfbWF0cml4ID0gaTl4eF9sb2FkX2NzY19tYXRyaXg7CisJCWRldl9wcml2LT5kaXNwbGF5 LmxvYWRfbHV0cyA9IGdsa19sb2FkX2x1dHM7CiAJfSBlbHNlIHsKIAkJZGV2X3ByaXYtPmRpc3Bs YXkubG9hZF9sdXRzID0gaTl4eF9sb2FkX2x1dHM7CiAJfQotLSAKMi45LjMKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=