From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0CB736E097 for ; Mon, 10 Sep 2018 10:03:22 +0000 (UTC) From: Stanislav Lisovskiy Date: Mon, 10 Sep 2018 13:03:18 +0300 Message-Id: <20180910100318.3747-1-stanislav.lisovskiy@intel.com> Subject: [igt-dev] [PATCH i-g-t v5] 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 ZXJseS4KCnY1OiBGaXhlZCBhIGNvZGluZyB0eXBvLgoKU2lnbmVkLW9mZi1ieTogU3RhbmlzbGF2 IExpc292c2tpeSA8c3RhbmlzbGF2Lmxpc292c2tpeUBpbnRlbC5jb20+Ci0tLQogaW5jbHVkZS9k cm0tdWFwaS9kcm1fZm91cmNjLmggfCAgMSArCiBsaWIvaWd0X2ZiLmMgICAgICAgICAgICAgICAg ICB8IDg5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiAyIGZpbGVzIGNoYW5n ZWQsIDkwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS11YXBpL2RybV9m b3VyY2MuaCBiL2luY2x1ZGUvZHJtLXVhcGkvZHJtX2ZvdXJjYy5oCmluZGV4IGUwNDYxM2QzLi4w YmY2NmRlMiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0tdWFwaS9kcm1fZm91cmNjLmgKKysrIGIv aW5jbHVkZS9kcm0tdWFwaS9kcm1fZm91cmNjLmgKQEAgLTExMiw2ICsxMTIsNyBAQCBleHRlcm4g IkMiIHsKICNkZWZpbmUgRFJNX0ZPUk1BVF9WWVVZCQlmb3VyY2NfY29kZSgnVicsICdZJywgJ1Un LCAnWScpIC8qIFszMTowXSBZMTpDYjA6WTA6Q3IwIDg6ODo4OjggbGl0dGxlIGVuZGlhbiAqLwog CiAjZGVmaW5lIERSTV9GT1JNQVRfQVlVVgkJZm91cmNjX2NvZGUoJ0EnLCAnWScsICdVJywgJ1Yn KSAvKiBbMzE6MF0gQTpZOkNiOkNyIDg6ODo4OjggbGl0dGxlIGVuZGlhbiAqLworI2RlZmluZSBE Uk1fRk9STUFUX1hZVVYJCWZvdXJjY19jb2RlKCdYJywgJ1knLCAnVScsICdWJykgLyogWzMxOjBd IFg6WTpDYjpDciA4Ojg6ODo4IGxpdHRsZSBlbmRpYW4gKi8KIAogLyoKICAqIDIgcGxhbmUgUkdC ICsgQQpkaWZmIC0tZ2l0IGEvbGliL2lndF9mYi5jIGIvbGliL2lndF9mYi5jCmluZGV4IGFlNzFk OTY3Li5iNjBiNzNiNCAxMDA2NDQKLS0tIGEvbGliL2lndF9mYi5jCisrKyBiL2xpYi9pZ3RfZmIu YwpAQCAtNzIsNiArNzIsMTAgQEAgc3RhdGljIHN0cnVjdCBmb3JtYXRfZGVzY19zdHJ1Y3Qgewog CSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjE2XzU2NSwKIAkgIC5udW1fcGxhbmVzID0g MSwgLnBsYW5lX2JwcCA9IHsgMTYsIH0sCiAJfSwKKwl7IC5uYW1lID0gIlhZVVYiLCAuZGVwdGgg PSAyNCwgLmRybV9pZCA9IERSTV9GT1JNQVRfWFlVViwKKwkgIC5jYWlyb19pZCA9IENBSVJPX0ZP Uk1BVF9SR0IyNCwKKwkgIC5udW1fcGxhbmVzID0gMSwgLnBsYW5lX2JwcCA9IHsgMzIsIH0sCisJ fSwKIAl7IC5uYW1lID0gIlhSR0I4ODg4IiwgLmRlcHRoID0gMjQsIC5kcm1faWQgPSBEUk1fRk9S TUFUX1hSR0I4ODg4LAogCSAgLmNhaXJvX2lkID0gQ0FJUk9fRk9STUFUX1JHQjI0LAogCSAgLm51 bV9wbGFuZXMgPSAxLCAucGxhbmVfYnBwID0geyAzMiwgfSwKQEAgLTQxNSw2ICs0MTksMTAgQEAg c3RhdGljIGludCBjcmVhdGVfYm9fZm9yX2ZiKGludCBmZCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0 LAogCQkJCW1lbXNldChwdHIgKyBvZmZzZXRzWzFdLCAweDgwLAogCQkJCSAgICAgICBjYWxjdWxh dGVkX3N0cmlkZSAqIGhlaWdodC8yKTsKIAkJCQlicmVhazsKKwkJCWNhc2UgRFJNX0ZPUk1BVF9Y WVVWOgorCQkJCXdtZW1zZXQocHRyLCBmdWxsX3JhbmdlID8gMHgwMDBmODA4MCA6IDB4MDAwZjgw ODAsCisJCQkJCWNhbGN1bGF0ZWRfc3RyaWRlICogaGVpZ2h0IC8gc2l6ZW9mKHdjaGFyX3QpKTsK KwkJCQlicmVhazsKIAkJCWNhc2UgRFJNX0ZPUk1BVF9ZVVlWOgogCQkJY2FzZSBEUk1fRk9STUFU X1lWWVU6CiAJCQkJd21lbXNldChwdHIsIGZ1bGxfcmFuZ2UgPyAweDgwMDA4MDAwIDogMHg4MDEw ODAxMCwKQEAgLTE1MDAsNiArMTUwOCw3OSBAQCBzdGF0aWMgdm9pZCBjb252ZXJ0X252MTJfdG9f cmdiMjQoc3RydWN0IGlndF9mYiAqZmIsIHN0cnVjdCBmYl9jb252ZXJ0X2JsaXRfdXBsbwogCWZy ZWUoYnVmKTsKIH0KIAorc3RhdGljIHZvaWQgY29udmVydF95dXY0NDRfdG9fcmdiMjQoc3RydWN0 IGlndF9mYiAqZmIsIHN0cnVjdCBmYl9jb252ZXJ0X2JsaXRfdXBsb2FkICpibGl0KQoreworCWlu dCBpLCBqOworCXVpbnQ4X3QgKnl1djI0OworCXVpbnQ4X3QgKnJnYjI0ID0gYmxpdC0+cmdiMjQu bWFwOworCXVuc2lnbmVkIHJnYjI0X3N0cmlkZSA9IGJsaXQtPnJnYjI0LnN0cmlkZSwgcGxhbmFy X3N0cmlkZSA9IGJsaXQtPmxpbmVhci5zdHJpZGU7CisJdWludDhfdCAqYnVmID0gbWFsbG9jKGJs aXQtPmxpbmVhci5zaXplKTsKKwlzdHJ1Y3QgaWd0X21hdDQgbSA9IGlndF95Y2Jjcl90b19yZ2Jf bWF0cml4KGZiLT5jb2xvcl9lbmNvZGluZywKKwkJCQkJCSAgICBmYi0+Y29sb3JfcmFuZ2UpOwor CisJLyoKKwkgKiBSZWFkaW5nIGZyb20gdGhlIEJPIGlzIGF3ZnVsbHkgc2xvdyBiZWNhdXNlIG9m IGxhY2sgb2YgcmVhZCBjYWNoaW5nLAorCSAqIGl0J3MgZmFzdGVyIHRvIGNvcHkgdGhlIHdob2xl IEJPIHRvIGEgdGVtcG9yYXJ5IGJ1ZmZlciBhbmQgY29udmVydAorCSAqIGZyb20gdGhlcmUuCisJ ICovCisJaWd0X21lbWNweV9mcm9tX3djKGJ1ZiwgYmxpdC0+bGluZWFyLm1hcCwgYmxpdC0+bGlu ZWFyLnNpemUpOworCXl1djI0ID0gJmJ1ZltibGl0LT5saW5lYXIub2Zmc2V0c1swXV07CisKKwlm b3IgKGkgPSAwOyBpIDwgZmItPnBsYW5lX2hlaWdodFswXTsgaSsrKSB7CisJCWZvciAoaiA9IDA7 IGogPCBmYi0+cGxhbmVfd2lkdGhbMF07IGorKykgeworCQkJZmxvYXQgeSwgdSwgdjsKKwkJCXN0 cnVjdCBpZ3RfdmVjNCB5dXY7CisJCQlzdHJ1Y3QgaWd0X3ZlYzQgcmdiOworCisJCQl2ID0geXV2 MjRbaSAqIHBsYW5hcl9zdHJpZGUgKyBqKnNpemVvZih1aW50MzJfdCldOworCQkJdSA9IHl1djI0 W2kgKiBwbGFuYXJfc3RyaWRlICsgaipzaXplb2YodWludDMyX3QpICsgMV07CisJCQl5ID0geXV2 MjRbaSAqIHBsYW5hcl9zdHJpZGUgKyBqKnNpemVvZih1aW50MzJfdCkgKyAyXTsKKwkJCXl1di5k WzBdID0geTsKKwkJCXl1di5kWzFdID0gdTsKKwkJCXl1di5kWzJdID0gdjsKKwkJCXl1di5kWzNd ID0gMS4wZjsKKworCQkJcmdiID0gaWd0X21hdHJpeF90cmFuc2Zvcm0oJm0sICZ5dXYpOworCisJ CQl3cml0ZV9yZ2IoJnJnYjI0W2kgKiByZ2IyNF9zdHJpZGUgKyBqKnNpemVvZih1aW50MzJfdCld LCAmcmdiKTsKKwkJfQorCX0KKworCWZyZWUoYnVmKTsKK30KKworCitzdGF0aWMgdm9pZCBjb252 ZXJ0X3JnYjI0X3RvX3l1djQ0NChzdHJ1Y3QgaWd0X2ZiICpmYiwgc3RydWN0IGZiX2NvbnZlcnRf YmxpdF91cGxvYWQgKmJsaXQpCit7CisJaW50IGksIGo7CisJdWludDhfdCAqcmdiMjQ7CisJdWlu dDhfdCAqeXV2NDQ0ID0gYmxpdC0+bGluZWFyLm1hcDsKKwl1bnNpZ25lZCByZ2IyNF9zdHJpZGUg PSBibGl0LT5yZ2IyNC5zdHJpZGUsIHBsYW5hcl9zdHJpZGUgPSBibGl0LT5saW5lYXIuc3RyaWRl OworCXN0cnVjdCBpZ3RfbWF0NCBtID0gaWd0X3JnYl90b195Y2Jjcl9tYXRyaXgoZmItPmNvbG9y X2VuY29kaW5nLAorCQkJCQkJICAgIGZiLT5jb2xvcl9yYW5nZSk7CisKKwlyZ2IyNCA9IGJsaXQt PnJnYjI0Lm1hcDsKKworCWZvciAoaSA9IDA7IGkgPCBmYi0+cGxhbmVfaGVpZ2h0WzBdOyBpKysp IHsKKwkJZm9yIChqID0gMDsgaiA8IGZiLT5wbGFuZV93aWR0aFswXTsgaisrKSB7CisJCQlzdHJ1 Y3QgaWd0X3ZlYzQgcmdiOworCQkJc3RydWN0IGlndF92ZWM0IHl1djsKKwkJCWZsb2F0IHksIHUs IHY7CisKKwkJCXJlYWRfcmdiKCZyZ2IsICZyZ2IyNFtpICogcmdiMjRfc3RyaWRlICsgaipzaXpl b2YodWludDMyX3QpXSk7CisKKwkJCXl1diA9IGlndF9tYXRyaXhfdHJhbnNmb3JtKCZtLCAmcmdi KTsKKworCQkJeXV2NDQ0W2kgKiBwbGFuYXJfc3RyaWRlICsgaipzaXplb2YodWludDMyX3QpXSA9 IHl1di5kWzJdOworCQkJeXV2NDQ0W2kgKiBwbGFuYXJfc3RyaWRlICsgaipzaXplb2YodWludDMy X3QpICsgMV0gPSB5dXYuZFsxXTsKKwkJCXl1djQ0NFtpICogcGxhbmFyX3N0cmlkZSArIGoqc2l6 ZW9mKHVpbnQzMl90KSArIDJdID0geXV2LmRbMF07CisJCX0KKwl9Cit9CisKKworCisKIHN0YXRp YyB2b2lkIGNvbnZlcnRfcmdiMjRfdG9fbnYxMihzdHJ1Y3QgaWd0X2ZiICpmYiwgc3RydWN0IGZi X2NvbnZlcnRfYmxpdF91cGxvYWQgKmJsaXQpCiB7CiAJaW50IGksIGo7CkBAIC0xNzU2LDYgKzE4 MzcsOSBAQCBzdGF0aWMgdm9pZCBkZXN0cm95X2NhaXJvX3N1cmZhY2VfX2NvbnZlcnQodm9pZCAq YXJnKQogCWNhc2UgRFJNX0ZPUk1BVF9WWVVZOgogCQljb252ZXJ0X3JnYjI0X3RvX3l1eXYoZmIs IGJsaXQsIHl1eXZfc3dpenpsZShmYi0+ZHJtX2Zvcm1hdCkpOwogCQlicmVhazsKKwljYXNlIERS TV9GT1JNQVRfWFlVVjoKKwkJY29udmVydF9yZ2IyNF90b195dXY0NDQoZmIsIGJsaXQpOworCQli cmVhazsKIAlkZWZhdWx0OgogCQlpZ3RfYXNzZXJ0X2YoZmFsc2UsICJDb252ZXJzaW9uIG5vdCBp bXBsZW1lbnRlZCBmb3IgZm9ybWF0cyAweCV4XG4iLAogCQkJICAgICBmYi0+ZHJtX2Zvcm1hdCk7 CkBAIC0xODA5LDYgKzE4OTMsOSBAQCBzdGF0aWMgdm9pZCBjcmVhdGVfY2Fpcm9fc3VyZmFjZV9f Y29udmVydChpbnQgZmQsIHN0cnVjdCBpZ3RfZmIgKmZiKQogCWNhc2UgRFJNX0ZPUk1BVF9WWVVZ OgogCQljb252ZXJ0X3l1eXZfdG9fcmdiMjQoZmIsIGJsaXQsIHl1eXZfc3dpenpsZShmYi0+ZHJt X2Zvcm1hdCkpOwogCQlicmVhazsKKwljYXNlIERSTV9GT1JNQVRfWFlVVjoKKwkJY29udmVydF95 dXY0NDRfdG9fcmdiMjQoZmIsIGJsaXQpOworCQlicmVhazsKIAlkZWZhdWx0OgogCQlpZ3RfYXNz ZXJ0X2YoZmFsc2UsICJDb252ZXJzaW9uIG5vdCBpbXBsZW1lbnRlZCBmb3IgZm9ybWF0cyAweCV4 XG4iLAogCQkJICAgICBmYi0+ZHJtX2Zvcm1hdCk7CkBAIC0xODI1LDYgKzE5MTIsNyBAQCBzdGF0 aWMgdm9pZCBjcmVhdGVfY2Fpcm9fc3VyZmFjZV9fY29udmVydChpbnQgZmQsIHN0cnVjdCBpZ3Rf ZmIgKmZiKQogCQkJCSAgICBibGl0LCBkZXN0cm95X2NhaXJvX3N1cmZhY2VfX2NvbnZlcnQpOwog fQogCisKIC8qKgogICogaWd0X2dldF9jYWlyb19zdXJmYWNlOgogICogQGZkOiBvcGVuIGRybSBm aWxlIGRlc2NyaXB0b3IKQEAgLTIwMTEsNiArMjA5OSw3IEBAIGJvb2wgaWd0X2Zvcm1hdF9pc195 dXYodWludDMyX3QgZHJtX2Zvcm1hdCkKIAljYXNlIERSTV9GT1JNQVRfWVZZVToKIAljYXNlIERS TV9GT1JNQVRfVVlWWToKIAljYXNlIERSTV9GT1JNQVRfVllVWToKKwljYXNlIERSTV9GT1JNQVRf WFlVVjoKIAkJcmV0dXJuIHRydWU7CiAJZGVmYXVsdDoKIAkJcmV0dXJuIGZhbHNlOwotLSAKMi4x Ny4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3Qt ZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXYK