From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH v5 15/22] drm/i915: CHV: Pipe level CSC correction Date: Tue, 13 Oct 2015 18:09:50 +0530 Message-ID: <1444739997-24831-16-git-send-email-shashank.sharma@intel.com> References: <1444739997-24831-1-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1444739997-24831-1-git-send-email-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, emil.l.velikov@gmail.com, matthew.d.roper@intel.com, robert.bradford@intel.com, jim.bish@intel.com Cc: annie.j.matheson@intel.com, kausalmalladi@gmail.com, daniel.vetter@intel.com, =gary.k.smith@intel.com List-Id: dri-devel@lists.freedesktop.org Q0hWL0JTVyBzdXBwb3J0cyBDb2xvciBTcGFjZSBDb252ZXJzaW9uIChDU0MpIHVzaW5nIGEgM3gz IG1hdHJpeAp0aGF0IG5lZWRzIHRvIGJlIHByb2dyYW1tZWQgaW50byBDR00gKENvbG9yIEdhbXV0 IE1hcHBpbmcpIHJlZ2lzdGVycy4KClRoaXMgcGF0Y2ggZG9lcyB0aGUgZm9sbG93aW5nOgoxLiBB dHRhY2hlcyBDU0MgcHJvcGVydHkgdG8gQ1JUQwoyLiBBZGRzIHRoZSBjb3JlIGZ1bmN0aW9uIHRv IHByb2dyYW0gQ1NDIGNvcnJlY3Rpb24gdmFsdWVzCjMuIEFkZHMgQ1NDIGNvcnJlY3Rpb24gbWFj cm9zCgpTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRl bC5jb20+ClNpZ25lZC1vZmYtYnk6IEthdXNhbCBNYWxsYWRpIDxrYXVzYWxtYWxsYWRpQGdtYWls LmNvbT4KU2lnbmVkLW9mZi1ieTogS3VtYXIsIEtpcmFuIFMgPGtpcmFuLnMua3VtYXJAaW50ZWwu Y29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICAgICAgICAgICB8ICA4 ICsrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3JfbWFuYWdlci5jIHwgOTkgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9j b2xvcl9tYW5hZ2VyLmggfCAxOSArKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMTI2IGluc2VydGlv bnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAppbmRleCBjYmI1ZmM5Li5jMzk1YjYzIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfcmVnLmgKQEAgLTgxNjYsNCArODE2NiwxMiBAQCBlbnVtIHNrbF9kaXNw X3Bvd2VyX3dlbGxzIHsKICNkZWZpbmUgX1BJUEVfREVHQU1NQV9CQVNFKHBpcGUpIFwKIAkoX1BJ UEUzKHBpcGUsIFBJUEVBX0NHTV9ERUdBTU1BLCBQSVBFQl9DR01fREVHQU1NQSwgUElQRUNfQ0dN X0RFR0FNTUEpKQogCisjZGVmaW5lIFBJUEVBX0NHTV9DU0MJCQkJKFZMVl9ESVNQTEFZX0JBU0Ug KyAweDY3OTAwKQorI2RlZmluZSBQSVBFQl9DR01fQ1NDCQkJCShWTFZfRElTUExBWV9CQVNFICsg MHg2OTkwMCkKKyNkZWZpbmUgUElQRUNfQ0dNX0NTQwkJCQkoVkxWX0RJU1BMQVlfQkFTRSArIDB4 NkI5MDApCisjZGVmaW5lIF9QSVBFX0NTQ19CQVNFKHBpcGUpIFwKKwkoX1BJUEUzKHBpcGUsIFBJ UEVBX0NHTV9DU0MsIFBJUEVCX0NHTV9DU0MsIFBJUEVDX0NHTV9DU0MpKQorCisKKwogI2VuZGlm IC8qIF9JOTE1X1JFR19IXyAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfY29sb3JfbWFuYWdlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3JfbWFu YWdlci5jCmluZGV4IDczYzA3NjIuLjZiMTdiMjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2NvbG9yX21hbmFnZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9jb2xvcl9tYW5hZ2VyLmMKQEAgLTI3LDYgKzI3LDk4IEBACiAKICNpbmNsdWRlICJpbnRl bF9jb2xvcl9tYW5hZ2VyLmgiCiAKK3N0YXRpYyBzMzIgY2h2X3ByZXBhcmVfY3NjX2NvZWZmKHM2 NCBjc2NfdmFsdWUpCit7CisJczMyIGNzY19pbnRfdmFsdWU7CisJdTMyIGNzY19mcmFjdF92YWx1 ZTsKKwlzMzIgY3NjX3MzXzEyX2Zvcm1hdDsKKworCWlmIChjc2NfdmFsdWUgPj0gMCkgeworCQlj c2NfdmFsdWUgKz0gQ0hWX0NTQ19GUkFDVF9ST1VORE9GRjsKKwkJaWYgKGNzY192YWx1ZSA+IENI Vl9DU0NfQ09FRkZfTUFYKQorCQkJY3NjX3ZhbHVlID0gQ0hWX0NTQ19DT0VGRl9NQVg7CisJfSBl bHNlIHsKKwkJY3NjX3ZhbHVlID0gLWNzY192YWx1ZTsKKwkJY3NjX3ZhbHVlICs9IENIVl9DU0Nf RlJBQ1RfUk9VTkRPRkY7CisJCWlmIChjc2NfdmFsdWUgPiBDSFZfQ1NDX0NPRUZGX01BWCArIDEp CisJCQljc2NfdmFsdWUgPSBDSFZfQ1NDX0NPRUZGX01BWCArIDE7CisJCWNzY192YWx1ZSA9IC1j c2NfdmFsdWU7CisJfQorCisJY3NjX2ludF92YWx1ZSA9IGNzY192YWx1ZSA+PiBDSFZfQ1NDX0NP RUZGX1NISUZUOworCWNzY19pbnRfdmFsdWUgPDw9IENIVl9DU0NfQ09FRkZfSU5UX1NISUZUOwor CWlmIChjc2NfdmFsdWUgPCAwKQorCQljc2NfaW50X3ZhbHVlIHw9IENTQ19DT0VGRl9TSUdOOwor CisJY3NjX2ZyYWN0X3ZhbHVlID0gY3NjX3ZhbHVlOworCWNzY19mcmFjdF92YWx1ZSA+Pj0gQ0hW X0NTQ19DT0VGRl9GUkFDVF9TSElGVDsKKwljc2NfczNfMTJfZm9ybWF0ID0gY3NjX2ludF92YWx1 ZSB8IGNzY19mcmFjdF92YWx1ZTsKKworCXJldHVybiBjc2NfczNfMTJfZm9ybWF0OworfQorCitz dGF0aWMgaW50IGNodl9zZXRfY3NjKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1f cHJvcGVydHlfYmxvYiAqYmxvYiwKKwkJc3RydWN0IGRybV9jcnRjICpjcnRjKQoreworCXN0cnVj dCBkcm1fY3RtICpjc2NfZGF0YTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSBkZXYtPmRldl9wcml2YXRlOworCXUzMiByZWc7CisJZW51bSBwaXBlIHBpcGU7CisJczMyIHdv cmQgPSAwLCB0ZW1wOworCWludCBjb3VudCA9IDA7CisKKwlpZiAoV0FSTl9PTighYmxvYikpCisJ CXJldHVybiAtRUlOVkFMOworCisJaWYgKGJsb2ItPmxlbmd0aCAhPSBzaXplb2Yoc3RydWN0IGRy bV9jdG0pKSB7CisJCURSTV9FUlJPUigiSW52YWxpZCBsZW5ndGggb2YgZGF0YSByZWNlaXZlZFxu Iik7CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCWNzY19kYXRhID0gKHN0cnVjdCBkcm1fY3Rt ICopYmxvYi0+ZGF0YTsKKwlwaXBlID0gdG9faW50ZWxfY3J0YyhjcnRjKS0+cGlwZTsKKworCS8q IERpc2FibGUgQ1NDIGZ1bmN0aW9uYWxpdHkgKi8KKwlyZWcgPSBfUElQRV9DR01fQ09OVFJPTChw aXBlKTsKKwlJOTE1X1dSSVRFKHJlZywgSTkxNV9SRUFEKHJlZykgJiAofkNHTV9DU0NfRU4pKTsK KworCURSTV9ERUJVR19EUklWRVIoIkRpc2FibGVkIENTQyBGdW5jdGlvbmFsaXR5IG9uIFBpcGUg JWNcbiIsCisJCQlwaXBlX25hbWUocGlwZSkpOworCisJcmVnID0gX1BJUEVfQ1NDX0JBU0UocGlw ZSk7CisKKwkvKgorCSogRmlyc3QgOCBvZiA5IENTQyBjb3JyZWN0aW9uIHZhbHVlcyBnbyBpbiBw YWlyLCB0byBmaXJzdAorCSogNCBDU0MgcmVnaXN0ZXIgKGJpdCAwOjE1IGFuZCAxNjozMSkKKwkq LworCXdoaWxlIChjb3VudCA8IENTQ19NQVhfVkFMUyAtIDEpIHsKKwkJdGVtcCA9IGNodl9wcmVw YXJlX2NzY19jb2VmZigKKwkJCQkJY3NjX2RhdGEtPmN0bV9jb2VmZltjb3VudF0pOworCQlTRVRf QklUUyh3b3JkLCBHRVRfQklUUyh0ZW1wLCAxNiwgMTYpLCAwLCAxNik7CisJCWNvdW50Kys7CisK KwkJdGVtcCA9IGNodl9wcmVwYXJlX2NzY19jb2VmZigKKwkJCQljc2NfZGF0YS0+Y3RtX2NvZWZm W2NvdW50XSk7CisJCVNFVF9CSVRTKHdvcmQsIEdFVF9CSVRTKHRlbXAsIDE2LCAxNiksIDE2LCAx Nik7CisJCWNvdW50Kys7CisKKwkJSTkxNV9XUklURShyZWcsIHdvcmQpOworCQlyZWcgKz0gNDsK Kwl9CisKKwkvKiA5dGggY29lZmYgZ29lcyB0byA1dGggcmVnaXN0ZXIsIGJpdCAwOjE2ICovCisJ dGVtcCA9IGNodl9wcmVwYXJlX2NzY19jb2VmZigKKwkJCWNzY19kYXRhLT5jdG1fY29lZmZbY291 bnRdKTsKKwlTRVRfQklUUyh3b3JkLCBHRVRfQklUUyh0ZW1wLCAxNiwgMTYpLCAwLCAxNik7CisJ STkxNV9XUklURShyZWcsIHdvcmQpOworCisJLyogRW5hYmxlIENTQyBmdW5jdGlvbmFsaXR5ICov CisJcmVnID0gX1BJUEVfQ0dNX0NPTlRST0wocGlwZSk7CisJSTkxNV9XUklURShyZWcsIEk5MTVf UkVBRChyZWcpIHwgQ0dNX0NTQ19FTik7CisJRFJNX0RFQlVHX0RSSVZFUigiQ1NDIGVuYWJsZWQg b24gUGlwZSAlY1xuIiwgcGlwZV9uYW1lKHBpcGUpKTsKKwlyZXR1cm4gMDsKK30KKwogc3RhdGlj IGludCBjaHZfc2V0X2RlZ2FtbWEoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAlzdHJ1Y3QgZHJt X3Byb3BlcnR5X2Jsb2IgKmJsb2IsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIHsKQEAgLTI0OCw0 ICszNDAsMTEgQEAgdm9pZCBpbnRlbF9hdHRhY2hfY29sb3JfcHJvcGVydGllc190b19jcnRjKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQljb25maWctPmNtX3BhbGV0dGVfYmVmb3JlX2N0bV9w cm9wZXJ0eSwgMCk7CiAJCURSTV9ERUJVR19EUklWRVIoImRlZ2FtbWEgcHJvcGVydHkgYXR0YWNo ZWQgdG8gQ1JUQ1xuIik7CiAJfQorCisJLyogQ1NDICovCisJaWYgKGNvbmZpZy0+Y21fY3RtX3By b3BlcnR5KSB7CisJCWRybV9vYmplY3RfYXR0YWNoX3Byb3BlcnR5KG1vZGVfb2JqLAorCQkJY29u ZmlnLT5jbV9jdG1fcHJvcGVydHksIDApOworCQlEUk1fREVCVUdfRFJJVkVSKCJDU0MgcHJvcGVy dHkgYXR0YWNoZWQgdG8gQ1JUQ1xuIik7CisJfQogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfY29sb3JfbWFuYWdlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfY29sb3JfbWFuYWdlci5oCmluZGV4IDc3YTIxMTkuLjdiOTY1MTIgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yX21hbmFnZXIuaAorKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9jb2xvcl9tYW5hZ2VyLmgKQEAgLTYzLDEwICs2MywyOSBAQAogI2Rl ZmluZSBDSFZfR0FNTUFfU0hJRlRfR1JFRU4gICAgICAgICAgICAgICAgICAxNgogI2RlZmluZSBD SFZfTUFYX0dBTU1BICAgICAgICAgICAgICAgICAgICAgICAgICAoKDEgPDwgMjQpIC0gMSkKIAor LyoKKyAqIENTQyBvbiBDSFYKKyAqIEZyYWN0aW9uYWwgcGFydCBpcyAzMiBiaXQsIGFuZCB3ZSBu ZWVkIG9ubHkgMTIgTVNCcyBmb3IgcHJvZ3JhbW1pbmcKKyAqIGludG8gcmVnaXN0ZXJzLiBST1VO RE9GRiBpcyByZXF1aXJlZCB0byBtaW5pbWl6ZSBsb3NzIG9mIHByZWNpc2lvbi4KKyAqLworI2Rl ZmluZSBDSFZfQ1NDX0ZSQUNUX1JPVU5ET0ZGICAgICAgICAgICAgICAgICAoMSA8PCAxOSkKKy8q CisgKiBDU0MgdmFsdWVzIGFyZSA2NC1iaXQgdmFsdWVzLiBGb3IgQ0hWLCB0aGUgbWF4aW11bSBD U0MgdmFsdWUgdGhhdAorICogdXNlciBjYW4gcHJvZ3JhbSBpcyA3Ljk5OTk5Li4uLCB3aGljaCBj YW4gYmUgcmVwcmVzZW50ZWQgaW4gZml4ZWQgcG9pbnQKKyAqIFMzMS4zMiBmb3JtYXQgbGlrZSB0 aGlzLCB3aXRoIGFsbCBmcmFjdGlvbmFsIGJpdHMgYXMgMQorICovCisjZGVmaW5lIENIVl9DU0Nf Q09FRkZfTUFYICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDdGRkZGRkZGRgorI2RlZmlu ZSBDSFZfQ1NDX0NPRUZGX1NISUZUICAgICAgICAgICAgICAgICAgICAzMgorI2RlZmluZSBDSFZf Q1NDX0NPRUZGX0lOVF9TSElGVCAgICAgICAgICAgICAgICAyOAorI2RlZmluZSBDU0NfQ09FRkZf U0lHTiAgICAgICAgICAgICAgICAgICAgICAgICAoMSA8PCAzMSkKKyNkZWZpbmUgQ0hWX0NTQ19D T0VGRl9GUkFDVF9TSElGVCAgICAgICAgICAgICAgNAorI2RlZmluZSBDU0NfTUFYX1ZBTFMgICAg ICAgICAgICAgICAgICAgICAgICAgICA5CisKIC8qIERlZ2FtbWEgb24gQ0hWICovCiAjZGVmaW5l IENIVl9ERUdBTU1BX01TQl9TSElGVCAgICAgICAgICAgICAgICAgIDIKICNkZWZpbmUgQ0hWX0RF R0FNTUFfR1JFRU5fU0hJRlQgICAgICAgICAgICAgICAgMTYKIAogLyogQ0hWIENHTSBCbG9jayAq LwogI2RlZmluZSBDR01fR0FNTUFfRU4gICAgICAgICAgICAgICAgICAgICAgICAgICAoMSA8PCAy KQorI2RlZmluZSBDR01fQ1NDX0VOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMSA8PCAx KQogI2RlZmluZSBDR01fREVHQU1NQV9FTiAgICAgICAgICAgICAgICAgICAgICAgICAoMSA8PCAw KQotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==