From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH i-g-t v2 6/9] tests/kms_plane_scaling: test scaling with tiling rotation and pixel formats, v2. Date: Fri, 12 Jan 2018 11:21:13 +0100 Message-ID: <20180112102116.4670-7-maarten.lankhorst@linux.intel.com> References: <20180112102116.4670-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [141.105.120.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id A1B5F6E730 for ; Fri, 12 Jan 2018 12:48:48 +0000 (UTC) In-Reply-To: <20180112102116.4670-1-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Vidya Srinivas List-Id: intel-gfx@lists.freedesktop.org RnJvbTogSnlvdGkgWWFkYXYgPGp5b3RpLnIueWFkYXZAaW50ZWwuY29tPgoKVGhpcyBwYXRjaCBh ZGRzIHN1YnRlc3QgZm9yIHRlc3Rpbmcgc2NhbGluZyBpbiBjb21iaW5hdGlvbiB3aXRoIHJvdGF0 aW9uCmFuZCBwaXhlbCBmb3JtYXRzLgoKQ2hhbmdlcyBzaW5jZSB2MToKLSBSZXdvcmsgdGVzdCB0 byB3b3JrIHdpdGggdGhlIG90aGVyIGNoYW5nZXMgdG8ga21zX3BsYW5lX3NjYWxpbmcuIChNYWFy dGVuKQotIFJlbW92ZSBoYXJkY29kZXMgZm9yIE1JTi9NQVhfU1JDX1dJRFRILCBhbmQgdXNlIHRo ZSB2YWx1ZSBkaXJlY3RseS4gKE1hYXJ0ZW4pCgpTaWduZWQtb2ZmLWJ5OiBKeW90aSBZYWRhdiA8 anlvdGkuci55YWRhdkBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1haGVzaCBLdW1hciA8bWFo ZXNoMS5rdW1hckBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IFZpZHlhIFNyaW5pdmFzIDx2aWR5 YS5zcmluaXZhc0BpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxt YWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Ci0tLQogdGVzdHMva21zX3BsYW5lX3Nj YWxpbmcuYyB8IDE2MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KystCiAxIGZpbGUgY2hhbmdlZCwgMTYwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS90ZXN0cy9rbXNfcGxhbmVfc2NhbGluZy5jIGIvdGVzdHMva21zX3BsYW5lX3Nj YWxpbmcuYwppbmRleCA0NGZmOTFkNzczOGYuLjgyMWQwYTljODgzYiAxMDA2NDQKLS0tIGEvdGVz dHMva21zX3BsYW5lX3NjYWxpbmcuYworKysgYi90ZXN0cy9rbXNfcGxhbmVfc2NhbGluZy5jCkBA IC00OCwxMCArNDgsNTUgQEAgdHlwZWRlZiBzdHJ1Y3QgewogCiAjZGVmaW5lIEZJTEVfTkFNRSAg ICIxMDgwcC1sZWZ0LnBuZyIKIAorI2RlZmluZSBNQVhfUk9UQVRJT04JNAorc3RhdGljIGlndF9y b3RhdGlvbl90IGdldF9yb3RhdGlvbl9hbmdsZShpbnQgcm90KQoreworCXN3aXRjaCAocm90KSB7 CisJY2FzZSAwOgorCQlyZXR1cm4gSUdUX1JPVEFUSU9OXzA7CisJCWJyZWFrOworCWNhc2UgMToK KwkJcmV0dXJuIElHVF9ST1RBVElPTl85MDsKKwkJYnJlYWs7CisJY2FzZSAyOgorCQlyZXR1cm4g SUdUX1JPVEFUSU9OXzE4MDsKKwkJYnJlYWs7CisJY2FzZSAzOgorCQlyZXR1cm4gSUdUX1JPVEFU SU9OXzI3MDsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJaWd0X2luZm8oIlVua25vd24vVW5zdXBw b3J0ZWQgUm90YXRpb24gJWRcbiIsIHJvdCk7CisJCXJldHVybiBJR1RfUk9UQVRJT05fMDsKKwl9 Cit9CisKKyNkZWZpbmUgTUFYX1RJTElORwk0CitzdGF0aWMgdWludDY0X3QgZ2V0X3RpbGluZyhp bnQgdGlsaW5nKQoreworCXN3aXRjaCAodGlsaW5nKSB7CisJY2FzZSAwOgorCQlyZXR1cm4gTE9D QUxfRFJNX0ZPUk1BVF9NT0RfTk9ORTsKKwkJYnJlYWs7CisJY2FzZSAxOgorCQlyZXR1cm4gTE9D QUxfSTkxNV9GT1JNQVRfTU9EX1hfVElMRUQ7CisJCWJyZWFrOworCWNhc2UgMjoKKwkJcmV0dXJu IExPQ0FMX0k5MTVfRk9STUFUX01PRF9ZX1RJTEVEOworCQlicmVhazsKKwljYXNlIDM6CisJCXJl dHVybiBMT0NBTF9JOTE1X0ZPUk1BVF9NT0RfWWZfVElMRUQ7CisJCWJyZWFrOworCWRlZmF1bHQ6 CisJCWlndF9pbmZvKCJVbmtub3duL1Vuc3VwcG9ydGVkIFRpbGluZyAlZFxuIiwgdGlsaW5nKTsK KwkJcmV0dXJuIExPQ0FMX0RSTV9GT1JNQVRfTU9EX05PTkU7CisJfQorfQorCiBzdGF0aWMgdm9p ZCBjbGVhbnVwX2NydGMoZGF0YV90ICpkYXRhKQogewogCWludCBpOwogCisJaWd0X2Rpc3BsYXlf cmVzZXQoJmRhdGEtPmRpc3BsYXkpOwogCWlndF9waXBlX2NyY19mcmVlKGRhdGEtPnBpcGVfY3Jj KTsKIAlkYXRhLT5waXBlX2NyYyA9IE5VTEw7CiAKQEAgLTcxLDcgKzExNiw2IEBAIHN0YXRpYyB2 b2lkIHByZXBhcmVfY3J0YyhkYXRhX3QgKmRhdGEsIGlndF9vdXRwdXRfdCAqb3V0cHV0LCBlbnVt IHBpcGUgcGlwZSwKIAogCWNsZWFudXBfY3J0YyhkYXRhKTsKIAotCWlndF9kaXNwbGF5X3Jlc2V0 KGRpc3BsYXkpOwogCWlndF9vdXRwdXRfc2V0X3BpcGUob3V0cHV0LCBwaXBlKTsKIAogCS8qIGNy ZWF0ZSB0aGUgcGlwZV9jcmMgb2JqZWN0IGZvciB0aGlzIHBpcGUgKi8KQEAgLTEwNCw2ICsxNDgs MTEyIEBAIHN0YXRpYyB2b2lkIHByZXBhcmVfY3J0YyhkYXRhX3QgKmRhdGEsIGlndF9vdXRwdXRf dCAqb3V0cHV0LCBlbnVtIHBpcGUgcGlwZSwKIAlpZ3RfZGlzcGxheV9jb21taXQyKGRpc3BsYXks IENPTU1JVF9BVE9NSUMpOwogfQogCitzdGF0aWMgdm9pZCBwYWludF9mYihkYXRhX3QgKmQsIHN0 cnVjdCBpZ3RfZmIgKmZiKQoreworCWNhaXJvX3QgKmNyOworCisJY3IgPSBpZ3RfZ2V0X2NhaXJv X2N0eChkLT5kcm1fZmQsIGZiKTsKKwlpZ3RfcGFpbnRfY29sb3IoY3IsIDAsIDAsIGZiLT53aWR0 aCwgZmItPmhlaWdodCwgMC4wLCAxLjAsIDAuMCk7CisJaWd0X2Fzc2VydChjYWlyb19zdGF0dXMo Y3IpID09IDApOworCWNhaXJvX2Rlc3Ryb3koY3IpOworfQorCitzdGF0aWMgdm9pZCBjaGVja19z Y2FsaW5nX3BpcGVfcGxhbmVfcm90KGRhdGFfdCAqZCwgaWd0X3BsYW5lX3QgKnBsYW5lLAorCQkJ CQkgdWludDMyX3QgcGl4ZWxfZm9ybWF0LAorCQkJCQkgdWludDY0X3QgdGlsaW5nLCBlbnVtIHBp cGUgcGlwZSwKKwkJCQkJIGlndF9vdXRwdXRfdCAqb3V0cHV0LAorCQkJCQkgaWd0X3JvdGF0aW9u X3Qgcm90KQoreworCWlndF9kaXNwbGF5X3QgKmRpc3BsYXkgPSAmZC0+ZGlzcGxheTsKKwlpbnQg d2lkdGgsIGhlaWdodDsKKwlkcm1Nb2RlTW9kZUluZm8gKm1vZGU7CisKKwljbGVhbnVwX2NydGMo ZCk7CisKKwlpZ3Rfb3V0cHV0X3NldF9waXBlKG91dHB1dCwgcGlwZSk7CisJbW9kZSA9IGlndF9v dXRwdXRfZ2V0X21vZGUob3V0cHV0KTsKKworCS8qIGNyZWF0ZSBidWZmZXIgaW4gdGhlIHJhbmdl IG9mICBtaW4gYW5kIG1heCBzb3VyY2Ugc2lkZSBsaW1pdC4qLworCXdpZHRoID0gaGVpZ2h0ID0g OTsKKwlpZ3RfY3JlYXRlX2ZiKGRpc3BsYXktPmRybV9mZCwgd2lkdGgsIGhlaWdodCwKKwkJICAg ICAgcGl4ZWxfZm9ybWF0LCB0aWxpbmcsICZkLT5mYlswXSk7CisJcGFpbnRfZmIoZCwgJmQtPmZi WzBdKTsKKwlpZ3RfcGxhbmVfc2V0X2ZiKHBsYW5lLCAmZC0+ZmJbMF0pOworCisJLyogQ2hlY2sg bWluIHRvIGZ1bGwgcmVzb2x1dGlvbiB1cHNjYWxpbmcgKi8KKwlpZ3RfZmJfc2V0X3Bvc2l0aW9u KCZkLT5mYlswXSwgcGxhbmUsIDAsIDApOworCWlndF9mYl9zZXRfc2l6ZSgmZC0+ZmJbMF0sIHBs YW5lLCB3aWR0aCwgaGVpZ2h0KTsKKwlpZ3RfcGxhbmVfc2V0X3Bvc2l0aW9uKHBsYW5lLCAwLCAw KTsKKwlpZ3RfcGxhbmVfc2V0X3NpemUocGxhbmUsIG1vZGUtPmhkaXNwbGF5LCBtb2RlLT52ZGlz cGxheSk7CisJaWd0X3BsYW5lX3NldF9yb3RhdGlvbihwbGFuZSwgcm90KTsKKwlpZ3RfZGlzcGxh eV9jb21taXQyKGRpc3BsYXksIENPTU1JVF9BVE9NSUMpOworCisJaWd0X3BsYW5lX3NldF9mYihw bGFuZSwgTlVMTCk7CisJaWd0X3BsYW5lX3NldF9wb3NpdGlvbihwbGFuZSwgMCwgMCk7Cit9CisK K3N0YXRpYyB2b2lkIHRlc3Rfc2NhbGVyX3dpdGhfcm90YXRpb25fcGlwZShkYXRhX3QgKmQsIGVu dW0gcGlwZSBwaXBlLAorCQkJCQkgICBpZ3Rfb3V0cHV0X3QgKm91dHB1dCkKK3sKKwlpZ3RfZGlz cGxheV90ICpkaXNwbGF5ID0gJmQtPmRpc3BsYXk7CisJaWd0X3BsYW5lX3QgKnBsYW5lOworCisJ aWd0X291dHB1dF9zZXRfcGlwZShvdXRwdXQsIHBpcGUpOworCWZvcl9lYWNoX3BsYW5lX29uX3Bp cGUoZGlzcGxheSwgcGlwZSwgcGxhbmUpIHsKKworCQlpZiAocGxhbmUtPnR5cGUgPT0gRFJNX1BM QU5FX1RZUEVfQ1VSU09SKQorCQkJY29udGludWU7CisKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBN QVhfUk9UQVRJT047IGkrKykgeworCQkJaWd0X3JvdGF0aW9uX3Qgcm90ID0gZ2V0X3JvdGF0aW9u X2FuZ2xlKGkpOworCQkJY2hlY2tfc2NhbGluZ19waXBlX3BsYW5lX3JvdChkLCBwbGFuZSwgRFJN X0ZPUk1BVF9YUkdCODg4OCwKKwkJCQkJCSAgICAgTE9DQUxfSTkxNV9GT1JNQVRfTU9EX1lfVElM RUQsCisJCQkJCQkgICAgIHBpcGUsIG91dHB1dCwgcm90KTsKKwkJfQorCX0KK30KKworc3RhdGlj IGJvb2wgY2FuX2RyYXcodWludDMyX3QgZHJtX2Zvcm1hdCkKK3sKKwljb25zdCB1aW50MzJfdCAq ZHJtX2Zvcm1hdHM7CisJaW50IGZvcm1hdF9jb3VudCwgaTsKKworCWlndF9nZXRfYWxsX2NhaXJv X2Zvcm1hdHMoJmRybV9mb3JtYXRzLCAmZm9ybWF0X2NvdW50KTsKKworCWZvciAoaSA9IDA7IGkg PCBmb3JtYXRfY291bnQ7IGkrKykKKwkJaWYgKGRybV9mb3JtYXRzW2ldID09IGRybV9mb3JtYXQp CisJCQlyZXR1cm4gdHJ1ZTsKKworCXJldHVybiBmYWxzZTsKK30KKworc3RhdGljIHZvaWQgdGVz dF9zY2FsZXJfd2l0aF9waXhlbF9mb3JtYXRfcGlwZShkYXRhX3QgKmQsIGVudW0gcGlwZSBwaXBl LCBpZ3Rfb3V0cHV0X3QgKm91dHB1dCkKK3sKKwlpZ3RfZGlzcGxheV90ICpkaXNwbGF5ID0gJmQt PmRpc3BsYXk7CisJaWd0X3BsYW5lX3QgKnBsYW5lOworCisJaWd0X291dHB1dF9zZXRfcGlwZShv dXRwdXQsIHBpcGUpOworCisJZm9yX2VhY2hfcGxhbmVfb25fcGlwZShkaXNwbGF5LCBwaXBlLCBw bGFuZSkgeworCQlpZiAocGxhbmUtPnR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfQ1VSU09SKQorCQkJ Y29udGludWU7CisKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBNQVhfVElMSU5HOyBpKyspIHsKKwkJ CXVpbnQ2NF90IHRpbGluZyA9IGdldF90aWxpbmcoaSk7CisJCQlpbnQgajsKKworCQkJZm9yIChq ID0gMDsgaiA8IHBsYW5lLT5kcm1fcGxhbmUtPmNvdW50X2Zvcm1hdHM7IGorKykgeworCQkJCXVp bnQzMl90IGZvcm1hdCA9IHBsYW5lLT5kcm1fcGxhbmUtPmZvcm1hdHNbal07CisKKwkJCQlpZiAo Y2FuX2RyYXcoZm9ybWF0KSkKKwkJCQkJY2hlY2tfc2NhbGluZ19waXBlX3BsYW5lX3JvdChkLCBw bGFuZSwKKwkJCQkJCQkJICAgICBmb3JtYXQsIHRpbGluZywKKwkJCQkJCQkJICAgICBwaXBlLCBv dXRwdXQsIElHVF9ST1RBVElPTl8wKTsKKwkJCX0KKwkJfQorCX0KK30KKwogLyogZG9lcyBpdGVy YXRpdmUgc2NhbGluZyBvbiBwbGFuZTIgKi8KIHN0YXRpYyB2b2lkIGl0ZXJhdGVfcGxhbmVfc2Nh bGluZyhkYXRhX3QgKmQsIGRybU1vZGVNb2RlSW5mbyAqbW9kZSkKIHsKQEAgLTI4Nyw2ICs0Mzcs MTUgQEAgaWd0X21haW4KIAkJaWd0X3N1YnRlc3RfZigicGlwZS0lcy1wbGFuZS1zY2FsaW5nIiwg a21zdGVzdF9waXBlX25hbWUocGlwZSkpCiAJCQlmb3JfZWFjaF92YWxpZF9vdXRwdXRfb25fcGlw ZSgmZGF0YS5kaXNwbGF5LCBwaXBlLCBvdXRwdXQpCiAJCQkJdGVzdF9wbGFuZV9zY2FsaW5nX29u X3BpcGUoJmRhdGEsIHBpcGUsIG91dHB1dCk7CisKKwkJaWd0X3N1YnRlc3RfZigicGlwZS0lcy1z Y2FsZXItd2l0aC1waXhlbC1mb3JtYXQiLCBrbXN0ZXN0X3BpcGVfbmFtZShwaXBlKSkKKwkJCWZv cl9lYWNoX3ZhbGlkX291dHB1dF9vbl9waXBlKCZkYXRhLmRpc3BsYXksIHBpcGUsIG91dHB1dCkK KwkJCQl0ZXN0X3NjYWxlcl93aXRoX3BpeGVsX2Zvcm1hdF9waXBlKCZkYXRhLCBwaXBlLCBvdXRw dXQpOworCisJCWlndF9zdWJ0ZXN0X2YoInBpcGUtJXMtc2NhbGVyLXdpdGgtcm90YXRpb24iLCBr bXN0ZXN0X3BpcGVfbmFtZShwaXBlKSkKKwkJCWZvcl9lYWNoX3ZhbGlkX291dHB1dF9vbl9waXBl KCZkYXRhLmRpc3BsYXksIHBpcGUsIG91dHB1dCkKKwkJCQl0ZXN0X3NjYWxlcl93aXRoX3JvdGF0 aW9uX3BpcGUoJmRhdGEsIHBpcGUsIG91dHB1dCk7CisKIAl9CiAKIAlpZ3RfZml4dHVyZQotLSAK Mi4xNS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK