From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.bootlin.com (mail.bootlin.com [62.4.15.54]) by gabe.freedesktop.org (Postfix) with ESMTP id 541706E5E5 for ; Thu, 6 Dec 2018 14:13:50 +0000 (UTC) From: Paul Kocialkowski Date: Thu, 6 Dec 2018 15:11:29 +0100 Message-Id: <20181206141132.23349-7-paul.kocialkowski@bootlin.com> In-Reply-To: <20181206141132.23349-1-paul.kocialkowski@bootlin.com> References: <20181206141132.23349-1-paul.kocialkowski@bootlin.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 6/9] lib/igt_vc4: Add helpers for converting linear to T-tiled XRGB 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: igt-dev@lists.freedesktop.org Cc: Petri Latvala , Eben Upton , Thomas Petazzoni List-ID: SW4gb3JkZXIgdG8gaW50ZWdyYXRlIHRlc3Rpbmcgb2YgVC10aWxlZCBidWZmZXJzLCB0aGUgZWFz aWVzdCBwYXRoIGlzIHRvCmdlbmVyYXRlIHBhdHRlcm5zICh3aXRoIHRoZSBhbHJlYWR5LWV4aXN0 aW5nIGZ1bmN0aW9ucykgaW4gbGluZWFyCmJ1ZmZlcnMgYW5kIGNvbnZlcnQgdGhlbSB0byBULXRp bGVkIHN1YnNlcXVlbnRseS4KCkFkZCBoZWxwZXJzIHRvIGRvIHRoYXQgY29udmVyc2lvbiwgd2l0 aCBhIGZpcnN0IGhlbHBlciB0aGF0IHJldHVybnMgdGhlCm1lbW9yeSBvZmZzZXQgZm9yIGEgZ2l2 ZW4gcG9zaXRpb24gaW4gYSBULXRpbGVkIGJ1ZmZlciBhbmQgYSBzZWNvbmQKaGVscGVyIHRoYXQg dXNlcyBpdCBmb3IgY29udmVydGluZyBiZXR3ZWVuIGZyYW1lYnVmZmVycy4KClNpZ25lZC1vZmYt Ynk6IFBhdWwgS29jaWFsa293c2tpIDxwYXVsLmtvY2lhbGtvd3NraUBib290bGluLmNvbT4KLS0t CiBsaWIvaWd0X3ZjNC5jIHwgOTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrCiBsaWIvaWd0X3ZjNC5oIHwgIDQgKysrCiAyIGZpbGVzIGNoYW5nZWQs IDEwMCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvbGliL2lndF92YzQuYyBiL2xpYi9pZ3Rf dmM0LmMKaW5kZXggMTZkZmU2N2EuLjBiNTEyNGYzIDEwMDY0NAotLS0gYS9saWIvaWd0X3ZjNC5j CisrKyBiL2xpYi9pZ3RfdmM0LmMKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJkcm10ZXN0 LmgiCiAjaW5jbHVkZSAiaWd0X2F1eC5oIgogI2luY2x1ZGUgImlndF9jb3JlLmgiCisjaW5jbHVk ZSAiaWd0X2ZiLmgiCiAjaW5jbHVkZSAiaWd0X3ZjNC5oIgogI2luY2x1ZGUgImlvY3RsX3dyYXBw ZXJzLmgiCiAjaW5jbHVkZSAiaW50ZWxfcmVnLmgiCkBAIC0xNzYsMyArMTc3LDk4IEBAIGJvb2wg aWd0X3ZjNF9wdXJnZWFibGVfYm8oaW50IGZkLCBpbnQgaGFuZGxlLCBib29sIHB1cmdlYWJsZSkK IAogCXJldHVybiBhcmcucmV0YWluZWQ7CiB9CisKK3Vuc2lnbmVkIGludCBpZ3RfdmM0X2ZiX3Rf dGlsZWRfY29udmVydChzdHJ1Y3QgaWd0X2ZiICpkc3QsIHN0cnVjdCBpZ3RfZmIgKnNyYykKK3sK Kwl1bnNpZ25lZCBpbnQgZmJfaWQ7CisJdW5zaWduZWQgaW50IGksIGo7CisJdWludDMyX3QgKnNy Y19idWY7CisJdWludDMyX3QgKmRzdF9idWY7CisJc2l6ZV90IG9mZnNldDsKKworCWlndF9hc3Nl cnQoc3JjLT5kcm1fZm9ybWF0ID09IERSTV9GT1JNQVRfWFJHQjg4ODgpOworCisJZmJfaWQgPSBp Z3RfY3JlYXRlX2ZiKHNyYy0+ZmQsIHNyYy0+d2lkdGgsIHNyYy0+aGVpZ2h0LCBzcmMtPmRybV9m b3JtYXQsCisJCQkgICAgICBEUk1fRk9STUFUX01PRF9CUk9BRENPTV9WQzRfVF9USUxFRCwgZHN0 KTsKKwlpZ3RfYXNzZXJ0KGZiX2lkID4gMCk7CisKKwlzcmNfYnVmID0gaWd0X2ZiX21hcF9idWZm ZXIoc3JjLT5mZCwgc3JjKTsKKwlpZ3RfYXNzZXJ0KHNyY19idWYpOworCisJZHN0X2J1ZiA9IGln dF9mYl9tYXBfYnVmZmVyKGRzdC0+ZmQsIGRzdCk7CisJaWd0X2Fzc2VydChkc3RfYnVmKTsKKwor CWZvciAoaSA9IDA7IGkgPCBzcmMtPmhlaWdodDsgaSsrKSB7CisJCWZvciAoaiA9IDA7IGogPCBz cmMtPndpZHRoOyBqKyspIHsKKwkJCW9mZnNldCA9IGlndF92YzRfdF90aWxlZF9vZmZzZXQoc3Jj LT53aWR0aCwgc3JjLT5oZWlnaHQsCisJCQkJCQkJc3JjLT5kcm1fZm9ybWF0LCBqLCBpKSAvIDQ7 CisJCQkqKGRzdF9idWYgKyBvZmZzZXQpID0gKihzcmNfYnVmICsKKwkJCQkJCXNyYy0+c3RyaWRl c1swXSAvIDQgKiBpICsgaik7CisJCX0KKwl9CisKKwlpZ3RfZmJfdW5tYXBfYnVmZmVyKHNyYywg c3JjX2J1Zik7CisJaWd0X2ZiX3VubWFwX2J1ZmZlcihkc3QsIGRzdF9idWYpOworCisJcmV0dXJu IGZiX2lkOworfQorCitzaXplX3QgaWd0X3ZjNF90X3RpbGVkX29mZnNldChzaXplX3Qgd2lkdGgs IHNpemVfdCBoZWlnaHQsIHNpemVfdCBmb3JtYXQsCisJCQkgICAgICBzaXplX3QgeCwgc2l6ZV90 IHkpCit7CisJc2l6ZV90IHQxa19tYXBfZXZlbls0XSA9IHsgMCwgMywgMSwgMiB9OworCXNpemVf dCB0MWtfbWFwX29kZFs0XSA9IHsgMiwgMSwgMywgMCB9OworCXNpemVfdCBvZmZzZXQgPSAwOwor CXNpemVfdCB0NGtfdywgdDRrX3gsIHQ0a195OworCXNpemVfdCB0MWtfeCwgdDFrX3k7CisJc2l6 ZV90IHQ2NGJfeCwgdDY0Yl95OworCXNpemVfdCBwaXhfeCwgcGl4X3k7CisJdW5zaWduZWQgaW50 IGluZGV4OworCisJaWd0X2Fzc2VydChmb3JtYXQgPT0gRFJNX0ZPUk1BVF9YUkdCODg4OCk7CisK KwkvKiBXaWR0aCBpbiBudW1iZXIgb2YgNEsgdGlsZXMuICovCisJdDRrX3cgPSBBTElHTih3aWR0 aCwgMzIpIC8gMzI7CisKKwkvKiBYIGFuZCB5IGNvb3JkaW5hdGVzIGluIG51bWJlciBvZiA0SyB0 aWxlcyAoMzJ4MzIpLiAqLworCXQ0a194ID0geCAvIDMyOworCXQ0a195ID0geSAvIDMyOworCisJ LyogSW5jcmVhc2Ugb2Zmc2V0IHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGNvcnJlc3BvbmRpbmcg NEsgdGlsZS4gKi8KKwlvZmZzZXQgKz0gdDRrX3kgKiB0NGtfdyAqIDMyICogMzI7CisKKwkvKiBY IGFuZCBZIGNvb3JkaW5hdGVzIGluIG51bWJlciBvZiAxSyB0aWxlcyAoMTZ4MTYpIHdpdGhpbiB0 aGUgNEsgdGlsZS4gKi8KKwl0MWtfeCA9ICh4ICUgMzIpIC8gMTY7CisJdDFrX3kgPSAoeSAlIDMy KSAvIDE2OworCisJaW5kZXggPSAyICogdDFrX3kgKyB0MWtfeDsKKworCWlmICh0NGtfeSAlIDIp IHsKKwkJLyogT2RkIHJvd3Mgc3RhcnQgZnJvbSB0aGUgcmlnaHQuICovCisJCW9mZnNldCArPSAo dDRrX3cgLSB0NGtfeCAtIDEpICogMzIgKiAzMjsKKwkJb2Zmc2V0ICs9IHQxa19tYXBfb2RkW2lu ZGV4XSAqIDE2ICogMTY7CisJfSBlbHNlIHsKKwkJLyogRXZlbiByb3dzIHN0YXJ0IGZyb20gdGhl IGxlZnQuICovCisJCW9mZnNldCArPSB0NGtfeCAqIDMyICogMzI7CisJCW9mZnNldCArPSB0MWtf bWFwX2V2ZW5baW5kZXhdICogMTYgKiAxNjsKKwl9CisKKwkvKiBYIGFuZCBZIGNvb3JkaW5hdGVz IGluIG51bWJlciBvZiA2NCBieXRlIHRpbGVzICg0eDQpIHdpdGhpbiB0aGUgMUsgdGlsZS4gKi8K Kwl0NjRiX3ggPSAoeCAlIDE2KSAvIDQ7CisJdDY0Yl95ID0gKHkgJSAxNikgLyA0OworCisJLyog SW5jcmVhc2Ugb2Zmc2V0IHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGNvcnJlc3BvbmRpbmcgNjQg Ynl0ZSB0aWxlLiAqLworCW9mZnNldCArPSB0NjRiX3kgKiA0ICogNCAqIDQgKyB0NjRiX3ggKiA0 ICogNDsKKworCS8qIFggYW5kIFkgY29vcmRpbmF0ZXMgaW4gbnVtYmVyIG9mIHBpeGVscyB3aXRo aW4gdGhlIDY0IGJ5dGUgdGlsZS4gKi8KKwlwaXhfeCA9IHggJSA0OworCXBpeF95ID0geSAlIDQ7 CisKKwkvKiBJbmNyZWFzZSBvZmZzZXQgdG8gdGhlIGNvcnJlY3QgcGl4ZWwuICovCisJb2Zmc2V0 ICs9IHBpeF95ICogNCArIHBpeF94OworCisJLyogTXVsdGlwbHkgYnkgdGhlIG51bWJlciBvZiBi eXRlcyBwZXIgcGl4ZWwgZm9yIHRoZSBmb3JtYXQuICovCisJb2Zmc2V0ICo9IDQ7CisKKwlyZXR1 cm4gb2Zmc2V0OworfQpkaWZmIC0tZ2l0IGEvbGliL2lndF92YzQuaCBiL2xpYi9pZ3RfdmM0LmgK aW5kZXggZWJjOGEzODguLmFiNDRmNzcxIDEwMDY0NAotLS0gYS9saWIvaWd0X3ZjNC5oCisrKyBi L2xpYi9pZ3RfdmM0LmgKQEAgLTMzLDQgKzMzLDggQEAgYm9vbCBpZ3RfdmM0X3B1cmdlYWJsZV9i byhpbnQgZmQsIGludCBoYW5kbGUsIGJvb2wgcHVyZ2VhYmxlKTsKIHZvaWQgaWd0X3ZjNF9zZXRf dGlsaW5nKGludCBmZCwgdWludDMyX3QgaGFuZGxlLCB1aW50NjRfdCBtb2RpZmllcik7CiB1aW50 NjRfdCBpZ3RfdmM0X2dldF90aWxpbmcoaW50IGZkLCB1aW50MzJfdCBoYW5kbGUpOwogCit1bnNp Z25lZCBpbnQgaWd0X3ZjNF9mYl90X3RpbGVkX2NvbnZlcnQoc3RydWN0IGlndF9mYiAqZHN0LCBz dHJ1Y3QgaWd0X2ZiICpzcmMpOworc2l6ZV90IGlndF92YzRfdF90aWxlZF9vZmZzZXQoc2l6ZV90 IHdpZHRoLCBzaXplX3QgaGVpZ2h0LCBzaXplX3QgZm9ybWF0LAorCQkJICAgICAgc2l6ZV90IHgs IHNpemVfdCB5KTsKKwogI2VuZGlmIC8qIElHVF9WQzRfSCAqLwotLSAKMi4xOS4yCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcg bGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXYK