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: Thu, 30 Apr 2015 20:43:14 -0700 Message-ID: <1430451795-9657-11-git-send-email-chandra.konduru@intel.com> References: <1430451795-9657-1-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 mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 2E6426E8BB for ; Thu, 30 Apr 2015 20:44:22 -0700 (PDT) In-Reply-To: <1430451795-9657-1-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 cm9ncmFtbWluZy4KClNpZ25lZC1vZmYtYnk6IENoYW5kcmEgS29uZHVydSA8Y2hhbmRyYS5rb25k dXJ1QGludGVsLmNvbT4KVGVzdGNhc2U6IGlndC9rbXNfbnYxMgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2F0b21pY19wbGFuZS5jIHwgICAgMiArKwogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGlzcGxheS5jICAgICAgfCAgIDM5ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrCiAyIGZpbGVzIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWNfcGxhbmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2F0b21pY19wbGFuZS5jCmluZGV4IGEyN2VlOGMuLjg0Y2Q5ZmMgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pY19wbGFuZS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pY19wbGFuZS5jCkBAIC0xNzMsMTAgKzE3MywxMiBA QCBzdGF0aWMgaW50IGludGVsX3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5lICpw bGFuZSwKIAkJICogOTAvMjcwIGlzIG5vdCBhbGxvd2VkIHdpdGggUkdCNjQgMTY6MTY6MTY6MTYs CiAJCSAqIFJHQiAxNi1iaXQgNTo2OjUsIGFuZCBJbmRleGVkIDgtYml0LgogCQkgKiBUQkQ6IEFk ZCBSR0I2NCBjYXNlIG9uY2UgaXRzIGFkZGVkIGluIHN1cHBvcnRlZCBmb3JtYXQgbGlzdC4KKwkJ ICogVEJEOiBSZW1vdmUgTlYxMiwgb25jZSBpdHMgOTAvMjcwIHJlbWFwcGluZyBpcyBzdXBwb3J0 ZWQKIAkJICovCiAJCXN3aXRjaCAoc3RhdGUtPmZiLT5waXhlbF9mb3JtYXQpIHsKIAkJY2FzZSBE Uk1fRk9STUFUX0M4OgogCQljYXNlIERSTV9GT1JNQVRfUkdCNTY1OgorCQljYXNlIERSTV9GT1JN QVRfTlYxMjoKIAkJCURSTV9ERUJVR19LTVMoIlVuc3VwcG9ydGVkIHBpeGVsIGZvcm1hdCAlcyBm b3IgOTAvMjcwIVxuIiwKIAkJCQkJZHJtX2dldF9mb3JtYXRfbmFtZShzdGF0ZS0+ZmItPnBpeGVs X2Zvcm1hdCkpOwogCQkJcmV0dXJuIC1FSU5WQUw7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKaW5kZXggZTc0Nzc2Ni4uYzlkNWNjOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYwpAQCAtMzAyNiw2ICszMDI2LDkgQEAgdTMyIHNrbF9wbGFuZV9jdGxfZm9ybWF0KHVp bnQzMl90IHBpeGVsX2Zvcm1hdCkKIAljYXNlIERSTV9GT1JNQVRfVllVWToKIAkJcGxhbmVfY3Rs X2Zvcm1hdCA9IFBMQU5FX0NUTF9GT1JNQVRfWVVWNDIyIHwgUExBTkVfQ1RMX1lVVjQyMl9WWVVZ OwogCQlicmVhazsKKwljYXNlIERSTV9GT1JNQVRfTlYxMjoKKwkJcGxhbmVfY3RsX2Zvcm1hdCA9 IFBMQU5FX0NUTF9GT1JNQVRfTlYxMjsKKwkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJQlVHKCk7CiAJ fQpAQCAtMzA5NSw2ICszMDk4LDggQEAgc3RhdGljIHZvaWQgc2t5bGFrZV91cGRhdGVfcHJpbWFy eV9wbGFuZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJaW50IHNyY194ID0gMCwgc3JjX3kgPSAw LCBzcmNfdyA9IDAsIHNyY19oID0gMDsKIAlpbnQgZHN0X3ggPSAwLCBkc3RfeSA9IDAsIGRzdF93 ID0gMCwgZHN0X2ggPSAwOwogCWludCBzY2FsZXJfaWQgPSAtMTsKKwl1MzIgYXV4X2Rpc3QgPSAw LCBhdXhfeF9vZmZzZXQgPSAwLCBhdXhfeV9vZmZzZXQgPSAwLCBhdXhfc3RyaWRlID0gMDsKKwl1 MzIgdGlsZV9yb3dfYWRqdXN0bWVudCA9IDA7CiAKIAlwbGFuZSA9IGNydGMtPnByaW1hcnk7CiAJ cGxhbmVfc3RhdGUgPSB0b19pbnRlbF9wbGFuZV9zdGF0ZShwbGFuZS0+c3RhdGUpOwpAQCAtMzE1 MiwxMSArMzE1NywzNSBAQCBzdGF0aWMgdm9pZCBza3lsYWtlX3VwZGF0ZV9wcmltYXJ5X3BsYW5l KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJeF9vZmZzZXQgPSBzdHJpZGUgKiB0aWxlX2hlaWdo dCAtIHkgLSBzcmNfaDsKIAkJeV9vZmZzZXQgPSB4OwogCQlwbGFuZV9zaXplID0gKHNyY193IC0g MSkgPDwgMTYgfCAoc3JjX2ggLSAxKTsKKwkJLyoKKwkJICogVEJEOiBGb3IgTlYxMiA5MC8yNzAg cm90YXRpb24sIFkgYW5kIFVWIHN1YnBsYW5lcyBzaG91bGQKKwkJICogYmUgdHJlYXRlZCBhcyBz ZXBhcmF0ZSBzdXJmYWNlcyBhbmQgR1RUIHJlbWFwcGluZyBmb3IKKwkJICogcm90YXRpb24gc2hv dWxkIGJlIGRvbmUgc2VwYXJhdGVseSBmb3IgZWFjaCBzdWJwbGFuZS4KKwkJICogRW5hYmxlIHN1 cHBvcnQgb25jZSBzZXBlcmF0ZSByZW1hcHBpbmdzIGFyZSBhdmFpbGFibGUuCisJCSAqLwogCX0g ZWxzZSB7CiAJCXN0cmlkZSA9IGZiLT5waXRjaGVzWzBdIC8gc3RyaWRlX2RpdjsKIAkJeF9vZmZz ZXQgPSB4OwogCQl5X29mZnNldCA9IHk7CiAJCXBsYW5lX3NpemUgPSAoc3JjX2ggLSAxKSA8PCAx NiB8IChzcmNfdyAtIDEpOworCQl0aWxlX2hlaWdodCA9IFBBR0VfU0laRSAvIHN0cmlkZV9kaXY7 CisKKwkJaWYgKGZiLT5waXhlbF9mb3JtYXQgPT0gRFJNX0ZPUk1BVF9OVjEyKSB7CisJCQlpbnQg aGVpZ2h0X2luX21lbSA9IChmYi0+b2Zmc2V0c1sxXS9mYi0+cGl0Y2hlc1swXSk7CisJCQkvKgor CQkJICogSWYgVVYgc3RhcnRzIGZyb20gbWlkZGxlIG9mIGEgcGFnZSwgdGhlbiBVViBzdGFydCBz aG91bGQKKwkJCSAqIGJlIHByb2dyYW1tZWQgdG8gYmVnaW5uaW5nIG9mIHRoYXQgcGFnZS4gQW5k IG9mZnNldCBpbnRvIHRoYXQKKwkJCSAqIHBhZ2UgdG8gYmUgcHJvZ3JhbW1lZCBpbnRvIHktb2Zm c2V0CisJCQkgKi8KKwkJCXRpbGVfcm93X2FkanVzdG1lbnQgPSBoZWlnaHRfaW5fbWVtICUgdGls ZV9oZWlnaHQ7CisJCQlhdXhfZGlzdCA9IGZiLT5waXRjaGVzWzBdICogKGhlaWdodF9pbl9tZW0g LSB0aWxlX3Jvd19hZGp1c3RtZW50KTsKKwkJCWF1eF94X29mZnNldCA9IERJVl9ST1VORF9VUChw bGFuZV9zdGF0ZS0+c3JjLngxLCAyKTsKKwkJCWF1eF95X29mZnNldCA9IERJVl9ST1VORF9VUChw bGFuZV9zdGF0ZS0+c3JjLnkxLCAyKSArCisJCQkJdGlsZV9yb3dfYWRqdXN0bWVudDsKKwkJCS8q IEZvciB0aWxlLVlmLCB1di1zdWJwbGFuZSB0aWxlIHdpZHRoIGlzIDJ4IG9mIFktc3VicGxhbmUg Ki8KKwkJCWF1eF9zdHJpZGUgPSBmYi0+bW9kaWZpZXJbMF0gPT0gSTkxNV9GT1JNQVRfTU9EX1lm X1RJTEVEID8KKwkJCQlzdHJpZGUgLyAyIDogc3RyaWRlOworCQl9CiAJfQogCXBsYW5lX29mZnNl dCA9IHlfb2Zmc2V0IDw8IDE2IHwgeF9vZmZzZXQ7CiAKQEAgLTMxNjQsMTEgKzMxOTMsMTQgQEAg c3RhdGljIHZvaWQgc2t5bGFrZV91cGRhdGVfcHJpbWFyeV9wbGFuZShzdHJ1Y3QgZHJtX2NydGMg KmNydGMsCiAJSTkxNV9XUklURShQTEFORV9PRkZTRVQocGlwZSwgMCksIHBsYW5lX29mZnNldCk7 CiAJSTkxNV9XUklURShQTEFORV9TSVpFKHBpcGUsIDApLCBwbGFuZV9zaXplKTsKIAlJOTE1X1dS SVRFKFBMQU5FX1NUUklERShwaXBlLCAwKSwgc3RyaWRlKTsKKwlJOTE1X1dSSVRFKFBMQU5FX0FV WF9ESVNUKHBpcGUsIDApLCBhdXhfZGlzdCB8IGF1eF9zdHJpZGUpOworCUk5MTVfV1JJVEUoUExB TkVfQVVYX09GRlNFVChwaXBlLCAwKSwgYXV4X3lfb2Zmc2V0IDw8IDE2IHwgYXV4X3hfb2Zmc2V0 KTsKIAogCWlmIChzY2FsZXJfaWQgPj0gMCkgewogCQl1aW50MzJfdCBwc19jdHJsID0gMDsKIAog CQlXQVJOX09OKCFkc3RfdyB8fCAhZHN0X2gpOworCiAJCXBzX2N0cmwgPSBQU19TQ0FMRVJfRU4g fCBQU19QTEFORV9TRUwoMCkgfAogCQkJY3J0Y19zdGF0ZS0+c2NhbGVyX3N0YXRlLnNjYWxlcnNb c2NhbGVyX2lkXS5tb2RlOwogCQlJOTE1X1dSSVRFKFNLTF9QU19DVFJMKHBpcGUsIHNjYWxlcl9p ZCksIHBzX2N0cmwpOwpAQCAtMzE3Nyw2ICszMjA5LDcgQEAgc3RhdGljIHZvaWQgc2t5bGFrZV91 cGRhdGVfcHJpbWFyeV9wbGFuZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJCUk5MTVfV1JJVEUo U0tMX1BTX1dJTl9TWihwaXBlLCBzY2FsZXJfaWQpLCAoZHN0X3cgPDwgMTYpIHwgZHN0X2gpOwog CQlJOTE1X1dSSVRFKFBMQU5FX1BPUyhwaXBlLCAwKSwgMCk7CiAJfSBlbHNlIHsKKwkJV0FSTl9P TihmYi0+cGl4ZWxfZm9ybWF0ID09IERSTV9GT1JNQVRfTlYxMik7CiAJCUk5MTVfV1JJVEUoUExB TkVfUE9TKHBpcGUsIDApLCAoZHN0X3kgPDwgMTYpIHwgZHN0X3gpOwogCX0KIApAQCAtMTMwMjYs NiArMTMwNTksMTIgQEAgaW50ZWxfY2hlY2tfcHJpbWFyeV9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5l ICpwbGFuZSwKIAkJCWludGVsX2NydGMtPmF0b21pYy51cGRhdGVfd20gPSB0cnVlOwogCX0KIAor CS8qIEFkanVzdCAobWFjcm8pcGl4ZWwgYm91bmRhcnkgKi8KKwlpZiAoZmIgJiYgZm9ybWF0X2lz X3l1dihmYi0+cGl4ZWxfZm9ybWF0KSkgeworCQlzcmMtPngxICY9IH4weDEwMDAwOworCQlzcmMt PngyICY9IH4weDEwMDAwOworCX0KKwogCWlmIChJTlRFTF9JTkZPKGRldiktPmdlbiA+PSA5KSB7 CiAJCXJldCA9IHNrbF91cGRhdGVfc2NhbGVyX3VzZXJzKGludGVsX2NydGMsIGNydGNfc3RhdGUs CiAJCQl0b19pbnRlbF9wbGFuZShwbGFuZSksIHN0YXRlLCAwKTsKLS0gCjEuNy45LjUKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWls aW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==