From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH 06/15] drm: add helper to validate YCBCR420 modes Date: Fri, 7 Jul 2017 08:49:12 +0530 Message-ID: <1499397561-31797-7-git-send-email-shashank.sharma@intel.com> References: <1499397561-31797-1-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1499397561-31797-1-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org WUNCQ1I0MjAgbW9kZXMgYXJlIHN1cHBvcnRlZCBvbmx5IG9uIEhETUkgMi4wIGNhcGFibGUgc291 cmNlcy4KVGhpcyBwYXRjaCBhZGRzOgotIEEgZHJtIGhlbHBlciB0byB2YWxpZGF0ZSBZQ0JDUjQy MC1vbmx5IG1vZGUgb24gYSBwYXJ0aWN1bGFyCiAgY29ubmVjdG9yLiBUaGlzIGZ1bmN0aW9uIHdp bGwgaGVscCBwcnVuaW5nIHRoZSBZQ0JDUjQyMC1vbmx5CiAgbW9kZXMgZnJvbSB0aGUgY29ubmVj dG9yJ3MgbW9kZWxpc3QuCi0gQSBib29sIHZhcmlhYmxlICh5Y2Jjcl80MjBfYWxsb3dlZCkgaW4g dGhlIGRybSBjb25uZWN0b3Igc3RydWN0dXJlLgogIFdoaWxlIGhhbmRsaW5nIHRoZSBFRElEIGZy b20gSERNSSAyLjAgc2lua3MsIGl0cyBpbXBvcnRhbnQgdG8ga25vdwogIGlmIHRoZSBzb3VyY2Ug aXMgY2FwYWJsZSBvZiBoYW5kbGluZyBZQ0JDUjQyMCBvdXRwdXQsIHNvIHRoYXQgbm8KICBZQ0JD UiA0MjAgbW9kZXMgd2lsbCBiZSBsaXN0ZWQgZm9yIHNvdXJjZXMgd2hpY2ggY2FuJ3QgaGFuZGxl IGl0LgogIEEgZHJpdmVyIHNob3VsZCBzZXQgdGhpcyB2YXJpYWJsZSBpZiBpdCB3YW50cyB0byBz ZWUgWUNCQ1I0MjAgbW9kZXMKICBpbiB0aGUgbW9kZWRiLgoKVjU6IEludHJvZHVjZWQgdGhlIHBh dGNoIGluIHNlcmllcy4KVjUtcmVzZW5kOiBTcXVhc2hlZCB0d28gcGF0Y2hlcyAodmFsaWRhdGUg WUNCQ1I0MjAgYW5kIGFkZCBZQ0JDUjQyMAoJICAgaWRlbnRpZmllcikKCkNjOiBWaWxsZSBTeXJq YWxhIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogU2hhc2hh bmsgU2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS9kcm1fZWRpZC5jICAgICAgICAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fbW9kZXMu YyAgICAgICAgfCAyOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9k cm0vZHJtX3Byb2JlX2hlbHBlci5jIHwgIDQgKysrKwogaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rv ci5oICAgICAgICB8ICA5ICsrKysrKysrKwogaW5jbHVkZS9kcm0vZHJtX2VkaWQuaCAgICAgICAg ICAgICB8ICAxICsKIGluY2x1ZGUvZHJtL2RybV9tb2Rlcy5oICAgICAgICAgICAgfCAgNSArKysr KwogNiBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2VkaWQuYwppbmRleCAxMGRhYjYyLi40NGJlMTI4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2VkaWQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwpAQCAtMjk1MCwx MCArMjk1MCwxMSBAQCB1OCBkcm1fbWF0Y2hfY2VhX21vZGUoY29uc3Qgc3RydWN0IGRybV9kaXNw bGF5X21vZGUgKnRvX21hdGNoKQogfQogRVhQT1JUX1NZTUJPTChkcm1fbWF0Y2hfY2VhX21vZGUp OwogCi1zdGF0aWMgYm9vbCBkcm1fdmFsaWRfY2VhX3ZpYyh1OCB2aWMpCitib29sIGRybV92YWxp ZF9jZWFfdmljKHU4IHZpYykKIHsKIAlyZXR1cm4gdmljID4gMCAmJiB2aWMgPCBBUlJBWV9TSVpF KGVkaWRfY2VhX21vZGVzKTsKIH0KK0VYUE9SVF9TWU1CT0woZHJtX3ZhbGlkX2NlYV92aWMpOwog CiAvKioKICAqIGRybV9nZXRfY2VhX2FzcGVjdF9yYXRpbyAtIGdldCB0aGUgcGljdHVyZSBhc3Bl Y3QgcmF0aW8gY29ycmVzcG9uZGluZyB0bwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ry bV9tb2Rlcy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jCmluZGV4IGYyNDkzYjkuLjNi NTNjOGUzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVzLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jCkBAIC0xMDgzLDYgKzEwODMsMzQgQEAgZHJtX21vZGVf dmFsaWRhdGVfc2l6ZShjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKIH0KIEVY UE9SVF9TWU1CT0woZHJtX21vZGVfdmFsaWRhdGVfc2l6ZSk7CiAKKy8qKgorICogZHJtX21vZGVf eWNiY3I0MjBfb25seSAtIGFkZCAneWNiY3I0MjAtb25seScgbW9kZXMgb25seSB3aGVuIGFsbG93 ZWQKKyAqIEBtb2RlOiBtb2RlIHRvIGNoZWNrCisgKiBAY29ubmVjdG9yOiBkcm0gY29ubmVjdG9y IHVuZGVyIGFjdGlvbgorICoKKyAqIFRoaXMgZnVuY3Rpb24gaXMgYSBoZWxwZXIgd2hpY2ggY2Fu IGJlIHVzZWQgdG8gZmlsdGVyIG91dCBhbnkgWUNCQ1I0MjAKKyAqIG9ubHkgbW9kZSwgd2hlbiB0 aGUgc291cmNlIGRvZXNuJ3Qgc3VwcG9ydCBpdC4KKyAqCisgKiBSZXR1cm5zOgorICogVGhlIG1v ZGUgc3RhdHVzCisgKi8KK2VudW0gZHJtX21vZGVfc3RhdHVzCitkcm1fbW9kZV92YWxpZGF0ZV95 Y2JjcjQyMChjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKKwkJCSAgIHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCit7CisJdTggdmljID0gZHJtX21hdGNoX2NlYV9t b2RlKG1vZGUpOworCWVudW0gZHJtX21vZGVfc3RhdHVzIHN0YXR1cyA9IE1PREVfT0s7CisJc3Ry dWN0IGRybV9oZG1pX2luZm8gKmhkbWkgPSAmY29ubmVjdG9yLT5kaXNwbGF5X2luZm8uaGRtaTsK KworCWlmIChkcm1fdmFsaWRfY2VhX3ZpYyh2aWMpICYmIHRlc3RfYml0KHZpYywgaGRtaS0+eTQy MF92ZGJfbW9kZXMpKSB7CisJCWlmICghY29ubmVjdG9yLT55Y2Jjcl80MjBfYWxsb3dlZCkKKwkJ CXN0YXR1cyA9IE1PREVfTk9fNDIwOworCX0KKworCXJldHVybiBzdGF0dXM7Cit9CitFWFBPUlRf U1lNQk9MKGRybV9tb2RlX3ZhbGlkYXRlX3ljYmNyNDIwKTsKKwogI2RlZmluZSBNT0RFX1NUQVRV UyhzdGF0dXMpIFtNT0RFXyAjIyBzdGF0dXMgKyAzXSA9ICNzdGF0dXMKIAogc3RhdGljIGNvbnN0 IGNoYXIgKiBjb25zdCBkcm1fbW9kZV9zdGF0dXNfbmFtZXNbXSA9IHsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3By b2JlX2hlbHBlci5jCmluZGV4IDAwZTY4MzIuLjkwNDk2NmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9kcm1fcHJvYmVfaGVscGVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9wcm9i ZV9oZWxwZXIuYwpAQCAtNTI4LDYgKzUyOCwxMCBAQCBpbnQgZHJtX2hlbHBlcl9wcm9iZV9zaW5n bGVfY29ubmVjdG9yX21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCWlm IChtb2RlLT5zdGF0dXMgPT0gTU9ERV9PSykKIAkJCW1vZGUtPnN0YXR1cyA9IGRybV9tb2RlX3Zh bGlkYXRlX3BpcGVsaW5lKG1vZGUsCiAJCQkJCQkJCSAgY29ubmVjdG9yKTsKKworCQlpZiAobW9k ZS0+c3RhdHVzID09IE1PREVfT0spCisJCQltb2RlLT5zdGF0dXMgPSBkcm1fbW9kZV92YWxpZGF0 ZV95Y2JjcjQyMChtb2RlLAorCQkJCQkJCQkgIGNvbm5lY3Rvcik7CiAJfQogCiBwcnVuZToKZGlm ZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBiL2luY2x1ZGUvZHJtL2RybV9j b25uZWN0b3IuaAppbmRleCBiM2FmOGUzLi4yMjVlMDkyIDEwMDY0NAotLS0gYS9pbmNsdWRlL2Ry bS9kcm1fY29ubmVjdG9yLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCkBAIC03 NDYsNiArNzQ2LDE1IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yIHsKIAlib29sIGludGVybGFjZV9h bGxvd2VkOwogCWJvb2wgZG91Ymxlc2Nhbl9hbGxvd2VkOwogCWJvb2wgc3RlcmVvX2FsbG93ZWQ7 CisKKwkvKioKKwkgKiBAeWNiY3JfNDIwX2FsbG93ZWQgOiBUaGlzIGJvb2wgaW5kaWNhdGVzIGlm IHRoaXMgY29ubmVjdG9yIGlzCisJICogY2FwYWJsZSBvZiBoYW5kbGluZyBZQ0JDUiA0MjAgb3V0 cHV0LiBXaGlsZSBwYXJzaW5nIHRoZSBFRElECisJICogYmxvY2tzLCBpdHMgdmVyeSBoZWxwZnVs IHRvIGtub3csIGlmIHRoZSBzb3VyY2UgaXMgY2FwYWJsZSBvZgorCSAqIGhhbmRsaW5nIFlDQkNS IDQyMCBvdXRwdXRzLgorCSAqLworCWJvb2wgeWNiY3JfNDIwX2FsbG93ZWQ7CisKIAkvKioKIAkg KiBAcmVnaXN0ZXJlZDogSXMgdGhpcyBjb25uZWN0b3IgZXhwb3NlZCAocmVnaXN0ZXJlZCkgd2l0 aCB1c2Vyc3BhY2U/CiAJICogUHJvdGVjdGVkIGJ5IEBtdXRleC4KZGlmZiAtLWdpdCBhL2luY2x1 ZGUvZHJtL2RybV9lZGlkLmggYi9pbmNsdWRlL2RybS9kcm1fZWRpZC5oCmluZGV4IDg5YzAwNjIu LmI1NWIyYTcgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9lZGlkLmgKKysrIGIvaW5jbHVk ZS9kcm0vZHJtX2VkaWQuaApAQCAtNDc3LDQgKzQ3Nyw1IEBAIHZvaWQgZHJtX2VkaWRfZ2V0X21v bml0b3JfbmFtZShzdHJ1Y3QgZWRpZCAqZWRpZCwgY2hhciAqbmFtZSwKIHN0cnVjdCBkcm1fZGlz cGxheV9tb2RlICpkcm1fbW9kZV9maW5kX2RtdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJ CQkgICBpbnQgaHNpemUsIGludCB2c2l6ZSwgaW50IGZyZXNoLAogCQkJCQkgICBib29sIHJiKTsK K2Jvb2wgZHJtX3ZhbGlkX2NlYV92aWModTggdmljKTsKICNlbmRpZiAvKiBfX0RSTV9FRElEX0hf XyAqLwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX21vZGVzLmggYi9pbmNsdWRlL2RybS9k cm1fbW9kZXMuaAppbmRleCA5NGFjNzcxLi5mOGExMjY4IDEwMDY0NAotLS0gYS9pbmNsdWRlL2Ry bS9kcm1fbW9kZXMuaAorKysgYi9pbmNsdWRlL2RybS9kcm1fbW9kZXMuaApAQCAtODAsNiArODAs NyBAQCBzdHJ1Y3QgdmlkZW9tb2RlOwogICogQE1PREVfT05FX1NJWkU6IG9ubHkgb25lIHJlc29s dXRpb24gaXMgc3VwcG9ydGVkCiAgKiBATU9ERV9OT19SRURVQ0VEOiBtb25pdG9yIGRvZXNuJ3Qg YWNjZXB0IHJlZHVjZWQgYmxhbmtpbmcKICAqIEBNT0RFX05PX1NURVJFTzogc3RlcmVvIG1vZGVz IG5vdCBzdXBwb3J0ZWQKKyAqIEBNT0RFX05PXzQyMDogeWNiY3IgNDIwIG1vZGVzIG5vdCBzdXBw b3J0ZWQKICAqIEBNT0RFX1NUQUxFOiBtb2RlIGhhcyBiZWNvbWUgc3RhbGUKICAqIEBNT0RFX0JB RDogdW5zcGVjaWZpZWQgcmVhc29uCiAgKiBATU9ERV9FUlJPUjogZXJyb3IgY29uZGl0aW9uCkBA IC0xMjQsNiArMTI1LDcgQEAgZW51bSBkcm1fbW9kZV9zdGF0dXMgewogCU1PREVfT05FX1NJWkUs CiAJTU9ERV9OT19SRURVQ0VELAogCU1PREVfTk9fU1RFUkVPLAorCU1PREVfTk9fNDIwLAogCU1P REVfU1RBTEUgPSAtMywKIAlNT0RFX0JBRCA9IC0yLAogCU1PREVfRVJST1IgPSAtMQpAQCAtNDk2 LDYgKzQ5OCw5IEBAIGJvb2wgZHJtX21vZGVfZXF1YWxfbm9fY2xvY2tzX25vX3N0ZXJlbyhjb25z dCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZTEsCiBlbnVtIGRybV9tb2RlX3N0YXR1cyBk cm1fbW9kZV92YWxpZGF0ZV9iYXNpYyhjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9k ZSk7CiBlbnVtIGRybV9tb2RlX3N0YXR1cyBkcm1fbW9kZV92YWxpZGF0ZV9zaXplKGNvbnN0IHN0 cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlLAogCQkJCQkgICAgaW50IG1heFgsIGludCBtYXhZ KTsKK2VudW0gZHJtX21vZGVfc3RhdHVzCitkcm1fbW9kZV92YWxpZGF0ZV95Y2JjcjQyMChjb25z dCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKKwkJCSAgIHN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IpOwogdm9pZCBkcm1fbW9kZV9wcnVuZV9pbnZhbGlkKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsCiAJCQkgICAgc3RydWN0IGxpc3RfaGVhZCAqbW9kZV9saXN0LCBib29sIHZl cmJvc2UpOwogdm9pZCBkcm1fbW9kZV9zb3J0KHN0cnVjdCBsaXN0X2hlYWQgKm1vZGVfbGlzdCk7 Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==