From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rodrigo Vivi Subject: [PATCH 4/4] drm/i915: fbdev dirty calls fb user dirty to invalidate frontbuffer. Date: Mon, 29 Jun 2015 13:44:46 -0700 Message-ID: <1435610686-2249-4-git-send-email-rodrigo.vivi@intel.com> References: <1435610686-2249-1-git-send-email-rodrigo.vivi@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1435610686-2249-1-git-send-email-rodrigo.vivi@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: dri-devel@lists.freedesktop.org, Rodrigo Vivi List-Id: dri-devel@lists.freedesktop.org Tm93IHRoYXQgd2UgaGF2ZSBmYiB1c2VyIGRpcnR5IGludmFsaWRhdGluZyBmcm9udGJ1ZmZlciBh bmQgd2UgaGF2ZQp0aGUgbmV3IGZiZGV2IGRpcnR5IGNhbGxiYWNrIGxldCdzIG1lcmdlIHRoZW0u CgpTbyBpdCBkb2Vzbid0IG1hdHRlciBpZiBmYmNvbiB0aHJvdWdodCBmYmRldiBvciBzcGxhc2gg c2NyZWVuIHRocm91Z2h0CmRybV9pb2N0bF9kaXJ0eWZiLCBpbiBhbnkgY2FzZSB3ZSB3aWxsIGhh dmUgZnJvbnRidWZmZXIgcHJvcGVybHkKaW52YWxpZGF0ZWQgYW5kIHBvd2VyIHNhdmluZ3MgZmVh dHVyZXMgdGhhdCByZWx5IG9uIGZyb250YnVmZmVyIHRyYWNraW5nCndpbGwgYmUgYWJsZSB0byB3 b3JrIGFzIGV4cGVjdGVkLgoKU2lnbmVkLW9mZi1ieTogUm9kcmlnbyBWaXZpIDxyb2RyaWdvLnZp dmlAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiZGV2LmMgfCA4 NiArKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQs IDEzIGluc2VydGlvbnMoKyksIDczIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2ZiZGV2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9m YmRldi5jCmluZGV4IDJhMTcyNGUuLmYxNTkyYzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2ZiZGV2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJk ZXYuYwpAQCAtNDUsOTIgKzQ1LDMyIEBACiAjaW5jbHVkZSA8ZHJtL2k5MTVfZHJtLmg+CiAjaW5j bHVkZSAiaTkxNV9kcnYuaCIKIAotc3RhdGljIGludCBpbnRlbF9mYmRldl9zZXRfcGFyKHN0cnVj dCBmYl9pbmZvICppbmZvKQorc3RhdGljIHZvaWQgaW50ZWxfZmJkZXZfZGlydHkoc3RydWN0IGZi X2luZm8gKmluZm8sIHUzMiB4MSwgdTMyIHkxLAorCQkJICAgICAgdTMyIHgyLCB1MzIgeTIpCiB7 CiAJc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlciA9IGluZm8tPnBhcjsKIAlzdHJ1Y3Qg aW50ZWxfZmJkZXYgKmlmYmRldiA9CiAJCWNvbnRhaW5lcl9vZihmYl9oZWxwZXIsIHN0cnVjdCBp bnRlbF9mYmRldiwgaGVscGVyKTsKLQlpbnQgcmV0OwotCi0JcmV0ID0gZHJtX2ZiX2hlbHBlcl9z ZXRfcGFyKGluZm8pOwotCi0JaWYgKHJldCA9PSAwKSB7Ci0JCS8qCi0JCSAqIEZJWE1FOiBmYmRl diBwcmVzdW1lcyB0aGF0IGFsbCBjYWxsYmFja3MgYWxzbyB3b3JrIGZyb20KLQkJICogYXRvbWlj IGNvbnRleHRzIGFuZCByZWxpZXMgb24gdGhhdCBmb3IgZW1lcmdlbmN5IG9vcHMKLQkJICogcHJp bnRpbmcuIEtNUyB0b3RhbGx5IGRvZXNuJ3QgZG8gdGhhdCBhbmQgdGhlIGxvY2tpbmcgaGVyZSBp cwotCQkgKiBieSBmYXIgbm90IHRoZSBvbmx5IHBsYWNlIHRoaXMgZ29lcyB3cm9uZy4gIElnbm9y ZSB0aGlzIGZvcgotCQkgKiBub3cgdW50aWwgd2Ugc29sdmUgdGhpcyBmb3IgcmVhbC4KLQkJICov Ci0JCW11dGV4X2xvY2soJmZiX2hlbHBlci0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwotCQlyZXQgPSBp OTE1X2dlbV9vYmplY3Rfc2V0X3RvX2d0dF9kb21haW4oaWZiZGV2LT5mYi0+b2JqLAotCQkJCQkJ CXRydWUpOwotCQltdXRleF91bmxvY2soJmZiX2hlbHBlci0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwot CX0KLQotCXJldHVybiByZXQ7Ci19Ci0KLXN0YXRpYyBpbnQgaW50ZWxfZmJkZXZfYmxhbmsoaW50 IGJsYW5rLCBzdHJ1Y3QgZmJfaW5mbyAqaW5mbykKLXsKLQlzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAq ZmJfaGVscGVyID0gaW5mby0+cGFyOwotCXN0cnVjdCBpbnRlbF9mYmRldiAqaWZiZGV2ID0KLQkJ Y29udGFpbmVyX29mKGZiX2hlbHBlciwgc3RydWN0IGludGVsX2ZiZGV2LCBoZWxwZXIpOwotCWlu dCByZXQ7Ci0KLQlyZXQgPSBkcm1fZmJfaGVscGVyX2JsYW5rKGJsYW5rLCBpbmZvKTsKLQotCWlm IChyZXQgPT0gMCkgewotCQkvKgotCQkgKiBGSVhNRTogZmJkZXYgcHJlc3VtZXMgdGhhdCBhbGwg Y2FsbGJhY2tzIGFsc28gd29yayBmcm9tCi0JCSAqIGF0b21pYyBjb250ZXh0cyBhbmQgcmVsaWVz IG9uIHRoYXQgZm9yIGVtZXJnZW5jeSBvb3BzCi0JCSAqIHByaW50aW5nLiBLTVMgdG90YWxseSBk b2Vzbid0IGRvIHRoYXQgYW5kIHRoZSBsb2NraW5nIGhlcmUgaXMKLQkJICogYnkgZmFyIG5vdCB0 aGUgb25seSBwbGFjZSB0aGlzIGdvZXMgd3JvbmcuICBJZ25vcmUgdGhpcyBmb3IKLQkJICogbm93 IHVudGlsIHdlIHNvbHZlIHRoaXMgZm9yIHJlYWwuCi0JCSAqLwotCQltdXRleF9sb2NrKCZmYl9o ZWxwZXItPmRldi0+c3RydWN0X211dGV4KTsKLQkJaW50ZWxfZmJfb2JqX2ludmFsaWRhdGUoaWZi ZGV2LT5mYi0+b2JqLCBPUklHSU5fR1RUKTsKLQkJbXV0ZXhfdW5sb2NrKCZmYl9oZWxwZXItPmRl di0+c3RydWN0X211dGV4KTsKLQl9Ci0KLQlyZXR1cm4gcmV0OwotfQotCi1zdGF0aWMgaW50IGlu dGVsX2ZiZGV2X3Bhbl9kaXNwbGF5KHN0cnVjdCBmYl92YXJfc2NyZWVuaW5mbyAqdmFyLAotCQkJ CSAgIHN0cnVjdCBmYl9pbmZvICppbmZvKQotewotCXN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9o ZWxwZXIgPSBpbmZvLT5wYXI7Ci0Jc3RydWN0IGludGVsX2ZiZGV2ICppZmJkZXYgPQotCQljb250 YWluZXJfb2YoZmJfaGVscGVyLCBzdHJ1Y3QgaW50ZWxfZmJkZXYsIGhlbHBlcik7Ci0KLQlpbnQg cmV0OwotCXJldCA9IGRybV9mYl9oZWxwZXJfcGFuX2Rpc3BsYXkodmFyLCBpbmZvKTsKLQotCWlm IChyZXQgPT0gMCkgewotCQkvKgotCQkgKiBGSVhNRTogZmJkZXYgcHJlc3VtZXMgdGhhdCBhbGwg Y2FsbGJhY2tzIGFsc28gd29yayBmcm9tCi0JCSAqIGF0b21pYyBjb250ZXh0cyBhbmQgcmVsaWVz IG9uIHRoYXQgZm9yIGVtZXJnZW5jeSBvb3BzCi0JCSAqIHByaW50aW5nLiBLTVMgdG90YWxseSBk b2Vzbid0IGRvIHRoYXQgYW5kIHRoZSBsb2NraW5nIGhlcmUgaXMKLQkJICogYnkgZmFyIG5vdCB0 aGUgb25seSBwbGFjZSB0aGlzIGdvZXMgd3JvbmcuICBJZ25vcmUgdGhpcyBmb3IKLQkJICogbm93 IHVudGlsIHdlIHNvbHZlIHRoaXMgZm9yIHJlYWwuCi0JCSAqLwotCQltdXRleF9sb2NrKCZmYl9o ZWxwZXItPmRldi0+c3RydWN0X211dGV4KTsKLQkJaW50ZWxfZmJfb2JqX2ludmFsaWRhdGUoaWZi ZGV2LT5mYi0+b2JqLCBPUklHSU5fR1RUKTsKLQkJbXV0ZXhfdW5sb2NrKCZmYl9oZWxwZXItPmRl di0+c3RydWN0X211dGV4KTsKLQl9CisJc3RydWN0IGludGVsX2ZyYW1lYnVmZmVyICppbnRlbF9m YiA9IGlmYmRldi0+ZmI7CisJc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSAmaW50ZWxfZmIt PmJhc2U7CiAKLQlyZXR1cm4gcmV0OworCS8qCisJICogT3VyIGZiIGRpcnR5IGNhbGxiYWNrIGlz IGp1c3QgdXNlZCB0byBpbnZhbGlkYXRlIGZyb250YnVmZmVyCisJICogZW50aXJlbHkuIFNvIGp1 c3QgZmIgcmVmZXJlbmNlIGlzIG5lZWRlZCBhbmQgcmVzdCBpcyBpZ25vcmVkLgorCSAqLworCWZi LT5mdW5jcy0+ZGlydHkoZmIsIE5VTEwsIDAsIDAsIE5VTEwsIDEpOwogfQogCiBzdGF0aWMgc3Ry dWN0IGZiX29wcyBpbnRlbGZiX29wcyA9IHsKIAkub3duZXIgPSBUSElTX01PRFVMRSwKIAkuZmJf Y2hlY2tfdmFyID0gZHJtX2ZiX2hlbHBlcl9jaGVja192YXIsCi0JLmZiX3NldF9wYXIgPSBpbnRl bF9mYmRldl9zZXRfcGFyLAorCS5mYl9zZXRfcGFyID0gZHJtX2ZiX2hlbHBlcl9zZXRfcGFyLAog CS5mYl9maWxscmVjdCA9IGNmYl9maWxscmVjdCwKIAkuZmJfY29weWFyZWEgPSBjZmJfY29weWFy ZWEsCiAJLmZiX2ltYWdlYmxpdCA9IGNmYl9pbWFnZWJsaXQsCi0JLmZiX3Bhbl9kaXNwbGF5ID0g aW50ZWxfZmJkZXZfcGFuX2Rpc3BsYXksCi0JLmZiX2JsYW5rID0gaW50ZWxfZmJkZXZfYmxhbmss CisJLmZiX2RpcnR5ID0gaW50ZWxfZmJkZXZfZGlydHksCisJLmZiX3Bhbl9kaXNwbGF5ID0gZHJt X2ZiX2hlbHBlcl9wYW5fZGlzcGxheSwKKwkuZmJfYmxhbmsgPSBkcm1fZmJfaGVscGVyX2JsYW5r LAogCS5mYl9zZXRjbWFwID0gZHJtX2ZiX2hlbHBlcl9zZXRjbWFwLAogCS5mYl9kZWJ1Z19lbnRl ciA9IGRybV9mYl9oZWxwZXJfZGVidWdfZW50ZXIsCiAJLmZiX2RlYnVnX2xlYXZlID0gZHJtX2Zi X2hlbHBlcl9kZWJ1Z19sZWF2ZSwKLS0gCjIuMS4wCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=