From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH 2/3] drm/i915: Add support for scaling filters Date: Tue, 22 Oct 2019 15:29:45 +0530 Message-ID: <20191022095946.29354-3-shashank.sharma@intel.com> References: <20191022095946.29354-1-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20191022095946.29354-1-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VGhpcyBwYXRjaCBkb2VzIHRoZSBmb2xsb3dpbmc6Ci0gQ3JlYXRlcyB0aGUgQ1JUQyBwcm9wZXJ0 eSBmb3Igc2NhbGluZyBmaWx0ZXIgbW9kZSAoZm9yIEdFTjExIGFuZCArKS4KLSBBcHBsaWVzIHRo ZSBjaG9zZW4gZmlsdGVyIHZhbHVlIHdoaWxlIGVuYWJsaW5nIHRoZSBwYW5lbCBmaXR0ZXIuCi0g QWRkcyBDUlRDIHN0YXRlIHJlYWRvdXRzIGFuZCBjb21wYXJpc29ucy4KClNpZ25lZC1vZmYtYnk6 IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4KLS0tCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyB8IDU5ICsrKysrKysrKysrKysr KysrKystCiAxIGZpbGUgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggMWE1 MzNjY2RiNTRmLi4yMTk5M2Y5ZmQyYWUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZGlzcGxheS5jCkBAIC01NjE1LDExICs1NjE1LDM1IEBAIHN0YXRpYyB2b2lkIHNr eWxha2Vfc2NhbGVyX2Rpc2FibGUoc3RydWN0IGludGVsX2NydGMgKmNydGMpCiAJCXNrbF9kZXRh Y2hfc2NhbGVyKGNydGMsIGkpOwogfQogCitzdGF0aWMgdTMyCitpY2VsYWtlX2dldF9zY2FsZXJf ZmlsdGVyKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQoreworCWNv bnN0IHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUgPSAmY3J0Y19zdGF0ZS0+YmFzZTsKKwor CXN3aXRjaCAoc3RhdGUtPnNjYWxpbmdfZmlsdGVyKSB7CisJY2FzZSBEUk1fU0NBTElOR19GSUxU RVJfQklMSU5FQVI6CisJCXJldHVybiBQU19GSUxURVJfQklMSU5FQVI7CisJY2FzZSBEUk1fU0NB TElOR19GSUxURVJfRURHRV9FTkhBTkNFOgorCQlyZXR1cm4gUFNfRklMVEVSX0VER0VfRU5IQU5D RTsKKwljYXNlIERSTV9TQ0FMSU5HX0ZJTFRFUl9OTjoKKwljYXNlIERSTV9TQ0FMSU5HX0ZJTFRF Ul9OTl9JU19PTkxZOgorCQlyZXR1cm4gUFNfRklMVEVSX1BST0dSQU1NRUQ7CisJY2FzZSBEUk1f U0NBTElOR19GSUxURVJfSU5WQUxJRDoKKwkJRFJNX0VSUk9SKCJJZ25vcmluZyBpbnZhbGlkIHNj YWxlciBmaWx0ZXIgbW9kZVxuIik7CisJCXJldHVybiBQU19GSUxURVJfTUVESVVNOworCWNhc2Ug RFJNX1NDQUxJTkdfRklMVEVSX0RFRkFVTFQ6CisJY2FzZSBEUk1fU0NBTElOR19GSUxURVJfTUVE SVVNOgorCWRlZmF1bHQ6CisJCXJldHVybiBQU19GSUxURVJfTUVESVVNOworCX0KK30KKwogc3Rh dGljIHZvaWQgc2t5bGFrZV9wZml0X2VuYWJsZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkKIHsKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVsX2Ny dGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKIAllbnVtIHBpcGUgcGlwZSA9IGNydGMt PnBpcGU7CisJdTMyIHNjYWxlcl9maWx0ZXI7CiAJY29uc3Qgc3RydWN0IGludGVsX2NydGNfc2Nh bGVyX3N0YXRlICpzY2FsZXJfc3RhdGUgPQogCQkmY3J0Y19zdGF0ZS0+c2NhbGVyX3N0YXRlOwog CkBAIC01NjQwLDkgKzU2NjQsMTEgQEAgc3RhdGljIHZvaWQgc2t5bGFrZV9wZml0X2VuYWJsZShj b25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIAkJdXZfcmdiX2hwaGFz ZSA9IHNrbF9zY2FsZXJfY2FsY19waGFzZSgxLCBoc2NhbGUsIGZhbHNlKTsKIAkJdXZfcmdiX3Zw aGFzZSA9IHNrbF9zY2FsZXJfY2FsY19waGFzZSgxLCB2c2NhbGUsIGZhbHNlKTsKIAorCQlzY2Fs ZXJfZmlsdGVyID0gaWNlbGFrZV9nZXRfc2NhbGVyX2ZpbHRlcihjcnRjX3N0YXRlKTsKKwogCQlp ZCA9IHNjYWxlcl9zdGF0ZS0+c2NhbGVyX2lkOwogCQlJOTE1X1dSSVRFKFNLTF9QU19DVFJMKHBp cGUsIGlkKSwgUFNfU0NBTEVSX0VOIHwKLQkJCVBTX0ZJTFRFUl9NRURJVU0gfCBzY2FsZXJfc3Rh dGUtPnNjYWxlcnNbaWRdLm1vZGUpOworCQkJc2NhbGVyX2ZpbHRlciB8IHNjYWxlcl9zdGF0ZS0+ c2NhbGVyc1tpZF0ubW9kZSk7CiAJCUk5MTVfV1JJVEVfRlcoU0tMX1BTX1ZQSEFTRShwaXBlLCBp ZCksCiAJCQkgICAgICBQU19ZX1BIQVNFKDApIHwgUFNfVVZfUkdCX1BIQVNFKHV2X3JnYl92cGhh c2UpKTsKIAkJSTkxNV9XUklURV9GVyhTS0xfUFNfSFBIQVNFKHBpcGUsIGlkKSwKQEAgLTEyMTky LDYgKzEyMjE4LDEwIEBAIHN0YXRpYyB2b2lkIGludGVsX2R1bXBfcGlwZV9jb25maWcoY29uc3Qg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnLAogCQkJICAgICAgcGlwZV9jb25m aWctPnNjYWxlcl9zdGF0ZS5zY2FsZXJfdXNlcnMsCiAJCSAgICAgICAgICAgICAgcGlwZV9jb25m aWctPnNjYWxlcl9zdGF0ZS5zY2FsZXJfaWQpOwogCisJaWYgKElOVEVMX0dFTihkZXZfcHJpdikg Pj0gMTEpCisJCURSTV9ERUJVR19LTVMoInNjYWxpbmdfZmlsdGVyOiAlZFxuIiwKKwkJCSAgICAg IHBpcGVfY29uZmlnLT5iYXNlLnNjYWxpbmdfZmlsdGVyKTsKKwogCWlmIChIQVNfR01DSChkZXZf cHJpdikpCiAJCURSTV9ERUJVR19LTVMoImdtY2ggcGZpdDogY29udHJvbDogMHglMDh4LCByYXRp b3M6IDB4JTA4eCwgbHZkcyBib3JkZXI6IDB4JTA4eFxuIiwKIAkJCSAgICAgIHBpcGVfY29uZmln LT5nbWNoX3BmaXQuY29udHJvbCwKQEAgLTEyODU4LDYgKzEyODg4LDcgQEAgaW50ZWxfcGlwZV9j b25maWdfY29tcGFyZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3VycmVudF9jb25m aWcsCiAJCX0KIAogCQlQSVBFX0NPTkZfQ0hFQ0tfSShzY2FsZXJfc3RhdGUuc2NhbGVyX2lkKTsK KwkJUElQRV9DT05GX0NIRUNLX0koYmFzZS5zY2FsaW5nX2ZpbHRlcik7CiAJCVBJUEVfQ09ORl9D SEVDS19DTE9DS19GVVpaWShwaXhlbF9yYXRlKTsKIAogCQlQSVBFX0NPTkZfQ0hFQ0tfWChnYW1t YV9tb2RlKTsKQEAgLTE0OTk2LDYgKzE1MDI3LDI5IEBAIGludGVsX2N1cnNvcl9wbGFuZV9jcmVh dGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCXJldHVybiBFUlJfUFRSKHJl dCk7CiB9CiAKK3N0YXRpYyB2b2lkIGljbF9jcmVhdGVfc2NhbGVyX2ZpbHRlcl9wcm9wZXJ0eShz dHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKKwkJCQkgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGUpCit7CisJc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcDsKKwlzdHJ1Y3QgZHJt X2RldmljZSAqZGV2ID0gY3J0Yy0+YmFzZS5kZXY7CisJc3RydWN0IGRybV9tb2RlX2NvbmZpZyAq bW9kZV9jb25maWcgPSAmZGV2LT5tb2RlX2NvbmZpZzsKKwl1OCBzaXplOworCisJaWYgKG1vZGVf Y29uZmlnLT5zY2FsaW5nX2ZpbHRlcl9wcm9wZXJ0eSkKKwkJcmV0dXJuOworCisJc2l6ZSA9IEFS UkFZX1NJWkUoZHJtX3NjYWxpbmdfZmlsdGVyX2VudW1fbGlzdCk7CisJcHJvcCA9IGRybV9wcm9w ZXJ0eV9jcmVhdGVfZW51bShkZXYsIERSTV9NT0RFX1BST1BfSU1NVVRBQkxFLAorCQkJCQkiU0NB TElOR19GSUxURVJTIiwKKwkJCQkJZHJtX3NjYWxpbmdfZmlsdGVyX2VudW1fbGlzdCwgc2l6ZSk7 CisJaWYgKCFwcm9wKSB7CisJCURSTV9FUlJPUigiRmFpbGVkIHRvIGNyZWF0ZSBzY2FsaW5nIGZp bHRlciBwcm9wZXJ0eVxuIik7CisJCXJldHVybjsKKwl9CisKKwlkZXYtPm1vZGVfY29uZmlnLnNj YWxpbmdfZmlsdGVyX3Byb3BlcnR5ID0gcHJvcDsKK30KKwogc3RhdGljIHZvaWQgaW50ZWxfY3J0 Y19pbml0X3NjYWxlcnMoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJCQkJICAgIHN0cnVjdCBp bnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogewpAQCAtMTUwMTYsNiArMTUwNzAsOSBAQCBz dGF0aWMgdm9pZCBpbnRlbF9jcnRjX2luaXRfc2NhbGVycyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0 YywKIAl9CiAKIAlzY2FsZXJfc3RhdGUtPnNjYWxlcl9pZCA9IC0xOworCisJaWYgKElOVEVMX0dF TihkZXZfcHJpdikgPj0gMTEpCisJCWljbF9jcmVhdGVfc2NhbGVyX2ZpbHRlcl9wcm9wZXJ0eShj cnRjLCBjcnRjX3N0YXRlKTsKIH0KIAogI2RlZmluZSBJTlRFTF9DUlRDX0ZVTkNTIFwKLS0gCjIu MTcuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4