From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mahesh Kumar Subject: [PATCH 3/3] drm/i915/skl+: consider max supported plane pixel rate while scaling Date: Fri, 26 May 2017 20:45:46 +0530 Message-ID: <20170526151546.25025-4-mahesh1.kumar@intel.com> References: <20170526151546.25025-1-mahesh1.kumar@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0A4516EDAC for ; Fri, 26 May 2017 15:12:17 +0000 (UTC) In-Reply-To: <20170526151546.25025-1-mahesh1.kumar@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: paulo.r.zanoni@intel.com, maarten.lankhorst@intel.com List-Id: intel-gfx@lists.freedesktop.org QSBkaXNwbGF5IHJlc29sdXRpb24gaXMgb25seSBzdXBwb3J0ZWQgaWYgaXQgbWVldHMgYWxsIHRo ZSByZXN0cmljdGlvbnMKYmVsb3cgZm9yIE1heGltdW0gUGlwZSBQaXhlbCBSYXRlLgoKVGhlIGRp c3BsYXkgcmVzb2x1dGlvbiBtdXN0IGZpdCB3aXRoaW4gdGhlIG1heGltdW0gcGl4ZWwgcmF0ZSBv dXRwdXQKZnJvbSB0aGUgcGlwZS4gTWFrZSBzdXJlIHRoYXQgdGhlIGRpc3BsYXkgcGlwZSBpcyBh YmxlIHRvIGZlZWQgcGl4ZWxzIGF0CmEgcmF0ZSByZXF1aXJlZCB0byBzdXBwb3J0IHRoZSBkZXNp cmVkIHJlc29sdXRpb24uCkZvciBlYWNoIGVuYWJsZWQgcGxhbmUgb24gdGhlIHBpcGUgewogICAg SWYgcGxhbmUgc2NhbGluZyBlbmFibGVkIHsKCUhvcml6b250YWwgZG93biBzY2FsZSBhbW91bnQg PSBNYXhpbXVtWzEsIHBsYW5lIGhvcml6b250YWwgc2l6ZSAvCgkJICAgIHNjYWxlciBob3Jpem9u dGFsIHdpbmRvdyBzaXplXQoJVmVydGljYWwgZG93biBzY2FsZSBhbW91bnQgPSBNYXhpbXVtWzEs IHBsYW5lIHZlcnRpY2FsIHNpemUgLwoJCSAgICBzY2FsZXIgdmVydGljYWwgd2luZG93IHNpemVd CglQbGFuZSBkb3duIHNjYWxlIGFtb3VudCA9IEhvcml6b250YWwgZG93biBzY2FsZSBhbW91bnQg KgoJCSAgICBWZXJ0aWNhbCBkb3duIHNjYWxlIGFtb3VudAoJUGxhbmUgUmF0aW8gPSAxIC8gUGxh bmUgZG93biBzY2FsZSBhbW91bnQKICAgIH0KICAgIEVsc2UgewoJUGxhbmUgUmF0aW8gPSAxCiAg ICB9CiAgICBJZiBwbGFuZSBzb3VyY2UgcGl4ZWwgZm9ybWF0IGlzIDY0IGJpdHMgcGVyIHBpeGVs IHsKCVBsYW5lIFJhdGlvID0gUGxhbmUgUmF0aW8gKiA4LzkKICAgIH0KfQoKUGlwZSBSYXRpbyA9 IE1pbmltdW0gUGxhbmUgUmF0aW8gb2YgYWxsIGVuYWJsZWQgcGxhbmVzIG9uIHRoZSBwaXBlCgpJ ZiBwaXBlIHNjYWxpbmcgaXMgZW5hYmxlZCB7CiAgICBIb3Jpem9udGFsIGRvd24gc2NhbGUgYW1v dW50ID0gTWF4aW11bVsxLCBwaXBlIGhvcml6b250YWwgc291cmNlIHNpemUgLwoJCXNjYWxlciBo b3Jpem9udGFsIHdpbmRvdyBzaXplXQogICAgVmVydGljYWwgZG93biBzY2FsZSBhbW91bnQgPSBN YXhpbXVtWzEsIHBpcGUgdmVydGljYWwgc291cmNlIHNpemUgLwoJCXNjYWxlciB2ZXJ0aWNhbCB3 aW5kb3cgc2l6ZV0KICAgIE5vdGU6IFRoZSBwcm9ncmVzc2l2ZSBmZXRjaCAtIGludGVybGFjZSBk aXNwbGF5IG1vZGUgaXMgZXF1aXZhbGVudCB0byBhCgkJMi4wIHZlcnRpY2FsIGRvd24gc2NhbGUK ICAgIFBpcGUgZG93biBzY2FsZSBhbW91bnQgPSBIb3Jpem9udGFsIGRvd24gc2NhbGUgYW1vdW50 ICoKCQlWZXJ0aWNhbCBkb3duIHNjYWxlIGFtb3VudAogICAgUGlwZSBSYXRpbyA9IFBpcGUgUmF0 aW8gLyBQaXBlIGRvd24gc2NhbGUgYW1vdW50Cn0KClBpcGUgbWF4aW11bSBwaXhlbCByYXRlID0g Q0RDTEsgZnJlcXVlbmN5ICogUGlwZSBSYXRpbwoKSW4gdGhpcyBwYXRjaCBvdXIgY2FsY3VsYXRp b24gaXMgYmFzZWQgb24gcGlwZSBkb3duc2NhbGUgYW1vdW50CihwbGFuZSBtYXggZG93bnNjYWxl IGFtb3VudCAqIHBpcGUgZG93bnNjYWxlIGFtb3VudCkgaW5zdGVhZCBvZiBQaXBlClJhdGlvLiBT bywKbWF4IHN1cHBvcnRlZCBjcnRjIGNsb2NrIHdpdGggZ2l2ZW4gc2NhbGluZyA9IENEQ0xLIC8g cGlwZSBkb3duc2NhbGUuCkZsaXAgd2lsbCBmYWlsIGlmLApjdXJyZW50IGNydGMgY2xvY2sgPiBt YXggc3VwcG9ydGVkIGNyY3QgY2xvY2sgd2l0aCBnaXZlbiBzY2FsaW5nLgoKQ2hhbmdlcyBzaW5j ZSBWMToKIC0gc2VwYXJhdGUgb3V0IGZpeGVkXzE2XzE2IHdyYXBwZXIgQVBJIGRlZmluaXRpb24K Q2hhbmdlcyBzaW5jZSBWMjoKIC0gRml4IGJ1Z2d5IGNydGMgIWFjdGl2ZSBjb25kaXRpb24gKE1h YXJ0ZW4pCiAtIHVzZSBpbnRlbF93bV9wbGFuZV92aXNpYmxlIHdyYXBwZXIgYXMgcGVyIE1hYXJ0 ZW4ncyBzdWdnZXN0aW9uCkNoYW5nZXMgc2luY2UgVjM6CiAtIENoYW5nZSBmYWlsdXJlIHJldHVy biBmcm9tIEVSQU5HRSB0byBFSU5WQUwKQ2hhbmdlcyBzaW5jZSBWNDoKIC0gUmViYXNlIGJhc2Vk IG9uIHByZXZpb3VzIHBhdGNoIGNoYW5nZXMKQ2hhbmdlcyBzaW5jZSBWNToKIC0gcmV0dXJuIEVJ TlZBTCBpbnN0ZWFkIG9mIGNvbnRpbnVlIChNYWFydGVuKQpDaGFuZ2VzIHNpbmNlIFY2OgogLSBJ bXByb3ZlIGNvbW1pdCBtZXNzYWdlCiAtIEFkZHJlc3MgcmV2aWV3IGNvbW1lbnQKQ2hhbmdlcyBz aW5jZSBWNzoKIC0gdXNlICFlbmFibGUgaW5zdGVhZCBvZiAhYWN0aXZlCiAtIHJlbmFtZSBjb25m aWcgdmFyaWFibGUgZm9yIGNvbnNpc3RlbmN5IChNYWFydGVuKQoKU2lnbmVkLW9mZi1ieTogTWFo ZXNoIEt1bWFyIDxtYWhlc2gxLmt1bWFyQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IE1hdHQgUm9w ZXIgPG1hdHRoZXcuZC5yb3BlckBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBNYWFydGVuIExhbmto b3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8ICAzICsrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaCAgICAgfCAgMiArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jICAg ICAgfCA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDMgZmlsZXMgY2hh bmdlZCwgOTIgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpp bmRleCA3ZmEyMWRmNWJjZDcuLmZiMmU0M2QzZWI1YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rpc3BsYXkuYwpAQCAtMTExNzcsNiArMTExNzcsOSBAQCBzdGF0aWMgaW50IGludGVsX2NydGNf YXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCXJldCA9IHNrbF91cGRhdGVf c2NhbGVyX2NydGMocGlwZV9jb25maWcpOwogCiAJCWlmICghcmV0KQorCQkJcmV0ID0gc2tsX2No ZWNrX3BpcGVfbWF4X3BpeGVsX3JhdGUoaW50ZWxfY3J0YywKKwkJCQkJCQkgICAgcGlwZV9jb25m aWcpOworCQlpZiAoIXJldCkKIAkJCXJldCA9IGludGVsX2F0b21pY19zZXR1cF9zY2FsZXJzKGRl dl9wcml2LCBpbnRlbF9jcnRjLAogCQkJCQkJCSBwaXBlX2NvbmZpZyk7CiAJfQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaAppbmRleCBiZDUwMDk3N2IzZmMuLjkzYWZhYzRhODNmYSAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTE4ODUsNiArMTg4NSw4IEBAIGJvb2wgc2tsX2RkYl9hbGxv Y2F0aW9uX292ZXJsYXBzKGNvbnN0IHN0cnVjdCBza2xfZGRiX2VudHJ5ICoqZW50cmllcywKIAkJ CQkgaW50IGlnbm9yZSk7CiBib29sIGlsa19kaXNhYmxlX2xwX3dtKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpOwogaW50IHNhbml0aXplX3JjNl9vcHRpb24oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LCBpbnQgZW5hYmxlX3JjNik7CitpbnQgc2tsX2NoZWNrX3BpcGVfbWF4X3BpeGVs X3JhdGUoc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMsCisJCQkJICBzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3N0YXRlKTsKIHN0YXRpYyBpbmxpbmUgaW50IGludGVsX2VuYWJsZV9yYzYo dm9pZCkKIHsKIAlyZXR1cm4gaTkxNS5lbmFibGVfcmM2OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMK aW5kZXggNDZhY2E1Y2JjMDQ3Li5lYWQzNDZmMWRlYjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3BtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0u YwpAQCAtMzg2OCw2ICszODY4LDkzIEBAIHNrbF9wbGFuZV9kb3duc2NhbGVfYW1vdW50KGNvbnN0 IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUsCiAJcmV0dXJuIG11bF9maXhlZDE2KGRv d25zY2FsZV93LCBkb3duc2NhbGVfaCk7CiB9CiAKK3N0YXRpYyB1aW50X2ZpeGVkXzE2XzE2X3QK K3NrbF9waXBlX2Rvd25zY2FsZV9hbW91bnQoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGUpCit7CisJdWludF9maXhlZF8xNl8xNl90IHBpcGVfZG93bnNjYWxlID0gdTMy X3RvX2ZpeGVkXzE2XzE2KDEpOworCisJaWYgKCFjcnRjX3N0YXRlLT5iYXNlLmVuYWJsZSkKKwkJ cmV0dXJuIHBpcGVfZG93bnNjYWxlOworCisJaWYgKGNydGNfc3RhdGUtPnBjaF9wZml0LmVuYWJs ZWQpIHsKKwkJdWludDMyX3Qgc3JjX3csIHNyY19oLCBkc3RfdywgZHN0X2g7CisJCXVpbnQzMl90 IHBmaXRfc2l6ZSA9IGNydGNfc3RhdGUtPnBjaF9wZml0LnNpemU7CisJCXVpbnRfZml4ZWRfMTZf MTZfdCBmcF93X3JhdGlvLCBmcF9oX3JhdGlvOworCQl1aW50X2ZpeGVkXzE2XzE2X3QgZG93bnNj YWxlX2gsIGRvd25zY2FsZV93OworCisJCXNyY193ID0gY3J0Y19zdGF0ZS0+cGlwZV9zcmNfdzsK KwkJc3JjX2ggPSBjcnRjX3N0YXRlLT5waXBlX3NyY19oOworCQlkc3RfdyA9IHBmaXRfc2l6ZSA+ PiAxNjsKKwkJZHN0X2ggPSBwZml0X3NpemUgJiAweGZmZmY7CisKKwkJaWYgKCFkc3RfdyB8fCAh ZHN0X2gpCisJCQlyZXR1cm4gcGlwZV9kb3duc2NhbGU7CisKKwkJZnBfd19yYXRpbyA9IGZpeGVk XzE2XzE2X2RpdihzcmNfdywgZHN0X3cpOworCQlmcF9oX3JhdGlvID0gZml4ZWRfMTZfMTZfZGl2 KHNyY19oLCBkc3RfaCk7CisJCWRvd25zY2FsZV93ID0gbWF4X2ZpeGVkXzE2XzE2KGZwX3dfcmF0 aW8sIHUzMl90b19maXhlZF8xNl8xNigxKSk7CisJCWRvd25zY2FsZV9oID0gbWF4X2ZpeGVkXzE2 XzE2KGZwX2hfcmF0aW8sIHUzMl90b19maXhlZF8xNl8xNigxKSk7CisKKwkJcGlwZV9kb3duc2Nh bGUgPSBtdWxfZml4ZWQxNihkb3duc2NhbGVfdywgZG93bnNjYWxlX2gpOworCX0KKworCXJldHVy biBwaXBlX2Rvd25zY2FsZTsKK30KKworaW50IHNrbF9jaGVja19waXBlX21heF9waXhlbF9yYXRl KHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjLAorCQkJCSAgc3RydWN0IGludGVsX2NydGNf c3RhdGUgKmNzdGF0ZSkKK3sKKwlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUgPSAm Y3N0YXRlLT5iYXNlOworCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSA9IGNydGNfc3Rh dGUtPnN0YXRlOworCXN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lOworCWNvbnN0IHN0cnVjdCBkcm1f cGxhbmVfc3RhdGUgKnBzdGF0ZTsKKwlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKmludGVsX3Bz dGF0ZTsKKwlpbnQgY3J0Y19jbG9jaywgY2RjbGs7CisJdWludDMyX3QgcGlwZV9tYXhfcGl4ZWxf cmF0ZTsKKwl1aW50X2ZpeGVkXzE2XzE2X3QgcGlwZV9kb3duc2NhbGU7CisJdWludF9maXhlZF8x Nl8xNl90IG1heF9kb3duc2NhbGUgPSB1MzJfdG9fZml4ZWRfMTZfMTYoMSk7CisKKwlpZiAoIWNz dGF0ZS0+YmFzZS5lbmFibGUpCisJCXJldHVybiAwOworCisJZHJtX2F0b21pY19jcnRjX3N0YXRl X2Zvcl9lYWNoX3BsYW5lX3N0YXRlKHBsYW5lLCBwc3RhdGUsIGNydGNfc3RhdGUpIHsKKwkJdWlu dF9maXhlZF8xNl8xNl90IHBsYW5lX2Rvd25zY2FsZTsKKwkJdWludF9maXhlZF8xNl8xNl90IGZw XzlfZGl2XzggPSBmaXhlZF8xNl8xNl9kaXYoOSwgOCk7CisJCWludCBicHA7CisKKwkJaWYgKCFp bnRlbF93bV9wbGFuZV92aXNpYmxlKGNzdGF0ZSwKKwkJCQkJICAgIHRvX2ludGVsX3BsYW5lX3N0 YXRlKHBzdGF0ZSkpKQorCQkJY29udGludWU7CisKKwkJaWYgKFdBUk5fT04oIXBzdGF0ZS0+ZmIp KQorCQkJcmV0dXJuIC1FSU5WQUw7CisKKwkJaW50ZWxfcHN0YXRlID0gdG9faW50ZWxfcGxhbmVf c3RhdGUocHN0YXRlKTsKKwkJcGxhbmVfZG93bnNjYWxlID0gc2tsX3BsYW5lX2Rvd25zY2FsZV9h bW91bnQoY3N0YXRlLAorCQkJCQkJCSAgICAgaW50ZWxfcHN0YXRlKTsKKwkJYnBwID0gcHN0YXRl LT5mYi0+Zm9ybWF0LT5jcHBbMF0gKiA4OworCQlpZiAoYnBwID09IDY0KQorCQkJcGxhbmVfZG93 bnNjYWxlID0gbXVsX2ZpeGVkMTYocGxhbmVfZG93bnNjYWxlLAorCQkJCQkJICAgICAgZnBfOV9k aXZfOCk7CisKKwkJbWF4X2Rvd25zY2FsZSA9IG1heF9maXhlZF8xNl8xNihwbGFuZV9kb3duc2Nh bGUsIG1heF9kb3duc2NhbGUpOworCX0KKwlwaXBlX2Rvd25zY2FsZSA9IHNrbF9waXBlX2Rvd25z Y2FsZV9hbW91bnQoY3N0YXRlKTsKKworCXBpcGVfZG93bnNjYWxlID0gbXVsX2ZpeGVkMTYocGlw ZV9kb3duc2NhbGUsIG1heF9kb3duc2NhbGUpOworCisJY3J0Y19jbG9jayA9IGNydGNfc3RhdGUt PmFkanVzdGVkX21vZGUuY3J0Y19jbG9jazsKKwljZGNsayA9IHRvX2ludGVsX2F0b21pY19zdGF0 ZShzdGF0ZSktPmNkY2xrLmxvZ2ljYWwuY2RjbGs7CisJcGlwZV9tYXhfcGl4ZWxfcmF0ZSA9IGRp dl9yb3VuZF91cF91MzJfZml4ZWQxNihjZGNsaywgcGlwZV9kb3duc2NhbGUpOworCisJaWYgKHBp cGVfbWF4X3BpeGVsX3JhdGUgPCBjcnRjX2Nsb2NrKSB7CisJCURSTV9FUlJPUigiTWF4IHN1cHBv cnRlZCBwaXhlbCBjbG9jayB3aXRoIHNjYWxpbmcgZXhjZWVkZWRcbiIpOworCQlyZXR1cm4gLUVJ TlZBTDsKKwl9CisKKwlyZXR1cm4gMDsKK30KKwogc3RhdGljIHVuc2lnbmVkIGludAogc2tsX3Bs YW5lX3JlbGF0aXZlX2RhdGFfcmF0ZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0 YXRlLAogCQkJICAgICBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwc3RhdGUsCi0tIAoy LjExLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=