From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Stone Subject: [PATCH 12/24] drm/tegra: Move GEM BOs to drm_framebuffer Date: Fri, 30 Mar 2018 15:11:26 +0100 Message-ID: <20180330141138.28987-12-daniels@collabora.com> References: <20180330141138.28987-1-daniels@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by gabe.freedesktop.org (Postfix) with ESMTPS id 946D26E8BE for ; Fri, 30 Mar 2018 14:11:45 +0000 (UTC) In-Reply-To: <20180330141138.28987-1-daniels@collabora.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: linux-tegra@vger.kernel.org, Thierry Reding List-Id: dri-devel@lists.freedesktop.org U2luY2UgZHJtX2ZyYW1lYnVmZmVyIGNhbiBub3cgc3RvcmUgR0VNIG9iamVjdHMgZGlyZWN0bHks IHBsYWNlIHRoZW0KdGhlcmUgcmF0aGVyIHRoYW4gaW4gb3VyIG93biBzdWJjbGFzcy4gQXMgdGhp cyBtYWtlcyB0aGUgZnJhbWVidWZmZXIKY3JlYXRlX2hhbmRsZSBmdW5jdGlvbiB0aGUgc2FtZSBh cyB0aGUgR0VNIGZyYW1lYnVmZmVyIGhlbHBlciwgd2UKY2FuIHJldXNlIHRoYXQuCgpTaWduZWQt b2ZmLWJ5OiBEYW5pZWwgU3RvbmUgPGRhbmllbHNAY29sbGFib3JhLmNvbT4KQ2M6IFRoaWVycnkg UmVkaW5nIDx0aGllcnJ5LnJlZGluZ0BnbWFpbC5jb20+CkNjOiBsaW51eC10ZWdyYUB2Z2VyLmtl cm5lbC5vcmcKLS0tCiBkcml2ZXJzL2dwdS9kcm0vdGVncmEvZHJtLmggfCAgMSAtCiBkcml2ZXJz L2dwdS9kcm0vdGVncmEvZmIuYyAgfCAzNyArKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3RlZ3JhL2RybS5oIGIvZHJpdmVycy9ncHUv ZHJtL3RlZ3JhL2RybS5oCmluZGV4IDc5MzQwZmIxZGU0My4uMDI1ZTAxMWQ3NGFmIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZHJtLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Rl Z3JhL2RybS5oCkBAIC0zMSw3ICszMSw2IEBAIHN0cnVjdCByZXNldF9jb250cm9sOwogCiBzdHJ1 Y3QgdGVncmFfZmIgewogCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgYmFzZTsKLQlzdHJ1Y3QgdGVn cmFfYm8gKipwbGFuZXM7CiB9OwogCiAjaWZkZWYgQ09ORklHX0RSTV9GQkRFVl9FTVVMQVRJT04K ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9mYi5jIGIvZHJpdmVycy9ncHUvZHJt L3RlZ3JhL2ZiLmMKaW5kZXggNzViYWRmMzcxNzIxLi41YmM4Zjk2ODI4NGMgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9mYi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9m Yi5jCkBAIC0xNCw2ICsxNCw3IEBACiAKICNpbmNsdWRlICJkcm0uaCIKICNpbmNsdWRlICJnZW0u aCIKKyNpbmNsdWRlIDxkcm0vZHJtX2dlbV9mcmFtZWJ1ZmZlcl9oZWxwZXIuaD4KIAogc3RhdGlj IGlubGluZSBzdHJ1Y3QgdGVncmFfZmIgKnRvX3RlZ3JhX2ZiKHN0cnVjdCBkcm1fZnJhbWVidWZm ZXIgKmZiKQogewpAQCAtMzAsMTkgKzMxLDE0IEBAIHN0YXRpYyBpbmxpbmUgc3RydWN0IHRlZ3Jh X2ZiZGV2ICp0b190ZWdyYV9mYmRldihzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqaGVscGVyKQogc3Ry dWN0IHRlZ3JhX2JvICp0ZWdyYV9mYl9nZXRfcGxhbmUoc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAq ZnJhbWVidWZmZXIsCiAJCQkJICAgIHVuc2lnbmVkIGludCBpbmRleCkKIHsKLQlzdHJ1Y3QgdGVn cmFfZmIgKmZiID0gdG9fdGVncmFfZmIoZnJhbWVidWZmZXIpOwotCi0JaWYgKGluZGV4ID49IGZy YW1lYnVmZmVyLT5mb3JtYXQtPm51bV9wbGFuZXMpCi0JCXJldHVybiBOVUxMOwotCi0JcmV0dXJu IGZiLT5wbGFuZXNbaW5kZXhdOworCXJldHVybiB0b190ZWdyYV9ibyhkcm1fZ2VtX2ZiX2dldF9v YmooZnJhbWVidWZmZXIsIGluZGV4KSk7CiB9CiAKIGJvb2wgdGVncmFfZmJfaXNfYm90dG9tX3Vw KHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZyYW1lYnVmZmVyKQogewotCXN0cnVjdCB0ZWdyYV9m YiAqZmIgPSB0b190ZWdyYV9mYihmcmFtZWJ1ZmZlcik7CisJc3RydWN0IHRlZ3JhX2JvICpibyA9 IHRlZ3JhX2ZiX2dldF9wbGFuZShmcmFtZWJ1ZmZlciwgMCk7CiAKLQlpZiAoZmItPnBsYW5lc1sw XS0+ZmxhZ3MgJiBURUdSQV9CT19CT1RUT01fVVApCisJaWYgKGJvLT5mbGFncyAmIFRFR1JBX0JP X0JPVFRPTV9VUCkKIAkJcmV0dXJuIHRydWU7CiAKIAlyZXR1cm4gZmFsc2U7CkBAIC01MSw4ICs0 Nyw3IEBAIGJvb2wgdGVncmFfZmJfaXNfYm90dG9tX3VwKHN0cnVjdCBkcm1fZnJhbWVidWZmZXIg KmZyYW1lYnVmZmVyKQogaW50IHRlZ3JhX2ZiX2dldF90aWxpbmcoc3RydWN0IGRybV9mcmFtZWJ1 ZmZlciAqZnJhbWVidWZmZXIsCiAJCQlzdHJ1Y3QgdGVncmFfYm9fdGlsaW5nICp0aWxpbmcpCiB7 Ci0Jc3RydWN0IHRlZ3JhX2ZiICpmYiA9IHRvX3RlZ3JhX2ZiKGZyYW1lYnVmZmVyKTsKLQl1aW50 NjRfdCBtb2RpZmllciA9IGZiLT5iYXNlLm1vZGlmaWVyOworCXVpbnQ2NF90IG1vZGlmaWVyID0g ZnJhbWVidWZmZXItPm1vZGlmaWVyOwogCiAJc3dpdGNoIChtb2RpZmllcikgewogCWNhc2UgRFJN X0ZPUk1BVF9NT0RfTElORUFSOgpAQCAtMTA4LDcgKzEwMyw3IEBAIHN0YXRpYyB2b2lkIHRlZ3Jh X2ZiX2Rlc3Ryb3koc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZnJhbWVidWZmZXIpCiAJdW5zaWdu ZWQgaW50IGk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgZnJhbWVidWZmZXItPmZvcm1hdC0+bnVtX3Bs YW5lczsgaSsrKSB7Ci0JCXN0cnVjdCB0ZWdyYV9ibyAqYm8gPSBmYi0+cGxhbmVzW2ldOworCQlz dHJ1Y3QgdGVncmFfYm8gKmJvID0gdGVncmFfZmJfZ2V0X3BsYW5lKGZyYW1lYnVmZmVyLCBpKTsK IAogCQlpZiAoYm8pIHsKIAkJCWlmIChiby0+cGFnZXMpCkBAIC0xMTksMjEgKzExNCwxMiBAQCBz dGF0aWMgdm9pZCB0ZWdyYV9mYl9kZXN0cm95KHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZyYW1l YnVmZmVyKQogCX0KIAogCWRybV9mcmFtZWJ1ZmZlcl9jbGVhbnVwKGZyYW1lYnVmZmVyKTsKLQlr ZnJlZShmYi0+cGxhbmVzKTsKIAlrZnJlZShmYik7CiB9CiAKLXN0YXRpYyBpbnQgdGVncmFfZmJf Y3JlYXRlX2hhbmRsZShzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmcmFtZWJ1ZmZlciwKLQkJCQkg IHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwgdW5zaWduZWQgaW50ICpoYW5kbGUpCi17Ci0Jc3RydWN0 IHRlZ3JhX2ZiICpmYiA9IHRvX3RlZ3JhX2ZiKGZyYW1lYnVmZmVyKTsKLQotCXJldHVybiBkcm1f Z2VtX2hhbmRsZV9jcmVhdGUoZmlsZSwgJmZiLT5wbGFuZXNbMF0tPmdlbSwgaGFuZGxlKTsKLX0K LQogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXJfZnVuY3MgdGVncmFfZmJfZnVu Y3MgPSB7CiAJLmRlc3Ryb3kgPSB0ZWdyYV9mYl9kZXN0cm95LAotCS5jcmVhdGVfaGFuZGxlID0g dGVncmFfZmJfY3JlYXRlX2hhbmRsZSwKKwkuY3JlYXRlX2hhbmRsZSA9IGRybV9nZW1fZmJfY3Jl YXRlX2hhbmRsZSwKIH07CiAKIHN0YXRpYyBzdHJ1Y3QgdGVncmFfZmIgKnRlZ3JhX2ZiX2FsbG9j KHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sCkBAIC0xNDksMjIgKzEzNSwxNSBAQCBzdGF0aWMgc3Ry dWN0IHRlZ3JhX2ZiICp0ZWdyYV9mYl9hbGxvYyhzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLAogCWlm ICghZmIpCiAJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwogCi0JZmItPnBsYW5lcyA9IGt6YWxs b2MobnVtX3BsYW5lcyAqIHNpemVvZigqcGxhbmVzKSwgR0ZQX0tFUk5FTCk7Ci0JaWYgKCFmYi0+ cGxhbmVzKSB7Ci0JCWtmcmVlKGZiKTsKLQkJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7Ci0JfQot CiAJZHJtX2hlbHBlcl9tb2RlX2ZpbGxfZmJfc3RydWN0KGRybSwgJmZiLT5iYXNlLCBtb2RlX2Nt ZCk7CiAKIAlmb3IgKGkgPSAwOyBpIDwgZmItPmJhc2UuZm9ybWF0LT5udW1fcGxhbmVzOyBpKysp Ci0JCWZiLT5wbGFuZXNbaV0gPSBwbGFuZXNbaV07CisJCWZiLT5iYXNlLm9ialtpXSA9ICZwbGFu ZXNbaV0tPmdlbTsKIAogCWVyciA9IGRybV9mcmFtZWJ1ZmZlcl9pbml0KGRybSwgJmZiLT5iYXNl LCAmdGVncmFfZmJfZnVuY3MpOwogCWlmIChlcnIgPCAwKSB7CiAJCWRldl9lcnIoZHJtLT5kZXYs ICJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBmcmFtZWJ1ZmZlcjogJWRcbiIsCiAJCQllcnIpOwotCQlr ZnJlZShmYi0+cGxhbmVzKTsKIAkJa2ZyZWUoZmIpOwogCQlyZXR1cm4gRVJSX1BUUihlcnIpOwog CX0KLS0gCjIuMTYuMgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRl dmVsCg==