From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chandra Konduru Subject: [PATCH 20/21 v2] drm/i915: Enable skylake primary plane scaling using shared scalers Date: Fri, 20 Mar 2015 17:04:41 -0700 Message-ID: <1426896282-23215-21-git-send-email-chandra.konduru@intel.com> References: <1426896282-23215-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 mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id DD7138A56F for ; Fri, 20 Mar 2015 17:05:35 -0700 (PDT) In-Reply-To: <1426896282-23215-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: ander.conselvan.de.oliveira@intel.com, daniel.vetter@intel.com List-Id: intel-gfx@lists.freedesktop.org VGhpcyBwYXRjaCBlbmFibGVzIHNreWxha2UgcHJpbWFyeSBwbGFuZSBkaXNwbGF5IHNjYWxpbmcg dXNpbmcgc2hhcmVkCnNjYWxlcnMgYXRvbWljIGRlc2dpbi4KCnYyOgotdXNlIHNpbmdsZSBjb3B5 IG9mIHNjYWxlciBsaW1pdHMgKE1hdHQpCgpTaWduZWQtb2ZmLWJ5OiBDaGFuZHJhIEtvbmR1cnUg PGNoYW5kcmEua29uZHVydUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZGlzcGxheS5jIHwgICA3NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiAx IGZpbGUgY2hhbmdlZCwgNzEgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggMTZkY2QzMS4uOTY1ODU5ZiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtMjg4NSw2ICsyODg1LDE2IEBAIHN0YXRpYyB2 b2lkIHNreWxha2VfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAog CXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CiAJaW50IHBpcGUgPSBpbnRlbF9jcnRj LT5waXBlOwogCXUzMiBwbGFuZV9jdGwsIHN0cmlkZV9kaXY7CisJc3RydWN0IGludGVsX2NydGNf c3RhdGUgKmNydGNfc3RhdGUgPSBpbnRlbF9jcnRjLT5jb25maWc7CisJc3RydWN0IGludGVsX3Bs YW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKKwlpbnQgc3JjX3ggPSAwLCBzcmNfeSA9IDAsIHNyY193 ID0gMCwgc3JjX2ggPSAwOworCWludCBkc3RfeCA9IDAsIGRzdF95ID0gMCwgZHN0X3cgPSAwLCBk c3RfaCA9IDA7CisJaW50IHNjYWxlcl9pZCA9IC0xOworCisJcGxhbmVfc3RhdGUgPSBjcnRjLT5w cmltYXJ5ID8KKwkJdG9faW50ZWxfcGxhbmVfc3RhdGUoY3J0Yy0+cHJpbWFyeS0+c3RhdGUpIDog TlVMTDsKKworCXNrbF9kZXRhY2hfc2NhbGVyKGNydGMsIGNydGMtPnByaW1hcnkpOwogCiAJaWYg KCFpbnRlbF9jcnRjLT5wcmltYXJ5X2VuYWJsZWQpIHsKIAkJSTkxNV9XUklURShQTEFORV9DVEwo cGlwZSwgMCksIDApOwpAQCAtMjk1MiwxMyArMjk2Miw0MiBAQCBzdGF0aWMgdm9pZCBza3lsYWtl X3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlzdHJpZGVfZGl2 ID0gaW50ZWxfZmJfc3RyaWRlX2FsaWdubWVudChkZXYsIGZiLT5tb2RpZmllclswXSwKIAkJCQkJ ICAgICAgIGZiLT5waXhlbF9mb3JtYXQpOwogCisJaWYgKHBsYW5lX3N0YXRlKSB7CisJCXNjYWxl cl9pZCA9IHBsYW5lX3N0YXRlLT5zY2FsZXJfaWQ7CisJCXNyY194ID0gcGxhbmVfc3RhdGUtPnNy Yy54MSA+PiAxNjsKKwkJc3JjX3kgPSBwbGFuZV9zdGF0ZS0+c3JjLnkxID4+IDE2OworCQlzcmNf dyA9IGRybV9yZWN0X3dpZHRoKCZwbGFuZV9zdGF0ZS0+c3JjKSA+PiAxNjsKKwkJc3JjX2ggPSBk cm1fcmVjdF9oZWlnaHQoJnBsYW5lX3N0YXRlLT5zcmMpID4+IDE2OworCQlkc3RfeCA9IHBsYW5l X3N0YXRlLT5kc3QueDE7CisJCWRzdF95ID0gcGxhbmVfc3RhdGUtPmRzdC55MTsKKwkJZHN0X3cg PSBkcm1fcmVjdF93aWR0aCgmcGxhbmVfc3RhdGUtPmRzdCk7CisJCWRzdF9oID0gZHJtX3JlY3Rf aGVpZ2h0KCZwbGFuZV9zdGF0ZS0+ZHN0KTsKKwl9CisKIAlJOTE1X1dSSVRFKFBMQU5FX0NUTChw aXBlLCAwKSwgcGxhbmVfY3RsKTsKIAotCUk5MTVfV1JJVEUoUExBTkVfUE9TKHBpcGUsIDApLCAw KTsKKwlpZiAoc3JjX3cgJiYgc3JjX2ggJiYgZHN0X3cgJiYgZHN0X2ggJiYgc2NhbGVyX2lkID49 IDApIHsKKwkJdWludDMyX3QgcHNfY3RybCA9IDA7CisKKwkJV0FSTl9PTih4ICE9IHNyY194IHx8 IHkgIT0gc3JjX3kpOworCQlwc19jdHJsID0gUFNfU0NBTEVSX0VOIHwgUFNfUExBTkVfU0VMKDAp IHwKKwkJCWNydGNfc3RhdGUtPnNjYWxlcl9zdGF0ZS5zY2FsZXJzW3NjYWxlcl9pZF0ubW9kZSB8 CisJCQljcnRjX3N0YXRlLT5zY2FsZXJfc3RhdGUuc2NhbGVyc1tzY2FsZXJfaWRdLmZpbHRlcjsK KwkJSTkxNV9XUklURShTS0xfUFNfQ1RSTChwaXBlLCBzY2FsZXJfaWQpLCBwc19jdHJsKTsKKwkJ STkxNV9XUklURShTS0xfUFNfUFdSX0dBVEUocGlwZSwgc2NhbGVyX2lkKSwgMCk7CisJCUk5MTVf V1JJVEUoU0tMX1BTX1dJTl9QT1MocGlwZSwgc2NhbGVyX2lkKSwgKGRzdF94IDw8IDE2KSB8IGRz dF95KTsKKwkJSTkxNV9XUklURShTS0xfUFNfV0lOX1NaKHBpcGUsIHNjYWxlcl9pZCksIChkc3Rf dyA8PCAxNikgfCBkc3RfaCk7CisKKwkJSTkxNV9XUklURShQTEFORV9QT1MocGlwZSwgMCksIDAp OworCQlJOTE1X1dSSVRFKFBMQU5FX1NJWkUocGlwZSwgMCksICgoc3JjX2ggLSAxKSA8PCAxNikg fCAoc3JjX3cgLSAxKSk7CisJfSBlbHNlIHsKKwkJSTkxNV9XUklURShQTEFORV9QT1MocGlwZSwg MCksIDApOworCQlJOTE1X1dSSVRFKFBMQU5FX1NJWkUocGlwZSwgMCksCisJCQkoaW50ZWxfY3J0 Yy0+Y29uZmlnLT5waXBlX3NyY19oIC0gMSkgPDwgMTYgfAorCQkJKGludGVsX2NydGMtPmNvbmZp Zy0+cGlwZV9zcmNfdyAtIDEpKTsKKwl9CisKIAlJOTE1X1dSSVRFKFBMQU5FX09GRlNFVChwaXBl LCAwKSwgKHkgPDwgMTYpIHwgeCk7Ci0JSTkxNV9XUklURShQTEFORV9TSVpFKHBpcGUsIDApLAot CQkgICAoaW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX3NyY19oIC0gMSkgPDwgMTYgfAotCQkgICAo aW50ZWxfY3J0Yy0+Y29uZmlnLT5waXBlX3NyY193IC0gMSkpOwogCUk5MTVfV1JJVEUoUExBTkVf U1RSSURFKHBpcGUsIDApLCBmYi0+cGl0Y2hlc1swXSAvIHN0cmlkZV9kaXYpOwogCUk5MTVfV1JJ VEUoUExBTkVfU1VSRihwaXBlLCAwKSwgaTkxNV9nZW1fb2JqX2dndHRfb2Zmc2V0KG9iaikpOwog CkBAIC0xMjYyMywxOSArMTI2NjIsMzMgQEAgaW50ZWxfY2hlY2tfcHJpbWFyeV9wbGFuZShzdHJ1 Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBkcm1fY3J0YyAqY3J0YyA9IHN0YXRlLT5iYXNl LmNydGM7CiAJc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGM7CisJc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKmNydGNfc3RhdGU7CiAJc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSBzdGF0 ZS0+YmFzZS5mYjsKIAlzdHJ1Y3QgZHJtX3JlY3QgKmRlc3QgPSAmc3RhdGUtPmRzdDsKIAlzdHJ1 Y3QgZHJtX3JlY3QgKnNyYyA9ICZzdGF0ZS0+c3JjOwogCWNvbnN0IHN0cnVjdCBkcm1fcmVjdCAq Y2xpcCA9ICZzdGF0ZS0+Y2xpcDsKKwlzdHJ1Y3QgaW50ZWxfY3J0Y19zY2FsZXJfc3RhdGUgKnNj YWxlcl9zdGF0ZTsKKwlpbnQgbWF4X3NjYWxlID0gRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5H OworCWludCBtaW5fc2NhbGUgPSBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkc7CiAJaW50IHJl dDsKIAogCWNydGMgPSBjcnRjID8gY3J0YyA6IHBsYW5lLT5jcnRjOwogCWludGVsX2NydGMgPSB0 b19pbnRlbF9jcnRjKGNydGMpOworCWNydGNfc3RhdGUgPSBzdGF0ZS0+YmFzZS5zdGF0ZSA/CisJ CWludGVsX2F0b21pY19nZXRfY3J0Y19zdGF0ZShzdGF0ZS0+YmFzZS5zdGF0ZSwgaW50ZWxfY3J0 YykgOiBOVUxMOworCXNjYWxlcl9zdGF0ZSA9IGNydGNfc3RhdGUgPyAmY3J0Y19zdGF0ZS0+c2Nh bGVyX3N0YXRlIDogTlVMTDsKKworCWlmIChJTlRFTF9JTkZPKGRldiktPmdlbiA+PSA5KSB7CisJ CWlmIChzY2FsZXJfc3RhdGUgJiYgc2NhbGVyX3N0YXRlLT5udW1fc2NhbGVycykgeworCQkJbWlu X3NjYWxlID0gMTsKKwkJCW1heF9zY2FsZSA9ICgxMDAgPDwgMTYpIC8gc2NhbGVyX3N0YXRlLT5t aW5faHNyOworCQl9CisJfQogCiAJcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja191cGRhdGUo cGxhbmUsIGNydGMsIGZiLAogCQkJCQkgICAgc3JjLCBkZXN0LCBjbGlwLAotCQkJCQkgICAgRFJN X1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAotCQkJCQkgICAgRFJNX1BMQU5FX0hFTFBFUl9OT19T Q0FMSU5HLAorCQkJCQkgICAgbWluX3NjYWxlLAorCQkJCQkgICAgbWF4X3NjYWxlLAogCQkJCQkg ICAgZmFsc2UsIHRydWUsICZzdGF0ZS0+dmlzaWJsZSk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJl dDsKQEAgLTEyNjgyLDYgKzEyNzM1LDEzIEBAIGludGVsX2NoZWNrX3ByaW1hcnlfcGxhbmUoc3Ry dWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJCQlpbnRlbF9jcnRjLT5hdG9taWMudXBkYXRlX3dtID0g dHJ1ZTsKIAl9CiAKKwlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0gOSkgeworCQlyZXQgPSBz a2xfdXBkYXRlX3NjYWxlcl91c2VycyhpbnRlbF9jcnRjLCBjcnRjX3N0YXRlLAorCQkJdG9faW50 ZWxfcGxhbmUocGxhbmUpLCBzdGF0ZSwgMCk7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gcmV0Owor CX0KKwogCXJldHVybiAwOwogfQogCkBAIC0xMjg2NSw2ICsxMjkyNSwxMSBAQCBzdGF0aWMgc3Ry dWN0IGRybV9wbGFuZSAqaW50ZWxfcHJpbWFyeV9wbGFuZV9jcmVhdGUoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwKIAogCXByaW1hcnktPmNhbl9zY2FsZSA9IGZhbHNlOwogCXByaW1hcnktPm1heF9k b3duc2NhbGUgPSAxOworCWlmIChJTlRFTF9JTkZPKGRldiktPmdlbiA+PSA5KSB7CisJCXByaW1h cnktPmNhbl9zY2FsZSA9IHRydWU7CisJCXByaW1hcnktPm1heF9kb3duc2NhbGUgPSAyOyAvKiB1 cGRhdGVkIGxhdGVyICovCisJCXByaW1hcnktPmdldF9jb2xvcmtleSA9IHNrbF9nZXRfY29sb3Jr ZXk7CisJfQogCXN0YXRlLT5zY2FsZXJfaWQgPSAtMTsKIAlwcmltYXJ5LT5waXBlID0gcGlwZTsK IAlwcmltYXJ5LT5wbGFuZSA9IHBpcGU7Ci0tIAoxLjcuOS41CgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=