From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: Re: [PATCH v4 1/2] drm: Add color management LUT validation helper (v4) Date: Fri, 11 Jan 2019 14:27:00 -0800 Message-ID: <20190111222700.GQ4563@mdroper-desk.amr.corp.intel.com> References: <20181217224415.12848-1-matthew.d.roper@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20181217224415.12848-1-matthew.d.roper@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, Daniel Vetter , Dave Airlie Cc: Uma Shankar , Swati Sharma List-Id: intel-gfx@lists.freedesktop.org RGF2ZSwgRGFuaWVsIC0gYW55IGNvbmNlcm5zIGlmIHdlIG1lcmdlIHRoaXMgZHJtIGNvcmUgcGF0 Y2ggdGhyb3VnaCB0aGUKSW50ZWwgdHJlZT8gIFRoZSBzZWNvbmQgcGF0Y2ggaW4gdGhlIHNlcmll cyBkb2Vzbid0IGFwcGx5IGNsZWFubHkgaW4KZHJtLW1pc2MtbmV4dC4KCgpNYXR0CgoKT24gTW9u LCBEZWMgMTcsIDIwMTggYXQgMDI6NDQ6MTRQTSAtMDgwMCwgTWF0dCBSb3BlciB3cm90ZToKPiBT b21lIGhhcmR3YXJlIG1heSBwbGFjZSBhZGRpdGlvbmFsIHJlc3RyaWN0aW9ucyBvbiB0aGUgZ2Ft bWEvZGVnYW1tYQo+IGN1cnZlcyBkZXNjcmliZWQgYnkgb3VyIExVVCBwcm9wZXJ0aWVzLiAgRS5n LiwgdGhhdCBhIGdhbW1hIGN1cnZlIG5ldmVyCj4gZGVjcmVhc2VzIG9yIHRoYXQgdGhlIHJlZC9n cmVlbi9ibHVlIGNoYW5uZWxzIG9mIGEgTFVUJ3MgZW50cmllcyBtdXN0IGJlCj4gZXF1YWwuICBM ZXQncyBhZGQgYSBoZWxwZXIgZnVuY3Rpb24gdGhhdCBkcml2ZXJzIGNhbiB1c2UgdG8gdGVzdCB0 aGF0IGEKPiB1c2Vyc3BhY2UtcHJvdmlkZWQgTFVUIGlzIHZhbGlkIGFuZCBkb2Vzbid0IHZpb2xh dGUgaGFyZHdhcmUKPiByZXF1aXJlbWVudHMuCj4gCj4gdjI6Cj4gIC0gQ29tYmluZSBpbnRvIGEg c2luZ2xlIGhlbHBlciB0aGF0IGp1c3QgdGFrZXMgYSBiaXRtYXNrIG9mIHRoZSB0ZXN0cwo+ICAg IHRvIGFwcGx5LiAgKEJyaWFuIFN0YXJrZXkpCj4gIC0gQWRkIGFkZGl0aW9uYWwgY2hlY2sgKGFs d2F5cyBwZXJmb3JtZWQpIHRoYXQgTFVUIHByb3BlcnR5IGJsb2Igc2l6ZQo+ICAgIGlzIGFsd2F5 cyBhIG11bHRpcGxlIG9mIHRoZSBMVVQgZW50cnkgc2l6ZS4gIChzdG9sZW4gZnJvbSBBUk0gZHJp dmVyKQo+IAo+IHYzOgo+ICAtIERyb3AgdGhlIExVVCBzaXplIGNoZWNrIGFnYWluIHNpbmNlCj4g ICAgZHJtX2F0b21pY19yZXBsYWNlX3Byb3BlcnR5X2Jsb2JfZnJvbV9pZCgpIGFscmVhZHkgY292 ZXJzIHRoaXMgZm9yCj4gICAgdXMuICAoQWxleGFuZHJ1IEdoZW9yZ2hlKQo+IAo+IHY0Ogo+ICAt IFVzZSBhbiBlbnVtIHRvIGRlc2NyaWJlIHBvc3NpYmxlIHRlc3QgdmFsdWVzIHJhdGhlciB0aGFu ICNkZWZpbmUnczsKPiAgICB0aGlzIGlzIGNsZWFuZXIgdG8gcHJvdmlkZSBrZXJuZWxkb2MgZm9y LiAgKERhbmllbCBWZXR0ZXIpCj4gIC0gcy9EUk1fQ09MT1JfTFVUX0lOQ1JFQVNJTkcvRFJNX0NP TE9SX0xVVF9OT05fREVDUkVBU0lORy8uICAoVmlsbGUpCj4gCj4gQ2M6IFVtYSBTaGFua2FyIDx1 bWEuc2hhbmthckBpbnRlbC5jb20+Cj4gQ2M6IFN3YXRpIFNoYXJtYSA8c3dhdGkyLnNoYXJtYUBp bnRlbC5jb20+Cj4gQ2M6IEJyaWFuIFN0YXJrZXkgPEJyaWFuLlN0YXJrZXlAYXJtLmNvbT4KPiBD YzogRGFuaWVsIFZldHRlciA8ZGFuaWVsQGZmd2xsLmNoPgo+IENjOiBWaWxsZSBTeXJqw6Rsw6Qg PHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IE1hdHQgUm9w ZXIgPG1hdHRoZXcuZC5yb3BlckBpbnRlbC5jb20+Cj4gUmV2aWV3ZWQtYnkodjEpOiBCcmlhbiBT dGFya2V5IDxicmlhbi5zdGFya2V5QGFybS5jb20+Cj4gUmV2aWV3ZWQtYnk6IEFsZXhhbmRydSBH aGVvcmdoZSA8YWxleGFuZHJ1LWNvc21pbi5naGVvcmdoZUBhcm0uY29tPgo+IFJldmlld2VkLWJ5 OiBVbWEgU2hhbmthciA8dW1hLnNoYW5rYXJAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dw dS9kcm0vZHJtX2NvbG9yX21nbXQuYyB8IDQ0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKPiAgaW5jbHVkZS9kcm0vZHJtX2NvbG9yX21nbXQuaCAgICAgfCAyOSArKysr KysrKysrKysrKysrKysrKysrKysrKwo+ICAyIGZpbGVzIGNoYW5nZWQsIDczIGluc2VydGlvbnMo KykKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb2xvcl9tZ210LmMgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX2NvbG9yX21nbXQuYwo+IGluZGV4IDA3ZGNmNDdkYWFmZS4uOTY4 Y2E3YzkxYWQ4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29sb3JfbWdtdC5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb2xvcl9tZ210LmMKPiBAQCAtNDYyLDMgKzQ2 Miw0NyBAQCBpbnQgZHJtX3BsYW5lX2NyZWF0ZV9jb2xvcl9wcm9wZXJ0aWVzKHN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lLAo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAgRVhQT1JUX1NZTUJPTChkcm1fcGxh bmVfY3JlYXRlX2NvbG9yX3Byb3BlcnRpZXMpOwo+ICsKPiArLyoqCj4gKyAqIGRybV9jb2xvcl9s dXRfY2hlY2sgLSBjaGVjayB2YWxpZGl0eSBvZiBsb29rdXAgdGFibGUKPiArICogQGx1dDogcHJv cGVydHkgYmxvYiBjb250YWluaW5nIExVVCB0byBjaGVjawo+ICsgKiBAdGVzdHM6IGJpdG1hc2sg b2YgdGVzdHMgdG8gcnVuCj4gKyAqCj4gKyAqIEhlbHBlciB0byBjaGVjayB3aGV0aGVyIGEgdXNl cnNwYWNlLXByb3ZpZGVkIGxvb2t1cCB0YWJsZSBpcyB2YWxpZCBhbmQKPiArICogc2F0aXNmaWVz IGhhcmR3YXJlIHJlcXVpcmVtZW50cy4gIERyaXZlcnMgcGFzcyBhIGJpdG1hc2sgaW5kaWNhdGlu ZyB3aGljaCBvZgo+ICsgKiB0aGUgdGVzdHMgaW4gJmRybV9jb2xvcl9sdXRfdGVzdHMgc2hvdWxk IGJlIHBlcmZvcm1lZC4KPiArICoKPiArICogUmV0dXJucyAwIG9uIHN1Y2Nlc3MsIC1FSU5WQUwg b24gZmFpbHVyZS4KPiArICovCj4gK2ludCBkcm1fY29sb3JfbHV0X2NoZWNrKHN0cnVjdCBkcm1f cHJvcGVydHlfYmxvYiAqbHV0LAo+ICsJCQl1aW50MzJfdCB0ZXN0cykKPiArewo+ICsJc3RydWN0 IGRybV9jb2xvcl9sdXQgKmVudHJ5Owo+ICsJaW50IGk7Cj4gKwo+ICsJaWYgKCFsdXQgfHwgIXRl c3RzKQo+ICsJCXJldHVybiAwOwo+ICsKPiArCWVudHJ5ID0gbHV0LT5kYXRhOwo+ICsJZm9yIChp ID0gMDsgaSA8IGRybV9jb2xvcl9sdXRfc2l6ZShsdXQpOyBpKyspIHsKPiArCQlpZiAodGVzdHMg JiBEUk1fQ09MT1JfTFVUX0VRVUFMX0NIQU5ORUxTKSB7Cj4gKwkJCWlmIChlbnRyeVtpXS5yZWQg IT0gZW50cnlbaV0uYmx1ZSB8fAo+ICsJCQkgICAgZW50cnlbaV0ucmVkICE9IGVudHJ5W2ldLmdy ZWVuKSB7Cj4gKwkJCQlEUk1fREVCVUdfS01TKCJBbGwgTFVUIGVudHJpZXMgbXVzdCBoYXZlIGVx dWFsIHIvZy9iXG4iKTsKPiArCQkJCXJldHVybiAtRUlOVkFMOwo+ICsJCQl9Cj4gKwkJfQo+ICsK PiArCQlpZiAoaSA+IDAgJiYgdGVzdHMgJiBEUk1fQ09MT1JfTFVUX05PTl9ERUNSRUFTSU5HKSB7 Cj4gKwkJCWlmIChlbnRyeVtpXS5yZWQgPCBlbnRyeVtpIC0gMV0ucmVkIHx8Cj4gKwkJCSAgICBl bnRyeVtpXS5ncmVlbiA8IGVudHJ5W2kgLSAxXS5ncmVlbiB8fAo+ICsJCQkgICAgZW50cnlbaV0u Ymx1ZSA8IGVudHJ5W2kgLSAxXS5ibHVlKSB7Cj4gKwkJCQlEUk1fREVCVUdfS01TKCJMVVQgZW50 cmllcyBtdXN0IG5ldmVyIGRlY3JlYXNlLlxuIik7Cj4gKwkJCQlyZXR1cm4gLUVJTlZBTDsKPiAr CQkJfQo+ICsJCX0KPiArCX0KPiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICtFWFBPUlRfU1lNQk9M KGRybV9jb2xvcl9sdXRfY2hlY2spOwo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY29s b3JfbWdtdC5oIGIvaW5jbHVkZS9kcm0vZHJtX2NvbG9yX21nbXQuaAo+IGluZGV4IDkwZWY5OTk2 ZDlhNC4uNmFmZmJkYTZkOWNiIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9jb2xvcl9t Z210LmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1fY29sb3JfbWdtdC5oCj4gQEAgLTY5LDQgKzY5 LDMzIEBAIGludCBkcm1fcGxhbmVfY3JlYXRlX2NvbG9yX3Byb3BlcnRpZXMoc3RydWN0IGRybV9w bGFuZSAqcGxhbmUsCj4gIAkJCQkgICAgICB1MzIgc3VwcG9ydGVkX3JhbmdlcywKPiAgCQkJCSAg ICAgIGVudW0gZHJtX2NvbG9yX2VuY29kaW5nIGRlZmF1bHRfZW5jb2RpbmcsCj4gIAkJCQkgICAg ICBlbnVtIGRybV9jb2xvcl9yYW5nZSBkZWZhdWx0X3JhbmdlKTsKPiArCj4gKy8qKgo+ICsgKiBl bnVtIGRybV9jb2xvcl9sdXRfdGVzdHMgLSBody1zcGVjaWZpYyBMVVQgdGVzdHMgdG8gcGVyZm9y bQo+ICsgKgo+ICsgKiBUaGUgZHJtX2NvbG9yX2x1dF9jaGVjaygpIGZ1bmN0aW9uIHRha2VzIGEg Yml0bWFzayBvZiB0aGUgdmFsdWVzIGhlcmUgdG8KPiArICogZGV0ZXJtaW5lIHdoaWNoIHRlc3Rz IHRvIGFwcGx5IHRvIGEgdXNlcnNwYWNlLXByb3ZpZGVkIExVVC4KPiArICovCj4gK2VudW0gZHJt X2NvbG9yX2x1dF90ZXN0cyB7Cj4gKwkvKioKPiArCSAqIEBEUk1fQ09MT1JfTFVUX0VRVUFMX0NI QU5ORUxTOgo+ICsJICoKPiArCSAqIENoZWNrcyB3aGV0aGVyIHRoZSBlbnRyaWVzIG9mIGEgTFVU IGFsbCBoYXZlIGVxdWFsIHZhbHVlcyBmb3IgdGhlCj4gKwkgKiByZWQsIGdyZWVuLCBhbmQgYmx1 ZSBjaGFubmVscy4gIEludGVuZGVkIGZvciBoYXJkd2FyZSB0aGF0IG9ubHkKPiArCSAqIGFjY2Vw dHMgYSBzaW5nbGUgdmFsdWUgcGVyIExVVCBlbnRyeSBhbmQgYXNzdW1lcyB0aGF0IHZhbHVlIGFw cGxpZXMKPiArCSAqIHRvIGFsbCB0aHJlZSBjb2xvciBjb21wb25lbnRzLgo+ICsJICovCj4gKwlE Uk1fQ09MT1JfTFVUX0VRVUFMX0NIQU5ORUxTID0gQklUKDApLAo+ICsKPiArCS8qKgo+ICsJICog QERSTV9DT0xPUl9MVVRfTk9OX0RFQ1JFQVNJTkc6Cj4gKwkgKgo+ICsJICogQ2hlY2tzIHdoZXRo ZXIgdGhlIGVudHJpZXMgb2YgYSBMVVQgYXJlIGFsd2F5cyBmbGF0IG9yIGluY3JlYXNpbmcKPiAr CSAqIChuZXZlciBkZWNyZWFzaW5nKS4KPiArCSAqLwo+ICsJRFJNX0NPTE9SX0xVVF9OT05fREVD UkVBU0lORyA9IEJJVCgxKSwKPiArfTsKPiArCj4gK2ludCBkcm1fY29sb3JfbHV0X2NoZWNrKHN0 cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqbHV0LAo+ICsJCQl1aW50MzJfdCB0ZXN0cyk7Cj4gICNl bmRpZgo+IC0tIAo+IDIuMTQuNAo+IAoKLS0gCk1hdHQgUm9wZXIKR3JhcGhpY3MgU29mdHdhcmUg RW5naW5lZXIKSW9URyBQbGF0Zm9ybSBFbmFibGluZyAmIERldmVsb3BtZW50CkludGVsIENvcnBv cmF0aW9uCig5MTYpIDM1Ni0yNzk1Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAo=