From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH 09/20] drm: add helper functions for YCBCR420 handling Date: Mon, 10 Jul 2017 16:48:37 +0530 Message-ID: <1499685528-6926-10-git-send-email-shashank.sharma@intel.com> References: <1499685528-6926-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: <1499685528-6926-1-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VGhpcyBwYXRjaCBhZGRzIGhlbHBlciBmdW5jdGlvbnMgZm9yIFlDQkNSIDQyMCBoYW5kbGluZy4K VGhlc2UgZnVuY3Rpb25zIGRvOgotIGNoZWNrIGlmIGEgZ2l2ZW4gdmlkZW8gbW9kZSBpcyBZQ0JD UiA0MjAgb25seSBtb2RlLgotIGNoZWNrIGlmIGEgZ2l2ZW4gdmlkZW8gbW9kZSBpcyBZQ0JDUiA0 MjAgYWxzbyBtb2RlLgoKVjI6IEFkZGVkIFlDQkNSIGZ1bmN0aW9ucyBhcyBoZWxwZXJzIGluIERS TSBsYXllciwgaW5zdGVhZCBvZgogICAga2VlcGluZyBpdCBpbiBJOTE1IGxheWVyLgpWMzogQWRk ZWQgaGFuZGxpbmcgZm9yIFlDQkNSLTQyMCBvbmx5IG1vZGVzIHRvby4KVjQ6IEVYUE9SVF9TWU1C T0woZHJtX2ZpbmRfaGRtaV9vdXRwdXRfdHlwZSkKVjU6IEFkZHJlc3NlZCByZXZpZXcgY29tbWVu dHMgZnJvbSBEYW52ZXQ6CiAgICAtICVzL2RybV9maW5kX2hkbWlfb3V0cHV0X3R5cGUvZHJtX2Rp c3BsYXlfaW5mb19oZG1pX291dHB1dF90eXBlCiAgICAtICVzL2RybV9jYW5fc3VwcG9ydF95Y2Jj cl9vdXRwdXQvZHJtX2Rpc3BsYXlfc3VwcG9ydHNfeWNiY3Jfb3V0cHV0CiAgICAtICVzL2RybV9j YW5fc3VwcG9ydF90aGlzX3ljYmNyX291dHB1dC8KCQlkcm1fZGlzcGxheV9zdXBwb3J0c190aGlz X3ljYmNyX291dHB1dAogICAgLSBwYXNzIGRybV9kaXNwbGF5X2luZm8gaW5zdGVhZCBvZiBkcm1f Y29ubmVjdG9yIGZvciBjb25zaXN0ZW5jeQogICAgLSBGb3IgZHJtX2dldF9oaWdoZXN0X3F1YWxp dHlfeWNiY3Jfc3VwcG9ydGVkIGRvYywgbW92ZSB0aGUgdmFyaWFibGUKICAgICAgZGVzY3JpcHRp b24gYWJvdmUsIGFuZCB0aGVuIHRoZSBmdW5jdGlvbiBkZXNjcmlwdGlvbi4KVjY6IEFkZCBvbmx5 IFlDQkNSNDIwIGhlbHBlcnMgKFZpbGxlKQoKU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hhcm1h IDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fbW9k ZXMuYyB8IDc0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog aW5jbHVkZS9kcm0vZHJtX21vZGVzLmggICAgIHwgIDYgKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA4 MCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5j IGIvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jCmluZGV4IDNiNTNjOGUzLi42MWM4MmEzOCAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fbW9kZXMuYwpAQCAtMTYwNCwzICsxNjA0LDc3IEBAIGludCBkcm1fbW9kZV9jb252 ZXJ0X3Vtb2RlKHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpvdXQsCiBvdXQ6CiAJcmV0dXJuIHJl dDsKIH0KKworLyoqCisgKiBkcm1fbW9kZV9pc180MjBfb25seSAtIGlmIGEgZ2l2ZW4gdmlkZW9t b2RlIGNhbiBiZSBvbmx5IHN1cHBvcnRlZCBpbiBZQ0JDUjQyMAorICogb3V0cHV0IGZvcm1hdAor ICoKKyAqIEBjb25uZWN0b3I6IGRybSBjb25uZWN0b3IgdW5kZXIgYWN0aW9uLgorICogQG1vZGU6 IHZpZGVvIG1vZGUgdG8gYmUgdGVzdGVkLgorICoKKyAqIFJldHVybnM6CisgKiB0cnVlIGlmIHRo ZSBtb2RlIGNhbiBiZSBzdXBwb3J0ZWQgaW4gWUNCQ1I0MjAgZm9ybWF0CisgKiBmYWxzZSBpZiBu b3QuCisgKi8KK2Jvb2wgZHJtX21vZGVfaXNfNDIwX29ubHkoc3RydWN0IGRybV9kaXNwbGF5X2lu Zm8gKmRpc3BsYXksCisJCQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSkKK3sKKwl1OCB2 aWMgPSBkcm1fbWF0Y2hfY2VhX21vZGUobW9kZSk7CisKKwkvKgorCSAqIFJlcXVpcmVtZW50cyBv ZiBhIDQyMF9vbmx5IG1vZGU6CisJICogbXVzdCBiZSBhIHZhbGlkIGNlYSBtb2RlCisJICogZW50 cnkgaW4gNDIwX29ubHkgYml0bWFwCisJICovCisJaWYgKCFkcm1fdmFsaWRfY2VhX3ZpYyh2aWMp KQorCQlyZXR1cm4gZmFsc2U7CisKKwlyZXR1cm4gdGVzdF9iaXQodmljLCBkaXNwbGF5LT5oZG1p Lnk0MjBfdmRiX21vZGVzKTsKK30KK0VYUE9SVF9TWU1CT0woZHJtX21vZGVfaXNfNDIwX29ubHkp OworCisvKioKKyAqIGRybV9tb2RlX2lzXzQyMF9hbHNvIC0gaWYgYSBnaXZlbiB2aWRlb21vZGUg Y2FuIGJlIHN1cHBvcnRlZCBpbiBZQ0JDUjQyMAorICogb3V0cHV0IGZvcm1hdCBhbHNvIChhbG9u ZyB3aXRoIFJHQi9ZQ0JDUjQ0NC80MjIpCisgKgorICogQGRpc3BsYXk6IGRpc3BsYXkgdW5kZXIg YWN0aW9uLgorICogQG1vZGU6IHZpZGVvIG1vZGUgdG8gYmUgdGVzdGVkLgorICoKKyAqIFJldHVy bnM6CisgKiB0cnVlIGlmIHRoZSBtb2RlIGNhbiBiZSBzdXBwb3J0IFlDQkNSNDIwIGZvcm1hdAor ICogZmFsc2UgaWYgbm90LgorICovCitib29sIGRybV9tb2RlX2lzXzQyMF9hbHNvKHN0cnVjdCBk cm1fZGlzcGxheV9pbmZvICpkaXNwbGF5LAorCQkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1v ZGUpCit7CisJdTggdmljID0gZHJtX21hdGNoX2NlYV9tb2RlKG1vZGUpOworCisJLyoKKwkgKiBS ZXF1aXJlbWVudHMgb2YgYSA0MjBfYWxzbyBtb2RlOgorCSAqIG11c3QgYmUgYSB2YWxpZCBjZWEg bW9kZQorCSAqIGVudHJ5IGluIDQyMF9hbHNvIGJpdG1hcAorCSAqLworCWlmICghZHJtX3ZhbGlk X2NlYV92aWModmljKSkKKwkJcmV0dXJuIGZhbHNlOworCisJcmV0dXJuIHRlc3RfYml0KHZpYywg ZGlzcGxheS0+aGRtaS55NDIwX2NtZGJfbW9kZXMpOworfQorRVhQT1JUX1NZTUJPTChkcm1fbW9k ZV9pc180MjBfYWxzbyk7CisvKioKKyAqIGRybV9tb2RlX2lzXzQyMCAtIGlmIGEgZ2l2ZW4gdmlk ZW9tb2RlIGNhbiBiZSBzdXBwb3J0ZWQgaW4gWUNCQ1I0MjAKKyAqIG91dHB1dCBmb3JtYXQKKyAq CisgKiBAZGlzcGxheTogZGlzcGxheSB1bmRlciBhY3Rpb24uCisgKiBAbW9kZTogdmlkZW8gbW9k ZSB0byBiZSB0ZXN0ZWQuCisgKgorICogUmV0dXJuczoKKyAqIHRydWUgaWYgdGhlIG1vZGUgY2Fu IGJlIHN1cHBvcnRlZCBpbiBZQ0JDUjQyMCBmb3JtYXQKKyAqIGZhbHNlIGlmIG5vdC4KKyAqLwor Ym9vbCBkcm1fbW9kZV9pc180MjAoc3RydWN0IGRybV9kaXNwbGF5X2luZm8gKmRpc3BsYXksCisJ CQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSkKK3sKKwlyZXR1cm4gZHJtX21vZGVfaXNf NDIwX29ubHkoZGlzcGxheSwgbW9kZSkgfHwKKwkJZHJtX21vZGVfaXNfNDIwX2Fsc28oZGlzcGxh eSwgbW9kZSk7Cit9CitFWFBPUlRfU1lNQk9MKGRybV9tb2RlX2lzXzQyMCk7CmRpZmYgLS1naXQg YS9pbmNsdWRlL2RybS9kcm1fbW9kZXMuaCBiL2luY2x1ZGUvZHJtL2RybV9tb2Rlcy5oCmluZGV4 IGY4YTEyNjguLjk4MGRiMjcgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9tb2Rlcy5oCisr KyBiL2luY2x1ZGUvZHJtL2RybV9tb2Rlcy5oCkBAIC00NTIsNiArNDUyLDEyIEBAIGludCBkcm1f bW9kZV9jb252ZXJ0X3Vtb2RlKHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpvdXQsCiAJCQkgICBj b25zdCBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8gKmluKTsKIHZvaWQgZHJtX21vZGVfcHJvYmVk X2FkZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqbW9kZSk7CiB2b2lkIGRybV9tb2RlX2RlYnVnX3ByaW50bW9kZWxpbmUoY29uc3Qgc3Ry dWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpOworYm9vbCBkcm1fbW9kZV9pc180MjBfb25seShz dHJ1Y3QgZHJtX2Rpc3BsYXlfaW5mbyAqZGlzcGxheSwKKwkJCXN0cnVjdCBkcm1fZGlzcGxheV9t b2RlICptb2RlKTsKK2Jvb2wgZHJtX21vZGVfaXNfNDIwX2Fsc28oc3RydWN0IGRybV9kaXNwbGF5 X2luZm8gKmRpc3BsYXksCisJCQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSk7Citib29s IGRybV9tb2RlX2lzXzQyMChzdHJ1Y3QgZHJtX2Rpc3BsYXlfaW5mbyAqZGlzcGxheSwKKwkJCXN0 cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKTsKIAogc3RydWN0IGRybV9kaXNwbGF5X21vZGUg KmRybV9jdnRfbW9kZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCSAgICAgIGludCBoZGlz cGxheSwgaW50IHZkaXNwbGF5LCBpbnQgdnJlZnJlc2gsCi0tIAoyLjcuNAoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlz dApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==