From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mblankhorst.nl (mblankhorst.nl [IPv6:2a02:2308::216:3eff:fe92:dfa3]) by gabe.freedesktop.org (Postfix) with ESMTPS id 69F3C897F6 for ; Mon, 18 Mar 2019 10:33:48 +0000 (UTC) From: Maarten Lankhorst Date: Mon, 18 Mar 2019 11:33:44 +0100 Message-Id: <20190318103345.17938-1-maarten.lankhorst@linux.intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 1/2] lib/igt_fb: Add support for Y21x formats as well, v3. 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 List-ID: VGhvc2UgZm9ybWF0cyBhcmUgcGFja2VkIGxpa2UgWVVZViwgYnV0IG9ubHkgMTYgYml0cyBwZXIg Y29tcG9uZW50LgoKQ2hhbmdlcyBzaW5jZSB2MToKLSBSZWJhc2Ugb24gdG9wIG9mIHVwc3RyZWFt IFlVViBjaGFuZ2VzLgpDaGFuZ2VzIHNpbmNlIHYyOgotIFVzZSBkcm1fZm91cmNjLmggZnJvbSB1 cHN0cmVhbS4KClNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmto b3JzdEBsaW51eC5pbnRlbC5jb20+Ci0tLQogaW5jbHVkZS9kcm0tdWFwaS9kcm1fZm91cmNjLmgg fCAxNiArKysrKysrKysrKysKIGxpYi9pZ3RfY29sb3JfZW5jb2RpbmcuYyAgICAgIHwgIDMgKysr CiBsaWIvaWd0X2ZiLmMgICAgICAgICAgICAgICAgICB8IDQ2ICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDY1IGluc2VydGlvbnMoKykKCmRpZmYg LS1naXQgYS9pbmNsdWRlL2RybS11YXBpL2RybV9mb3VyY2MuaCBiL2luY2x1ZGUvZHJtLXVhcGkv ZHJtX2ZvdXJjYy5oCmluZGV4IGJhYjIwMjk4ZjQyMi4uOWZhN2NmN2JiMjc0IDEwMDY0NAotLS0g YS9pbmNsdWRlL2RybS11YXBpL2RybV9mb3VyY2MuaAorKysgYi9pbmNsdWRlL2RybS11YXBpL2Ry bV9mb3VyY2MuaApAQCAtMTUzLDYgKzE1MywyMiBAQCBleHRlcm4gIkMiIHsKICNkZWZpbmUgRFJN X0ZPUk1BVF9BWVVWCQlmb3VyY2NfY29kZSgnQScsICdZJywgJ1UnLCAnVicpIC8qIFszMTowXSBB Olk6Q2I6Q3IgODo4Ojg6OCBsaXR0bGUgZW5kaWFuICovCiAjZGVmaW5lIERSTV9GT1JNQVRfWFlV Vjg4ODgJCWZvdXJjY19jb2RlKCdYJywgJ1knLCAnVScsICdWJykgLyogWzMxOjBdIFg6WTpDYjpD ciA4Ojg6ODo4IGxpdHRsZSBlbmRpYW4gKi8KIAorLyoKKyAqIHBhY2tlZCBZMnh4IGluZGljYXRl IGZvciBlYWNoIGNvbXBvbmVudCwgeHggdmFsaWQgZGF0YSBvY2N1cHkgbXNiCisgKiAxNi14eCBw YWRkaW5nIG9jY3VweSBsc2IKKyAqLworI2RlZmluZSBEUk1fRk9STUFUX1kyMTAgICAgICAgICBm b3VyY2NfY29kZSgnWScsICcyJywgJzEnLCAnMCcpIC8qIFs2MzowXSBZMDp4OkNiMDp4OlkxOng6 Q3IxOnggMTA6NjoxMDo2OjEwOjY6MTA6NiBsaXR0bGUgZW5kaWFuIHBlciAyIFkgcGl4ZWxzICov CisjZGVmaW5lIERSTV9GT1JNQVRfWTIxMiAgICAgICAgIGZvdXJjY19jb2RlKCdZJywgJzInLCAn MScsICcyJykgLyogWzYzOjBdIFkwOng6Q2IwOng6WTE6eDpDcjE6eCAxMjo0OjEyOjQ6MTI6NDox Mjo0IGxpdHRsZSBlbmRpYW4gcGVyIDIgWSBwaXhlbHMgKi8KKyNkZWZpbmUgRFJNX0ZPUk1BVF9Z MjE2ICAgICAgICAgZm91cmNjX2NvZGUoJ1knLCAnMicsICcxJywgJzYnKSAvKiBbNjM6MF0gWTA6 Q2IwOlkxOkNyMSAxNjoxNjoxNjoxNiBsaXR0bGUgZW5kaWFuIHBlciAyIFkgcGl4ZWxzICovCisK Ky8qCisgKiBwYWNrZWQgWTR4eCBpbmRpY2F0ZSBmb3IgZWFjaCBjb21wb25lbnQsIHh4IHZhbGlk IGRhdGEgb2NjdXB5IG1zYgorICogMTYteHggcGFkZGluZyBvY2N1cHkgbHNiIGV4Y2VwdCBZNDEw CisgKi8KKyNkZWZpbmUgRFJNX0ZPUk1BVF9ZNDEwICAgICAgICAgZm91cmNjX2NvZGUoJ1knLCAn NCcsICcxJywgJzAnKSAvKiBbMzE6MF0gWDpWOlk6VSAyOjEwOjEwOjEwIGxpdHRsZSBlbmRpYW4g Ki8KKyNkZWZpbmUgRFJNX0ZPUk1BVF9ZNDEyICAgICAgICAgZm91cmNjX2NvZGUoJ1knLCAnNCcs ICcxJywgJzInKSAvKiBbNjM6MF0gWDp4OlY6eDpZOng6VTp4IDEyOjQ6MTI6NDoxMjo0OjEyOjQg bGl0dGxlIGVuZGlhbiAqLworI2RlZmluZSBEUk1fRk9STUFUX1k0MTYgICAgICAgICBmb3VyY2Nf Y29kZSgnWScsICc0JywgJzEnLCAnNicpIC8qIFs2MzowXSBYOlY6WTpVIDE2OjE2OjE2OjE2IGxp dHRsZSBlbmRpYW4gKi8KKwogLyoKICAqIHBhY2tlZCBZQ2JDcjQyMCAyeDIgdGlsZWQgZm9ybWF0 cwogICogZmlyc3QgNjQgYml0cyB3aWxsIGNvbnRhaW4gWSxDYixDciBjb21wb25lbnRzIGZvciBh IDJ4MiB0aWxlCmRpZmYgLS1naXQgYS9saWIvaWd0X2NvbG9yX2VuY29kaW5nLmMgYi9saWIvaWd0 X2NvbG9yX2VuY29kaW5nLmMKaW5kZXggY2M3NmE5OTE5MjQyLi45ZjlkYzE0MzllZTQgMTAwNjQ0 Ci0tLSBhL2xpYi9pZ3RfY29sb3JfZW5jb2RpbmcuYworKysgYi9saWIvaWd0X2NvbG9yX2VuY29k aW5nLmMKQEAgLTE1MSw2ICsxNTEsOSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGNvbG9yX2VuY29k aW5nX2Zvcm1hdCB7CiAJeyBEUk1fRk9STUFUX1AwMTAsIDY1NDcyLmYsIDQwOTYuZiwgNjAxNjAu ZiwgNDA5Ni5mLCAzMjc2OC5mLCA2MTQ0MC5mIH0sCiAJeyBEUk1fRk9STUFUX1AwMTIsIDY1NTIw LmYsIDQwOTYuZiwgNjAxNjAuZiwgNDA5Ni5mLCAzMjc2OC5mLCA2MTQ0MC5mIH0sCiAJeyBEUk1f Rk9STUFUX1AwMTYsIDY1NTM1LmYsIDQwOTYuZiwgNjAxNjAuZiwgNDA5Ni5mLCAzMjc2OC5mLCA2 MTQ0MC5mIH0sCisJeyBEUk1fRk9STUFUX1kyMTAsIDY1NDcyLmYsIDQwOTYuZiwgNjAxNjAuZiwg NDA5Ni5mLCAzMjc2OC5mLCA2MTQ0MC5mIH0sCisJeyBEUk1fRk9STUFUX1kyMTIsIDY1NTIwLmYs IDQwOTYuZiwgNjAxNjAuZiwgNDA5Ni5mLCAzMjc2OC5mLCA2MTQ0MC5mIH0sCisJeyBEUk1fRk9S TUFUX1kyMTYsIDY1NTM1LmYsIDQwOTYuZiwgNjAxNjAuZiwgNDA5Ni5mLCAzMjc2OC5mLCA2MTQ0 MC5mIH0sCiB9OwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGNvbG9yX2VuY29kaW5nX2Zvcm1hdCAq bG9va3VwX2ZvdXJjYyh1aW50MzJfdCBmb3VyY2MpCmRpZmYgLS1naXQgYS9saWIvaWd0X2ZiLmMg Yi9saWIvaWd0X2ZiLmMKaW5kZXggNmE5YTkzNDE3MjMwLi43MjdhM2YyYjBmYjggMTAwNjQ0Ci0t LSBhL2xpYi9pZ3RfZmIuYworKysgYi9saWIvaWd0X2ZiLmMKQEAgLTIzNiw2ICsyMzYsMjEgQEAg c3RhdGljIGNvbnN0IHN0cnVjdCBmb3JtYXRfZGVzY19zdHJ1Y3QgewogCSAgLm51bV9wbGFuZXMg PSAyLCAucGxhbmVfYnBwID0geyAxNiwgMzIgfSwKIAkgIC52c3ViID0gMiwgLmhzdWIgPSAyLAog CX0sCisJeyAubmFtZSA9ICJZMjEwIiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFU X1kyMTAsCisJICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCOTZGLAorCSAgLm51bV9wbGFu ZXMgPSAxLCAucGxhbmVfYnBwID0geyAzMiwgfSwKKwkgIC5oc3ViID0gMiwgLnZzdWIgPSAxLAor CX0sCisJeyAubmFtZSA9ICJZMjEyIiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFU X1kyMTIsCisJICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCOTZGLAorCSAgLm51bV9wbGFu ZXMgPSAxLCAucGxhbmVfYnBwID0geyAzMiwgfSwKKwkgIC5oc3ViID0gMiwgLnZzdWIgPSAxLAor CX0sCisJeyAubmFtZSA9ICJZMjE2IiwgLmRlcHRoID0gLTEsIC5kcm1faWQgPSBEUk1fRk9STUFU X1kyMTYsCisJICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCOTZGLAorCSAgLm51bV9wbGFu ZXMgPSAxLCAucGxhbmVfYnBwID0geyAzMiwgfSwKKwkgIC5oc3ViID0gMiwgLnZzdWIgPSAxLAor CX0sCiAJeyAubmFtZSA9ICJJR1QtRkxPQVQiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IElHVF9G T1JNQVRfRkxPQVQsCiAJICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfSU5WQUxJRCwKIAkgIC5u dW1fcGxhbmVzID0gMSwgLnBsYW5lX2JwcCA9IHsgMTI4IH0sCkBAIC02NjEsNiArNjc2LDE0IEBA IHN0YXRpYyB2b2lkIGNsZWFyX3l1dl9idWZmZXIoc3RydWN0IGlndF9mYiAqZmIpCiAJCXdtZW1z ZXQocHRyICsgZmItPm9mZnNldHNbMV0sIDB4ODAwMDgwMDAsCiAJCQlmYi0+c3RyaWRlc1sxXSAq IGZiLT5wbGFuZV9oZWlnaHRbMV0gLyBzaXplb2Yod2NoYXJfdCkpOwogCQlicmVhazsKKwljYXNl IERSTV9GT1JNQVRfWTIxMDoKKwljYXNlIERSTV9GT1JNQVRfWTIxMjoKKwljYXNlIERSTV9GT1JN QVRfWTIxNjoKKwkJd21lbXNldChwdHIgKyBmYi0+b2Zmc2V0c1swXSwKKwkJCWZ1bGxfcmFuZ2Ug PyAweDgwMDAwMDAwIDogMHg4MDAwMTAwMCwKKwkJCWZiLT5zdHJpZGVzWzBdICogZmItPnBsYW5l X2hlaWdodFswXSAvIHNpemVvZih3Y2hhcl90KSk7CisJCWJyZWFrOworCiAJfQogCiAJaWd0X2Zi X3VubWFwX2J1ZmZlcihmYiwgcHRyKTsKQEAgLTE5MTEsNiArMTkzNCw5IEBAIHN0YXRpYyB2b2lk IGdldF95dXZfcGFyYW1ldGVycyhzdHJ1Y3QgaWd0X2ZiICpmYiwgc3RydWN0IHl1dl9wYXJhbWV0 ZXJzICpwYXJhbXMpCiAJY2FzZSBEUk1fRk9STUFUX1lWWVU6CiAJY2FzZSBEUk1fRk9STUFUX1VZ Vlk6CiAJY2FzZSBEUk1fRk9STUFUX1ZZVVk6CisJY2FzZSBEUk1fRk9STUFUX1kyMTA6CisJY2Fz ZSBEUk1fRk9STUFUX1kyMTI6CisJY2FzZSBEUk1fRk9STUFUX1kyMTY6CiAJCXBhcmFtcy0+eV9p bmMgPSAyOwogCQlwYXJhbXMtPnV2X2luYyA9IDQ7CiAJCWJyZWFrOwpAQCAtMTk0MSw2ICsxOTY3 LDkgQEAgc3RhdGljIHZvaWQgZ2V0X3l1dl9wYXJhbWV0ZXJzKHN0cnVjdCBpZ3RfZmIgKmZiLCBz dHJ1Y3QgeXV2X3BhcmFtZXRlcnMgKnBhcmFtcykKIAljYXNlIERSTV9GT1JNQVRfWVZZVToKIAlj YXNlIERSTV9GT1JNQVRfVVlWWToKIAljYXNlIERSTV9GT1JNQVRfVllVWToKKwljYXNlIERSTV9G T1JNQVRfWTIxMDoKKwljYXNlIERSTV9GT1JNQVRfWTIxMjoKKwljYXNlIERSTV9GT1JNQVRfWTIx NjoKIAljYXNlIERSTV9GT1JNQVRfWFlVVjg4ODg6CiAJCXBhcmFtcy0+eV9zdHJpZGUgPSBmYi0+ c3RyaWRlc1swXTsKIAkJcGFyYW1zLT51dl9zdHJpZGUgPSBmYi0+c3RyaWRlc1swXTsKQEAgLTIw MDgsNiArMjAzNywxNCBAQCBzdGF0aWMgdm9pZCBnZXRfeXV2X3BhcmFtZXRlcnMoc3RydWN0IGln dF9mYiAqZmIsIHN0cnVjdCB5dXZfcGFyYW1ldGVycyAqcGFyYW1zKQogCQlwYXJhbXMtPnZfb2Zm c2V0ID0gZmItPm9mZnNldHNbMF07CiAJCWJyZWFrOwogCisJY2FzZSBEUk1fRk9STUFUX1kyMTA6 CisJY2FzZSBEUk1fRk9STUFUX1kyMTI6CisJY2FzZSBEUk1fRk9STUFUX1kyMTY6CisJCXBhcmFt cy0+eV9vZmZzZXQgPSBmYi0+b2Zmc2V0c1swXTsKKwkJcGFyYW1zLT51X29mZnNldCA9IGZiLT5v ZmZzZXRzWzBdICsgMjsKKwkJcGFyYW1zLT52X29mZnNldCA9IGZiLT5vZmZzZXRzWzBdICsgNjsK KwkJYnJlYWs7CisKIAljYXNlIERSTV9GT1JNQVRfWFlVVjg4ODg6CiAJCXBhcmFtcy0+eV9vZmZz ZXQgPSBmYi0+b2Zmc2V0c1swXSArIDE7CiAJCXBhcmFtcy0+dV9vZmZzZXQgPSBmYi0+b2Zmc2V0 c1swXSArIDI7CkBAIC0yNDIzLDYgKzI0NjAsOSBAQCBzdGF0aWMgdm9pZCBmYl9jb252ZXJ0KHN0 cnVjdCBmYl9jb252ZXJ0ICpjdnQpCiAJCWNhc2UgRFJNX0ZPUk1BVF9QMDEwOgogCQljYXNlIERS TV9GT1JNQVRfUDAxMjoKIAkJY2FzZSBEUk1fRk9STUFUX1AwMTY6CisJCWNhc2UgRFJNX0ZPUk1B VF9ZMjEwOgorCQljYXNlIERSTV9GT1JNQVRfWTIxMjoKKwkJY2FzZSBEUk1fRk9STUFUX1kyMTY6 CiAJCQljb252ZXJ0X3l1djE2X3RvX2Zsb2F0KGN2dCk7CiAJCQlyZXR1cm47CiAJCX0KQEAgLTI0 MzEsNiArMjQ3MSw5IEBAIHN0YXRpYyB2b2lkIGZiX2NvbnZlcnQoc3RydWN0IGZiX2NvbnZlcnQg KmN2dCkKIAkJY2FzZSBEUk1fRk9STUFUX1AwMTA6CiAJCWNhc2UgRFJNX0ZPUk1BVF9QMDEyOgog CQljYXNlIERSTV9GT1JNQVRfUDAxNjoKKwkJY2FzZSBEUk1fRk9STUFUX1kyMTA6CisJCWNhc2Ug RFJNX0ZPUk1BVF9ZMjEyOgorCQljYXNlIERSTV9GT1JNQVRfWTIxNjoKIAkJCWNvbnZlcnRfZmxv YXRfdG9feXV2MTYoY3Z0KTsKIAkJCXJldHVybjsKIAkJfQpAQCAtMjg5Niw2ICsyOTM5LDkgQEAg Ym9vbCBpZ3RfZm9ybWF0X2lzX3l1dih1aW50MzJfdCBkcm1fZm9ybWF0KQogCWNhc2UgRFJNX0ZP Uk1BVF9QMDEwOgogCWNhc2UgRFJNX0ZPUk1BVF9QMDEyOgogCWNhc2UgRFJNX0ZPUk1BVF9QMDE2 OgorCWNhc2UgRFJNX0ZPUk1BVF9ZMjEwOgorCWNhc2UgRFJNX0ZPUk1BVF9ZMjEyOgorCWNhc2Ug RFJNX0ZPUk1BVF9ZMjE2OgogCWNhc2UgRFJNX0ZPUk1BVF9ZVVlWOgogCWNhc2UgRFJNX0ZPUk1B VF9ZVllVOgogCWNhc2UgRFJNX0ZPUk1BVF9VWVZZOgotLSAKMi4yMC4xCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdApp Z3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXY=