From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan de Oliveira Subject: [PATCH v2 4/5] drm/i915/glk: Program pipe gamma and degamma tables Date: Thu, 26 Jan 2017 13:24:24 +0200 Message-ID: <1485429865-10687-5-git-send-email-ander.conselvan.de.oliveira@intel.com> References: <1485429865-10687-1-git-send-email-ander.conselvan.de.oliveira@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 11DA86EB46 for ; Thu, 26 Jan 2017 11:24:45 +0000 (UTC) In-Reply-To: <1485429865-10687-1-git-send-email-ander.conselvan.de.oliveira@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 ZSkKCkNjOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpT aWduZWQtb2ZmLWJ5OiBBbmRlciBDb25zZWx2YW4gZGUgT2xpdmVpcmEgPGFuZGVyLmNvbnNlbHZh bi5kZS5vbGl2ZWlyYUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9w Y2kuYyAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICAgfCAxNCAr KysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMgfCA2MCArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogMyBmaWxlcyBjaGFuZ2VkLCA3NCBpbnNl cnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9wY2kuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGNpLmMKaW5kZXggZWNi NDg3Yi4uZGYyMDUxYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2ku YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jCkBAIC00MDMsNiArNDAzLDcg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyBpbnRlbF9nZW1pbmlsYWtl X2luZm8gPSB7CiAJLnBsYXRmb3JtID0gSU5URUxfR0VNSU5JTEFLRSwKIAkuaXNfYWxwaGFfc3Vw cG9ydCA9IDEsCiAJLmRkYl9zaXplID0gMTAyNCwKKwkuY29sb3IgPSB7IC5kZWdhbW1hX2x1dF9z aXplID0gMCwgLmdhbW1hX2x1dF9zaXplID0gMTAyNCB9CiB9OwogCiBzdGF0aWMgY29uc3Qgc3Ry dWN0IGludGVsX2RldmljZV9pbmZvIGludGVsX2thYnlsYWtlX2luZm8gPSB7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9yZWcuaAppbmRleCAwNmJiZTU1Li5lMDI5NjkxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVn LmgKQEAgLTgxODEsMTIgKzgxODEsMjYgQEAgZW51bSB7CiAjZGVmaW5lIF9QQUxfUFJFQ19FWFRf R0NfTUFYX0EJMHg0QTQyMAogI2RlZmluZSBfUEFMX1BSRUNfRVhUX0dDX01BWF9CCTB4NEFDMjAK ICNkZWZpbmUgX1BBTF9QUkVDX0VYVF9HQ19NQVhfQwkweDRCNDIwCisjZGVmaW5lIF9QQUxfUFJF Q19FWFQyX0dDX01BWF9BCTB4NEE0MzAKKyNkZWZpbmUgX1BBTF9QUkVDX0VYVDJfR0NfTUFYX0IJ MHg0QUMzMAorI2RlZmluZSBfUEFMX1BSRUNfRVhUMl9HQ19NQVhfQwkweDRCNDMwCiAKICNkZWZp bmUgUFJFQ19QQUxfSU5ERVgocGlwZSkJCV9NTUlPX1BJUEUocGlwZSwgX1BBTF9QUkVDX0lOREVY X0EsIF9QQUxfUFJFQ19JTkRFWF9CKQogI2RlZmluZSBQUkVDX1BBTF9EQVRBKHBpcGUpCQlfTU1J T19QSVBFKHBpcGUsIF9QQUxfUFJFQ19EQVRBX0EsIF9QQUxfUFJFQ19EQVRBX0IpCiAjZGVmaW5l IFBSRUNfUEFMX0dDX01BWChwaXBlLCBpKQlfTU1JTyhfUElQRShwaXBlLCBfUEFMX1BSRUNfR0Nf TUFYX0EsIF9QQUxfUFJFQ19HQ19NQVhfQikgKyAoaSkgKiA0KQogI2RlZmluZSBQUkVDX1BBTF9F WFRfR0NfTUFYKHBpcGUsIGkpCV9NTUlPKF9QSVBFKHBpcGUsIF9QQUxfUFJFQ19FWFRfR0NfTUFY X0EsIF9QQUxfUFJFQ19FWFRfR0NfTUFYX0IpICsgKGkpICogNCkKIAorI2RlZmluZSBfUFJFX0NT Q19HQU1DX0lOREVYX0EJMHg0QTQ4NAorI2RlZmluZSBfUFJFX0NTQ19HQU1DX0lOREVYX0IJMHg0 QUM4NAorI2RlZmluZSBfUFJFX0NTQ19HQU1DX0lOREVYX0MJMHg0QjQ4NAorI2RlZmluZSAgIFBS RV9DU0NfR0FNQ19BVVRPX0lOQ1JFTUVOVAkoMSA8PCAxMCkKKyNkZWZpbmUgX1BSRV9DU0NfR0FN Q19EQVRBX0EJMHg0QTQ4OAorI2RlZmluZSBfUFJFX0NTQ19HQU1DX0RBVEFfQgkweDRBQzg4Cisj ZGVmaW5lIF9QUkVfQ1NDX0dBTUNfREFUQV9DCTB4NEI0ODgKKworI2RlZmluZSBQUkVfQ1NDX0dB TUNfSU5ERVgocGlwZSkJX01NSU9fUElQRShwaXBlLCBfUFJFX0NTQ19HQU1DX0lOREVYX0EsIF9Q UkVfQ1NDX0dBTUNfSU5ERVhfQikKKyNkZWZpbmUgUFJFX0NTQ19HQU1DX0RBVEEocGlwZSkJCV9N TUlPX1BJUEUocGlwZSwgX1BSRV9DU0NfR0FNQ19EQVRBX0EsIF9QUkVfQ1NDX0dBTUNfREFUQV9C KQorCiAvKiBwaXBlIENTQyAmIGRlZ2FtbWEvZ2FtbWEgTFVUcyBvbiBDSFYgKi8KICNkZWZpbmUg X0NHTV9QSVBFX0FfQ1NDX0NPRUZGMDEJKFZMVl9ESVNQTEFZX0JBU0UgKyAweDY3OTAwKQogI2Rl ZmluZSBfQ0dNX1BJUEVfQV9DU0NfQ09FRkYyMwkoVkxWX0RJU1BMQVlfQkFTRSArIDB4Njc5MDQp CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYwppbmRleCA4MmEzYmM5Li4yMTI1YWEzIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMKQEAgLTM4MCw3ICszODAsOSBAQCBzdGF0aWMgdm9p ZCBiZHdfbG9hZF9nYW1tYV9sdXQoc3RydWN0IGRybV9jcnRjX3N0YXRlICpzdGF0ZSwgdTMyIG9m ZnNldCkKIAlXQVJOX09OKG9mZnNldCAmIH5QQUxfUFJFQ19JTkRFWF9WQUxVRV9NQVNLKTsKIAog CUk5MTVfV1JJVEUoUFJFQ19QQUxfSU5ERVgocGlwZSksCi0JCSAgIFBBTF9QUkVDX1NQTElUX01P REUgfCBQQUxfUFJFQ19BVVRPX0lOQ1JFTUVOVCB8IG9mZnNldCk7CisJCSAgIChvZmZzZXQgPyBQ QUxfUFJFQ19TUExJVF9NT0RFIDogMCkgfAorCQkgICBQQUxfUFJFQ19BVVRPX0lOQ1JFTUVOVCB8 CisJCSAgIG9mZnNldCk7CiAKIAlpZiAoc3RhdGUtPmdhbW1hX2x1dCkgewogCQlzdHJ1Y3QgZHJt X2NvbG9yX2x1dCAqbHV0ID0KQEAgLTQ0Myw2ICs0NDUsNTkgQEAgc3RhdGljIHZvaWQgYnJvYWR3 ZWxsX2xvYWRfbHV0cyhzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlKQogCUk5MTVfV1JJVEUo UFJFQ19QQUxfSU5ERVgocGlwZSksIDApOwogfQogCitzdGF0aWMgdm9pZCBnbGtfbG9hZF9kZWdh bW1hX2x1dChzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlKQoreworCXN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoc3RhdGUtPmNydGMtPmRldik7CisJZW51bSBw aXBlIHBpcGUgPSB0b19pbnRlbF9jcnRjKHN0YXRlLT5jcnRjKS0+cGlwZTsKKwljb25zdCB1aW50 MzJfdCBsdXRfc2l6ZSA9IDMzOworCXVpbnQzMl90IGk7CisKKwkvKgorCSAqIFdoZW4gc2V0dGlu ZyB0aGUgYXV0by1pbmNyZW1lbnQgYml0LCB0aGUgaGFyZHdhcmUgc2VlbXMgdG8KKwkgKiBpZ25v cmUgdGhlIGluZGV4IGJpdHMsIHNvIHdlIG5lZWQgdG8gcmVzZXQgaXQgdG8gaW5kZXggMAorCSAq IHNlcGFyYXRlbHkuCisJICovCisJSTkxNV9XUklURShQUkVfQ1NDX0dBTUNfSU5ERVgocGlwZSks IDApOworCUk5MTVfV1JJVEUoUFJFX0NTQ19HQU1DX0lOREVYKHBpcGUpLCBQUkVfQ1NDX0dBTUNf QVVUT19JTkNSRU1FTlQpOworCisJLyoKKwkgKiAgRklYTUU6IFRoZSBwaXBlIGRlZ2FtbWEgdGFi bGUgaW4gZ2VtaW5pbGFrZSBkb2Vzbid0IHN1cHBvcnQKKwkgKiAgZGlmZmVyZW50IHZhbHVlcyBw ZXIgY2hhbm5lbCwgc28gdGhpcyBqdXN0IGxvYWRzIGEgbGluZWFyIHRhYmxlLgorCSAqLworCWZv ciAoaSA9IDA7IGkgPCBsdXRfc2l6ZTsgaSsrKSB7CisJCXVpbnQzMl90IHYgPSAoaSAqICgoMSA8 PCAxNikgLSAxKSkgLyAobHV0X3NpemUgLSAxKTsKKworCQlJOTE1X1dSSVRFKFBSRV9DU0NfR0FN Q19EQVRBKHBpcGUpLCB2KTsKKwl9CisKKwkvKiBDbGFtcCB2YWx1ZXMgPiAxLjAuICovCisJd2hp bGUgKGkrKyA8IDM1KQorCQlJOTE1X1dSSVRFKFBSRV9DU0NfR0FNQ19EQVRBKHBpcGUpLCAoMSA8 PCAxNikgLSAxKTsKK30KKworc3RhdGljIHZvaWQgZ2xrX2xvYWRfbHV0cyhzdHJ1Y3QgZHJtX2Ny dGNfc3RhdGUgKnN0YXRlKQoreworCXN0cnVjdCBkcm1fY3J0YyAqY3J0YyA9IHN0YXRlLT5jcnRj OworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7CisJc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOworCXN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICppbnRlbF9zdGF0ZSA9IHRvX2ludGVsX2NydGNfc3RhdGUoc3RhdGUpOworCWVudW0gcGlw ZSBwaXBlID0gdG9faW50ZWxfY3J0YyhjcnRjKS0+cGlwZTsKKworCWlmIChjcnRjX3N0YXRlX2lz X2xlZ2FjeShzdGF0ZSkpIHsKKwkJaGFzd2VsbF9sb2FkX2x1dHMoc3RhdGUpOworCQlyZXR1cm47 CisJfQorCisJZ2xrX2xvYWRfZGVnYW1tYV9sdXQoc3RhdGUpOworCWJkd19sb2FkX2dhbW1hX2x1 dChzdGF0ZSwgMCk7CisKKwlpbnRlbF9zdGF0ZS0+Z2FtbWFfbW9kZSA9IEdBTU1BX01PREVfTU9E RV8xMEJJVDsKKwlJOTE1X1dSSVRFKEdBTU1BX01PREUocGlwZSksIEdBTU1BX01PREVfTU9ERV8x MEJJVCk7CisJUE9TVElOR19SRUFEKEdBTU1BX01PREUocGlwZSkpOworCisJSTkxNV9XUklURShQ SVBFX0NTQ19NT0RFKHBpcGUpLCAwKTsKK30KKwogLyogTG9hZHMgdGhlIHBhbGV0dGUvZ2FtbWEg dW5pdCBmb3IgdGhlIENSVEMgb24gQ2hlcnJ5Vmlldy4gKi8KIHN0YXRpYyB2b2lkIGNoZXJyeXZp ZXdfbG9hZF9sdXRzKHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUpCiB7CkBAIC01NjEsNiAr NjE2LDkgQEAgdm9pZCBpbnRlbF9jb2xvcl9pbml0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAkJ ICAgSVNfQlJPWFRPTihkZXZfcHJpdikpIHsKIAkJZGV2X3ByaXYtPmRpc3BsYXkubG9hZF9jc2Nf bWF0cml4ID0gaTl4eF9sb2FkX2NzY19tYXRyaXg7CiAJCWRldl9wcml2LT5kaXNwbGF5LmxvYWRf bHV0cyA9IGJyb2Fkd2VsbF9sb2FkX2x1dHM7CisJfSBlbHNlIGlmIChJU19HRU1JTklMQUtFKGRl dl9wcml2KSkgeworCQlkZXZfcHJpdi0+ZGlzcGxheS5sb2FkX2NzY19tYXRyaXggPSBpOXh4X2xv YWRfY3NjX21hdHJpeDsKKwkJZGV2X3ByaXYtPmRpc3BsYXkubG9hZF9sdXRzID0gZ2xrX2xvYWRf bHV0czsKIAl9IGVsc2UgewogCQlkZXZfcHJpdi0+ZGlzcGxheS5sb2FkX2x1dHMgPSBpOXh4X2xv YWRfbHV0czsKIAl9Ci0tIAoyLjUuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==