From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM04-CO1-obe.outbound.protection.outlook.com (mail-eopbgr690046.outbound.protection.outlook.com [40.107.69.46]) by gabe.freedesktop.org (Postfix) with ESMTPS id 063296EE0F for ; Thu, 12 Sep 2019 19:29:00 +0000 (UTC) From: "Wang, Chao-kai (Stylon)" Date: Thu, 12 Sep 2019 19:28:57 +0000 Message-ID: <20190912192833.12694-1-stylon.wang@amd.com> Content-Language: en-US Content-ID: MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v2] tools/amd_hdmi_compliance: Test 4K video modes with YUV encoding 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: RnJvbTogU3R5bG9uIFdhbmcgPHN0eWxvbi53YW5nQGFtZC5jb20+CgpIRE1JIDIuMCBjb21wbGlh bmNlIHRlc3RzIG5lZWRzIDRLIG1vZGVzIHdpdGggWVVWIGVuY29kaW5nLgpUaGlzIHRlc3Qgc2Vs ZWN0cyA0SyBtb2RlcyBiYXNlZCBvbiBzcGVjaWZpZWQgVklDLgoKdjI6Ci0gcmVuYW1lIHRvIGFt ZF9oZG1pX2NvbXBsaWFuY2UKLSByZXBsYWNlIGZwcmludGYgd2l0aCBpZ3RfaW5mby93YXJuCi0g dXNlIEVYSVRfU1VDQ0VTUy9GQUlMVVJFIGluIGV4aXQoKQoKU2lnbmVkLW9mZi1ieTogU3R5bG9u IFdhbmcgPHN0eWxvbi53YW5nQGFtZC5jb20+Ci0tLQogdG9vbHMvTWFrZWZpbGUuYW0gICAgICAg ICAgIHwgICAzICsKIHRvb2xzL01ha2VmaWxlLnNvdXJjZXMgICAgICB8ICAgNCArCiB0b29scy9h bWRfaGRtaV9jb21wbGlhbmNlLmMgfCAxOTkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrCiB0b29scy9tZXNvbi5idWlsZCAgICAgICAgICAgfCAgIDUgKwogNCBmaWxlcyBjaGFu Z2VkLCAyMTEgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHRvb2xzL2FtZF9oZG1p X2NvbXBsaWFuY2UuYwoKZGlmZiAtLWdpdCBhL3Rvb2xzL01ha2VmaWxlLmFtIGIvdG9vbHMvTWFr ZWZpbGUuYW0KaW5kZXggNGY1NDcyMGYuLmYwOWUwMmIyIDEwMDY0NAotLS0gYS90b29scy9NYWtl ZmlsZS5hbQorKysgYi90b29scy9NYWtlZmlsZS5hbQpAQCAtMTEsNiArMTEsOSBAQCBiaW5fUFJP R1JBTVMgKz0gaW50ZWxfZHBfY29tcGxpYW5jZQogaW50ZWxfZHBfY29tcGxpYW5jZV9DRkxBR1Mg PSAkKEFNX0NGTEFHUykgJChHTElCX0NGTEFHUykKIGludGVsX2RwX2NvbXBsaWFuY2VfTERBREQg PSAkKHRvcF9idWlsZGRpcikvbGliL2xpYmludGVsX3Rvb2xzLmxhCiAKK2Jpbl9QUk9HUkFNUyAr PSBhbWRfaGRtaV9jb21wbGlhbmNlCithbWRfaGRtaV9jb21wbGlhbmNlX0NGTEFHUyA9ICQoQU1f Q0ZMQUdTKSAkKEdMSUJfQ0ZMQUdTKQorCiBTVUJESVJTID0gbnVsbF9zdGF0ZV9nZW4gcmVnaXN0 ZXJzCiAKIEFNX0NQUEZMQUdTID0gLUkkKHRvcF9zcmNkaXIpIC1JJCh0b3Bfc3JjZGlyKS9pbmNs dWRlL2RybS11YXBpIC1JJCh0b3Bfc3JjZGlyKS9saWIgXApkaWZmIC0tZ2l0IGEvdG9vbHMvTWFr ZWZpbGUuc291cmNlcyBiL3Rvb2xzL01ha2VmaWxlLnNvdXJjZXMKaW5kZXggNTA3MDZmNDEuLmQ3 NjQ4OTVkIDEwMDY0NAotLS0gYS90b29scy9NYWtlZmlsZS5zb3VyY2VzCisrKyBiL3Rvb2xzL01h a2VmaWxlLnNvdXJjZXMKQEAgLTY2LDMgKzY2LDcgQEAgaW50ZWxfZHBfY29tcGxpYW5jZV9TT1VS Q0VTID0gXAogICAgICAgICBpbnRlbF9kcF9jb21wbGlhbmNlX2hvdHBsdWcuYyBcCiAgICAgICAg ICQoTlVMTCkKIAorYW1kX2hkbWlfY29tcGxpYW5jZV9TT1VSQ0VTID0gXAorICAgICAgICBhbWRf aGRtaV9jb21wbGlhbmNlLmMgXAorCQkkKE5VTEwpCisKZGlmZiAtLWdpdCBhL3Rvb2xzL2FtZF9o ZG1pX2NvbXBsaWFuY2UuYyBiL3Rvb2xzL2FtZF9oZG1pX2NvbXBsaWFuY2UuYwpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMC4uMWE3NTkyOTkKLS0tIC9kZXYvbnVsbAorKysgYi90 b29scy9hbWRfaGRtaV9jb21wbGlhbmNlLmMKQEAgLTAsMCArMSwxOTkgQEAKKy8qCisgKiBDb3B5 cmlnaHQgMjAxOSBBZHZhbmNlZCBNaWNybyBEZXZpY2VzLCBJbmMuCisgKgorICogUGVybWlzc2lv biBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWlu aW5nIGEKKyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0 aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksCisgKiB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3 aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uCisgKiB0aGUg cmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwg c3VibGljZW5zZSwKKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0 byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQorICogU29mdHdhcmUgaXMgZnVybmlzaGVkIHRv IGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKyAqCisgKiBUaGUg YWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBi ZSBpbmNsdWRlZCBpbgorICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0 aGUgU29mdHdhcmUuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJ VEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKKyAqIElNUExJRUQsIElOQ0xV RElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ LAorICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVO VC4gIElOIE5PIEVWRU5UIFNIQUxMCisgKiBUSEUgQ09QWVJJR0hUIEhPTERFUihTKSBPUiBBVVRI T1IoUykgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IKKyAqIE9USEVSIExJQUJJ TElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNF LAorICogQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZU V0FSRSBPUiBUSEUgVVNFIE9SCisgKiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCisg Ki8KKworI2luY2x1ZGUgImlndC5oIgorCisvKiBDb21tb24gdGVzdCBkYXRhICovCit0eXBlZGVm IHN0cnVjdCBkYXRhIHsKKwlzdHJ1Y3QgaWd0X2ZiIHBhdHRlcm5fZmJfaW5mbzsKKwlpbnQgZmQ7 CisJaWd0X2Rpc3BsYXlfdCBkaXNwbGF5OworCWlndF9wbGFuZV90ICpwcmltYXJ5OworCWlndF9v dXRwdXRfdCAqb3V0cHV0OworCWlndF9waXBlX3QgKnBpcGU7CisJZW51bSBwaXBlIHBpcGVfaWQ7 CisJYm9vbCB1c2VfdmlydHVhbF9jb25uZWN0b3I7Cit9IGRhdGFfdDsKKworLyogVmlkZW8gbW9k ZXMgaW5kZXhlZCBieSBWSUMgKi8KK3N0YXRpYyBkcm1Nb2RlTW9kZUluZm8gdGVzdF9tb2Rlc1td ID0geworCVsxXSA9IHsgMjUxNzUsCisJCTY0MCwgNjU2LCA3NTIsIDgwMCwgMCwKKwkJNDgwLCA0 ODksIDQ5MiwgNTI1LCAwLAorCQk2MCwgMHhhLCAweDQwLAorCQkiNjQweDQ4MCIsCS8qIFZJQyAx ICovCisJfSwKKwlbOTZdID0geyA1OTQwMDAsCisJCSAzODQwLCA0ODk2LCA0OTg0LCA1MjgwLCAw LAorCQkgMjE2MCwgMjE2OCwgMjE3OCwgMjI1MCwgMCwKKwkJIDUwLCAweDV8RFJNX01PREVfRkxB R19QSUNfQVJfMTZfOSwgMHg0MCwKKwkJICIzODQweDIxNjAiLAkvKiBWSUMgOTYgKi8KKwl9LAor CVs5N10gPSB7IDU5NDAwMCwKKwkJIDM4NDAsIDQwMTYsIDQxMDQsIDQ0MDAsIDAsCisJCSAyMTYw LCAyMTY4LCAyMTc4LCAyMjUwLCAwLAorCQkgNjAsIDB4NXxEUk1fTU9ERV9GTEFHX1BJQ19BUl8x Nl85LCAweDQwLAorCQkgIjM4NDB4MjE2MCIsCS8qIFZJQyA5NyAqLworCX0sCisJWzEwMV0gPSB7 IDU5NDAwMCwKKwkJICA0MDk2LCA1MDY0LCA1MTUyLCA1MjgwLCAwLAorCQkgIDIxNjAsIDIxNjgs IDIxNzgsIDIyNTAsIDAsCisJCSAgNTAsIDB4NXxEUk1fTU9ERV9GTEFHX1BJQ19BUl8yNTZfMTM1 LCAweDQwLAorCQkgICI0MDk2eDIxNjAiLAkvKiBWSUMgMTAxICovCisJfSwKKwlbMTAyXSA9IHsg NTk0MDAwLAorCQkgIDQwOTYsIDQxODQsIDQyNzIsIDQ0MDAsIDAsCisJCSAgMjE2MCwgMjE2OCwg MjE3OCwgMjI1MCwgMCwKKwkJICA2MCwgMHg1fERSTV9NT0RFX0ZMQUdfUElDX0FSXzI1Nl8xMzUs IDB4NDAsCisJCSAgIjQwOTZ4MjE2MCIsCS8qIFZJQyAxMDIgKi8KKwl9LAorCVsxMDZdID0geyA1 OTQwMDAsCisJCSAgMzg0MCwgNDg5NiwgNDk4NCwgNTI4MCwgMCwKKwkJICAyMTYwLCAyMTY4LCAy MTc4LCAyMjUwLCAwLAorCQkgIDUwLCAweDV8RFJNX01PREVfRkxBR19QSUNfQVJfNjRfMjcsIDB4 NDAsCisJCSAgIjM4NDB4MjE2MCIsCS8qIFZJQyAxMDYgKi8KKwl9LAorCVsxMDddID0geyA1OTQw MDAsCisJCSAgMzg0MCwgNDAxNiwgNDEwNCwgNDQwMCwgMCwKKwkJICAyMTYwLCAyMTY4LCAyMTc4 LCAyMjUwLCAwLAorCQkgIDYwLCAweDV8RFJNX01PREVfRkxBR19QSUNfQVJfNjRfMjcsIDB4NDAs CisJCSAgIjM4NDB4MjE2MCIsCS8qIFZJQyAxMDcgKi8KKwl9LAorfTsKKworLyogQ29tbW9uIHRl c3Qgc2V0dXAuICovCitzdGF0aWMgdm9pZCB0ZXN0X2luaXQoZGF0YV90ICpkYXRhKQoreworCWln dF9kaXNwbGF5X3QgKmRpc3BsYXkgPSAmZGF0YS0+ZGlzcGxheTsKKworCWRhdGEtPnBpcGVfaWQg PSBQSVBFX0E7CisJZGF0YS0+cGlwZSA9ICZkYXRhLT5kaXNwbGF5LnBpcGVzW2RhdGEtPnBpcGVf aWRdOworCisJaWd0X2Rpc3BsYXlfcmVzZXQoZGlzcGxheSk7CisKKwkvKiBmaW5kIGEgY29ubmVj dGVkIEhETUkgb3V0cHV0ICovCisJZGF0YS0+b3V0cHV0ID0gTlVMTDsKKwlmb3IgKGludCBpPTA7 IGkgPCBkYXRhLT5kaXNwbGF5Lm5fb3V0cHV0czsgKytpKSB7CisJCWRybU1vZGVDb25uZWN0b3Ig KmNvbm5lY3RvciA9IGRhdGEtPmRpc3BsYXkub3V0cHV0c1tpXS5jb25maWcuY29ubmVjdG9yOwor CQlpZiAoY29ubmVjdG9yLT5jb25uZWN0aW9uID09IERSTV9NT0RFX0NPTk5FQ1RFRCAmJgorCQkJ CShjb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlID09IERSTV9NT0RFX0NPTk5FQ1RPUl9IRE1JQSB8 fAorCQkJCSAoZGF0YS0+dXNlX3ZpcnR1YWxfY29ubmVjdG9yICYmCisJCQkJICBjb25uZWN0b3It PmNvbm5lY3Rvcl90eXBlID09IERSTV9NT0RFX0NPTk5FQ1RPUl9WSVJUVUFMKSkpIHsKKwkJCWRh dGEtPm91dHB1dCA9ICZkYXRhLT5kaXNwbGF5Lm91dHB1dHNbaV07CisJCX0KKwl9CisKKwlpZ3Rf cmVxdWlyZShkYXRhLT5vdXRwdXQpOworCisJZGF0YS0+cHJpbWFyeSA9CisJCWlndF9waXBlX2dl dF9wbGFuZV90eXBlKGRhdGEtPnBpcGUsIERSTV9QTEFORV9UWVBFX1BSSU1BUlkpOworCisJaWd0 X291dHB1dF9zZXRfcGlwZShkYXRhLT5vdXRwdXQsIGRhdGEtPnBpcGVfaWQpOworCit9CisKKy8q IENvbW1vbiB0ZXN0IGNsZWFudXAuICovCitzdGF0aWMgdm9pZCB0ZXN0X2ZpbmkoZGF0YV90ICpk YXRhKQoreworCWlndF9kaXNwbGF5X3Jlc2V0KCZkYXRhLT5kaXNwbGF5KTsKK30KKworc3RhdGlj IHZvaWQgd2FpdF9mb3Jfa2V5cHJlc3Modm9pZCkKK3sKKwl3aGlsZSAoZ2V0Y2hhcigpICE9ICdc bicpCisJCTsKK30KKworc3RhdGljIHZvaWQgdGVzdF92aWNfbW9kZShkYXRhX3QgKmRhdGEsIGlu dCB2aWMpCit7CisJaWd0X2Rpc3BsYXlfdCAqZGlzcGxheSA9ICZkYXRhLT5kaXNwbGF5OworCWRy bU1vZGVNb2RlSW5mbyAqbW9kZTsKKwlpZ3RfZmJfdCBhZmI7CisKKwl0ZXN0X2luaXQoZGF0YSk7 CisKKwltb2RlID0gJnRlc3RfbW9kZXNbdmljXTsKKworCWlndF9vdXRwdXRfb3ZlcnJpZGVfbW9k ZShkYXRhLT5vdXRwdXQsIG1vZGUpOworCisJaWd0X2NyZWF0ZV9wYXR0ZXJuX2ZiKGRhdGEtPmZk LCBtb2RlLT5oZGlzcGxheSwgbW9kZS0+dmRpc3BsYXksIERSTV9GT1JNQVRfWFJHQjg4ODgsIDAs ICZhZmIpOworCisJaWd0X3BsYW5lX3NldF9mYihkYXRhLT5wcmltYXJ5LCAmYWZiKTsKKworCWln dF9kaXNwbGF5X2NvbW1pdF9hdG9taWMoZGlzcGxheSwgRFJNX01PREVfQVRPTUlDX0FMTE9XX01P REVTRVQsIE5VTEwpOworCisJaWd0X2luZm8oIlByZXNzIFtFbnRlcl0gdG8gZmluaXNoXG4iKTsK Kwl3YWl0X2Zvcl9rZXlwcmVzcygpOworCisJdGVzdF9maW5pKGRhdGEpOworfQorCitjb25zdCBj aGFyICpvcHRzdHIgPSAiaHZ0OiI7CitzdGF0aWMgdm9pZCB1c2FnZShjb25zdCBjaGFyICpuYW1l KQoreworCWlndF9pbmZvKCJVc2FnZTogJXMgW29wdGlvbnNdXG4iLCBuYW1lKTsKKwlpZ3RfaW5m bygiLWggICAgICBTaG93IGhlbHBcbiIpOworCWlndF9pbmZvKCItdCB2aWMgIFNlbGVjdCB2aWRl byBtb2RlIGJhc2VkIG9uIFZJQ1xuIik7CisJaWd0X2luZm8oIi12ICAgICAgVGVzdCBvbiAnVmly dHVhbCcgY29ubmVjdG9yIGFzIHdlbGwsIGZvciBkZWJ1Z2dpbmcuXG4iKTsKK30KKworaW50IG1h aW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworCWRhdGFfdCBkYXRhOworCWludCBjOworCWlu dCB2aWMgPSAxOyAvKiBkZWZhdWx0IHRvIFZJQyAxICg2NDB4NDgwKSAqLworCisJbWVtc2V0KCZk YXRhLCAwLCBzaXplb2YoZGF0YSkpOworCisJd2hpbGUoKGMgPSBnZXRvcHQoYXJnYywgYXJndiwg b3B0c3RyKSkgIT0gLTEpIHsKKwkJc3dpdGNoKGMpIHsKKwkJY2FzZSAndCc6CisJCQl2aWMgPSBh dG9pKG9wdGFyZyk7CisJCQlicmVhazsKKwkJY2FzZSAndic6CisJCQlkYXRhLnVzZV92aXJ0dWFs X2Nvbm5lY3RvciA9IHRydWU7CisJCQlicmVhazsKKwkJZGVmYXVsdDoKKwkJY2FzZSAnaCc6CisJ CQl1c2FnZShhcmd2WzBdKTsKKwkJCWV4aXQoRVhJVF9TVUNDRVNTKTsKKwkJfQorCX0KKworCWlm ICh2aWMgPCAxIHx8CisJCXZpYyA+IEFSUkFZX1NJWkUodGVzdF9tb2RlcykgfHwKKwkJIXRlc3Rf bW9kZXNbdmljXS5uYW1lWzBdKSB7CisJCWlndF93YXJuKCJWSUMgJWQgaXMgbm90IHN1cHBvcnRl ZFxuIiwgdmljKTsKKwkJZXhpdChFWElUX0ZBSUxVUkUpOworCX0KKworCWRhdGEuZmQgPSBkcm1f b3Blbl9kcml2ZXJfbWFzdGVyKERSSVZFUl9BTlkpOworCWttc3Rlc3Rfc2V0X3Z0X2dyYXBoaWNz X21vZGUoKTsKKworCWlndF9kaXNwbGF5X3JlcXVpcmUoJmRhdGEuZGlzcGxheSwgZGF0YS5mZCk7 CisJaWd0X3JlcXVpcmUoZGF0YS5kaXNwbGF5LmlzX2F0b21pYyk7CisJaWd0X2Rpc3BsYXlfcmVx dWlyZV9vdXRwdXQoJmRhdGEuZGlzcGxheSk7CisKKwl0ZXN0X3ZpY19tb2RlKCZkYXRhLCB2aWMp OworCisJaWd0X2Rpc3BsYXlfZmluaSgmZGF0YS5kaXNwbGF5KTsKK30KZGlmZiAtLWdpdCBhL3Rv b2xzL21lc29uLmJ1aWxkIGIvdG9vbHMvbWVzb24uYnVpbGQKaW5kZXggNmU3MmIyNjMuLmVlY2Ix MjJiIDEwMDY0NAotLS0gYS90b29scy9tZXNvbi5idWlsZAorKysgYi90b29scy9tZXNvbi5idWls ZApAQCAtMTAwLDYgKzEwMCwxMSBAQCBleGVjdXRhYmxlKCdpbnRlbF9ncHVfdG9wJywgJ2ludGVs X2dwdV90b3AuYycsCiAJICAgaW5zdGFsbF9ycGF0aCA6IGJpbmRpcl9ycGF0aGRpciwKIAkgICBk ZXBlbmRlbmNpZXMgOiBsaWJfaWd0X3BlcmYpCiAKK2V4ZWN1dGFibGUoJ2FtZF9oZG1pX2NvbXBs aWFuY2UnLCAnYW1kX2hkbWlfY29tcGxpYW5jZS5jJywKKwkgICBkZXBlbmRlbmNpZXMgOiBbdG9v bF9kZXBzXSwKKwkgICBpbnN0YWxsX3JwYXRoIDogYmluZGlyX3JwYXRoZGlyLAorCSAgIGluc3Rh bGwgOiB0cnVlKQorCiBjb25mX2RhdGEgPSBjb25maWd1cmF0aW9uX2RhdGEoKQogY29uZl9kYXRh LnNldCgncHJlZml4JywgcHJlZml4KQogY29uZl9kYXRhLnNldCgnZXhlY19wcmVmaXgnLCAnJHtw cmVmaXh9JykKLS0gCjIuMTcuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3Qt ZGV2