From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [PATCH 10/25] drm/i915/fbc: split intel_fbc_update into pre and post update Date: Tue, 19 Jan 2016 11:35:43 -0200 Message-ID: <1453210558-7875-11-git-send-email-paulo.r.zanoni@intel.com> References: <1453210558-7875-1-git-send-email-paulo.r.zanoni@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 ESMTP id EE98D720BB for ; Tue, 19 Jan 2016 05:36:27 -0800 (PST) In-Reply-To: <1453210558-7875-1-git-send-email-paulo.r.zanoni@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 U28gbm93IHByZV91cGRhdGUgd2lsbCBiZSByZXNwb25zaWJsZSBmb3IgdW5jb25kaXRpb25hbGx5 IGRlYWN0aXZhdGluZwpGQkMgYW5kIHVwZGF0aW5nIHRoZSBzdGF0ZSBjYWNoZSwgd2hpbGUgcG9z dF91cGRhdGUgd2lsbCBiZQpyZXNwb25zaWJsZSBmb3IgY2hlY2tpbmcgaWYgaXQgY2FuIGJlIGVu YWJsZWQsIHRoZW4gZW5hYmxpbmcgaXQuCgpUaGlzIGlzIG9uZSBtb3JlIHN0ZXAgaW50byBwcm9w ZXIgbG9ja2luZy4KCk5vdGljZSB0aGF0IGludGVsX2ZiY19mbHVzaCBub3cgY2FsbHMgcG9zdF91 cGRhdGUgZGlyZWN0bHkuIFRoZSBGQkMKZmx1c2ggY2FuIG9ubHkgaGFwcGVuIGZvciBkcmF3aW5n IG9wZXJhdGlvbnMgLSBzaW5jZSB3ZSBleHBsaWNpdGx5Cmlnbm9yZSB0aGUgZmxpcHMgLSwgc28g dGhlIEZCQyBzdGF0ZSBpcyBub3QgZXhwZWN0ZWQgdG8gaGF2ZSBjaGFuZ2VkCmF0IHRoaXMgcG9p bnQuIFdpdGggdGhpcyB3ZSBjYW4ganVzdCBydW4gcG9zdF91cGRhdGUsIHdoaWNoIHdpbGwgbWFr ZQpzdXJlIHdlIHdvbid0IGRlYWN0aXZhdGUrcmVhY3RpdmF0ZSBGQkMgYXMgd291bGQgYmUgdGhl IGNhc2Ugbm93IGlmIHdlCmNhbGxlZCBwcmVfdXBkYXRlICsgcG9zdF91cGRhdGUuCgpTaWduZWQt b2ZmLWJ5OiBQYXVsbyBaYW5vbmkgPHBhdWxvLnIuemFub25pQGludGVsLmNvbT4KLS0tCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmMuYyB8IDc3ICsrKysrKysrKysrKysrLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA1MSBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmMu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiYy5jCmluZGV4IDczOTYyODcuLjI5ODNi Y2QgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiYy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiYy5jCkBAIC04OTQsMjQgKzg5NCwxNiBAQCBzdGF0 aWMgYm9vbCBpbnRlbF9mYmNfcmVnX3BhcmFtc19lcXVhbChzdHJ1Y3QgaW50ZWxfZmJjX3JlZ19w YXJhbXMgKnBhcmFtczEsCiAJcmV0dXJuIG1lbWNtcChwYXJhbXMxLCBwYXJhbXMyLCBzaXplb2Yo KnBhcmFtczEpKSA9PSAwOwogfQogCi0vKioKLSAqIF9faW50ZWxfZmJjX3VwZGF0ZSAtIGFjdGl2 YXRlL2RlYWN0aXZhdGUgRkJDIGFzIG5lZWRlZCwgdW5sb2NrZWQKLSAqIEBjcnRjOiB0aGUgQ1JU QyB0aGF0IHRyaWdnZXJlZCB0aGUgdXBkYXRlCi0gKgotICogVGhpcyBmdW5jdGlvbiBjb21wbGV0 ZWx5IHJlZXZhbHVhdGVzIHRoZSBzdGF0dXMgb2YgRkJDLCB0aGVuIGFjdGl2YXRlcywKLSAqIGRl YWN0aXZhdGVzIG9yIG1haW50YWlucyBpdCBvbiB0aGUgc2FtZSBzdGF0ZS4KLSAqLwotc3RhdGlj IHZvaWQgX19pbnRlbF9mYmNfdXBkYXRlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQorc3RhdGlj IHZvaWQgaW50ZWxfZmJjX3ByZV91cGRhdGUoc3RydWN0IGludGVsX2NydGMgKmNydGMpCiB7CiAJ c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gY3J0Yy0+YmFzZS5kZXYtPmRldl9w cml2YXRlOwogCXN0cnVjdCBpbnRlbF9mYmMgKmZiYyA9ICZkZXZfcHJpdi0+ZmJjOwotCXN0cnVj dCBpbnRlbF9mYmNfcmVnX3BhcmFtcyBvbGRfcGFyYW1zOwogCiAJV0FSTl9PTighbXV0ZXhfaXNf bG9ja2VkKCZmYmMtPmxvY2spKTsKIAogCWlmICghbXVsdGlwbGVfcGlwZXNfb2soZGV2X3ByaXYp KSB7CiAJCXNldF9ub19mYmNfcmVhc29uKGRldl9wcml2LCAibW9yZSB0aGFuIG9uZSBwaXBlIGFj dGl2ZSIpOwotCQlnb3RvIG91dF9kaXNhYmxlOworCQlnb3RvIGRlYWN0aXZhdGU7CiAJfQogCiAJ aWYgKCFmYmMtPmVuYWJsZWQgfHwgZmJjLT5jcnRjICE9IGNydGMpCkBAIC05MTksOCArOTExLDI1 IEBAIHN0YXRpYyB2b2lkIF9faW50ZWxfZmJjX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0 YykKIAogCWludGVsX2ZiY191cGRhdGVfc3RhdGVfY2FjaGUoY3J0Yyk7CiAKLQlpZiAoIWludGVs X2ZiY19jYW5fYWN0aXZhdGUoY3J0YykpCi0JCWdvdG8gb3V0X2Rpc2FibGU7CitkZWFjdGl2YXRl OgorCV9faW50ZWxfZmJjX2RlYWN0aXZhdGUoZGV2X3ByaXYpOworfQorCitzdGF0aWMgdm9pZCBp bnRlbF9mYmNfcG9zdF91cGRhdGUoc3RydWN0IGludGVsX2NydGMgKmNydGMpCit7CisJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gY3J0Yy0+YmFzZS5kZXYtPmRldl9wcml2YXRl OworCXN0cnVjdCBpbnRlbF9mYmMgKmZiYyA9ICZkZXZfcHJpdi0+ZmJjOworCXN0cnVjdCBpbnRl bF9mYmNfcmVnX3BhcmFtcyBvbGRfcGFyYW1zOworCisJV0FSTl9PTighbXV0ZXhfaXNfbG9ja2Vk KCZmYmMtPmxvY2spKTsKKworCWlmICghZmJjLT5lbmFibGVkIHx8IGZiYy0+Y3J0YyAhPSBjcnRj KQorCQlyZXR1cm47CisKKwlpZiAoIWludGVsX2ZiY19jYW5fYWN0aXZhdGUoY3J0YykpIHsKKwkJ V0FSTl9PTihmYmMtPmFjdGl2ZSk7CisJCXJldHVybjsKKwl9CiAKIAlvbGRfcGFyYW1zID0gZmJj LT5wYXJhbXM7CiAJaW50ZWxfZmJjX2dldF9yZWdfcGFyYW1zKGNydGMsICZmYmMtPnBhcmFtcyk7 CkBAIC05MzQsNDQgKzk0Myw5IEBAIHN0YXRpYyB2b2lkIF9faW50ZWxfZmJjX3VwZGF0ZShzdHJ1 Y3QgaW50ZWxfY3J0YyAqY3J0YykKIAkgICAgaW50ZWxfZmJjX3JlZ19wYXJhbXNfZXF1YWwoJm9s ZF9wYXJhbXMsICZmYmMtPnBhcmFtcykpCiAJCXJldHVybjsKIAotCWlmIChpbnRlbF9mYmNfaXNf YWN0aXZlKGRldl9wcml2KSkgewotCQkvKiBXZSB1cGRhdGUgRkJDIGFsb25nIHR3byBwYXRocywg YWZ0ZXIgY2hhbmdpbmcgZmIvY3J0YwotCQkgKiBjb25maWd1cmF0aW9uIChtb2Rlc3dpdGNoaW5n KSBhbmQgYWZ0ZXIgcGFnZS1mbGlwcGluZwotCQkgKiBmaW5pc2hlcy4gRm9yIHRoZSBsYXR0ZXIs IHdlIGtub3cgdGhhdCBub3Qgb25seSBkaWQKLQkJICogd2UgZGlzYWJsZSB0aGUgRkJDIGF0IHRo ZSBzdGFydCBvZiB0aGUgcGFnZS1mbGlwCi0JCSAqIHNlcXVlbmNlLCBidXQgYWxzbyBtb3JlIHRo YW4gb25lIHZibGFuayBoYXMgcGFzc2VkLgotCQkgKgotCQkgKiBGb3IgdGhlIGZvcm1lciBjYXNl IG9mIG1vZGVzd2l0Y2hpbmcsIGl0IGlzIHBvc3NpYmxlCi0JCSAqIHRvIHN3aXRjaCBiZXR3ZWVu IHR3byBGQkMgdmFsaWQgY29uZmlndXJhdGlvbnMKLQkJICogaW5zdGFudGFuZW91c2x5IHNvIHdl IGRvIG5lZWQgdG8gZGlzYWJsZSB0aGUgRkJDCi0JCSAqIGJlZm9yZSB3ZSBjYW4gbW9kaWZ5IGl0 cyBjb250cm9sIHJlZ2lzdGVycy4gV2UgYWxzbwotCQkgKiBoYXZlIHRvIHdhaXQgZm9yIHRoZSBu ZXh0IHZibGFuayBmb3IgdGhhdCB0byB0YWtlCi0JCSAqIGVmZmVjdC4gSG93ZXZlciwgc2luY2Ug d2UgZGVsYXkgZW5hYmxpbmcgRkJDIHdlIGNhbgotCQkgKiBhc3N1bWUgdGhhdCBhIHZibGFuayBo YXMgcGFzc2VkIHNpbmNlIGRpc2FibGluZyBhbmQKLQkJICogdGhhdCB3ZSBjYW4gc2FmZWx5IGFs dGVyIHRoZSByZWdpc3RlcnMgaW4gdGhlIGRlZmVycmVkCi0JCSAqIGNhbGxiYWNrLgotCQkgKgot CQkgKiBJbiB0aGUgc2NlbmFyaW8gdGhhdCB3ZSBnbyBmcm9tIGEgdmFsaWQgdG8gaW52YWxpZAot CQkgKiBhbmQgdGhlbiBiYWNrIHRvIHZhbGlkIEZCQyBjb25maWd1cmF0aW9uIHdlIGhhdmUKLQkJ ICogbm8gc3RyaWN0IGVuZm9yY2VtZW50IHRoYXQgYSB2Ymxhbmsgb2NjdXJyZWQgc2luY2UKLQkJ ICogZGlzYWJsaW5nIHRoZSBGQkMuIEhvd2V2ZXIsIGFsb25nIGFsbCBjdXJyZW50IHBpcGUKLQkJ ICogZGlzYWJsaW5nIHBhdGhzIHdlIGRvIG5lZWQgdG8gd2FpdCBmb3IgYSB2YmxhbmsgYXQKLQkJ ICogc29tZSBwb2ludC4gQW5kIHdlIHdhaXQgYmVmb3JlIGVuYWJsaW5nIEZCQyBhbnl3YXkuCi0J CSAqLwotCQlEUk1fREVCVUdfS01TKCJkZWFjdGl2YXRpbmcgRkJDIGZvciB1cGRhdGVcbiIpOwot CQlfX2ludGVsX2ZiY19kZWFjdGl2YXRlKGRldl9wcml2KTsKLQl9Ci0KKwlfX2ludGVsX2ZiY19k ZWFjdGl2YXRlKGRldl9wcml2KTsKIAlpbnRlbF9mYmNfc2NoZWR1bGVfYWN0aXZhdGlvbihjcnRj KTsKLQlmYmMtPm5vX2ZiY19yZWFzb24gPSAiRkJDIGVuYWJsZWQgKG5vdCBuZWNlc3NhcmlseSBh Y3RpdmUpIjsKLQlyZXR1cm47Ci0KLW91dF9kaXNhYmxlOgotCS8qIE11bHRpcGxlIGRpc2FibGVz IHNob3VsZCBiZSBoYXJtbGVzcyAqLwotCWlmIChpbnRlbF9mYmNfaXNfYWN0aXZlKGRldl9wcml2 KSkgewotCQlEUk1fREVCVUdfS01TKCJ1bnN1cHBvcnRlZCBjb25maWcsIGRlYWN0aXZhdGluZyBG QkNcbiIpOwotCQlfX2ludGVsX2ZiY19kZWFjdGl2YXRlKGRldl9wcml2KTsKLQl9CisJZmJjLT5u b19mYmNfcmVhc29uID0gIkZCQyBlbmFibGVkIChhY3RpdmUgb3Igc2NoZWR1bGVkKSI7CiB9CiAK IC8qCkBAIC05ODksNyArOTYzLDggQEAgdm9pZCBpbnRlbF9mYmNfdXBkYXRlKHN0cnVjdCBpbnRl bF9jcnRjICpjcnRjKQogCQlyZXR1cm47CiAKIAltdXRleF9sb2NrKCZmYmMtPmxvY2spOwotCV9f aW50ZWxfZmJjX3VwZGF0ZShjcnRjKTsKKwlpbnRlbF9mYmNfcHJlX3VwZGF0ZShjcnRjKTsKKwlp bnRlbF9mYmNfcG9zdF91cGRhdGUoY3J0Yyk7CiAJbXV0ZXhfdW5sb2NrKCZmYmMtPmxvY2spOwog fQogCkBAIC0xMDQzLDcgKzEwMTgsNyBAQCB2b2lkIGludGVsX2ZiY19mbHVzaChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCWlmIChmYmMtPmFjdGl2ZSkKIAkJCWludGVsX2Zi Y19yZWNvbXByZXNzKGRldl9wcml2KTsKIAkJZWxzZQotCQkJX19pbnRlbF9mYmNfdXBkYXRlKGZi Yy0+Y3J0Yyk7CisJCQlpbnRlbF9mYmNfcG9zdF91cGRhdGUoZmJjLT5jcnRjKTsKIAl9CiAKIAlt dXRleF91bmxvY2soJmZiYy0+bG9jayk7Ci0tIAoyLjYuNAoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngK