From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf1-f196.google.com (mail-pf1-f196.google.com [209.85.210.196]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9A9BE6ED8A for ; Tue, 22 Jan 2019 17:47:06 +0000 (UTC) Received: by mail-pf1-f196.google.com with SMTP id q1so12113699pfi.5 for ; Tue, 22 Jan 2019 09:47:06 -0800 (PST) Message-ID: From: Lyude Paul Date: Tue, 22 Jan 2019 12:47:01 -0500 In-Reply-To: <4664621af771f82e98afb701b9dbf1d8aa2b1271.camel@bootlin.com> References: <20190111090532.19235-1-paul.kocialkowski@bootlin.com> <20190111090532.19235-10-paul.kocialkowski@bootlin.com> <82f5e96fbf0fe65496ffdd934f09403ce3ce8f91.camel@redhat.com> <4664621af771f82e98afb701b9dbf1d8aa2b1271.camel@bootlin.com> Mime-Version: 1.0 Subject: Re: [igt-dev] [PATCH i-g-t v3 09/21] lib/igt_vc4: Add helpers for converting linear to T-tiled RGB buffers List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: Paul Kocialkowski , igt-dev@lists.freedesktop.org Cc: Petri Latvala , Eben Upton , Thomas Petazzoni List-ID: T24gVHVlLCAyMDE5LTAxLTIyIGF0IDE3OjA3ICswMTAwLCBQYXVsIEtvY2lhbGtvd3NraSB3cm90 ZToKPiBIaSBhbmQgdGhhbmtzIGZvciB0aGUgcmV2aWV3LAo+IAo+IE9uIFR1ZSwgMjAxOS0wMS0x NSBhdCAxNjoyMCAtMDUwMCwgTHl1ZGUgUGF1bCB3cm90ZToKPiA+IE9uIEZyaSwgMjAxOS0wMS0x MSBhdCAxMDowNSArMDEwMCwgUGF1bCBLb2NpYWxrb3dza2kgd3JvdGU6Cj4gPiA+IEluIG9yZGVy IHRvIGludGVncmF0ZSB0ZXN0aW5nIG9mIFQtdGlsZWQgYnVmZmVycywgdGhlIGVhc2llc3QgcGF0 aCBpcyB0bwo+ID4gPiBnZW5lcmF0ZSBwYXR0ZXJucyAod2l0aCB0aGUgYWxyZWFkeS1leGlzdGlu ZyBmdW5jdGlvbnMpIGluIGxpbmVhcgo+ID4gPiBidWZmZXJzIGFuZCBjb252ZXJ0IHRoZW0gdG8g VC10aWxlZCBzdWJzZXF1ZW50bHkuCj4gPiA+IAo+ID4gPiBBZGQgaGVscGVycyB0byBkbyB0aGF0 IGNvbnZlcnNpb24sIHdpdGggYSBmaXJzdCBoZWxwZXIgdGhhdCByZXR1cm5zIHRoZQo+ID4gPiBt ZW1vcnkgb2Zmc2V0IGZvciBhIGdpdmVuIHBvc2l0aW9uIGluIGEgVC10aWxlZCBidWZmZXIgYW5k IGEgc2Vjb25kCj4gPiA+IGhlbHBlciB0aGF0IHVzZXMgaXQgZm9yIGNvbnZlcnRpbmcgYmV0d2Vl biBmcmFtZWJ1ZmZlcnMuCj4gPiA+IAo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBQYXVsIEtvY2lhbGtv d3NraSA8cGF1bC5rb2NpYWxrb3dza2lAYm9vdGxpbi5jb20+Cj4gPiA+IC0tLQo+ID4gPiAgbGli L2lndF92YzQuYyB8IDEzMSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKwo+ID4gPiAgbGliL2lndF92YzQuaCB8ICAgNCArKwo+ID4gPiAgMiBmaWxlcyBj aGFuZ2VkLCAxMzUgaW5zZXJ0aW9ucygrKQo+ID4gPiAKPiA+ID4gZGlmZiAtLWdpdCBhL2xpYi9p Z3RfdmM0LmMgYi9saWIvaWd0X3ZjNC5jCj4gPiA+IGluZGV4IDE2ZGZlNjdhNDRiMS4uYjRiOWMy ZmM2OTE0IDEwMDY0NAo+ID4gPiAtLS0gYS9saWIvaWd0X3ZjNC5jCj4gPiA+ICsrKyBiL2xpYi9p Z3RfdmM0LmMKPiA+ID4gQEAgLTM0LDYgKzM0LDcgQEAKPiA+ID4gICNpbmNsdWRlICJkcm10ZXN0 LmgiCj4gPiA+ICAjaW5jbHVkZSAiaWd0X2F1eC5oIgo+ID4gPiAgI2luY2x1ZGUgImlndF9jb3Jl LmgiCj4gPiA+ICsjaW5jbHVkZSAiaWd0X2ZiLmgiCj4gPiA+ICAjaW5jbHVkZSAiaWd0X3ZjNC5o Igo+ID4gPiAgI2luY2x1ZGUgImlvY3RsX3dyYXBwZXJzLmgiCj4gPiA+ICAjaW5jbHVkZSAiaW50 ZWxfcmVnLmgiCj4gPiA+IEBAIC0xNzYsMyArMTc3LDEzMyBAQCBib29sIGlndF92YzRfcHVyZ2Vh YmxlX2JvKGludCBmZCwgaW50IGhhbmRsZSwgYm9vbAo+ID4gPiBwdXJnZWFibGUpCj4gPiA+ICAK PiA+ID4gIAlyZXR1cm4gYXJnLnJldGFpbmVkOwo+ID4gPiAgfQo+ID4gPiArCj4gPiA+ICt1bnNp Z25lZCBpbnQgaWd0X3ZjNF9mYl90X3RpbGVkX2NvbnZlcnQoc3RydWN0IGlndF9mYiAqZHN0LCBz dHJ1Y3QKPiA+ID4gaWd0X2ZiCj4gPiA+ICpzcmMpCj4gPiA+ICt7Cj4gPiA+ICsJdW5zaWduZWQg aW50IGZiX2lkOwo+ID4gPiArCXVuc2lnbmVkIGludCBpLCBqOwo+ID4gPiArCXZvaWQgKnNyY19i dWY7Cj4gPiA+ICsJdm9pZCAqZHN0X2J1ZjsKPiA+ID4gKwlzaXplX3QgYnBwID0gc3JjLT5wbGFu ZV9icHBbMF07Cj4gPiA+ICsJc2l6ZV90IGRzdF9zdHJpZGUgPSBBTElHTihzcmMtPnN0cmlkZXNb MF0sIDEyOCk7Cj4gPiA+ICsKPiA+ID4gKwlmYl9pZCA9IGlndF9jcmVhdGVfZmJfd2l0aF9ib19z aXplKHNyYy0+ZmQsIHNyYy0+d2lkdGgsIHNyYy0+aGVpZ2h0LAo+ID4gPiArCQkJCQkgICBzcmMt PmRybV9mb3JtYXQsCj4gPiA+ICsJCQkJCSAgIERSTV9GT1JNQVRfTU9EX0JST0FEQ09NX1ZDNF9U X1RJTEVECj4gPiA+ICwKPiA+ID4gKwkJCQkJICAgZHN0LCAwLCBkc3Rfc3RyaWRlKTsKPiA+ID4g KwlpZ3RfYXNzZXJ0KGZiX2lkID4gMCk7Cj4gPiA+ICsKPiA+ID4gKwlzcmNfYnVmID0gaWd0X2Zi X21hcF9idWZmZXIoc3JjLT5mZCwgc3JjKTsKPiA+ID4gKwlpZ3RfYXNzZXJ0KHNyY19idWYpOwo+ ID4gPiArCj4gPiA+ICsJZHN0X2J1ZiA9IGlndF9mYl9tYXBfYnVmZmVyKGRzdC0+ZmQsIGRzdCk7 Cj4gPiA+ICsJaWd0X2Fzc2VydChkc3RfYnVmKTsKPiA+ID4gKwo+ID4gPiArCWZvciAoaSA9IDA7 IGkgPCBzcmMtPmhlaWdodDsgaSsrKSB7Cj4gPiA+ICsJCWZvciAoaiA9IDA7IGogPCBzcmMtPndp ZHRoOyBqKyspIHsKPiA+ID4gKwkJCXNpemVfdCBzcmNfb2Zmc2V0ID0gc3JjLT5vZmZzZXRzWzBd Owo+ID4gPiArCQkJc2l6ZV90IGRzdF9vZmZzZXQgPSBkc3QtPm9mZnNldHNbMF07Cj4gPiA+ICsK PiA+ID4gKwkJCXNyY19vZmZzZXQgKz0gc3JjLT5zdHJpZGVzWzBdICogaSArIGogKiBicHAgLyA4 Owo+ID4gPiArCQkJZHN0X29mZnNldCArPSBpZ3RfdmM0X3RfdGlsZWRfb2Zmc2V0KGRzdF9zdHJp ZGUsCj4gPiA+ICsJCQkJCQkJICAgICBzcmMtPmhlaWdodCwKPiA+ID4gKwkJCQkJCQkgICAgIGJw cCwgaiwgaSk7Cj4gPiA+ICsKPiA+ID4gKwkJCXN3aXRjaCAoYnBwKSB7Cj4gPiA+ICsJCQljYXNl IDE2Ogo+ID4gPiArCQkJCSoodWludDE2X3QgKikoZHN0X2J1ZiArIGRzdF9vZmZzZXQpID0KPiA+ ID4gKwkJCQkJKih1aW50MTZfdCAqKShzcmNfYnVmICsgc3JjX29mZnNldCk7Cj4gPiA+ICsJCQkJ YnJlYWs7Cj4gPiA+ICsJCQljYXNlIDMyOgo+ID4gPiArCQkJCSoodWludDMyX3QgKikoZHN0X2J1 ZiArIGRzdF9vZmZzZXQpID0KPiA+ID4gKwkJCQkJKih1aW50MzJfdCAqKShzcmNfYnVmICsgc3Jj X29mZnNldCk7Cj4gPiA+ICsJCQkJYnJlYWs7Cj4gPiA+ICsJCQlkZWZhdWx0Ogo+ID4gTWF5YmUg d2Ugc2hvdWxkIGFsc28gaGF2ZSB0aGUgdHdvIGlndF9mYl91bm1hcF9idWZmZXIoKSBjYWxscyBi ZWxvdyB0aGlzCj4gPiBnZXQKPiA+IGludm9rZWQgYmVmb3JlIGNhbGxpbmcgaWd0X2Fzc2VydChm YWxzZSkgc28gd2UgZG9uJ3QgbGVhayBGQnMgaWYgdGhpcwo+ID4gZmFpbHMKPiAKPiBJZiB0aGF0 J3MgZmluZSB3aXRoIHlvdSwgSSdkIHJhdGhlciBoYXZlIGFuIGlndF9hc3NlcnQoYnBwID09IDE2 IHx8IGJwcAo+ID09IDMyKSBlYXJsaWVyIHNvIHdlIGRvbid0IHJlYWNoIG1hcHBpbmcgdGhlIGJ1 ZmZlcnMgaWYgdGhlIGNvbmRpdGlvbgo+IGNhbm5vdCBiZSBndWFyYW50ZWVkLgo+IAo+IENoZWVy cyEKPiAKPiBQYXVsCgpTb3VuZHMgZ29vZCB0byBtZSEKPiAKPiA+IFdpdGggdGhhdCBmaXhlZDoK PiA+IAo+ID4gQWNrZWQtYnk6IEx5dWRlIFBhdWwgPGx5dWRlQHJlZGhhdC5jb20+Cj4gPiA+ICsJ CQkJaWd0X2Fzc2VydChmYWxzZSk7Cj4gPiA+ICsJCQl9Cj4gPiA+ICsJCX0KPiA+ID4gKwl9Cj4g PiA+ICsKPiA+ID4gKwlpZ3RfZmJfdW5tYXBfYnVmZmVyKHNyYywgc3JjX2J1Zik7Cj4gPiA+ICsJ aWd0X2ZiX3VubWFwX2J1ZmZlcihkc3QsIGRzdF9idWYpOwo+ID4gPiArCj4gPiA+ICsJcmV0dXJu IGZiX2lkOwo+ID4gPiArfQo+ID4gPiArCj4gPiA+ICsvKiBDYWxjdWxhdGUgdGhlIHQtdGlsZSB3 aWR0aCBzbyB0aGF0IHNpemUgPSB3aWR0aCAqIGhlaWdodCAqIGJwcCAvIDguCj4gPiA+ICovCj4g PiA+ICsjZGVmaW5lIFZDNF9UX1RJTEVfVyhzaXplLCBoZWlnaHQsIGJwcCkgKChzaXplKSAvICho ZWlnaHQpIC8gKChicHApIC8KPiA+ID4gOCkpCj4gPiA+ICsKPiA+ID4gK3NpemVfdCBpZ3RfdmM0 X3RfdGlsZWRfb2Zmc2V0KHNpemVfdCBzdHJpZGUsIHNpemVfdCBoZWlnaHQsIHNpemVfdCBicHAs Cj4gPiA+ICsJCQkgICAgICBzaXplX3QgeCwgc2l6ZV90IHkpCj4gPiA+ICt7Cj4gPiA+ICsJY29u c3Qgc2l6ZV90IHQxa19tYXBfZXZlbltdID0geyAwLCAzLCAxLCAyIH07Cj4gPiA+ICsJY29uc3Qg c2l6ZV90IHQxa19tYXBfb2RkW10gPSB7IDIsIDEsIDMsIDAgfTsKPiA+ID4gKwljb25zdCBzaXpl X3QgdDRrX3RfaCA9IDMyOwo+ID4gPiArCWNvbnN0IHNpemVfdCB0MWtfdF9oID0gMTY7Cj4gPiA+ ICsJY29uc3Qgc2l6ZV90IHQ2NF90X2ggPSA0Owo+ID4gPiArCXNpemVfdCBvZmZzZXQgPSAwOwo+ ID4gPiArCXNpemVfdCB0NGtfdF93LCB0NGtfdywgdDRrX3gsIHQ0a195Owo+ID4gPiArCXNpemVf dCB0MWtfdF93LCB0MWtfeCwgdDFrX3k7Cj4gPiA+ICsJc2l6ZV90IHQ2NF90X3csIHQ2NF94LCB0 NjRfeTsKPiA+ID4gKwlzaXplX3QgcGl4X3gsIHBpeF95Owo+ID4gPiArCXVuc2lnbmVkIGludCBp bmRleDsKPiA+ID4gKwo+ID4gPiArCS8qIFQtdGlsaW5nIGlzIG9ubHkgc3VwcG9ydGVkIGZvciAx NiBhbmQgMzIgYnBwLiAqLwo+ID4gPiArCWlndF9hc3NlcnQoYnBwID09IDE2IHx8IGJwcCA9PSAz Mik7Cj4gPiA+ICsKPiA+ID4gKwkvKiBULXRpbGluZyBzdHJpZGUgbXVzdCBiZSBhbGlnbmVkIHRv IHRoZSA0SyB0aWxlcyBzdHJpZGVzLiAqLwo+ID4gPiArCWlndF9hc3NlcnQoKHN0cmlkZSAlICg0 MDk2IC8gdDRrX3RfaCkpID09IDApOwo+ID4gPiArCj4gPiA+ICsJLyogQ2FsY3VsYXRlIHRoZSB0 aWxlIHdpZHRoIGZvciB0aGUgYnBwLiAqLwo+ID4gPiArCXQ0a190X3cgPSBWQzRfVF9USUxFX1co NDA5NiwgdDRrX3RfaCwgYnBwKTsKPiA+ID4gKwl0MWtfdF93ID0gVkM0X1RfVElMRV9XKDEwMjQs IHQxa190X2gsIGJwcCk7Cj4gPiA+ICsJdDY0X3RfdyA9IFZDNF9UX1RJTEVfVyg2NCwgdDY0X3Rf aCwgYnBwKTsKPiA+ID4gKwo+ID4gPiArCS8qIEFsaWduZWQgdG90YWwgd2lkdGggaW4gbnVtYmVy IG9mIDRLIHRpbGVzLiAqLwo+ID4gPiArCXQ0a193ID0gKHN0cmlkZSAvIChicHAgLyA4KSkgLyB0 NGtfdF93Owo+ID4gPiArCj4gPiA+ICsJLyogWCBhbmQgeSBjb29yZGluYXRlcyBpbiBudW1iZXIg b2YgNEsgdGlsZXMuICovCj4gPiA+ICsJdDRrX3ggPSB4IC8gdDRrX3RfdzsKPiA+ID4gKwl0NGtf eSA9IHkgLyB0NGtfdF9oOwo+ID4gPiArCj4gPiA+ICsJLyogSW5jcmVhc2Ugb2Zmc2V0IHRvIHRo ZSBiZWdpbm5pbmcgb2YgdGhlIDRLIHRpbGUgcm93LiAqLwo+ID4gPiArCW9mZnNldCArPSB0NGtf eSAqIHQ0a193ICogNDA5NjsKPiA+ID4gKwo+ID4gPiArCS8qIFggYW5kIFkgY29vcmRpbmF0ZXMg aW4gbnVtYmVyIG9mIDFLIHRpbGVzIHdpdGhpbiB0aGUgNEsgdGlsZS4gKi8KPiA+ID4gKwl0MWtf eCA9ICh4ICUgdDRrX3RfdykgLyB0MWtfdF93Owo+ID4gPiArCXQxa195ID0gKHkgJSB0NGtfdF9o KSAvIHQxa190X2g7Cj4gPiA+ICsKPiA+ID4gKwkvKiBJbmRleCBmb3IgMUsgdGlsZSBtYXAgbG9v a3VwLiAqLwo+ID4gPiArCWluZGV4ID0gMiAqIHQxa195ICsgdDFrX3g7Cj4gPiA+ICsKPiA+ID4g KwkvKiBPZGQgcm93cyBzdGFydCBmcm9tIHRoZSByaWdodCwgZXZlbiByb3dzIGZyb20gdGhlIGxl ZnQuICovCj4gPiA+ICsJaWYgKHQ0a195ICUgMikgewo+ID4gPiArCQkvKiBJbmNyZWFzZSBvZmZz ZXQgdG8gdGhlIDRLIHRpbGUgKHN0YXJ0aW5nIGZyb20gdGhlIHJpZ2h0KS4KPiA+ID4gKi8KPiA+ ID4gKwkJb2Zmc2V0ICs9ICh0NGtfdyAtIHQ0a194IC0gMSkgKiA0MDk2Owo+ID4gPiArCj4gPiA+ ICsJCS8qIEluY3Jhc2Ugb2Zmc2V0IHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIChvZGQpIDFLIHRp bGUuICovCj4gPiA+ICsJCW9mZnNldCArPSB0MWtfbWFwX29kZFtpbmRleF0gKiAxMDI0Owo+ID4g PiArCX0gZWxzZSB7Cj4gPiA+ICsJCS8qIEluY3JlYXNlIG9mZnNldCB0byB0aGUgNEsgdGlsZSAo c3RhcnRpbmcgZnJvbSB0aGUgbGVmdCkuICovCj4gPiA+ICsJCW9mZnNldCArPSB0NGtfeCAqIDQw OTY7Cj4gPiA+ICsKPiA+ID4gKwkJLyogSW5jcmFzZSBvZmZzZXQgdG8gdGhlIGJlZ2lubmluZyBv ZiB0aGUgKGV2ZW4pIDFLIHRpbGUuICovCj4gPiA+ICsJCW9mZnNldCArPSB0MWtfbWFwX2V2ZW5b aW5kZXhdICogMTAyNDsKPiA+ID4gKwl9Cj4gPiA+ICsKPiA+ID4gKwkvKiBYIGFuZCBZIGNvb3Jk aW5hdGVzIGluIG51bWJlciBvZiA2NCBieXRlIHRpbGVzIHdpdGhpbiB0aGUgMUsgdGlsZS4KPiA+ ID4gKi8KPiA+ID4gKwl0NjRfeCA9ICh4ICUgdDFrX3RfdykgLyB0NjRfdF93Owo+ID4gPiArCXQ2 NF95ID0gKHkgJSB0MWtfdF9oKSAvIHQ2NF90X2g7Cj4gPiA+ICsKPiA+ID4gKwkvKiBJbmNyZWFz ZSBvZmZzZXQgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgNjQtYnl0ZSB0aWxlLiAqLwo+ID4gPiAr CW9mZnNldCArPSAodDY0X3kgKiAodDFrX3RfdyAvIHQ2NF90X3cpICsgdDY0X3gpICogNjQ7Cj4g PiA+ICsKPiA+ID4gKwkvKiBYIGFuZCBZIGNvb3JkaW5hdGVzIGluIG51bWJlciBvZiBwaXhlbHMg d2l0aGluIHRoZSA2NC1ieXRlIHRpbGUuICovCj4gPiA+ICsJcGl4X3ggPSB4ICUgdDY0X3RfdzsK PiA+ID4gKwlwaXhfeSA9IHkgJSB0NjRfdF9oOwo+ID4gPiArCj4gPiA+ICsJLyogSW5jcmVhc2Ug b2Zmc2V0IHRvIHRoZSBjb3JyZWN0IHBpeGVsLiAqLwo+ID4gPiArCW9mZnNldCArPSAocGl4X3kg KiB0NjRfdF93ICsgcGl4X3gpICogYnBwIC8gODsKPiA+ID4gKwo+ID4gPiArCXJldHVybiBvZmZz ZXQ7Cj4gPiA+ICt9Cj4gPiA+IGRpZmYgLS1naXQgYS9saWIvaWd0X3ZjNC5oIGIvbGliL2lndF92 YzQuaAo+ID4gPiBpbmRleCBlYmM4YTM4ODFiNWUuLmQ1YzUyOWJiY2NkYSAxMDA2NDQKPiA+ID4g LS0tIGEvbGliL2lndF92YzQuaAo+ID4gPiArKysgYi9saWIvaWd0X3ZjNC5oCj4gPiA+IEBAIC0z Myw0ICszMyw4IEBAIGJvb2wgaWd0X3ZjNF9wdXJnZWFibGVfYm8oaW50IGZkLCBpbnQgaGFuZGxl LCBib29sCj4gPiA+IHB1cmdlYWJsZSk7Cj4gPiA+ICB2b2lkIGlndF92YzRfc2V0X3RpbGluZyhp bnQgZmQsIHVpbnQzMl90IGhhbmRsZSwgdWludDY0X3QgbW9kaWZpZXIpOwo+ID4gPiAgdWludDY0 X3QgaWd0X3ZjNF9nZXRfdGlsaW5nKGludCBmZCwgdWludDMyX3QgaGFuZGxlKTsKPiA+ID4gIAo+ ID4gPiArdW5zaWduZWQgaW50IGlndF92YzRfZmJfdF90aWxlZF9jb252ZXJ0KHN0cnVjdCBpZ3Rf ZmIgKmRzdCwgc3RydWN0Cj4gPiA+IGlndF9mYgo+ID4gPiAqc3JjKTsKPiA+ID4gK3NpemVfdCBp Z3RfdmM0X3RfdGlsZWRfb2Zmc2V0KHNpemVfdCBzdHJpZGUsIHNpemVfdCBoZWlnaHQsIHNpemVf dCBicHAsCj4gPiA+ICsJCQkgICAgICBzaXplX3QgeCwgc2l6ZV90IHkpOwo+ID4gPiArCj4gPiA+ ICAjZW5kaWYgLyogSUdUX1ZDNF9IICovCi0tIApDaGVlcnMsCglMeXVkZSBQYXVsCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcg bGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXYK