From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH 2/2] drm/i915: Consolidate gen8_emit_pipe_control Date: Wed, 15 Feb 2017 16:06:34 +0000 Message-ID: <20170215160634.8894-2-tvrtko.ursulin@linux.intel.com> References: <20170215160634.8894-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr0-x241.google.com (mail-wr0-x241.google.com [IPv6:2a00:1450:400c:c0c::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7AD316E977 for ; Wed, 15 Feb 2017 16:06:44 +0000 (UTC) Received: by mail-wr0-x241.google.com with SMTP id k90so31654453wrc.3 for ; Wed, 15 Feb 2017 08:06:44 -0800 (PST) In-Reply-To: <20170215160634.8894-1-tvrtko.ursulin@linux.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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGhhdmUg YSBmZXcgb3BlbiBjb2RlZCBpbnN0YW5jZXMgaW4gdGhlIGV4ZWNsaXN0cyBjb2RlIGFuZCBhbgph bG1vc3Qgc3VpdGFibGUgaGVscGVyIGluIGludGVsX3JpbmdidWYuYwoKV2UgY2FuIGNvbnNvbGlk YXRlIHRvIGEgc2luZ2xlIGhlbHBlciBpZiB3ZSBjaGFuZ2UgdGhlIGV4aXN0aW5nCmhlbHBlciB0 byBlbWl0IGRpcmVjdGx5IHRvIHJpbmcgYnVmZmVyIG1lbW9yeSBhbmQgbW92ZSB0aGUgc3BhY2UK cmVzZXJ2YXRpb24gb3V0c2lkZSBpdC4KClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0 dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bHJjLmMgICAgICAgIHwgNzcgKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgfCA0NSArKysrKysrLS0tLS0tLS0t LS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmggfCAxMiArKysrKwog MyBmaWxlcyBjaGFuZ2VkLCA1MyBpbnNlcnRpb25zKCspLCA4MSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2xyYy5jCmluZGV4IGY2NTM3ZDE0ZDI0Ny4uZWM3OWYyNzVjNjFhIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9scmMuYwpAQCAtOTE4LDEyICs5MTgsMTAgQEAgZ2VuOF9lbWl0X2Zs dXNoX2NvaGVyZW50bDNfd2Eoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lLCB1MzIgKmJh dGNoKQogCSpiYXRjaCsrID0gaTkxNV9tbWlvX3JlZ19vZmZzZXQoR0VOOF9MM1NRQ1JFRzQpOwog CSpiYXRjaCsrID0gMHg0MDQwMDAwMCB8IEdFTjhfTFFTQ19GTFVTSF9DT0hFUkVOVF9MSU5FUzsK IAotCSpiYXRjaCsrID0gR0ZYX09QX1BJUEVfQ09OVFJPTCg2KTsKLQkqYmF0Y2grKyA9IFBJUEVf Q09OVFJPTF9DU19TVEFMTCB8IFBJUEVfQ09OVFJPTF9EQ19GTFVTSF9FTkFCTEU7Ci0JKmJhdGNo KysgPSAwOwotCSpiYXRjaCsrID0gMDsKLQkqYmF0Y2grKyA9IDA7Ci0JKmJhdGNoKysgPSAwOwor CWJhdGNoID0gZ2VuOF9lbWl0X3BpcGVfY29udHJvbChiYXRjaCwKKwkJCQkgICAgICAgUElQRV9D T05UUk9MX0NTX1NUQUxMIHwKKwkJCQkgICAgICAgUElQRV9DT05UUk9MX0RDX0ZMVVNIX0VOQUJM RSwKKwkJCQkgICAgICAgMCk7CiAKIAkqYmF0Y2grKyA9IE1JX0xPQURfUkVHSVNURVJfTUVNX0dF TjggfCBNSV9TUk1fTFJNX0dMT0JBTF9HVFQ7CiAJKmJhdGNoKysgPSBpOTE1X21taW9fcmVnX29m ZnNldChHRU44X0wzU1FDUkVHNCk7CkBAIC05NTcsMTUgKzk1NSwxNSBAQCBzdGF0aWMgdTMyICpn ZW44X2luaXRfaW5kaXJlY3RjdHhfYmIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lLCB1 MzIgKmJhdGNoKQogCWlmIChJU19CUk9BRFdFTEwoZW5naW5lLT5pOTE1KSkKIAkJYmF0Y2ggPSBn ZW44X2VtaXRfZmx1c2hfY29oZXJlbnRsM193YShlbmdpbmUsIGJhdGNoKTsKIAotCSpiYXRjaCsr ID0gR0ZYX09QX1BJUEVfQ09OVFJPTCg2KTsKLQkqYmF0Y2grKyA9IFBJUEVfQ09OVFJPTF9GTFVT SF9MMyB8IFBJUEVfQ09OVFJPTF9HTE9CQUxfR1RUX0lWQiB8Ci0JCSAgIFBJUEVfQ09OVFJPTF9D U19TVEFMTCB8IFBJUEVfQ09OVFJPTF9RV19XUklURTsKIAkvKiBXYUNsZWFyU2xtU3BhY2VBdENv bnRleHRTd2l0Y2g6YmR3LGNodiAqLwogCS8qIEFjdHVhbCBzY3JhdGNoIGxvY2F0aW9uIGlzIGF0 IDEyOCBieXRlcyBvZmZzZXQgKi8KLQkqYmF0Y2grKyA9IGk5MTVfZ2d0dF9vZmZzZXQoZW5naW5l LT5zY3JhdGNoKSArIDIgKiBDQUNIRUxJTkVfQllURVM7Ci0JKmJhdGNoKysgPSAwOwotCSpiYXRj aCsrID0gMDsKLQkqYmF0Y2grKyA9IDA7CisJYmF0Y2ggPSBnZW44X2VtaXRfcGlwZV9jb250cm9s KGJhdGNoLAorCQkJCSAgICAgICBQSVBFX0NPTlRST0xfRkxVU0hfTDMgfAorCQkJCSAgICAgICBQ SVBFX0NPTlRST0xfR0xPQkFMX0dUVF9JVkIgfAorCQkJCSAgICAgICBQSVBFX0NPTlRST0xfQ1Nf U1RBTEwgfAorCQkJCSAgICAgICBQSVBFX0NPTlRST0xfUVdfV1JJVEUsCisJCQkJICAgICAgIGk5 MTVfZ2d0dF9vZmZzZXQoZW5naW5lLT5zY3JhdGNoKSArCisJCQkJICAgICAgIDIgKiBDQUNIRUxJ TkVfQllURVMpOwogCiAJLyogUGFkIHRvIGVuZCBvZiBjYWNoZWxpbmUgKi8KIAl3aGlsZSAoKHVu c2lnbmVkIGxvbmcpYmF0Y2ggJSBDQUNIRUxJTkVfQllURVMpCkBAIC0xMDEzLDE0ICsxMDExLDEz IEBAIHN0YXRpYyB1MzIgKmdlbjlfaW5pdF9pbmRpcmVjdGN0eF9iYihzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICplbmdpbmUsIHUzMiAqYmF0Y2gpCiAJLyogV2FDbGVhclNsbVNwYWNlQXRDb250ZXh0 U3dpdGNoOmtibCAqLwogCS8qIEFjdHVhbCBzY3JhdGNoIGxvY2F0aW9uIGlzIGF0IDEyOCBieXRl cyBvZmZzZXQgKi8KIAlpZiAoSVNfS0JMX1JFVklEKGVuZ2luZS0+aTkxNSwgMCwgS0JMX1JFVklE X0EwKSkgewotCQkqYmF0Y2grKyA9IEdGWF9PUF9QSVBFX0NPTlRST0woNik7Ci0JCSpiYXRjaCsr ID0gUElQRV9DT05UUk9MX0ZMVVNIX0wzIHwgUElQRV9DT05UUk9MX0dMT0JBTF9HVFRfSVZCIHwK LQkJCSAgIFBJUEVfQ09OVFJPTF9DU19TVEFMTCB8IFBJUEVfQ09OVFJPTF9RV19XUklURTsKLQkJ KmJhdGNoKysgPSBpOTE1X2dndHRfb2Zmc2V0KGVuZ2luZS0+c2NyYXRjaCkgKwotCQkJICAgMiAq IENBQ0hFTElORV9CWVRFUzsKLQkJKmJhdGNoKysgPSAwOwotCQkqYmF0Y2grKyA9IDA7Ci0JCSpi YXRjaCsrID0gMDsKKwkJYmF0Y2ggPSBnZW44X2VtaXRfcGlwZV9jb250cm9sKGJhdGNoLAorCQkJ CQkgICAgICAgUElQRV9DT05UUk9MX0ZMVVNIX0wzIHwKKwkJCQkJICAgICAgIFBJUEVfQ09OVFJP TF9HTE9CQUxfR1RUX0lWQiB8CisJCQkJCSAgICAgICBQSVBFX0NPTlRST0xfQ1NfU1RBTEwgfAor CQkJCQkgICAgICAgUElQRV9DT05UUk9MX1FXX1dSSVRFLAorCQkJCQkgICAgICAgaTkxNV9nZ3R0 X29mZnNldChlbmdpbmUtPnNjcmF0Y2gpCisJCQkJCSAgICAgICArIDIgKiBDQUNIRUxJTkVfQllU RVMpOwogCX0KIAogCS8qIFdhTWVkaWFQb29sU3RhdGVDbWRJbldBQkI6Ynh0LGdsayAqLwpAQCAt MTQ1MCwzOSArMTQ0NywxNyBAQCBzdGF0aWMgaW50IGdlbjhfZW1pdF9mbHVzaF9yZW5kZXIoc3Ry dWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0LAogCWlmIChJU19FUlIoY3MpKQogCQly ZXR1cm4gUFRSX0VSUihjcyk7CiAKLQlpZiAodmZfZmx1c2hfd2EpIHsKLQkJKmNzKysgPSBHRlhf T1BfUElQRV9DT05UUk9MKDYpOwotCQkqY3MrKyA9IDA7Ci0JCSpjcysrID0gMDsKLQkJKmNzKysg PSAwOwotCQkqY3MrKyA9IDA7Ci0JCSpjcysrID0gMDsKLQl9CisJaWYgKHZmX2ZsdXNoX3dhKQor CQljcyA9IGdlbjhfZW1pdF9waXBlX2NvbnRyb2woY3MsIDAsIDApOwogCi0JaWYgKGRjX2ZsdXNo X3dhKSB7Ci0JCSpjcysrID0gR0ZYX09QX1BJUEVfQ09OVFJPTCg2KTsKLQkJKmNzKysgPSBQSVBF X0NPTlRST0xfRENfRkxVU0hfRU5BQkxFOwotCQkqY3MrKyA9IDA7Ci0JCSpjcysrID0gMDsKLQkJ KmNzKysgPSAwOwotCQkqY3MrKyA9IDA7Ci0JfQorCWlmIChkY19mbHVzaF93YSkKKwkJY3MgPSBn ZW44X2VtaXRfcGlwZV9jb250cm9sKGNzLCBQSVBFX0NPTlRST0xfRENfRkxVU0hfRU5BQkxFLAor CQkJCQkgICAgMCk7CiAKLQkqY3MrKyA9IEdGWF9PUF9QSVBFX0NPTlRST0woNik7Ci0JKmNzKysg PSBmbGFnczsKLQkqY3MrKyA9IHNjcmF0Y2hfYWRkcjsKLQkqY3MrKyA9IDA7Ci0JKmNzKysgPSAw OwotCSpjcysrID0gMDsKKwljcyA9IGdlbjhfZW1pdF9waXBlX2NvbnRyb2woY3MsIGZsYWdzLCBz Y3JhdGNoX2FkZHIpOwogCi0JaWYgKGRjX2ZsdXNoX3dhKSB7Ci0JCSpjcysrID0gR0ZYX09QX1BJ UEVfQ09OVFJPTCg2KTsKLQkJKmNzKysgPSBQSVBFX0NPTlRST0xfQ1NfU1RBTEw7Ci0JCSpjcysr ID0gMDsKLQkJKmNzKysgPSAwOwotCQkqY3MrKyA9IDA7Ci0JCSpjcysrID0gMDsKLQl9CisJaWYg KGRjX2ZsdXNoX3dhKQorCQljcyA9IGdlbjhfZW1pdF9waXBlX2NvbnRyb2woY3MsIFBJUEVfQ09O VFJPTF9DU19TVEFMTCwgMCk7CiAKIAlpbnRlbF9yaW5nX2FkdmFuY2UocmVxdWVzdCwgY3MpOwog CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKaW5kZXggZjc0OTk4MjllY2My Li5hMzU5NTI3OTQ4YjkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Jp bmdidWZmZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMK QEAgLTMzNCwzNSArMzM0LDE2IEBAIGdlbjdfcmVuZGVyX3JpbmdfZmx1c2goc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXEsIHUzMiBtb2RlKQogfQogCiBzdGF0aWMgaW50Ci1nZW44X2Vt aXRfcGlwZV9jb250cm9sKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLAotCQkgICAg ICAgdTMyIGZsYWdzLCB1MzIgc2NyYXRjaF9hZGRyKQorZ2VuOF9yZW5kZXJfcmluZ19mbHVzaChz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwgdTMyIG1vZGUpCiB7CisJdTMyIGZsYWdz OwogCXUzMiAqY3M7CiAKLQljcyA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCA2KTsKKwljcyA9IGlu dGVsX3JpbmdfYmVnaW4ocmVxLCBtb2RlICYgRU1JVF9JTlZBTElEQVRFID8gMTIgOiA2KTsKIAlp ZiAoSVNfRVJSKGNzKSkKIAkJcmV0dXJuIFBUUl9FUlIoY3MpOwogCi0JKmNzKysgPSBHRlhfT1Bf UElQRV9DT05UUk9MKDYpOwotCSpjcysrID0gZmxhZ3M7Ci0JKmNzKysgPSBzY3JhdGNoX2FkZHI7 Ci0JKmNzKysgPSAwOwotCSpjcysrID0gMDsKLQkqY3MrKyA9IDA7Ci0JaW50ZWxfcmluZ19hZHZh bmNlKHJlcSwgY3MpOwotCi0JcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyBpbnQKLWdlbjhfcmVuZGVy X3JpbmdfZmx1c2goc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsIHUzMiBtb2RlKQot ewotCXUzMiBzY3JhdGNoX2FkZHIgPQotCQlpOTE1X2dndHRfb2Zmc2V0KHJlcS0+ZW5naW5lLT5z Y3JhdGNoKSArIDIgKiBDQUNIRUxJTkVfQllURVM7Ci0JdTMyIGZsYWdzID0gMDsKLQlpbnQgcmV0 OwotCi0JZmxhZ3MgfD0gUElQRV9DT05UUk9MX0NTX1NUQUxMOworCWZsYWdzID0gUElQRV9DT05U Uk9MX0NTX1NUQUxMOwogCiAJaWYgKG1vZGUgJiBFTUlUX0ZMVVNIKSB7CiAJCWZsYWdzIHw9IFBJ UEVfQ09OVFJPTF9SRU5ERVJfVEFSR0VUX0NBQ0hFX0ZMVVNIOwpAQCAtMzgxLDE1ICszNjIsMTkg QEAgZ2VuOF9yZW5kZXJfcmluZ19mbHVzaChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJl cSwgdTMyIG1vZGUpCiAJCWZsYWdzIHw9IFBJUEVfQ09OVFJPTF9HTE9CQUxfR1RUX0lWQjsKIAog CQkvKiBXYUNzU3RhbGxCZWZvcmVTdGF0ZUNhY2hlSW52YWxpZGF0ZTpiZHcsY2h2ICovCi0JCXJl dCA9IGdlbjhfZW1pdF9waXBlX2NvbnRyb2wocmVxLAotCQkJCQkgICAgIFBJUEVfQ09OVFJPTF9D U19TVEFMTCB8Ci0JCQkJCSAgICAgUElQRV9DT05UUk9MX1NUQUxMX0FUX1NDT1JFQk9BUkQsCi0J CQkJCSAgICAgMCk7Ci0JCWlmIChyZXQpCi0JCQlyZXR1cm4gcmV0OworCQljcyA9IGdlbjhfZW1p dF9waXBlX2NvbnRyb2woY3MsCisJCQkJCSAgICBQSVBFX0NPTlRST0xfQ1NfU1RBTEwgfAorCQkJ CQkgICAgUElQRV9DT05UUk9MX1NUQUxMX0FUX1NDT1JFQk9BUkQsCisJCQkJCSAgICAwKTsKIAl9 CiAKLQlyZXR1cm4gZ2VuOF9lbWl0X3BpcGVfY29udHJvbChyZXEsIGZsYWdzLCBzY3JhdGNoX2Fk ZHIpOworCWNzID0gZ2VuOF9lbWl0X3BpcGVfY29udHJvbChjcywgZmxhZ3MsCisJCQkJICAgIGk5 MTVfZ2d0dF9vZmZzZXQocmVxLT5lbmdpbmUtPnNjcmF0Y2gpICsKKwkJCQkgICAgMiAqIENBQ0hF TElORV9CWVRFUyk7CisKKwlpbnRlbF9yaW5nX2FkdmFuY2UocmVxLCBjcyk7CisKKwlyZXR1cm4g MDsKIH0KIAogc3RhdGljIHZvaWQgcmluZ19zZXR1cF9waHlzX3N0YXR1c19wYWdlKHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZm ZXIuaAppbmRleCAxNjcxNDA5NjgxMGQuLmRlOGIyNzU0OGRjYiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuaApAQCAtNjMyLDQgKzYzMiwxNiBAQCB2b2lkIGludGVsX2Vu Z2luZV9yZXNldF9icmVhZGNydW1icyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpOwog dm9pZCBpbnRlbF9lbmdpbmVfZmluaV9icmVhZGNydW1icyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2Nz ICplbmdpbmUpOwogdW5zaWduZWQgaW50IGludGVsX2JyZWFkY3J1bWJzX2J1c3koc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmk5MTUpOwogCitzdGF0aWMgaW5saW5lIHUzMiAqZ2VuOF9lbWl0X3Bp cGVfY29udHJvbCh1MzIgKmJhdGNoLCB1MzIgZmxhZ3MsIHUzMiBvZmZzZXQpCit7CisJc3RhdGlj IGNvbnN0IHUzMiBwYzZbNl0gPSB7IEdGWF9PUF9QSVBFX0NPTlRST0woNiksIDAsIDAsIDAsIDAs IDAgfTsKKworCW1lbWNweShiYXRjaCwgcGM2LCBzaXplb2YocGM2KSk7CisKKwliYXRjaFsxXSA9 IGZsYWdzOworCWJhdGNoWzJdID0gb2Zmc2V0OworCisJcmV0dXJuIGJhdGNoICsgNjsKK30KKwog I2VuZGlmIC8qIF9JTlRFTF9SSU5HQlVGRkVSX0hfICovCi0tIAoyLjkuMwoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==