From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: [PATCH] drm/i915: Apply LUT validation checks to platforms more accurately (v2) Date: Tue, 29 Jan 2019 16:49:28 -0800 Message-ID: <20190130004928.20699-1-matthew.d.roper@intel.com> References: <20190128200522.GV20097@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id EA5F66E41A for ; Wed, 30 Jan 2019 00:49:46 +0000 (UTC) In-Reply-To: <20190128200522.GV20097@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 VXNlIG9mIHRoZSBuZXcgRFJNX0NPTE9SX0xVVF9OT05fREVDUkVBU0lORyB0ZXN0IHdhcyBhIGJp dCBvdmVyLXplYWxvdXM7Cml0IGRvZXNuJ3QgYWN0dWFsbHkgbmVlZCB0byBiZSBhcHBsaWVkIHRv IHRoZSBkZWdhbW1hIG9uICJiZHctc3R5bGUiCnBsYXRmb3Jtcy4gIExpa2V3aXNlLCB3ZSBvdmVy bG9va2VkIHRoZSBmYWN0IHRoYXQgQ0hWIHNob3VsZCBoYXZlIHRoYXQKdGVzdCBhcHBsaWVkIHRv IHRoZSBnYW1tYSBMVVQgYXMgd2VsbCBhcyB0aGUgZGVnYW1tYSBMVVQuCgpSYXRoZXIgdGhhbiBh ZGRpbmcgbW9yZSBjb21wbGljYXRlZCBwbGF0Zm9ybSBjaGVja2luZyB0bwppbnRlbF9jb2xvcl9j aGVjaygpLCBsZXQncyBqdXN0IHN0b3JlIHRoZSBhcHByb3ByaWF0ZSBzZXQgb2YgTFVUCnZhbGlk YXRpb24gZmxhZ3MgZm9yIGVhY2ggcGxhdGZvcm0gaW4gdGhlIGludGVsX2RldmljZV9pbmZvIHN0 cnVjdHVyZS4KCnYyOgogLSBTaHVmZmxlIGFyb3VuZCBMVVQgc2l6ZSB0ZXN0cyBzbyB0aGF0IHRo ZSBoYXJkd2FyZS1zcGVjaWZpYyB0ZXN0cwogICB3b24ndCBiZSBhcHBsaWVkIHRvIGxlZ2FjeSBn YW1tYSB0YWJsZXMuICAoVmlsbGUpCiAtIEFkZCBhIGRlYnVnIG1lc3NhZ2Ugc28gdGhhdCBpdCB3 aWxsIGJlIGVhc2llciB0byB1bmRlcnN0YW5kIHdoeSBhbgogICBhdG9taWMgdHJhbnNhY3Rpb24g aW52b2x2aW5nIGluY29ycmVjdGx5LXNpemVkIExVVCdzIGdvdCByZWplY3RlZAogICBieSB0aGUg ZHJpdmVyLgoKRml4ZXM6IDg1ZTJkNjFlNDk3NiAoImRybS9pOTE1OiBWYWxpZGF0ZSB1c2Vyc3Bh Y2UtcHJvdmlkZWQgY29sb3IgbWFuYWdlbWVudCBMVVQncyAodjQpIikKUmVmZXJlbmNlczogaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvYXJjaGl2ZXMvaW50ZWwtZ2Z4LzIwMTktSmFudWFy eS8xODc2MzQuaHRtbApDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4Lmlu dGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogTWF0dCBSb3BlciA8bWF0dGhldy5kLnJvcGVyQGludGVs LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jICAgICAgICAgIHwgMTAg KysrKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jICAgICAgIHwgNTggKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2RldmljZV9pbmZvLmggfCAgMiArKwogMyBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCsp LCAzMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3BjaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2kuYwppbmRleCA0NGMyM2FjNjAz NDcuLjE3ZjVhNjA1YjBiMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9w Y2kuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jCkBAIC02OSw5ICs2OSwx NSBAQAogI2RlZmluZSBCRFdfQ09MT1JTIFwKIAkuY29sb3IgPSB7IC5kZWdhbW1hX2x1dF9zaXpl ID0gNTEyLCAuZ2FtbWFfbHV0X3NpemUgPSA1MTIgfQogI2RlZmluZSBDSFZfQ09MT1JTIFwKLQku Y29sb3IgPSB7IC5kZWdhbW1hX2x1dF9zaXplID0gNjUsIC5nYW1tYV9sdXRfc2l6ZSA9IDI1NyB9 CisJLmNvbG9yID0geyAuZGVnYW1tYV9sdXRfc2l6ZSA9IDY1LCAuZ2FtbWFfbHV0X3NpemUgPSAy NTcsIFwKKwkJICAgLmRlZ2FtbWFfbHV0X3Rlc3RzID0gRFJNX0NPTE9SX0xVVF9OT05fREVDUkVB U0lORywgXAorCQkgICAuZ2FtbWFfbHV0X3Rlc3RzID0gRFJNX0NPTE9SX0xVVF9OT05fREVDUkVB U0lORywgXAorCX0KICNkZWZpbmUgR0xLX0NPTE9SUyBcCi0JLmNvbG9yID0geyAuZGVnYW1tYV9s dXRfc2l6ZSA9IDAsIC5nYW1tYV9sdXRfc2l6ZSA9IDEwMjQgfQorCS5jb2xvciA9IHsgLmRlZ2Ft bWFfbHV0X3NpemUgPSAwLCAuZ2FtbWFfbHV0X3NpemUgPSAxMDI0LCBcCisJCSAgIC5kZWdhbW1h X2x1dF90ZXN0cyA9IERSTV9DT0xPUl9MVVRfTk9OX0RFQ1JFQVNJTkcgfCBcCisJCQkJCURSTV9D T0xPUl9MVVRfRVFVQUxfQ0hBTk5FTFMsIFwKKwl9CiAKIC8qIEtlZXAgaW4gZ2VuIGJhc2VkIG9y ZGVyLCBhbmQgY2hyb25vbG9naWNhbCBvcmRlciB3aXRoaW4gYSBnZW4gKi8KIApkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2NvbG9yLmMKaW5kZXggYmM3NTg5NjU2YThmLi41OWI4YTY0NGIyMTggMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYwpAQCAtNjA1LDQ4ICs2MDUsNDggQEAgdm9pZCBpbnRl bF9jb2xvcl9sb2FkX2x1dHMoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJ ZGV2X3ByaXYtPmRpc3BsYXkubG9hZF9sdXRzKGNydGNfc3RhdGUpOwogfQogCitzdGF0aWMgaW50 IGNoZWNrX2x1dF9zaXplKGNvbnN0IHN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqbHV0LCBzaXpl X3QgZXhwZWN0ZWQpCit7CisJc2l6ZV90IGxlbjsKKworCWlmICghbHV0KQorCQlyZXR1cm4gMDsK KworCWxlbiA9IGRybV9jb2xvcl9sdXRfc2l6ZShsdXQpOworCWlmIChsZW4gIT0gZXhwZWN0ZWQp IHsKKwkJRFJNX0RFQlVHX0tNUygiSW52YWxpZCBMVVQgc2l6ZTsgZ290ICVsdSwgZXhwZWN0ZWQg JWx1XG4iLAorCQkJICAgICAgbGVuLCBleHBlY3RlZCk7CisJCXJldHVybiAtRUlOVkFMOworCX0K KworCXJldHVybiAwOworfQorCiBpbnQgaW50ZWxfY29sb3JfY2hlY2soc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKmNydGNfc3RhdGUpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShjcnRjX3N0YXRlLT5iYXNlLmNydGMtPmRldik7CiAJc2l6ZV90IGdhbW1h X2xlbmd0aCwgZGVnYW1tYV9sZW5ndGg7Ci0JdWludDMyX3QgdGVzdHMgPSBEUk1fQ09MT1JfTFVU X05PTl9ERUNSRUFTSU5HOworCXUzMiBnYW1tYV90ZXN0cywgZGVnYW1tYV90ZXN0czsKIAogCWRl Z2FtbWFfbGVuZ3RoID0gSU5URUxfSU5GTyhkZXZfcHJpdiktPmNvbG9yLmRlZ2FtbWFfbHV0X3Np emU7CiAJZ2FtbWFfbGVuZ3RoID0gSU5URUxfSU5GTyhkZXZfcHJpdiktPmNvbG9yLmdhbW1hX2x1 dF9zaXplOworCWRlZ2FtbWFfdGVzdHMgPSBJTlRFTF9JTkZPKGRldl9wcml2KS0+Y29sb3IuZGVn YW1tYV9sdXRfdGVzdHM7CisJZ2FtbWFfdGVzdHMgPSBJTlRFTF9JTkZPKGRldl9wcml2KS0+Y29s b3IuZ2FtbWFfbHV0X3Rlc3RzOwogCi0JLyoKLQkgKiBBbGwgb2Ygb3VyIHBsYXRmb3JtcyBtYW5k YXRlIHRoYXQgdGhlIGRlZ2FtbWEgY3VydmUgYmUKLQkgKiBub24tZGVjcmVhc2luZy4gIEFkZGl0 aW9uYWxseSwgR0xLIGFuZCBnZW4xMSBvbmx5IGFjY2VwdCBhIHNpbmdsZQotCSAqIHZhbHVlIGZv ciByZWQsIGdyZWVuLCBhbmQgYmx1ZSBpbiB0aGUgZGVnYW1tYSB0YWJsZS4gIE1ha2Ugc3VyZQot CSAqIHVzZXJzcGFjZSBkaWRuJ3QgdHJ5IHRvIHBhc3MgdXMgc29tZXRoaW5nIHdlIGNhbid0IGhh bmRsZS4KLQkgKgotCSAqIFdlIGRvbid0IGhhdmUgYW55IGV4dHJhIGhhcmR3YXJlIGNvbnN0cmFp bnRzIG9uIHRoZSBnYW1tYSB0YWJsZSwKLQkgKiBzbyBubyBuZWVkIHRvIGV4cGxpY2l0bHkgY2hl Y2sgaXQuCi0JICovCi0JaWYgKElTX0dFTUlOSUxBS0UoZGV2X3ByaXYpIHx8IElOVEVMX0dFTihk ZXZfcHJpdikgPj0gMTApCi0JCXRlc3RzIHw9IERSTV9DT0xPUl9MVVRfRVFVQUxfQ0hBTk5FTFM7 CisJLyogQWx3YXlzIGFsbG93IGxlZ2FjeSBnYW1tYSBMVVQgd2l0aCBubyBmdXJ0aGVyIGNoZWNr aW5nLiAqLworCWlmIChjcnRjX3N0YXRlX2lzX2xlZ2FjeV9nYW1tYShjcnRjX3N0YXRlKSkKKwkJ cmV0dXJuIDA7CiAKLQlpZiAoZHJtX2NvbG9yX2x1dF9jaGVjayhjcnRjX3N0YXRlLT5iYXNlLmRl Z2FtbWFfbHV0LCB0ZXN0cykgIT0gMCkKKwlpZiAoY2hlY2tfbHV0X3NpemUoY3J0Y19zdGF0ZS0+ YmFzZS5kZWdhbW1hX2x1dCwgZGVnYW1tYV9sZW5ndGgpIHx8CisJICAgIGNoZWNrX2x1dF9zaXpl KGNydGNfc3RhdGUtPmJhc2UuZ2FtbWFfbHV0LCBnYW1tYV9sZW5ndGgpKQogCQlyZXR1cm4gLUVJ TlZBTDsKIAotCS8qCi0JICogV2UgYWxsb3cgYm90aCBkZWdhbW1hICYgZ2FtbWEgbHV0cyBhdCB0 aGUgcmlnaHQgc2l6ZSBvcgotCSAqIE5VTEwuCi0JICovCi0JaWYgKCghY3J0Y19zdGF0ZS0+YmFz ZS5kZWdhbW1hX2x1dCB8fAotCSAgICAgZHJtX2NvbG9yX2x1dF9zaXplKGNydGNfc3RhdGUtPmJh c2UuZGVnYW1tYV9sdXQpID09IGRlZ2FtbWFfbGVuZ3RoKSAmJgotCSAgICAoIWNydGNfc3RhdGUt PmJhc2UuZ2FtbWFfbHV0IHx8Ci0JICAgICBkcm1fY29sb3JfbHV0X3NpemUoY3J0Y19zdGF0ZS0+ YmFzZS5nYW1tYV9sdXQpID09IGdhbW1hX2xlbmd0aCkpCi0JCXJldHVybiAwOworCWlmIChkcm1f Y29sb3JfbHV0X2NoZWNrKGNydGNfc3RhdGUtPmJhc2UuZGVnYW1tYV9sdXQsIGRlZ2FtbWFfdGVz dHMpIHx8CisJICAgIGRybV9jb2xvcl9sdXRfY2hlY2soY3J0Y19zdGF0ZS0+YmFzZS5nYW1tYV9s dXQsIGdhbW1hX3Rlc3RzKSkKKwkJcmV0dXJuIC1FSU5WQUw7CiAKLQkvKgotCSAqIFdlIGFsc28g YWxsb3cgbm8gZGVnYW1tYSBsdXQvY3RtIGFuZCBhIGdhbW1hIGx1dCBhdCB0aGUgbGVnYWN5Ci0J ICogc2l6ZSAoMjU2IGVudHJpZXMpLgotCSAqLwotCWlmIChjcnRjX3N0YXRlX2lzX2xlZ2FjeV9n YW1tYShjcnRjX3N0YXRlKSkKLQkJcmV0dXJuIDA7CiAKLQlyZXR1cm4gLUVJTlZBTDsKKwlyZXR1 cm4gMDsKIH0KIAogdm9pZCBpbnRlbF9jb2xvcl9pbml0KHN0cnVjdCBpbnRlbF9jcnRjICpjcnRj KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uaCBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmgKaW5kZXggOTU3YzY1Mjdm NzZiLi43YmYwOWNlZjU5MWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2RldmljZV9pbmZvLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2lu Zm8uaApAQCAtMTg5LDYgKzE4OSw4IEBAIHN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyB7CiAJc3Ry dWN0IGNvbG9yX2x1dHMgewogCQl1MTYgZGVnYW1tYV9sdXRfc2l6ZTsKIAkJdTE2IGdhbW1hX2x1 dF9zaXplOworCQl1MzIgZGVnYW1tYV9sdXRfdGVzdHM7CisJCXUzMiBnYW1tYV9sdXRfdGVzdHM7 CiAJfSBjb2xvcjsKIH07CiAKLS0gCjIuMTQuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==