From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: Re: [PATCH 07/13] drm/i915: Move LUT programming to happen after vblank waits Date: Wed, 16 Jan 2019 09:38:59 -0800 Message-ID: <20190116173859.GH4563@mdroper-desk.amr.corp.intel.com> References: <20190111170823.4441-1-ville.syrjala@linux.intel.com> <20190111170823.4441-8-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id A36486F180 for ; Wed, 16 Jan 2019 17:38:59 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190111170823.4441-8-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: Ville Syrjala Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBKYW4gMTEsIDIwMTkgYXQgMDc6MDg6MTdQTSArMDIwMCwgVmlsbGUgU3lyamFsYSB3 cm90ZToKPiBGcm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwu Y29tPgo+IAo+IFRoZSBMVVRzIGFyZSBzaW5nbGUgYnVmZmVyZWQgc28gd2Ugc2hvdWxkIHByb2dy YW0gdGhlbSBhZnRlcgo+IHRoZSBkb3VibGUgYnVmZmVyZWQgcGlwZSB1cGRhdGVzIGhhdmUgYmVl biBsYXRjaGVkIGJ5IHRoZQo+IGhhcmR3YXJlLgo+IAo+IFdlJ2xsIGFsc28gZml4IHVwIHRoZSBJ UFMgdnMuIHNwbGl0IGdhbW1hIHcvYSB0byBkbyB0aGUgSVBTCj4gZGlzYWJsZSBsaWtlIGV2ZXJ5 b25lIGVsc2UuIE5vdGUgdGhhdCB0aGlzIGlzIGN1cnJlbnRseSBkZWFkCj4gY29kZSBhcyB3ZSBk b24ndCB1c2UgdGhlIHNwbGl0IGdhbW1hIG1vZGUgb24gSFNXLCBidXQgdGhhdAo+IHdpbGwgYmUg Zml4ZWQgdXAgc2hvcnRseS4KCkkgZG9uJ3QgdGhpbmsgdGhpcyBpcyBxdWl0ZSBkZWFkIGNvZGUu Li53ZSBkb24ndCB1c2Ugc3BsaXQgZ2FtbWEKb3Vyc2VsdmVzLCBidXQgd2UgY291bGQgcG90ZW50 aWFsbHkgaW5oZXJpdCB0aGF0IHNldHVwIGZyb20gdGhlIEJJT1MKKHdoaWNoIHdpbGwgc3RpY2sg YXJvdW5kIHVudGlsIGl0IGV2ZW50dWFsbHkgZ2V0cyBjbG9iYmVyZWQgYnkgdGhlIGZpcnN0Cm1v ZGVzZXQvZmFzdHNldCkuCgpVbWEncyBzZXJpZXMgYWRkZWQgc29tZSBsb2dpYyB0byBzYW5pdGl6 ZSB0aGUgTFVUJ3MgaW1tZWRpYXRlbHkgb24gYm9vdCwKYnV0IHRoYXQgaGFzbid0IGxhbmRlZCB5 ZXQuCgoKPiAKPiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFA bGludXguaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xv ci5jICAgfCAyNSArLS0tLS0tLS0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jIHwgNDcgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQo+ICAyIGZpbGVzIGNo YW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDMwIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfY29sb3IuYwo+IGluZGV4IGY5ZTA4NTUxNjJmMy4uMGMwZGE3ZWQwZmQ3IDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jCj4gQEAgLTM2MSwyOSArMzYxLDYgQEAgc3Rh dGljIHZvaWQgaHN3X2NvbG9yX2NvbW1pdChjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSkKPiAgCWlsa19sb2FkX2NzY19tYXRyaXgoY3J0Y19zdGF0ZSk7Cj4gIH0KPiAg Cj4gLS8qIExvYWRzIHRoZSBsZWdhY3kgcGFsZXR0ZS9nYW1tYSB1bml0IGZvciB0aGUgQ1JUQyBv biBIYXN3ZWxsLiAqLwo+IC1zdGF0aWMgdm9pZCBoYXN3ZWxsX2xvYWRfbHV0cyhjb25zdCBzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAtewo+IC0Jc3RydWN0IGludGVsX2Ny dGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGNydGNfc3RhdGUtPmJhc2UuY3J0Yyk7Cj4gLQlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsK PiAtCWJvb2wgcmVlbmFibGVfaXBzID0gZmFsc2U7Cj4gLQo+IC0JLyoKPiAtCSAqIFdvcmthcm91 bmQgOiBEbyBub3QgcmVhZCBvciB3cml0ZSB0aGUgcGlwZSBwYWxldHRlL2dhbW1hIGRhdGEgd2hp bGUKPiAtCSAqIEdBTU1BX01PREUgaXMgY29uZmlndXJlZCBmb3Igc3BsaXQgZ2FtbWEgYW5kIElQ U19DVEwgaGFzIElQUyBlbmFibGVkLgo+IC0JICovCj4gLQlpZiAoSVNfSEFTV0VMTChkZXZfcHJp dikgJiYgY3J0Y19zdGF0ZS0+aXBzX2VuYWJsZWQgJiYKPiAtCSAgICAoY3J0Y19zdGF0ZS0+Z2Ft bWFfbW9kZSA9PSBHQU1NQV9NT0RFX01PREVfU1BMSVQpKSB7Cj4gLQkJaHN3X2Rpc2FibGVfaXBz KGNydGNfc3RhdGUpOwo+IC0JCXJlZW5hYmxlX2lwcyA9IHRydWU7Cj4gLQl9Cj4gLQo+IC0JaTl4 eF9sb2FkX2x1dHMoY3J0Y19zdGF0ZSk7Cj4gLQo+IC0JaWYgKHJlZW5hYmxlX2lwcykKPiAtCQlo c3dfZW5hYmxlX2lwcyhjcnRjX3N0YXRlKTsKPiAtfQo+IC0KPiAgc3RhdGljIHZvaWQgYmR3X2xv YWRfZGVnYW1tYV9sdXQoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUp Cj4gIHsKPiAgCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0 YXRlLT5iYXNlLmNydGMpOwo+IEBAIC02NjAsNyArNjM3LDcgQEAgdm9pZCBpbnRlbF9jb2xvcl9p bml0KHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQo+ICAJaWYgKElTX0NIRVJSWVZJRVcoZGV2X3By aXYpKSB7Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkubG9hZF9sdXRzID0gY2hlcnJ5dmlld19sb2Fk X2x1dHM7Cj4gIAl9IGVsc2UgaWYgKElTX0hBU1dFTEwoZGV2X3ByaXYpKSB7Cj4gLQkJZGV2X3By aXYtPmRpc3BsYXkubG9hZF9sdXRzID0gaGFzd2VsbF9sb2FkX2x1dHM7Cj4gKwkJZGV2X3ByaXYt PmRpc3BsYXkubG9hZF9sdXRzID0gaTl4eF9sb2FkX2x1dHM7Cj4gIAkJZGV2X3ByaXYtPmRpc3Bs YXkuY29sb3JfY29tbWl0ID0gaHN3X2NvbG9yX2NvbW1pdDsKPiAgCX0gZWxzZSBpZiAoSVNfQlJP QURXRUxMKGRldl9wcml2KSB8fCBJU19HRU45X0JDKGRldl9wcml2KSB8fAo+ICAJCSAgIElTX0JS T1hUT04oZGV2X3ByaXYpKSB7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IGlu ZGV4IDk2Yzc4NTY2YjhlNi4uMWNhZWU0MTI4OTc0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYwo+IEBAIC01Mjk5LDI0ICs1Mjk5LDU0IEBAIGludGVsX3ByZV9kaXNhYmxl X3ByaW1hcnlfbm9hdG9taWMoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ICBzdGF0aWMgYm9vbCBo c3dfcHJlX3VwZGF0ZV9kaXNhYmxlX2lwcyhjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq b2xkX2NydGNfc3RhdGUsCj4gIAkJCQkgICAgICAgY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKm5ld19jcnRjX3N0YXRlKQo+ICB7Cj4gKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9IHRv X2ludGVsX2NydGMobmV3X2NydGNfc3RhdGUtPmJhc2UuY3J0Yyk7Cj4gKwlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKPiArCj4gIAlp ZiAoIW9sZF9jcnRjX3N0YXRlLT5pcHNfZW5hYmxlZCkKPiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ ICAJaWYgKG5lZWRzX21vZGVzZXQoJm5ld19jcnRjX3N0YXRlLT5iYXNlKSkKPiAgCQlyZXR1cm4g dHJ1ZTsKPiAgCj4gKwkvKgo+ICsJICogV29ya2Fyb3VuZCA6IERvIG5vdCByZWFkIG9yIHdyaXRl IHRoZSBwaXBlIHBhbGV0dGUvZ2FtbWEgZGF0YSB3aGlsZQo+ICsJICogR0FNTUFfTU9ERSBpcyBj b25maWd1cmVkIGZvciBzcGxpdCBnYW1tYSBhbmQgSVBTX0NUTCBoYXMgSVBTIGVuYWJsZWQuCj4g KwkgKgo+ICsJICogRGlzYWJsZSBJUFMgYmVmb3JlIHdlIHByb2dyYW0gdGhlIExVVC4KPiArCSAq Lwo+ICsJaWYgKElTX0hBU1dFTEwoZGV2X3ByaXYpICYmCj4gKwkgICAgKG5ld19jcnRjX3N0YXRl LT5iYXNlLmNvbG9yX21nbXRfY2hhbmdlZCB8fAo+ICsJICAgICBuZXdfY3J0Y19zdGF0ZS0+dXBk YXRlX3BpcGUpICYmCj4gKwkgICAgbmV3X2NydGNfc3RhdGUtPmdhbW1hX21vZGUgPT0gR0FNTUFf TU9ERV9NT0RFX1NQTElUKQoKV291bGRuJ3Qgd2Ugd2FudCBvbGRfY3J0Y19zdGF0ZSBmb3IgdGhl IGdhbW1hX21vZGUgdGVzdD8gIFdlIG5lZWQgdG8KZGlzYWJsZSBJUFMgaWYgd2UncmUgYWxyZWFk eSBpbiBzcGxpdCBnYW1tYSBtb2RlIChpbmhlcml0ZWQgZnJvbSBCSU9TKSwKcmVnYXJkbGVzcyBv ZiB3aGV0aGVyIHdlJ3JlIG1vdmluZyB0byBub24tc3BsaXQgZ2FtbWEuCgoKTWF0dAoKPiArCQly ZXR1cm4gdHJ1ZTsKPiArCj4gIAlyZXR1cm4gIW5ld19jcnRjX3N0YXRlLT5pcHNfZW5hYmxlZDsK PiAgfQo+ICAKPiAgc3RhdGljIGJvb2wgaHN3X3Bvc3RfdXBkYXRlX2VuYWJsZV9pcHMoY29uc3Qg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlLAo+ICAJCQkJICAgICAgIGNv bnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpuZXdfY3J0Y19zdGF0ZSkKPiAgewo+ICsJc3Ry dWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKG5ld19jcnRjX3N0YXRlLT5iYXNl LmNydGMpOwo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShj cnRjLT5iYXNlLmRldik7Cj4gKwo+ICAJaWYgKCFuZXdfY3J0Y19zdGF0ZS0+aXBzX2VuYWJsZWQp Cj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAKPiAgCWlmIChuZWVkc19tb2Rlc2V0KCZuZXdfY3J0Y19z dGF0ZS0+YmFzZSkpCj4gIAkJcmV0dXJuIHRydWU7Cj4gIAo+ICsJLyoKPiArCSAqIFdvcmthcm91 bmQgOiBEbyBub3QgcmVhZCBvciB3cml0ZSB0aGUgcGlwZSBwYWxldHRlL2dhbW1hIGRhdGEgd2hp bGUKPiArCSAqIEdBTU1BX01PREUgaXMgY29uZmlndXJlZCBmb3Igc3BsaXQgZ2FtbWEgYW5kIElQ U19DVEwgaGFzIElQUyBlbmFibGVkLgo+ICsJICoKPiArCSAqIFJlLWVuYWJsZSBJUFMgYWZ0ZXIg dGhlIExVVCBoYXMgYmVlbiBwcm9ncmFtbWVkLgo+ICsJICovCj4gKwlpZiAoSVNfSEFTV0VMTChk ZXZfcHJpdikgJiYKPiArCSAgICAobmV3X2NydGNfc3RhdGUtPmJhc2UuY29sb3JfbWdtdF9jaGFu Z2VkIHx8Cj4gKwkgICAgIG5ld19jcnRjX3N0YXRlLT51cGRhdGVfcGlwZSkgJiYKPiArCSAgICBu ZXdfY3J0Y19zdGF0ZS0+Z2FtbWFfbW9kZSA9PSBHQU1NQV9NT0RFX01PREVfU1BMSVQpCj4gKwkJ cmV0dXJuIHRydWU7Cj4gKwo+ICAJLyoKPiAgCSAqIFdlIGNhbid0IHJlYWQgb3V0IElQUyBvbiBi cm9hZHdlbGwsIGFzc3VtZSB0aGUgd29yc3QgYW5kCj4gIAkgKiBmb3JjaWJseSBlbmFibGUgSVBT IG9uIHRoZSBmaXJzdCBmYXN0c2V0Lgo+IEBAIC0xMTA1MCw3ICsxMTA4MCw3IEBAIHN0YXRpYyBp bnQgaW50ZWxfY3J0Y19hdG9taWNfY2hlY2soc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAJCQly ZXR1cm4gcmV0Owo+ICAJfQo+ICAKPiAtCWlmIChjcnRjX3N0YXRlLT5jb2xvcl9tZ210X2NoYW5n ZWQpIHsKPiArCWlmIChtb2RlX2NoYW5nZWQgfHwgY3J0Y19zdGF0ZS0+Y29sb3JfbWdtdF9jaGFu Z2VkKSB7Cj4gIAkJcmV0ID0gaW50ZWxfY29sb3JfY2hlY2socGlwZV9jb25maWcpOwo+ICAJCWlm IChyZXQpCj4gIAkJCXJldHVybiByZXQ7Cj4gQEAgLTEzMTE3LDYgKzEzMTQ3LDE2IEBAIHN0YXRp YyB2b2lkIGludGVsX2F0b21pY19jb21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAq c3RhdGUpCj4gIAkgKi8KPiAgCWRybV9hdG9taWNfaGVscGVyX3dhaXRfZm9yX2ZsaXBfZG9uZShk ZXYsIHN0YXRlKTsKPiAgCj4gKwlmb3JfZWFjaF9uZXdfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0 YywgbmV3X2NydGNfc3RhdGUsIGkpIHsKPiArCQluZXdfaW50ZWxfY3J0Y19zdGF0ZSA9IHRvX2lu dGVsX2NydGNfc3RhdGUobmV3X2NydGNfc3RhdGUpOwo+ICsKPiArCQlpZiAobmV3X2NydGNfc3Rh dGUtPmFjdGl2ZSAmJgo+ICsJCSAgICAhbmVlZHNfbW9kZXNldChuZXdfY3J0Y19zdGF0ZSkgJiYK PiArCQkgICAgKG5ld19pbnRlbF9jcnRjX3N0YXRlLT5iYXNlLmNvbG9yX21nbXRfY2hhbmdlZCB8 fAo+ICsJCSAgICAgbmV3X2ludGVsX2NydGNfc3RhdGUtPnVwZGF0ZV9waXBlKSkKPiArCQkJaW50 ZWxfY29sb3JfbG9hZF9sdXRzKG5ld19pbnRlbF9jcnRjX3N0YXRlKTsKPiArCX0KPiArCj4gIAkv Kgo+ICAJICogTm93IHRoYXQgdGhlIHZibGFuayBoYXMgcGFzc2VkLCB3ZSBjYW4gZ28gYWhlYWQg YW5kIHByb2dyYW0gdGhlCj4gIAkgKiBvcHRpbWFsIHdhdGVybWFya3Mgb24gcGxhdGZvcm1zIHRo YXQgbmVlZCB0d28tc3RlcCB3YXRlcm1hcmsKPiBAQCAtMTM2MzIsMTEgKzEzNjcyLDYgQEAgc3Rh dGljIHZvaWQgaW50ZWxfYmVnaW5fY3J0Y19jb21taXQoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ ICAJCWludGVsX2F0b21pY19nZXRfbmV3X2NydGNfc3RhdGUob2xkX2ludGVsX3N0YXRlLCBpbnRl bF9jcnRjKTsKPiAgCWJvb2wgbW9kZXNldCA9IG5lZWRzX21vZGVzZXQoJmludGVsX2NzdGF0ZS0+ YmFzZSk7Cj4gIAo+IC0JaWYgKCFtb2Rlc2V0ICYmCj4gLQkgICAgKGludGVsX2NzdGF0ZS0+YmFz ZS5jb2xvcl9tZ210X2NoYW5nZWQgfHwKPiAtCSAgICAgaW50ZWxfY3N0YXRlLT51cGRhdGVfcGlw ZSkpCj4gLQkJaW50ZWxfY29sb3JfbG9hZF9sdXRzKGludGVsX2NzdGF0ZSk7Cj4gLQo+ICAJLyog UGVyZm9ybSB2YmxhbmsgZXZhc2lvbiBhcm91bmQgY29tbWl0IG9wZXJhdGlvbiAqLwo+ICAJaW50 ZWxfcGlwZV91cGRhdGVfc3RhcnQoaW50ZWxfY3N0YXRlKTsKPiAgCj4gLS0gCj4gMi4xOS4yCj4g CgotLSAKTWF0dCBSb3BlcgpHcmFwaGljcyBTb2Z0d2FyZSBFbmdpbmVlcgpJb1RHIFBsYXRmb3Jt IEVuYWJsaW5nICYgRGV2ZWxvcG1lbnQKSW50ZWwgQ29ycG9yYXRpb24KKDkxNikgMzU2LTI3OTUK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4 IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==