From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH v3 4/9] drm/ast: Pin and map cursor source BO during update Date: Thu, 13 Jun 2019 09:30:36 +0200 Message-ID: <20190613073041.29350-5-tzimmermann@suse.de> References: <20190613073041.29350-1-tzimmermann@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3181889708 for ; Thu, 13 Jun 2019 07:30:52 +0000 (UTC) In-Reply-To: <20190613073041.29350-1-tzimmermann@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: kraxel@redhat.com, airlied@redhat.com, daniel@ffwll.ch, maarten.lankhorst@linux.intel.com, maxime.ripard@bootlin.com, sean@poorly.run, sam@ravnborg.org, dri-devel@lists.freedesktop.org Cc: Thomas Zimmermann List-Id: dri-devel@lists.freedesktop.org VGhlIGFzdCBkcml2ZXIgdXNlZCB0byBsb2NrIHRoZSBjdXJzb3Igc291cmNlIEJPIGR1cmluZyB1 cGRhdGVzLiBMb2NraW5nCnNob3VsZCBiZSBkb25lIGludGVybmFsbHkgYnkgdGhlIEJPJ3MgaW1w bGVtZW50YXRpb24sIHNvIHdlIHBpbiBpdCBpbnN0ZWFkCnRvIHN5c3RlbSBtZW1vcnkuIFRoZSBt YXBwaW5nIGluZm9ybWF0aW9uIGlzIGFsc28gc3RvcmVkIGluIHRoZSBCTy4gTm8KbmVlZCB0byBo YXZlIGFuIGV4dHJhIGFyZ3VtZW50IHRvIHRoZSBrbWFwIGZ1bmN0aW9uLgoKdjI6CgkqIHBpbiBj dXJzb3IgQk9zIHRvIGN1cnJlbnQgbG9jYXRpb24KClNpZ25lZC1vZmYtYnk6IFRob21hcyBaaW1t ZXJtYW5uIDx0emltbWVybWFubkBzdXNlLmRlPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9hc3QvYXN0 X21vZGUuYyB8IDM3ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBj aGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vYXN0L2FzdF9tb2RlLmMgYi9kcml2ZXJzL2dwdS9kcm0vYXN0L2FzdF9t b2RlLmMKaW5kZXggY2I2ZTgyNDlhN2RiLi42NjQ5ZDM3MGIyZjEgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9hc3QvYXN0X21vZGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYXN0L2FzdF9t b2RlLmMKQEAgLTExODMsOSArMTE4Myw4IEBAIHN0YXRpYyBpbnQgYXN0X2N1cnNvcl9zZXQoc3Ry dWN0IGRybV9jcnRjICpjcnRjLAogCXU2NCBncHVfYWRkcjsKIAl1MzIgY3N1bTsKIAlpbnQgcmV0 OwotCXN0cnVjdCB0dG1fYm9fa21hcF9vYmogdW9ial9tYXA7CiAJdTggKnNyYywgKmRzdDsKLQli b29sIHNyY19pc2lvbWVtLCBkc3RfaXNpb21lbTsKKwogCWlmICghaGFuZGxlKSB7CiAJCWFzdF9o aWRlX2N1cnNvcihjcnRjKTsKIAkJcmV0dXJuIDA7CkBAIC0xMjAxLDMxICsxMjAwLDI1IEBAIHN0 YXRpYyBpbnQgYXN0X2N1cnNvcl9zZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCX0KIAlnYm8g PSBkcm1fZ2VtX3ZyYW1fb2ZfZ2VtKG9iaik7CiAKLQlyZXQgPSBkcm1fZ2VtX3ZyYW1fbG9jayhn Ym8sIGZhbHNlKTsKKwlyZXQgPSBkcm1fZ2VtX3ZyYW1fcGluKGdibywgMCk7CiAJaWYgKHJldCkK LQkJZ290byBmYWlsOwotCi0JbWVtc2V0KCZ1b2JqX21hcCwgMCwgc2l6ZW9mKHVvYmpfbWFwKSk7 Ci0Jc3JjID0gZHJtX2dlbV92cmFtX2ttYXBfYXQoZ2JvLCB0cnVlLCAmc3JjX2lzaW9tZW0sICZ1 b2JqX21hcCk7CisJCWdvdG8gZXJyX2RybV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZDsKKwlzcmMg PSBkcm1fZ2VtX3ZyYW1fa21hcChnYm8sIHRydWUsIE5VTEwpOwogCWlmIChJU19FUlIoc3JjKSkg ewogCQlyZXQgPSBQVFJfRVJSKHNyYyk7Ci0JCWdvdG8gZmFpbF91bmxvY2s7CisJCWdvdG8gZXJy X2RybV9nZW1fdnJhbV91bnBpbjsKIAl9Ci0JaWYgKHNyY19pc2lvbWVtID09IHRydWUpCi0JCURS TV9FUlJPUigic3JjIGN1cnNvciBibyBzaG91bGQgYmUgaW4gbWFpbiBtZW1vcnlcbiIpOwogCiAJ ZHN0ID0gZHJtX2dlbV92cmFtX2ttYXAoZHJtX2dlbV92cmFtX29mX2dlbShhc3QtPmN1cnNvcl9j YWNoZSksCi0JCQkJZmFsc2UsICZkc3RfaXNpb21lbSk7CisJCQkJZmFsc2UsIE5VTEwpOwogCWlm IChJU19FUlIoZHN0KSkgewogCQlyZXQgPSBQVFJfRVJSKGRzdCk7Ci0JCWdvdG8gZmFpbF91bmxv Y2s7CisJCWdvdG8gZXJyX2RybV9nZW1fdnJhbV9rdW5tYXA7CiAJfQotCWlmIChkc3RfaXNpb21l bSA9PSBmYWxzZSkKLQkJRFJNX0VSUk9SKCJkc3QgYm8gc2hvdWxkIGJlIGluIFZSQU1cbiIpOwog CWRzdF9ncHUgPSBkcm1fZ2VtX3ZyYW1fb2Zmc2V0KGRybV9nZW1fdnJhbV9vZl9nZW0oYXN0LT5j dXJzb3JfY2FjaGUpKTsKIAlpZiAoZHN0X2dwdSA8IDApIHsKIAkJcmV0ID0gKGludClkc3RfZ3B1 OwotCQlnb3RvIGZhaWxfdW5sb2NrOworCQlnb3RvIGVycl9kcm1fZ2VtX3ZyYW1fa3VubWFwOwog CX0KIAogCWRzdCArPSAoQVNUX0hXQ19TSVpFICsgQVNUX0hXQ19TSUdOQVRVUkVfU0laRSkqYXN0 LT5uZXh0X2N1cnNvcjsKQEAgLTEyMzMsOSArMTIyNiw2IEBAIHN0YXRpYyBpbnQgYXN0X2N1cnNv cl9zZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCS8qIGRvIGRhdGEgdHJhbnNmZXIgdG8gY3Vy c29yIGNhY2hlICovCiAJY3N1bSA9IGNvcHlfY3Vyc29yX2ltYWdlKHNyYywgZHN0LCB3aWR0aCwg aGVpZ2h0KTsKIAotCWRybV9nZW1fdnJhbV9rdW5tYXBfYXQoZ2JvLCAmdW9ial9tYXApOwotCWRy bV9nZW1fdnJhbV91bmxvY2soZ2JvKTsKLQogCS8qIHdyaXRlIGNoZWNrc3VtICsgc2lnbmF0dXJl ICovCiAJewogCQlzdHJ1Y3QgZHJtX2dlbV92cmFtX29iamVjdCAqZHN0X2dibyA9CkBAIC0xMjYz LDEyICsxMjUzLDE3IEBAIHN0YXRpYyBpbnQgYXN0X2N1cnNvcl9zZXQoc3RydWN0IGRybV9jcnRj ICpjcnRjLAogCiAJYXN0X3Nob3dfY3Vyc29yKGNydGMpOwogCisJZHJtX2dlbV92cmFtX2t1bm1h cChnYm8pOworCWRybV9nZW1fdnJhbV91bnBpbihnYm8pOwogCWRybV9nZW1fb2JqZWN0X3B1dF91 bmxvY2tlZChvYmopOworCiAJcmV0dXJuIDA7CiAKLWZhaWxfdW5sb2NrOgotCWRybV9nZW1fdnJh bV91bmxvY2soZ2JvKTsKLWZhaWw6CitlcnJfZHJtX2dlbV92cmFtX2t1bm1hcDoKKwlkcm1fZ2Vt X3ZyYW1fa3VubWFwKGdibyk7CitlcnJfZHJtX2dlbV92cmFtX3VucGluOgorCWRybV9nZW1fdnJh bV91bnBpbihnYm8pOworZXJyX2RybV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZDoKIAlkcm1fZ2Vt X29iamVjdF9wdXRfdW5sb2NrZWQob2JqKTsKIAlyZXR1cm4gcmV0OwogfQotLSAKMi4yMS4wCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwg bWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw=