From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2B04C6E4E9 for ; Mon, 17 Dec 2018 14:30:23 +0000 (UTC) From: Stanislav Lisovskiy Date: Mon, 17 Dec 2018 16:30:28 +0200 Message-Id: <20181217143028.19331-1-stanislav.lisovskiy@intel.com> Subject: [igt-dev] [PATCH i-g-t v13] lib/igt_fb: Added XYUV format support for testing List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 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: stanislav.lisovskiy@intel.com, ville.syrjala@intel.com, martin.peres@intel.com List-ID: WFlVViBmb3JtYXQgc3VwcG9ydCBoYXMgYmVlbiBhZGRlZCB0byBEUk0sIG1vZGlmaWVkCklHVCB0 byByZWZsZWN0IHRob3NlIGNoYW5nZXMuCgp2MjogRml4ZWQgbWVyZ2UgY29uZmxpY3QsIHN0YXJ0 ZWQgdG8gdXNlIG5ldyB5dXY8PT5yZ2IKICAgIGNvbnZlcnNpb24gZnVuY3Rpb25zLgoKdjM6IEZp eGVkIGttc19hdmFpbGFibGVfbW9kZXNfY3JjIHRlc3QgdG8gc3VwcG9ydCBuZXcgWFlVVgogICAg Zm9ybWF0LiBGaXhlZCBhIHByb2JsZW0sIHdoZXJlIHRlc3QgY29tcGxhaW5zIHRoYXQgdHdvCiAg ICBvdXRwdXRzIG1pZ2h0IHVzZSBzYW1lIHBpcGUgYXQgdGhlIHNhbWUgdGltZS4KCnY0OiBGaXhl ZCBjb252ZXJ0aW9uIHByb2NlZHVyZSBpbiBpZ3RfZmIgdG8gc3VwcG9ydCBYWVVWCiAgICBwcm9w ZXJseS4KCnY1OiBGaXhlZCBhIGNvZGluZyB0eXBvLgoKdjY6IFNldCBkZXB0aCBlcXVhbCB0byAt MSBmb3IgWFlVViBmb3JtYXQgaW4gb3JkZXIgdG8gcHJldmVudAogICAgaXQgdG8gYmUgdXNlZCBi eSBpZ3RfYnBwX2RlcHRoX3RvX2RybV9mb3JtYXQsIGFzIHdlIGRvIG5vdAogICAgd2FudCBZVVYg Zm9ybWF0cyB0byBiZSB1c2VkIGluIHRoYXQgY2FzZS4KCnY3OiBGaXggImJsYWNrIiBjb2xvciBp bml0aWFsaXphdGlvbiBmb3IgY3JlYXRlX2JvX2Zvcl9mYiB3aXRoCiAgICBwcm9wZXIgdmFsdWUu IENoYW5nZWQgbmFtaW5nICJwbGFuYXJfc3RyaWRlIiB0byAieHl1dl9zdHJpZGUiLgoKdjg6IENo YW5nZSBuYW1pbmcgZnJvbSBEUk1fRk9STUFUX1hZVVYgdG8gRFJNX0ZPUk1BVF9YWVVWODg4OAoK djk6IEZpeGVkIGNvbXBpbGF0aW9uIGVycm9ycyBieSByZWJhc2luZyB0byByZWNlbnQgbWFzdGVy LgoKdjEwOiBBZGRpbmcgcmVmZXJlbmNlIHRvIGNvcnJlc3BvbmRlbnQga2VybmVsIGNvbW1pdCB3 aXRoIHRoZSBuZXcgZm9ybWF0CiAgICAgaW4gaW5jbHVkZS9kcm0tdWFwaQoKdjExOiBSZW1vdmVk IHVubmVjZXNzYXJ5IHNpemVvZidzIGluIHJnYiA8PT4geXV2NDQ0IGNvbnZlcnQgZnVuY3Rpb25z LgoKdjEyOiBSZWJhc2VkIGFnYWluc3QgbWFzdGVyIGJyYW5jaCwgZml4ZWQgcmViYXNlIGNvbmZs aWN0IGNhdXNlZCBieQogICAgIG5ldyBmYl9jb252ZXJ0IGZ1bmN0aW9ucy4gUmVtb3ZlZCBkcm0g a2VybmVsIGNvbW1pdCByZWZlcmVuY2UKICAgICBhcyBpdCBpcyBzdGlsbCBub3QgbWVyZ2VkLCBz byBkb2Vzbid0IG1ha2Ugc2Vuc2UgdG8gdXNlIGl0LgoKdjEzOiBSZXNvbHZlZCBvbmUgbW9yZSBy ZWJhc2UgY29uZmxpY3QuCgpTaWduZWQtb2ZmLWJ5OiBTdGFuaXNsYXYgTGlzb3Zza2l5IDxzdGFu aXNsYXYubGlzb3Zza2l5QGludGVsLmNvbT4KLS0tCiBpbmNsdWRlL2RybS11YXBpL2RybV9mb3Vy Y2MuaCB8ICAyICstCiBsaWIvaWd0X2ZiLmMgICAgICAgICAgICAgICAgICB8IDg5ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDkwIGluc2VydGlv bnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS11YXBpL2RybV9m b3VyY2MuaCBiL2luY2x1ZGUvZHJtLXVhcGkvZHJtX2ZvdXJjYy5oCmluZGV4IDBiNDQyNjBhLi40 ZGRmNzU0YiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0tdWFwaS9kcm1fZm91cmNjLmgKKysrIGIv aW5jbHVkZS9kcm0tdWFwaS9kcm1fZm91cmNjLmgKQEAgLTE1MSw3ICsxNTEsNyBAQCBleHRlcm4g IkMiIHsKICNkZWZpbmUgRFJNX0ZPUk1BVF9WWVVZCQlmb3VyY2NfY29kZSgnVicsICdZJywgJ1Un LCAnWScpIC8qIFszMTowXSBZMTpDYjA6WTA6Q3IwIDg6ODo4OjggbGl0dGxlIGVuZGlhbiAqLwog CiAjZGVmaW5lIERSTV9GT1JNQVRfQVlVVgkJZm91cmNjX2NvZGUoJ0EnLCAnWScsICdVJywgJ1Yn KSAvKiBbMzE6MF0gQTpZOkNiOkNyIDg6ODo4OjggbGl0dGxlIGVuZGlhbiAqLwotI2RlZmluZSBE Uk1fRk9STUFUX1hZVVY4ODg4CQlmb3VyY2NfY29kZSgnWCcsICdZJywgJ1UnLCAnVicpIC8qIFsz MTowXSBYOlk6Q2I6Q3IgODo4Ojg6OCBsaXR0bGUgZW5kaWFuICovCisjZGVmaW5lIERSTV9GT1JN QVRfWFlVVjg4ODgJZm91cmNjX2NvZGUoJ1gnLCAnWScsICdVJywgJ1YnKSAvKiBbMzE6MF0gWDpZ OkNiOkNyIDg6ODo4OjggbGl0dGxlIGVuZGlhbiAqLwogCiAvKgogICogcGFja2VkIFlDYkNyNDIw IDJ4MiB0aWxlZCBmb3JtYXRzCmRpZmYgLS1naXQgYS9saWIvaWd0X2ZiLmMgYi9saWIvaWd0X2Zi LmMKaW5kZXggMjQ2MmQ2YmEuLjU3MjY0ODQ0IDEwMDY0NAotLS0gYS9saWIvaWd0X2ZiLmMKKysr IGIvbGliL2lndF9mYi5jCkBAIC0xMDIsNiArMTAyLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg Zm9ybWF0X2Rlc2Nfc3RydWN0IHsKIAkgIC5waXhtYW5faWQgPSBQSVhNQU5fcjhnOGI4LAogCSAg Lm51bV9wbGFuZXMgPSAxLCAucGxhbmVfYnBwID0geyAyNCwgfSwKIAl9LAorCXsgLm5hbWUgPSAi WFlVVjg4ODgiLCAuZGVwdGggPSAtMSwgLmRybV9pZCA9IERSTV9GT1JNQVRfWFlVVjg4ODgsCisJ ICAuY2Fpcm9faWQgPSBDQUlST19GT1JNQVRfUkdCMjQsCisJICAubnVtX3BsYW5lcyA9IDEsIC5w bGFuZV9icHAgPSB7IDMyLCB9LAorCX0sCiAJeyAubmFtZSA9ICJYUkdCODg4OCIsIC5kZXB0aCA9 IDI0LCAuZHJtX2lkID0gRFJNX0ZPUk1BVF9YUkdCODg4OCwKIAkgIC5jYWlyb19pZCA9IENBSVJP X0ZPUk1BVF9SR0IyNCwKIAkgIC5waXhtYW5faWQgPSBQSVhNQU5feDhyOGc4YjgsCkBAIC00OTYs NiArNTAwLDEwIEBAIHN0YXRpYyBpbnQgY3JlYXRlX2JvX2Zvcl9mYihzdHJ1Y3QgaWd0X2ZiICpm YikKIAkJCQkgICAgICAgMHg4MCwKIAkJCQkgICAgICAgZmItPnN0cmlkZXNbMV0gKiBmYi0+cGxh bmVfaGVpZ2h0WzFdKTsKIAkJCQlicmVhazsKKwkJCWNhc2UgRFJNX0ZPUk1BVF9YWVVWODg4ODoK KwkJCQl3bWVtc2V0KHB0ciArIGZiLT5vZmZzZXRzWzBdLCBmdWxsX3JhbmdlID8gMHgwMDAwODA4 MCA6IDB4MDAxMDgwODAsCisJCQkJCWZiLT5zdHJpZGVzWzBdICogZmItPnBsYW5lX2hlaWdodFsw XSAvIHNpemVvZih3Y2hhcl90KSk7CisJCQkJYnJlYWs7CiAJCQljYXNlIERSTV9GT1JNQVRfWVVZ VjoKIAkJCWNhc2UgRFJNX0ZPUk1BVF9ZVllVOgogCQkJCXdtZW1zZXQocHRyICsgZmItPm9mZnNl dHNbMF0sCkBAIC0xNjQ5LDYgKzE2NTcsNzkgQEAgc3RhdGljIHZvaWQgY29udmVydF9udjEyX3Rv X3JnYjI0KHN0cnVjdCBmYl9jb252ZXJ0ICpjdnQpCiAJY29udmVydF9zcmNfcHV0KGN2dCwgYnVm KTsKIH0KIAorc3RhdGljIHZvaWQgY29udmVydF95dXY0NDRfdG9fcmdiMjQoc3RydWN0IGZiX2Nv bnZlcnQgKmN2dCkKK3sKKwlpbnQgaSwgajsKKwl1aW50OF90ICp5dXYyNDsKKwl1aW50OF90ICpy Z2IyNCA9IGN2dC0+ZHN0LnB0cjsKKwl1bnNpZ25lZCByZ2IyNF9zdHJpZGUgPSBjdnQtPmRzdC5m Yi0+c3RyaWRlc1swXSwgeHl1dl9zdHJpZGUgPSBjdnQtPnNyYy5mYi0+c3RyaWRlc1swXTsKKwl1 aW50OF90ICpidWYgPSBtYWxsb2MoY3Z0LT5zcmMuZmItPnNpemUpOworCXN0cnVjdCBpZ3RfbWF0 NCBtID0gaWd0X3ljYmNyX3RvX3JnYl9tYXRyaXgoY3Z0LT5zcmMuZmItPmNvbG9yX2VuY29kaW5n LAorCQkJCQkJICAgIGN2dC0+c3JjLmZiLT5jb2xvcl9yYW5nZSk7CisKKwkvKgorCSAqIFJlYWRp bmcgZnJvbSB0aGUgQk8gaXMgYXdmdWxseSBzbG93IGJlY2F1c2Ugb2YgbGFjayBvZiByZWFkIGNh Y2hpbmcsCisJICogaXQncyBmYXN0ZXIgdG8gY29weSB0aGUgd2hvbGUgQk8gdG8gYSB0ZW1wb3Jh cnkgYnVmZmVyIGFuZCBjb252ZXJ0CisJICogZnJvbSB0aGVyZS4KKwkgKi8KKwlpZ3RfbWVtY3B5 X2Zyb21fd2MoYnVmLCBjdnQtPnNyYy5wdHIgKyBjdnQtPnNyYy5mYi0+b2Zmc2V0c1swXSwgY3Z0 LT5zcmMuZmItPnNpemUpOworCXl1djI0ID0gYnVmOworCisJZm9yIChpID0gMDsgaSA8IGN2dC0+ ZHN0LmZiLT5oZWlnaHQ7IGkrKykgeworCQlmb3IgKGogPSAwOyBqIDwgY3Z0LT5kc3QuZmItPndp ZHRoOyBqKyspIHsKKwkJCWZsb2F0IHksIHUsIHY7CisJCQlzdHJ1Y3QgaWd0X3ZlYzQgeXV2Owor CQkJc3RydWN0IGlndF92ZWM0IHJnYjsKKworCQkJdiA9IHl1djI0W2kgKiB4eXV2X3N0cmlkZSAr IGogKiA0XTsKKwkJCXUgPSB5dXYyNFtpICogeHl1dl9zdHJpZGUgKyBqICogNCArIDFdOworCQkJ eSA9IHl1djI0W2kgKiB4eXV2X3N0cmlkZSArIGogKiA0ICsgMl07CisJCQl5dXYuZFswXSA9IHk7 CisJCQl5dXYuZFsxXSA9IHU7CisJCQl5dXYuZFsyXSA9IHY7CisJCQl5dXYuZFszXSA9IDEuMGY7 CisKKwkJCXJnYiA9IGlndF9tYXRyaXhfdHJhbnNmb3JtKCZtLCAmeXV2KTsKKworCQkJd3JpdGVf cmdiKCZyZ2IyNFtpICogcmdiMjRfc3RyaWRlICsgaiAqIDRdLCAmcmdiKTsKKwkJfQorCX0KKwor CWZyZWUoYnVmKTsKK30KKworCitzdGF0aWMgdm9pZCBjb252ZXJ0X3JnYjI0X3RvX3l1djQ0NChz dHJ1Y3QgZmJfY29udmVydCAqY3Z0KQoreworCWludCBpLCBqOworCXVpbnQ4X3QgKnJnYjI0Owor CXVpbnQ4X3QgKnl1djQ0NCA9IGN2dC0+ZHN0LnB0ciArIGN2dC0+ZHN0LmZiLT5vZmZzZXRzWzBd OworCXVuc2lnbmVkIGludCByZ2IyNF9zdHJpZGUgPSBjdnQtPnNyYy5mYi0+c3RyaWRlc1swXSwg eHl1dl9zdHJpZGUgPSBjdnQtPmRzdC5mYi0+c3RyaWRlc1swXTsKKwlzdHJ1Y3QgaWd0X21hdDQg bSA9IGlndF9yZ2JfdG9feWNiY3JfbWF0cml4KGN2dC0+ZHN0LmZiLT5jb2xvcl9lbmNvZGluZywK KwkJCQkJCSAgICBjdnQtPmRzdC5mYi0+Y29sb3JfcmFuZ2UpOworCisJcmdiMjQgPSBjdnQtPnNy Yy5wdHI7CisKKwlpZ3RfYXNzZXJ0X2YoY3Z0LT5kc3QuZmItPmRybV9mb3JtYXQgPT0gRFJNX0ZP Uk1BVF9YWVVWODg4OCwKKwkJICAgICAiQ29udmVyc2lvbiBub3QgaW1wbGVtZW50ZWQgZm9yICFY WVVWIHBhY2tlZCBmb3JtYXRzXG4iKTsKKworCWZvciAoaSA9IDA7IGkgPCBjdnQtPmRzdC5mYi0+ aGVpZ2h0OyBpKyspIHsKKwkJZm9yIChqID0gMDsgaiA8IGN2dC0+ZHN0LmZiLT53aWR0aDsgaisr KSB7CisJCQlzdHJ1Y3QgaWd0X3ZlYzQgcmdiOworCQkJc3RydWN0IGlndF92ZWM0IHl1djsKKwkJ CWZsb2F0IHksIHUsIHY7CisKKwkJCXJlYWRfcmdiKCZyZ2IsICZyZ2IyNFtpICogcmdiMjRfc3Ry aWRlICsgaiAqIDRdKTsKKworCQkJeXV2ID0gaWd0X21hdHJpeF90cmFuc2Zvcm0oJm0sICZyZ2Ip OworCisJCQl5dXY0NDRbaSAqIHh5dXZfc3RyaWRlICsgaiAqIDRdID0geXV2LmRbMl07CisJCQl5 dXY0NDRbaSAqIHh5dXZfc3RyaWRlICsgaiAqIDQgKyAxXSA9IHl1di5kWzFdOworCQkJeXV2NDQ0 W2kgKiB4eXV2X3N0cmlkZSArIGogKiA0ICsgMl0gPSB5dXYuZFswXTsKKwkJfQorCX0KK30KKwog c3RhdGljIHZvaWQgY29udmVydF9yZ2IyNF90b19udjEyKHN0cnVjdCBmYl9jb252ZXJ0ICpjdnQp CiB7CiAJaW50IGksIGo7CkBAIC0xOTM0LDYgKzIwMTUsOSBAQCBzdGF0aWMgdm9pZCBmYl9jb252 ZXJ0KHN0cnVjdCBmYl9jb252ZXJ0ICpjdnQpCiAJCXJldHVybjsKIAl9IGVsc2UgaWYgKGN2dC0+ ZHN0LmZiLT5kcm1fZm9ybWF0ID09IERSTV9GT1JNQVRfWFJHQjg4ODgpIHsKIAkJc3dpdGNoIChj dnQtPnNyYy5mYi0+ZHJtX2Zvcm1hdCkgeworCQljYXNlIERSTV9GT1JNQVRfWFlVVjg4ODg6CisJ CQljb252ZXJ0X3l1djQ0NF90b19yZ2IyNChjdnQpOworCQkJcmV0dXJuOwogCQljYXNlIERSTV9G T1JNQVRfTlYxMjoKIAkJCWNvbnZlcnRfbnYxMl90b19yZ2IyNChjdnQpOwogCQkJcmV0dXJuOwpA QCAtMTk0Niw2ICsyMDMwLDkgQEAgc3RhdGljIHZvaWQgZmJfY29udmVydChzdHJ1Y3QgZmJfY29u dmVydCAqY3Z0KQogCQl9CiAJfSBlbHNlIGlmIChjdnQtPnNyYy5mYi0+ZHJtX2Zvcm1hdCA9PSBE Uk1fRk9STUFUX1hSR0I4ODg4KSB7CiAJCXN3aXRjaCAoY3Z0LT5kc3QuZmItPmRybV9mb3JtYXQp IHsKKwkJY2FzZSBEUk1fRk9STUFUX1hZVVY4ODg4OgorCQkJY29udmVydF9yZ2IyNF90b195dXY0 NDQoY3Z0KTsKKwkJCXJldHVybjsKIAkJY2FzZSBEUk1fRk9STUFUX05WMTI6CiAJCQljb252ZXJ0 X3JnYjI0X3RvX252MTIoY3Z0KTsKIAkJCXJldHVybjsKQEAgLTIwMzcsNiArMjEyNCw3IEBAIHN0 YXRpYyB2b2lkIGNyZWF0ZV9jYWlyb19zdXJmYWNlX19jb252ZXJ0KGludCBmZCwgc3RydWN0IGln dF9mYiAqZmIpCiAJCQkJICAgIGJsaXQsIGRlc3Ryb3lfY2Fpcm9fc3VyZmFjZV9fY29udmVydCk7 CiB9CiAKKwogLyoqCiAgKiBpZ3RfZmJfbWFwX2J1ZmZlcjoKICAqIEBmZDogb3BlbiBkcm0gZmls ZSBkZXNjcmlwdG9yCkBAIC0yMzAyLDYgKzIzOTAsNyBAQCBib29sIGlndF9mb3JtYXRfaXNfeXV2 KHVpbnQzMl90IGRybV9mb3JtYXQpCiAJY2FzZSBEUk1fRk9STUFUX1lWWVU6CiAJY2FzZSBEUk1f Rk9STUFUX1VZVlk6CiAJY2FzZSBEUk1fRk9STUFUX1ZZVVk6CisJY2FzZSBEUk1fRk9STUFUX1hZ VVY4ODg4OgogCQlyZXR1cm4gdHJ1ZTsKIAlkZWZhdWx0OgogCQlyZXR1cm4gZmFsc2U7Ci0tIAoy LjE3LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmln dC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldgo=