From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chandra Konduru Subject: [PATCH 10/11] drm/i915: Add NV12 to primary plane programming. Date: Fri, 8 May 2015 13:40:22 -0700 Message-ID: <1431117622-6469-1-git-send-email-chandra.konduru@intel.com> References: <1430451795-9657-11-git-send-email-chandra.konduru@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 43AE06E9C8 for ; Fri, 8 May 2015 13:41:10 -0700 (PDT) In-Reply-To: <1430451795-9657-11-git-send-email-chandra.konduru@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: daniel.vetter@intel.com, ville.syrjala@intel.com List-Id: intel-gfx@lists.freedesktop.org VGhpcyBwYXRjaCBpcyBhZGRpbmcgTlYxMiBzdXBwb3J0IHRvIHNreWxha2UgcHJpbWFyeSBwbGFu ZQpwcm9ncmFtbWluZy4gSXQgaXMgY292ZXJpbmcgbGluZWFyL1gvWS9ZZiB0aWxpbmcgZm9ybWF0 cwpmb3IgMCBhbmQgMTgwIHJvdGF0aW9ucy4KCkZvciA5MC8yNzAgcm90YXRpb24sIFkgYW5kIFVW IHN1YnBsYW5lcyBzaG91bGQgYmUgdHJlYXRlZAphcyBzZXBhcmF0ZSBzdXJmYWNlcyBhbmQgR1RU IHJlbWFwcGluZyBmb3Igcm90YXRpb24gc2hvdWxkCmJlIGRvbmUgc2VwYXJhdGVseSBmb3IgZWFj aCBzdWJwbGFuZS4gT25jZSBHRU0gYWRkcyBzdXBwb3J0CmZvciBzZXBlcmF0ZSByZW1hcHBpbmdz IGZvciB0d28gc3VicGxhbmVzLCA5MC8yNzAgc3VwcG9ydAp0byBiZSBhZGRlZCB0byBwbGFuZSBw cm9ncmFtbWluZy4KCnYyOgotVXNlIHJlZ3VsYXIgaW50IGluc3RlYWQgb2YgMTYuMTYgaW4gYXV4 X29mZnNldCBjYWxjdWxhdGlvbnMgKG1lKQoKU2lnbmVkLW9mZi1ieTogQ2hhbmRyYSBLb25kdXJ1 IDxjaGFuZHJhLmtvbmR1cnVAaW50ZWwuY29tPgpUZXN0Y2FzZTogaWd0L2ttc19udjEyCi0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljX3BsYW5lLmMgfCAgICAyICsrCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgICAgICB8ICAgMzggKysrKysrKysrKysr KysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNDAgaW5zZXJ0aW9ucygrKQoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pY19wbGFuZS5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljX3BsYW5lLmMKaW5kZXggODZiYTRiMi4uMTE5 NDM5ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljX3BsYW5l LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljX3BsYW5lLmMKQEAgLTE4 NSwxMCArMTg1LDEyIEBAIHN0YXRpYyBpbnQgaW50ZWxfcGxhbmVfYXRvbWljX2NoZWNrKHN0cnVj dCBkcm1fcGxhbmUgKnBsYW5lLAogCQkgKiA5MC8yNzAgaXMgbm90IGFsbG93ZWQgd2l0aCBSR0I2 NCAxNjoxNjoxNjoxNiwKIAkJICogUkdCIDE2LWJpdCA1OjY6NSwgYW5kIEluZGV4ZWQgOC1iaXQu CiAJCSAqIFRCRDogQWRkIFJHQjY0IGNhc2Ugb25jZSBpdHMgYWRkZWQgaW4gc3VwcG9ydGVkIGZv cm1hdCBsaXN0LgorCQkgKiBUQkQ6IFJlbW92ZSBOVjEyLCBvbmNlIGl0cyA5MC8yNzAgcmVtYXBw aW5nIGlzIHN1cHBvcnRlZAogCQkgKi8KIAkJc3dpdGNoIChzdGF0ZS0+ZmItPnBpeGVsX2Zvcm1h dCkgewogCQljYXNlIERSTV9GT1JNQVRfQzg6CiAJCWNhc2UgRFJNX0ZPUk1BVF9SR0I1NjU6CisJ CWNhc2UgRFJNX0ZPUk1BVF9OVjEyOgogCQkJRFJNX0RFQlVHX0tNUygiVW5zdXBwb3J0ZWQgcGl4 ZWwgZm9ybWF0ICVzIGZvciA5MC8yNzAhXG4iLAogCQkJCQlkcm1fZ2V0X2Zvcm1hdF9uYW1lKHN0 YXRlLT5mYi0+cGl4ZWxfZm9ybWF0KSk7CiAJCQlyZXR1cm4gLUVJTlZBTDsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCAzYWU2NDZlLi45NDNhODM1IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0zMDE1LDYgKzMwMTUsOSBAQCB1MzIgc2tsX3BsYW5l X2N0bF9mb3JtYXQodWludDMyX3QgcGl4ZWxfZm9ybWF0KQogCWNhc2UgRFJNX0ZPUk1BVF9WWVVZ OgogCQlwbGFuZV9jdGxfZm9ybWF0ID0gUExBTkVfQ1RMX0ZPUk1BVF9ZVVY0MjIgfCBQTEFORV9D VExfWVVWNDIyX1ZZVVk7CiAJCWJyZWFrOworCWNhc2UgRFJNX0ZPUk1BVF9OVjEyOgorCQlwbGFu ZV9jdGxfZm9ybWF0ID0gUExBTkVfQ1RMX0ZPUk1BVF9OVjEyOworCQlicmVhazsKIAlkZWZhdWx0 OgogCQlCVUcoKTsKIAl9CkBAIC0zMDg1LDYgKzMwODgsOCBAQCBzdGF0aWMgdm9pZCBza3lsYWtl X3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlpbnQgc3JjX3gg PSAwLCBzcmNfeSA9IDAsIHNyY193ID0gMCwgc3JjX2ggPSAwOwogCWludCBkc3RfeCA9IDAsIGRz dF95ID0gMCwgZHN0X3cgPSAwLCBkc3RfaCA9IDA7CiAJaW50IHNjYWxlcl9pZCA9IC0xOworCXUz MiBhdXhfZGlzdCA9IDAsIGF1eF94X29mZnNldCA9IDAsIGF1eF95X29mZnNldCA9IDAsIGF1eF9z dHJpZGUgPSAwOworCXUzMiB0aWxlX3Jvd19hZGp1c3RtZW50ID0gMDsKIAogCXBsYW5lX3N0YXRl ID0gdG9faW50ZWxfcGxhbmVfc3RhdGUocGxhbmUtPnN0YXRlKTsKIApAQCAtMzE0MSwxMSArMzE0 NiwzNCBAQCBzdGF0aWMgdm9pZCBza3lsYWtlX3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBk cm1fY3J0YyAqY3J0YywKIAkJeF9vZmZzZXQgPSBzdHJpZGUgKiB0aWxlX2hlaWdodCAtIHkgLSBz cmNfaDsKIAkJeV9vZmZzZXQgPSB4OwogCQlwbGFuZV9zaXplID0gKHNyY193IC0gMSkgPDwgMTYg fCAoc3JjX2ggLSAxKTsKKwkJLyoKKwkJICogVEJEOiBGb3IgTlYxMiA5MC8yNzAgcm90YXRpb24s IFkgYW5kIFVWIHN1YnBsYW5lcyBzaG91bGQKKwkJICogYmUgdHJlYXRlZCBhcyBzZXBhcmF0ZSBz dXJmYWNlcyBhbmQgR1RUIHJlbWFwcGluZyBmb3IKKwkJICogcm90YXRpb24gc2hvdWxkIGJlIGRv bmUgc2VwYXJhdGVseSBmb3IgZWFjaCBzdWJwbGFuZS4KKwkJICogRW5hYmxlIHN1cHBvcnQgb25j ZSBzZXBlcmF0ZSByZW1hcHBpbmdzIGFyZSBhdmFpbGFibGUuCisJCSAqLwogCX0gZWxzZSB7CiAJ CXN0cmlkZSA9IGZiLT5waXRjaGVzWzBdIC8gc3RyaWRlX2RpdjsKIAkJeF9vZmZzZXQgPSB4Owog CQl5X29mZnNldCA9IHk7CiAJCXBsYW5lX3NpemUgPSAoc3JjX2ggLSAxKSA8PCAxNiB8IChzcmNf dyAtIDEpOworCQl0aWxlX2hlaWdodCA9IFBBR0VfU0laRSAvIHN0cmlkZV9kaXY7CisKKwkJaWYg KGZiLT5waXhlbF9mb3JtYXQgPT0gRFJNX0ZPUk1BVF9OVjEyKSB7CisJCQlpbnQgaGVpZ2h0X2lu X21lbSA9IChmYi0+b2Zmc2V0c1sxXS9mYi0+cGl0Y2hlc1swXSk7CisJCQkvKgorCQkJICogSWYg VVYgc3RhcnRzIGZyb20gbWlkZGxlIG9mIGEgcGFnZSwgdGhlbiBVViBzdGFydCBzaG91bGQKKwkJ CSAqIGJlIHByb2dyYW1tZWQgdG8gYmVnaW5uaW5nIG9mIHRoYXQgcGFnZS4gQW5kIG9mZnNldCBp bnRvIHRoYXQKKwkJCSAqIHBhZ2UgdG8gYmUgcHJvZ3JhbW1lZCBpbnRvIHktb2Zmc2V0CisJCQkg Ki8KKwkJCXRpbGVfcm93X2FkanVzdG1lbnQgPSBoZWlnaHRfaW5fbWVtICUgdGlsZV9oZWlnaHQ7 CisJCQlhdXhfZGlzdCA9IGZiLT5waXRjaGVzWzBdICogKGhlaWdodF9pbl9tZW0gLSB0aWxlX3Jv d19hZGp1c3RtZW50KTsKKwkJCWF1eF94X29mZnNldCA9IERJVl9ST1VORF9VUCh4LCAyKTsKKwkJ CWF1eF95X29mZnNldCA9IERJVl9ST1VORF9VUCh5LCAyKSArIHRpbGVfcm93X2FkanVzdG1lbnQ7 CisJCQkvKiBGb3IgdGlsZS1ZZiwgdXYtc3VicGxhbmUgdGlsZSB3aWR0aCBpcyAyeCBvZiBZLXN1 YnBsYW5lICovCisJCQlhdXhfc3RyaWRlID0gZmItPm1vZGlmaWVyWzBdID09IEk5MTVfRk9STUFU X01PRF9ZZl9USUxFRCA/CisJCQkJc3RyaWRlIC8gMiA6IHN0cmlkZTsKKwkJfQogCX0KIAlwbGFu ZV9vZmZzZXQgPSB5X29mZnNldCA8PCAxNiB8IHhfb2Zmc2V0OwogCkBAIC0zMTUzLDExICszMTgx LDE0IEBAIHN0YXRpYyB2b2lkIHNreWxha2VfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRy bV9jcnRjICpjcnRjLAogCUk5MTVfV1JJVEUoUExBTkVfT0ZGU0VUKHBpcGUsIDApLCBwbGFuZV9v ZmZzZXQpOwogCUk5MTVfV1JJVEUoUExBTkVfU0laRShwaXBlLCAwKSwgcGxhbmVfc2l6ZSk7CiAJ STkxNV9XUklURShQTEFORV9TVFJJREUocGlwZSwgMCksIHN0cmlkZSk7CisJSTkxNV9XUklURShQ TEFORV9BVVhfRElTVChwaXBlLCAwKSwgYXV4X2Rpc3QgfCBhdXhfc3RyaWRlKTsKKwlJOTE1X1dS SVRFKFBMQU5FX0FVWF9PRkZTRVQocGlwZSwgMCksIGF1eF95X29mZnNldCA8PCAxNiB8IGF1eF94 X29mZnNldCk7CiAKIAlpZiAoc2NhbGVyX2lkID49IDApIHsKIAkJdWludDMyX3QgcHNfY3RybCA9 IDA7CiAKIAkJV0FSTl9PTighZHN0X3cgfHwgIWRzdF9oKTsKKwogCQlwc19jdHJsID0gUFNfU0NB TEVSX0VOIHwgUFNfUExBTkVfU0VMKDApIHwKIAkJCWNydGNfc3RhdGUtPnNjYWxlcl9zdGF0ZS5z Y2FsZXJzW3NjYWxlcl9pZF0ubW9kZTsKIAkJSTkxNV9XUklURShTS0xfUFNfQ1RSTChwaXBlLCBz Y2FsZXJfaWQpLCBwc19jdHJsKTsKQEAgLTMxNjYsNiArMzE5Nyw3IEBAIHN0YXRpYyB2b2lkIHNr eWxha2VfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQlJOTE1 X1dSSVRFKFNLTF9QU19XSU5fU1oocGlwZSwgc2NhbGVyX2lkKSwgKGRzdF93IDw8IDE2KSB8IGRz dF9oKTsKIAkJSTkxNV9XUklURShQTEFORV9QT1MocGlwZSwgMCksIDApOwogCX0gZWxzZSB7CisJ CVdBUk5fT04oZmItPnBpeGVsX2Zvcm1hdCA9PSBEUk1fRk9STUFUX05WMTIpOwogCQlJOTE1X1dS SVRFKFBMQU5FX1BPUyhwaXBlLCAwKSwgKGRzdF95IDw8IDE2KSB8IGRzdF94KTsKIAl9CiAKQEAg LTEzMDkwLDYgKzEzMTIyLDEyIEBAIGludGVsX2NoZWNrX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRy bV9wbGFuZSAqcGxhbmUsCiAJCQlpbnRlbF9jcnRjLT5hdG9taWMudXBkYXRlX3dtID0gdHJ1ZTsK IAl9CiAKKwkvKiBBZGp1c3QgKG1hY3JvKXBpeGVsIGJvdW5kYXJ5ICovCisJaWYgKGZiICYmIGZv cm1hdF9pc195dXYoZmItPnBpeGVsX2Zvcm1hdCkpIHsKKwkJc3JjLT54MSAmPSB+MHgxMDAwMDsK KwkJc3JjLT54MiAmPSB+MHgxMDAwMDsKKwl9CisKIAlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4g Pj0gOSkgewogCQlyZXQgPSBza2xfdXBkYXRlX3NjYWxlcl91c2VycyhpbnRlbF9jcnRjLCBjcnRj X3N0YXRlLAogCQkJdG9faW50ZWxfcGxhbmUocGxhbmUpLCBzdGF0ZSwgMCk7Ci0tIAoxLjcuOS41 CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=