From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH v3 1/7] drm/i915: Populate gamma_mode for all platforms Date: Thu, 7 Feb 2019 22:21:40 +0200 Message-ID: <20190207202146.26423-2-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 mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3E23F6ECDB for ; Thu, 7 Feb 2019 20:21:53 +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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCk9u IHByZS1IU1cgZ2FtbWEgbW9kZSBpcyBjb25maWd1cmVkIHZpYSBQSVBFQ09ORi4gVGhlIGJpdHMg YXJlCnRoZSBzYW1lIGV4Y2VwdCBzaGlmdGVkIHVwLCBzbyB3ZSBjYW4gcmV1c2UganVzdCBzdG9y ZSB0aGVtIGluCmNydGNfc3RhdGUtPmdhbW1hX21vZGUgaW4gdGhlIEhTVysgd2F5LCBhbGxvd2lu ZyB1cyB0byBzaGFyZQpzb21lIGNvZGUgbGF0ZXIuCgp2MjogQWxsb3cgZmFzdGJvb3Qgd2l0aCBn YW1tYV9tb2RlIGNoYW5nZXMgKE1hYXJ0ZW4pCiAgICBBZGQgc3BhY2UgYXJvdW5kIHRoZSAnPDwn IGluIHRoZSByZWcgbWFjcm8KICAgIERlYWwgd2l0aCBIQVNfR01DSAoKU2lnbmVkLW9mZi1ieTog VmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQt Ynk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAgICAgIHwgMTAgKysrKy0KIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMgICB8IDYwICsrKysrKysrKysrKysrKysr KysrKy0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDE0ICsr KysrKy0KIDMgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKaW5kZXggNjM4YTU4NjQ2OWY5Li5jM2JjOTlkOWE5MDQg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaApAQCAtNTU5MCw5ICs1NTkwLDE1IEBAIGVudW0gewog I2RlZmluZSAgIFBJUEVDT05GX1NJTkdMRV9XSURFCTAKICNkZWZpbmUgICBQSVBFQ09ORl9QSVBF X1VOTE9DS0VEIDAKICNkZWZpbmUgICBQSVBFQ09ORl9QSVBFX0xPQ0tFRAkoMSA8PCAyNSkKLSNk ZWZpbmUgICBQSVBFQ09ORl9QQUxFVFRFCTAKLSNkZWZpbmUgICBQSVBFQ09ORl9HQU1NQQkJKDEg PDwgMjQpCiAjZGVmaW5lICAgUElQRUNPTkZfRk9SQ0VfQk9SREVSCSgxIDw8IDI1KQorI2RlZmlu ZSAgIFBJUEVDT05GX0dBTU1BX01PREVfTUFTS19JOVhYCSgxIDw8IDI0KSAvKiBnbWNoICovCisj ZGVmaW5lICAgUElQRUNPTkZfR0FNTUFfTU9ERV9NQVNLX0lMSwkoMyA8PCAyNCkgLyogaWxrLWl2 YiAqLworI2RlZmluZSAgIFBJUEVDT05GX0dBTU1BX01PREVfOEJJVAkoMCA8PCAyNCkgLyogZ21j aCxpbGstaXZiICovCisjZGVmaW5lICAgUElQRUNPTkZfR0FNTUFfTU9ERV8xMEJJVAkoMSA8PCAy NCkgLyogZ21jaCxpbGstaXZiICovCisjZGVmaW5lICAgUElQRUNPTkZfR0FNTUFfTU9ERV8xMkJJ VAkoMiA8PCAyNCkgLyogaWxrLWl2YiAqLworI2RlZmluZSAgIFBJUEVDT05GX0dBTU1BX01PREVf U1BMSVQJKDMgPDwgMjQpIC8qIGl2YiAqLworI2RlZmluZSAgIFBJUEVDT05GX0dBTU1BX01PREUo eCkJKCh4KSA8PCAyNCkgLyogcGFzcyBpbiBHQU1NQV9NT0RFX01PREVfKiAqLworI2RlZmluZSAg IFBJUEVDT05GX0dBTU1BX01PREVfU0hJRlQJMjQKICNkZWZpbmUgICBQSVBFQ09ORl9JTlRFUkxB Q0VfTUFTSwkoNyA8PCAyMSkKICNkZWZpbmUgICBQSVBFQ09ORl9JTlRFUkxBQ0VfTUFTS19IU1cJ KDMgPDwgMjEpCiAvKiBOb3RlIHRoYXQgcHJlLWdlbjMgZG9lcyBub3Qgc3VwcG9ydCBpbnRlcmxh Y2VkIGRpc3BsYXkgZGlyZWN0bHkuIFBhbmVsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9jb2xvci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYwpp bmRleCA3MWExZjEyYzZiMmEuLjg2OTE1MTI1ZDE3YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfY29sb3IuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9j b2xvci5jCkBAIC0zNTEsNiArMzUxLDMyIEBAIHN0YXRpYyB2b2lkIGk5eHhfbG9hZF9sdXRzKGNv bnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogCWk5eHhfbG9hZF9sdXRz X2ludGVybmFsKGNydGNfc3RhdGUsIGNydGNfc3RhdGUtPmJhc2UuZ2FtbWFfbHV0KTsKIH0KIAor c3RhdGljIHZvaWQgaTl4eF9jb2xvcl9jb21taXQoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpCit7CisJc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9j cnRjKGNydGNfc3RhdGUtPmJhc2UuY3J0Yyk7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2ID0gdG9faTkxNShjcnRjLT5iYXNlLmRldik7CisJZW51bSBwaXBlIHBpcGUgPSBjcnRj LT5waXBlOworCXUzMiB2YWw7CisKKwl2YWwgPSBJOTE1X1JFQUQoUElQRUNPTkYocGlwZSkpOwor CXZhbCAmPSB+UElQRUNPTkZfR0FNTUFfTU9ERV9NQVNLX0k5WFg7CisJdmFsIHw9IFBJUEVDT05G X0dBTU1BX01PREUoY3J0Y19zdGF0ZS0+Z2FtbWFfbW9kZSk7CisJSTkxNV9XUklURShQSVBFQ09O RihwaXBlKSwgdmFsKTsKK30KKworc3RhdGljIHZvaWQgaWxrX2NvbG9yX2NvbW1pdChjb25zdCBz dHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKK3sKKwlzdHJ1Y3QgaW50ZWxfY3J0 YyAqY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsKKwlzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKKwll bnVtIHBpcGUgcGlwZSA9IGNydGMtPnBpcGU7CisJdTMyIHZhbDsKKworCXZhbCA9IEk5MTVfUkVB RChQSVBFQ09ORihwaXBlKSk7CisJdmFsICY9IH5QSVBFQ09ORl9HQU1NQV9NT0RFX01BU0tfSUxL OworCXZhbCB8PSBQSVBFQ09ORl9HQU1NQV9NT0RFKGNydGNfc3RhdGUtPmdhbW1hX21vZGUpOwor CUk5MTVfV1JJVEUoUElQRUNPTkYocGlwZSksIHZhbCk7Cit9CisKIHN0YXRpYyB2b2lkIGhzd19j b2xvcl9jb21taXQoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiB7 CiAJc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGNydGNfc3RhdGUtPmJh c2UuY3J0Yyk7CkBAIC01ODUsOCArNjExLDcgQEAgdm9pZCBpbnRlbF9jb2xvcl9jb21taXQoY29u c3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiB7CiAJc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjX3N0YXRlLT5iYXNlLmNydGMtPmRl dik7CiAKLQlpZiAoZGV2X3ByaXYtPmRpc3BsYXkuY29sb3JfY29tbWl0KQotCQlkZXZfcHJpdi0+ ZGlzcGxheS5jb2xvcl9jb21taXQoY3J0Y19zdGF0ZSk7CisJZGV2X3ByaXYtPmRpc3BsYXkuY29s b3JfY29tbWl0KGNydGNfc3RhdGUpOwogfQogCiBzdGF0aWMgaW50IGNoZWNrX2x1dF9zaXplKGNv bnN0IHN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqbHV0LCBpbnQgZXhwZWN0ZWQpCkBAIC02NDks MjAgKzY3NCwyNSBAQCB2b2lkIGludGVsX2NvbG9yX2luaXQoc3RydWN0IGludGVsX2NydGMgKmNy dGMpCiAKIAlkcm1fbW9kZV9jcnRjX3NldF9nYW1tYV9zaXplKCZjcnRjLT5iYXNlLCAyNTYpOwog Ci0JaWYgKElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKSB7Ci0JCWRldl9wcml2LT5kaXNwbGF5Lmxv YWRfbHV0cyA9IGNoZXJyeXZpZXdfbG9hZF9sdXRzOwotCX0gZWxzZSBpZiAoSVNfSEFTV0VMTChk ZXZfcHJpdikpIHsKLQkJZGV2X3ByaXYtPmRpc3BsYXkubG9hZF9sdXRzID0gaTl4eF9sb2FkX2x1 dHM7Ci0JCWRldl9wcml2LT5kaXNwbGF5LmNvbG9yX2NvbW1pdCA9IGhzd19jb2xvcl9jb21taXQ7 Ci0JfSBlbHNlIGlmIChJU19CUk9BRFdFTEwoZGV2X3ByaXYpIHx8IElTX0dFTjlfQkMoZGV2X3By aXYpIHx8Ci0JCSAgIElTX0JST1hUT04oZGV2X3ByaXYpKSB7Ci0JCWRldl9wcml2LT5kaXNwbGF5 LmxvYWRfbHV0cyA9IGJyb2Fkd2VsbF9sb2FkX2x1dHM7Ci0JCWRldl9wcml2LT5kaXNwbGF5LmNv bG9yX2NvbW1pdCA9IGhzd19jb2xvcl9jb21taXQ7Ci0JfSBlbHNlIGlmIChJU19HRU1JTklMQUtF KGRldl9wcml2KSB8fCBJU19DQU5OT05MQUtFKGRldl9wcml2KSkgewotCQlkZXZfcHJpdi0+ZGlz cGxheS5sb2FkX2x1dHMgPSBnbGtfbG9hZF9sdXRzOwotCQlkZXZfcHJpdi0+ZGlzcGxheS5jb2xv cl9jb21taXQgPSBoc3dfY29sb3JfY29tbWl0OworCWlmIChIQVNfR01DSChkZXZfcHJpdikpIHsK KwkJaWYgKElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKQorCQkJZGV2X3ByaXYtPmRpc3BsYXkubG9h ZF9sdXRzID0gY2hlcnJ5dmlld19sb2FkX2x1dHM7CisJCWVsc2UKKwkJCWRldl9wcml2LT5kaXNw bGF5LmxvYWRfbHV0cyA9IGk5eHhfbG9hZF9sdXRzOworCisJCWRldl9wcml2LT5kaXNwbGF5LmNv bG9yX2NvbW1pdCA9IGk5eHhfY29sb3JfY29tbWl0OwogCX0gZWxzZSB7Ci0JCWRldl9wcml2LT5k aXNwbGF5LmxvYWRfbHV0cyA9IGk5eHhfbG9hZF9sdXRzOworCQlpZiAoSVNfQ0FOTk9OTEFLRShk ZXZfcHJpdikgfHwgSVNfR0VNSU5JTEFLRShkZXZfcHJpdikpCisJCQlkZXZfcHJpdi0+ZGlzcGxh eS5sb2FkX2x1dHMgPSBnbGtfbG9hZF9sdXRzOworCQllbHNlIGlmIChJTlRFTF9HRU4oZGV2X3By aXYpID49IDkgfHwgSVNfQlJPQURXRUxMKGRldl9wcml2KSkKKwkJCWRldl9wcml2LT5kaXNwbGF5 LmxvYWRfbHV0cyA9IGJyb2Fkd2VsbF9sb2FkX2x1dHM7CisJCWVsc2UKKwkJCWRldl9wcml2LT5k aXNwbGF5LmxvYWRfbHV0cyA9IGk5eHhfbG9hZF9sdXRzOworCisJCWlmIChJTlRFTF9HRU4oZGV2 X3ByaXYpID49IDggfHwgSVNfSEFTV0VMTChkZXZfcHJpdikpCisJCQlkZXZfcHJpdi0+ZGlzcGxh eS5jb2xvcl9jb21taXQgPSBoc3dfY29sb3JfY29tbWl0OworCQllbHNlCisJCQlkZXZfcHJpdi0+ ZGlzcGxheS5jb2xvcl9jb21taXQgPSBpbGtfY29sb3JfY29tbWl0OwogCX0KIAogCS8qIEVuYWJs ZSBjb2xvciBtYW5hZ2VtZW50IHN1cHBvcnQgd2hlbiB3ZSBoYXZlIGRlZ2FtbWEgJiBnYW1tYSBM VVRzLiAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IDYxOWYxYTIwY2My ZC4uYTAxYjdlMGJjNzZjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k aXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0z NDUwLDcgKzM0NTAsNyBAQCBzdGF0aWMgdm9pZCBpOXh4X2Rpc2FibGVfcGxhbmUoc3RydWN0IGlu dGVsX3BsYW5lICpwbGFuZSwKIAkgKgogCSAqIE9uIHByZS1nNHggdGhlcmUgaXMgbm8gd2F5IHRv IGdhbW1hIGNvcnJlY3QgdGhlCiAJICogcGlwZSBib3R0b20gY29sb3IgYnV0IHdlJ2xsIGtlZXAg b24gZG9pbmcgdGhpcwotCSAqIGFueXdheS4KKwkgKiBhbnl3YXkgc28gdGhhdCB0aGUgY3J0YyBz dGF0ZSByZWFkb3V0IHdvcmtzIGNvcnJlY3RseS4KIAkgKi8KIAlkc3BjbnRyID0gaTl4eF9wbGFu ZV9jdGxfY3J0YyhjcnRjX3N0YXRlKTsKIApAQCAtNzY5Miw2ICs3NjkyLDggQEAgc3RhdGljIHZv aWQgaTl4eF9zZXRfcGlwZWNvbmYoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNf c3RhdGUpCiAJICAgICBjcnRjX3N0YXRlLT5saW1pdGVkX2NvbG9yX3JhbmdlKQogCQlwaXBlY29u ZiB8PSBQSVBFQ09ORl9DT0xPUl9SQU5HRV9TRUxFQ1Q7CiAKKwlwaXBlY29uZiB8PSBQSVBFQ09O Rl9HQU1NQV9NT0RFKGNydGNfc3RhdGUtPmdhbW1hX21vZGUpOworCiAJSTkxNV9XUklURShQSVBF Q09ORihjcnRjLT5waXBlKSwgcGlwZWNvbmYpOwogCVBPU1RJTkdfUkVBRChQSVBFQ09ORihjcnRj LT5waXBlKSk7CiB9CkBAIC04MTQ0LDYgKzgxNDYsOSBAQCBzdGF0aWMgYm9vbCBpOXh4X2dldF9w aXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKIAkgICAgKHRtcCAmIFBJUEVDT05G X0NPTE9SX1JBTkdFX1NFTEVDVCkpCiAJCXBpcGVfY29uZmlnLT5saW1pdGVkX2NvbG9yX3Jhbmdl ID0gdHJ1ZTsKIAorCXBpcGVfY29uZmlnLT5nYW1tYV9tb2RlID0gKHRtcCAmIFBJUEVDT05GX0dB TU1BX01PREVfTUFTS19JOVhYKSA+PgorCQlQSVBFQ09ORl9HQU1NQV9NT0RFX1NISUZUOworCiAJ aWYgKElOVEVMX0dFTihkZXZfcHJpdikgPCA0KQogCQlwaXBlX2NvbmZpZy0+ZG91YmxlX3dpZGUg PSB0bXAgJiBQSVBFQ09ORl9ET1VCTEVfV0lERTsKIApAQCAtODY4Myw2ICs4Njg4LDggQEAgc3Rh dGljIHZvaWQgaXJvbmxha2Vfc2V0X3BpcGVjb25mKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlKQogCWlmIChjcnRjX3N0YXRlLT5saW1pdGVkX2NvbG9yX3JhbmdlKQog CQl2YWwgfD0gUElQRUNPTkZfQ09MT1JfUkFOR0VfU0VMRUNUOwogCisJdmFsIHw9IFBJUEVDT05G X0dBTU1BX01PREUoY3J0Y19zdGF0ZS0+Z2FtbWFfbW9kZSk7CisKIAlJOTE1X1dSSVRFKFBJUEVD T05GKHBpcGUpLCB2YWwpOwogCVBPU1RJTkdfUkVBRChQSVBFQ09ORihwaXBlKSk7CiB9CkBAIC05 MjE3LDYgKzkyMjQsOSBAQCBzdGF0aWMgYm9vbCBpcm9ubGFrZV9nZXRfcGlwZV9jb25maWcoc3Ry dWN0IGludGVsX2NydGMgKmNydGMsCiAJaWYgKHRtcCAmIFBJUEVDT05GX0NPTE9SX1JBTkdFX1NF TEVDVCkKIAkJcGlwZV9jb25maWctPmxpbWl0ZWRfY29sb3JfcmFuZ2UgPSB0cnVlOwogCisJcGlw ZV9jb25maWctPmdhbW1hX21vZGUgPSAodG1wICYgUElQRUNPTkZfR0FNTUFfTU9ERV9NQVNLX0lM SykgPj4KKwkJUElQRUNPTkZfR0FNTUFfTU9ERV9TSElGVDsKKwogCWlmIChJOTE1X1JFQUQoUENI X1RSQU5TQ09ORihjcnRjLT5waXBlKSkgJiBUUkFOU19FTkFCTEUpIHsKIAkJc3RydWN0IGludGVs X3NoYXJlZF9kcGxsICpwbGw7CiAJCWVudW0gaW50ZWxfZHBsbF9pZCBwbGxfaWQ7CkBAIC0xMjA4 MCw2ICsxMjA5MCw4IEBAIGludGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAogCiAJCVBJUEVfQ09ORl9DSEVDS19JKHNjYWxlcl9zdGF0ZS5z Y2FsZXJfaWQpOwogCQlQSVBFX0NPTkZfQ0hFQ0tfQ0xPQ0tfRlVaWlkocGl4ZWxfcmF0ZSk7CisK KwkJUElQRV9DT05GX0NIRUNLX1goZ2FtbWFfbW9kZSk7CiAJfQogCiAJUElQRV9DT05GX0NIRUNL X0JPT0woZG91YmxlX3dpZGUpOwotLSAKMi4xOS4yCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pbnRlbC1nZngK