From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vidya Srinivas Subject: [PATCH v5 2/6] drm/i915: Add NV12 as supported format for primary plane Date: Thu, 19 Apr 2018 15:52:54 +0530 Message-ID: <1524133378-20280-3-git-send-email-vidya.srinivas@intel.com> References: <1524133378-20280-1-git-send-email-vidya.srinivas@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id CF9076E5D9 for ; Thu, 19 Apr 2018 10:26:33 +0000 (UTC) In-Reply-To: <1524133378-20280-1-git-send-email-vidya.srinivas@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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQ2hhbmRyYSBLb25kdXJ1IDxjaGFuZHJhLmtvbmR1cnVAaW50ZWwuY29tPgoKVGhpcyBw YXRjaCBhZGRzIE5WMTIgdG8gbGlzdCBvZiBzdXBwb3J0ZWQgZm9ybWF0cyBmb3IKcHJpbWFyeSBw bGFuZQoKdjI6IFJlYmFzZWQgKENoYW5kcmEgS29uZHVydSkKCnYzOiBSZWJhc2VkIChtZSkKCnY0 OiBSZXZpZXcgY29tbWVudHMgYnkgVmlsbGUgYWRkcmVzc2VkClJlbW92ZWQgdGhlIHNrbF9wcmlt YXJ5X2Zvcm1hdHNfd2l0aF9udjEyIGFuZAphZGRlZCBOVjEyIGNhc2UgaW4gZXhpc3Rpbmcgc2ts X3ByaW1hcnlfZm9ybWF0cwoKdjU6IFJlYmFzZWQgKG1lKQoKdjY6IE1pc3NlZCB0aGUgVGVzdGVk LWJ5L1Jldmlld2VkLWJ5IGluIHRoZSBwcmV2aW91cyBzZXJpZXMKQWRkaW5nIHRoZSBzYW1lIHRv IGNvbW1pdCBtZXNzYWdlIGluIHRoaXMgdmVyc2lvbi4KCnY3OiBSZXZpZXcgY29tbWVudHMgYnkg VmlsbGUgYWRkcmVzc2VkCglSZXN0cmljdGluZyB0aGUgTlYxMiBmb3IgQlhUIGFuZCBvbiBQSVBF IEEgYW5kIEIKUmViYXNlZCAobWUpCgp2ODogUmViYXNlZCAobWUpCk1vZGlmaWVkIHJlc3RyaWN0 aW5nIHRoZSBOVjEyIHN1cHBvcnQgZm9yIGJvdGggQlhUIGFuZCBLQkwuCgp2OTogUmViYXNlZCAo bWUpCgp2MTA6IEFkZHJlc3NlZCByZXZpZXcgY29tbWVudHMgZnJvbSBNYWFydGVuLgoJQWRkaW5n IE5WMTIgaW5zaWRlIHNrbF9wcmltYXJ5X2Zvcm1hdHMgaXRzZWxmLgoKdjExOiBBZGRpbmcgUmV2 aWV3ZWQgQnkgdGFnIGZyb20gU2hhc2hhbmsgU2hhcm1hCgp2MTI6IEFkZHJlc3NlZCByZXZpZXcg Y29tbWVudHMgZnJvbSBKdWhhLVBla2thIEhlaWtraWxhCiJOVjEyIG5vdCB0byBiZSBzdXBwb3J0 ZWQgYnkgU0tMIgoKdjEzOiBBZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZyb20gVmlsbGUKQWRk ZWQgc2tsX3ByaV9wbGFuYXJfZm9ybWF0cyB0byBpbmNsdWRlIE5WMTIKYW5kIHNrbF9wbGFuZV9o YXNfcGxhbmFyIGZ1bmN0aW9uIHRvIGNoZWNrIGZvcgpOVjEyIHN1cHBvcnQgb24gcGxhbmUuIEFk ZGVkIE5WMTIgZm9ybWF0IHRvCnNrbF9tb2Rfc3VwcG9ydGVkLiBUaGVzZSB3ZXJlIHJldmlldyBj b21tZW50cwpmcm9tIEtyaXN0aWFuIEjDuGdzYmVyZyA8aG9lZ3NiZXJnQGdtYWlsLmNvbT4KCnYx NDogQWRkZWQgcmV2aWV3ZWQgYnkgZnJvbSBKdWhhLVBla2thIEhlaWtraWxhCgp2MTU6IFJlYmFz ZWQgdGhlIHNlcmllcwoKdjE2OiBBZGRlZCBhbGwgdGlsaW5nIHN1cHBvcnQgdW5kZXIgbW9kIHN1 cHBvcnRlZApmb3IgTlYxMi4gQ3JlZGl0cyB0byBNZWdoYSBBZ2dhcndhbAoKdjE3OiBBZGRlZCBS QiBieSBNYWFydGVuIGFuZCBLcmlzdGlhbgoKdjE4OiBSZXZpZXcgY29tbWVudHMgZnJvbSBNYWFy dGVuIGFkZHJlc3NlZCAtClJlbW92aW5nIEJST1hUT04gc3VwcG9ydCBmb3IgTlYxMiBkdWUgdG8g V0E4MjYKCkNyZWRpdHMtdG86IE1lZ2hhIEFnZ2Fyd2FsIG1lZ2hhLmFnZ2Fyd2FsQGludGVsLmNv bQpDcmVkaXRzLXRvOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXgu aW50ZWwuY29tPgpUZXN0ZWQtYnk6IENsaW50b24gVGF5bG9yIDxjbGludG9uLmEudGF5bG9yQGlu dGVsLmNvbT4KUmV2aWV3ZWQtYnk6IEtyaXN0aWFuIEjDuGdzYmVyZyA8aG9lZ3NiZXJnQGdtYWls LmNvbT4KUmV2aWV3ZWQtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBs aW51eC5pbnRlbC5jb20+ClJldmlld2VkLWJ5OiBKdWhhLVBla2thIEhlaWtraWxhIDxqdWhhcGVr a2EuaGVpa2tpbGFAZ21haWwuY29tPgpSZXZpZXdlZC1ieTogQ2xpbnRvbiBUYXlsb3IgPGNsaW50 b24uYS50YXlsb3JAaW50ZWwuY29tPgpSZXZpZXdlZC1ieTogU2hhc2hhbmsgU2hhcm1hIDxzaGFz aGFuay5zaGFybWFAaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBDaGFuZHJhIEtvbmR1cnUgPGNo YW5kcmEua29uZHVydUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE5hYmVuZHUgTWFpdGkgPG5h YmVuZHUuYmlrYXNoLm1haXRpQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogVmlkeWEgU3Jpbml2 YXMgPHZpZHlhLnNyaW5pdmFzQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kaXNwbGF5LmMgfCA1NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0K IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAgICB8ICAyICsrCiAyIGZpbGVzIGNo YW5nZWQsIDU1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCmluZGV4IDUzZjgyZmEuLmRjOWM0MjQgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMKQEAgLTg4LDYgKzg4LDIyIEBAIHN0YXRpYyBjb25zdCB1aW50MzJf dCBza2xfcHJpbWFyeV9mb3JtYXRzW10gPSB7CiAJRFJNX0ZPUk1BVF9WWVVZLAogfTsKIAorc3Rh dGljIGNvbnN0IHVpbnQzMl90IHNrbF9wcmlfcGxhbmFyX2Zvcm1hdHNbXSA9IHsKKwlEUk1fRk9S TUFUX0M4LAorCURSTV9GT1JNQVRfUkdCNTY1LAorCURSTV9GT1JNQVRfWFJHQjg4ODgsCisJRFJN X0ZPUk1BVF9YQkdSODg4OCwKKwlEUk1fRk9STUFUX0FSR0I4ODg4LAorCURSTV9GT1JNQVRfQUJH Ujg4ODgsCisJRFJNX0ZPUk1BVF9YUkdCMjEwMTAxMCwKKwlEUk1fRk9STUFUX1hCR1IyMTAxMDEw LAorCURSTV9GT1JNQVRfWVVZViwKKwlEUk1fRk9STUFUX1lWWVUsCisJRFJNX0ZPUk1BVF9VWVZZ LAorCURSTV9GT1JNQVRfVllVWSwKKwlEUk1fRk9STUFUX05WMTIsCit9OworCiBzdGF0aWMgY29u c3QgdWludDY0X3Qgc2tsX2Zvcm1hdF9tb2RpZmllcnNfbm9jY3NbXSA9IHsKIAlJOTE1X0ZPUk1B VF9NT0RfWWZfVElMRUQsCiAJSTkxNV9GT1JNQVRfTU9EX1lfVElMRUQsCkBAIC0xMzEyNyw2ICsx MzE0MywxMiBAQCBzdGF0aWMgYm9vbCBza2xfbW9kX3N1cHBvcnRlZCh1aW50MzJfdCBmb3JtYXQs IHVpbnQ2NF90IG1vZGlmaWVyKQogCQlpZiAobW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lm X1RJTEVEKQogCQkJcmV0dXJuIHRydWU7CiAJCS8qIGZhbGwgdGhyb3VnaCAqLworCWNhc2UgRFJN X0ZPUk1BVF9OVjEyOgorCQlpZiAobW9kaWZpZXIgPT0gRFJNX0ZPUk1BVF9NT0RfTElORUFSIHx8 CisJCSAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWF9USUxFRCB8fAorCQkgICAgbW9k aWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRUQgfHwKKwkJICAgIG1vZGlmaWVyID09IEk5 MTVfRk9STUFUX01PRF9ZZl9USUxFRCkKKwkJCXJldHVybiB0cnVlOwogCWNhc2UgRFJNX0ZPUk1B VF9DODoKIAkJaWYgKG1vZGlmaWVyID09IERSTV9GT1JNQVRfTU9EX0xJTkVBUiB8fAogCQkgICAg bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1hfVElMRUQgfHwKQEAgLTEzMzMxLDYgKzEzMzUz LDMwIEBAIHN0YXRpYyBib29sIHNrbF9wbGFuZV9oYXNfZmJjKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKIAlyZXR1cm4gcGlwZSA9PSBQSVBFX0EgJiYgcGxhbmVfaWQgPT0gUExB TkVfUFJJTUFSWTsKIH0KIAorYm9vbCBza2xfcGxhbmVfaGFzX3BsYW5hcihzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJCQkgIGVudW0gcGlwZSBwaXBlLCBlbnVtIHBsYW5lX2lk IHBsYW5lX2lkKQoreworCWlmIChwbGFuZV9pZCA9PSBQTEFORV9QUklNQVJZKSB7CisJCWlmIChJ U19TS1lMQUtFKGRldl9wcml2KSB8fCBJU19CUk9YVE9OKGRldl9wcml2KSkKKwkJCXJldHVybiBm YWxzZTsKKwkJZWxzZSBpZiAoKElOVEVMX0dFTihkZXZfcHJpdikgPT0gOSAmJiBwaXBlID09IFBJ UEVfQykgJiYKKwkJCSAhSVNfR0VNSU5JTEFLRShkZXZfcHJpdikpCisJCQlyZXR1cm4gZmFsc2U7 CisJfSBlbHNlIGlmIChwbGFuZV9pZCA+PSBQTEFORV9TUFJJVEUwKSB7CisJCWlmIChwbGFuZV9p ZCA9PSBQTEFORV9DVVJTT1IpCisJCQlyZXR1cm4gZmFsc2U7CisJCWlmIChJU19HRU1JTklMQUtF KGRldl9wcml2KSB8fCBJTlRFTF9HRU4oZGV2X3ByaXYpID09IDEwKSB7CisJCQlpZiAocGxhbmVf aWQgIT0gUExBTkVfU1BSSVRFMCkKKwkJCQlyZXR1cm4gZmFsc2U7CisJCX0gZWxzZSB7CisJCQlp ZiAocGxhbmVfaWQgIT0gUExBTkVfU1BSSVRFMCB8fCBwaXBlID09IFBJUEVfQyB8fAorCQkJICAg IElTX1NLWUxBS0UoZGV2X3ByaXYpIHx8IElTX0JST1hUT04oZGV2X3ByaXYpKQorCQkJCXJldHVy biBmYWxzZTsKKwkJfQorCX0KKwlyZXR1cm4gdHJ1ZTsKK30KKwogc3RhdGljIHN0cnVjdCBpbnRl bF9wbGFuZSAqCiBpbnRlbF9wcmltYXJ5X3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsIGVudW0gcGlwZSBwaXBlKQogewpAQCAtMTMzOTEsOCArMTM0MzcsMTMg QEAgaW50ZWxfcHJpbWFyeV9wbGFuZV9jcmVhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LCBlbnVtIHBpcGUgcGlwZSkKIAlwcmltYXJ5LT5jaGVja19wbGFuZSA9IGludGVsX2No ZWNrX3ByaW1hcnlfcGxhbmU7CiAKIAlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5KSB7Ci0J CWludGVsX3ByaW1hcnlfZm9ybWF0cyA9IHNrbF9wcmltYXJ5X2Zvcm1hdHM7Ci0JCW51bV9mb3Jt YXRzID0gQVJSQVlfU0laRShza2xfcHJpbWFyeV9mb3JtYXRzKTsKKwkJaWYgKHNrbF9wbGFuZV9o YXNfcGxhbmFyKGRldl9wcml2LCBwaXBlLCBQTEFORV9QUklNQVJZKSkgeworCQkJaW50ZWxfcHJp bWFyeV9mb3JtYXRzID0gc2tsX3ByaV9wbGFuYXJfZm9ybWF0czsKKwkJCW51bV9mb3JtYXRzID0g QVJSQVlfU0laRShza2xfcHJpX3BsYW5hcl9mb3JtYXRzKTsKKwkJfSBlbHNlIHsKKwkJCWludGVs X3ByaW1hcnlfZm9ybWF0cyA9IHNrbF9wcmltYXJ5X2Zvcm1hdHM7CisJCQludW1fZm9ybWF0cyA9 IEFSUkFZX1NJWkUoc2tsX3ByaW1hcnlfZm9ybWF0cyk7CisJCX0KIAogCQlpZiAoc2tsX3BsYW5l X2hhc19jY3MoZGV2X3ByaXYsIHBpcGUsIFBMQU5FX1BSSU1BUlkpKQogCQkJbW9kaWZpZXJzID0g c2tsX2Zvcm1hdF9tb2RpZmllcnNfY2NzOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAppbmRleCBk ODkzMDY3Ni4uMDEzNTJlZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTIwNjMsNiAr MjA2Myw4IEBAIGJvb2wgc2tsX3BsYW5lX2dldF9od19zdGF0ZShzdHJ1Y3QgaW50ZWxfcGxhbmUg KnBsYW5lKTsKIGJvb2wgc2tsX3BsYW5lX2hhc19jY3Moc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LAogCQkgICAgICAgZW51bSBwaXBlIHBpcGUsIGVudW0gcGxhbmVfaWQgcGxhbmVf aWQpOwogYm9vbCBpbnRlbF9mb3JtYXRfaXNfeXV2KHVpbnQzMl90IGZvcm1hdCk7Citib29sIHNr bF9wbGFuZV9oYXNfcGxhbmFyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKKwkJ CSAgZW51bSBwaXBlIHBpcGUsIGVudW0gcGxhbmVfaWQgcGxhbmVfaWQpOwogCiAvKiBpbnRlbF90 di5jICovCiB2b2lkIGludGVsX3R2X2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KTsKLS0gCjIuNy40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZngK