From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rob Herring Subject: [PATCH 1/5] drm/panfrost: Restructure the GEM object creation Date: Wed, 17 Jul 2019 12:33:48 -0600 Message-ID: <20190717183352.22519-1-robh@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-io1-f67.google.com (mail-io1-f67.google.com [209.85.166.67]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5BB5E6E296 for ; Wed, 17 Jul 2019 18:33:55 +0000 (UTC) Received: by mail-io1-f67.google.com with SMTP id j5so43147445ioj.8 for ; Wed, 17 Jul 2019 11:33:55 -0700 (PDT) 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: Boris Brezillon , Robin Murphy , Alyssa Rosenzweig , Tomeu Vizoso , Steven Price List-Id: dri-devel@lists.freedesktop.org U2V0dGluZyB0aGUgR1BVIFZBIHdoZW4gY3JlYXRpbmcgdGhlIEdFTSBvYmplY3QgZG9lc24ndCBh bGxvdyBmb3IgYW55CmNvbmRpdGlvbmFsIGFkanVzdG1lbnRzLiBJbiBwcmVwYXJhdGlvbiB0byBz dXBwb3J0IGFkanVzdGluZyB0aGUKbWFwcGluZywgcmVzdHJ1Y3R1cmUgdGhlIEdFTSBvYmplY3Qg Y3JlYXRpb24gdG8gbWFwIHRoZSBHRU0gb2JqZWN0IGFmdGVyCndlJ3ZlIGNyZWF0ZWQgdGhlIGJh c2Ugc2htZW0gb2JqZWN0LgoKQ2M6IFRvbWV1IFZpem9zbyA8dG9tZXUudml6b3NvQGNvbGxhYm9y YS5jb20+CkNjOiBCb3JpcyBCcmV6aWxsb24gPGJvcmlzLmJyZXppbGxvbkBjb2xsYWJvcmEuY29t PgpDYzogUm9iaW4gTXVycGh5IDxyb2Jpbi5tdXJwaHlAYXJtLmNvbT4KQ2M6IFN0ZXZlbiBQcmlj ZSA8c3RldmVuLnByaWNlQGFybS5jb20+CkNjOiBBbHlzc2EgUm9zZW56d2VpZyA8YWx5c3NhQHJv c2VuendlaWcuaW8+ClNpZ25lZC1vZmYtYnk6IFJvYiBIZXJyaW5nIDxyb2JoQGtlcm5lbC5vcmc+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0X2Rydi5jIHwgMjEgKysrLS0t LS0tCiBkcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3RfZ2VtLmMgfCA1OCArKysrKysr KysrKysrKysrKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3RfZ2Vt LmggfCAgNSArKysKIDMgZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0X2Ry di5jIGIvZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0X2Rydi5jCmluZGV4IGNiNDNm ZjRlYmY0YS4uZDM1NGI5Mjk2NGQ1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcGFuZnJv c3QvcGFuZnJvc3RfZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0 X2Rydi5jCkBAIC00NiwyOSArNDYsMjAgQEAgc3RhdGljIGludCBwYW5mcm9zdF9pb2N0bF9nZXRf cGFyYW0oc3RydWN0IGRybV9kZXZpY2UgKmRkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdAogc3RhdGlj IGludCBwYW5mcm9zdF9pb2N0bF9jcmVhdGVfYm8oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9p ZCAqZGF0YSwKIAkJc3RydWN0IGRybV9maWxlICpmaWxlKQogewotCWludCByZXQ7Ci0Jc3RydWN0 IGRybV9nZW1fc2htZW1fb2JqZWN0ICpzaG1lbTsKKwlzdHJ1Y3QgcGFuZnJvc3RfZ2VtX29iamVj dCAqYm87CiAJc3RydWN0IGRybV9wYW5mcm9zdF9jcmVhdGVfYm8gKmFyZ3MgPSBkYXRhOwogCiAJ aWYgKCFhcmdzLT5zaXplIHx8IGFyZ3MtPmZsYWdzIHx8IGFyZ3MtPnBhZCkKIAkJcmV0dXJuIC1F SU5WQUw7CiAKLQlzaG1lbSA9IGRybV9nZW1fc2htZW1fY3JlYXRlX3dpdGhfaGFuZGxlKGZpbGUs IGRldiwgYXJncy0+c2l6ZSwKLQkJCQkJCSAmYXJncy0+aGFuZGxlKTsKLQlpZiAoSVNfRVJSKHNo bWVtKSkKLQkJcmV0dXJuIFBUUl9FUlIoc2htZW0pOwotCi0JcmV0ID0gcGFuZnJvc3RfbW11X21h cCh0b19wYW5mcm9zdF9ibygmc2htZW0tPmJhc2UpKTsKLQlpZiAocmV0KQotCQlnb3RvIGVycl9m cmVlOworCWJvID0gcGFuZnJvc3RfZ2VtX2NyZWF0ZV93aXRoX2hhbmRsZShmaWxlLCBkZXYsIGFy Z3MtPnNpemUsIGFyZ3MtPmZsYWdzLAorCQkJCQkgICAgICZhcmdzLT5oYW5kbGUpOworCWlmIChJ U19FUlIoYm8pKQorCQlyZXR1cm4gUFRSX0VSUihibyk7CiAKLQlhcmdzLT5vZmZzZXQgPSB0b19w YW5mcm9zdF9ibygmc2htZW0tPmJhc2UpLT5ub2RlLnN0YXJ0IDw8IFBBR0VfU0hJRlQ7CisJYXJn cy0+b2Zmc2V0ID0gYm8tPm5vZGUuc3RhcnQgPDwgUEFHRV9TSElGVDsKIAogCXJldHVybiAwOwot Ci1lcnJfZnJlZToKLQlkcm1fZ2VtX2hhbmRsZV9kZWxldGUoZmlsZSwgYXJncy0+aGFuZGxlKTsK LQlyZXR1cm4gcmV0OwogfQogCiAvKioKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9wYW5m cm9zdC9wYW5mcm9zdF9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5mcm9zdC9wYW5mcm9zdF9n ZW0uYwppbmRleCA1NDNhYjFiODFiZDUuLmRmNzBkY2YzY2IyZiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0X2dlbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9w YW5mcm9zdC9wYW5mcm9zdF9nZW0uYwpAQCAtMjMsNyArMjMsOCBAQCBzdGF0aWMgdm9pZCBwYW5m cm9zdF9nZW1fZnJlZV9vYmplY3Qoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopCiAJCXBhbmZy b3N0X21tdV91bm1hcChibyk7CiAKIAlzcGluX2xvY2soJnBmZGV2LT5tbV9sb2NrKTsKLQlkcm1f bW1fcmVtb3ZlX25vZGUoJmJvLT5ub2RlKTsKKwlpZiAoZHJtX21tX25vZGVfYWxsb2NhdGVkKCZi by0+bm9kZSkpCisJCWRybV9tbV9yZW1vdmVfbm9kZSgmYm8tPm5vZGUpOwogCXNwaW5fdW5sb2Nr KCZwZmRldi0+bW1fbG9jayk7CiAKIAlkcm1fZ2VtX3NobWVtX2ZyZWVfb2JqZWN0KG9iaik7CkBA IC01MCwxMCArNTEsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9nZW1fb2JqZWN0X2Z1bmNz IHBhbmZyb3N0X2dlbV9mdW5jcyA9IHsKICAqLwogc3RydWN0IGRybV9nZW1fb2JqZWN0ICpwYW5m cm9zdF9nZW1fY3JlYXRlX29iamVjdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzaXplX3Qgc2l6 ZSkKIHsKLQlpbnQgcmV0OwotCXN0cnVjdCBwYW5mcm9zdF9kZXZpY2UgKnBmZGV2ID0gZGV2LT5k ZXZfcHJpdmF0ZTsKIAlzdHJ1Y3QgcGFuZnJvc3RfZ2VtX29iamVjdCAqb2JqOwotCXU2NCBhbGln bjsKIAogCW9iaiA9IGt6YWxsb2Moc2l6ZW9mKCpvYmopLCBHRlBfS0VSTkVMKTsKIAlpZiAoIW9i aikKQEAgLTYxLDIwICs1OSw1MiBAQCBzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKnBhbmZyb3N0X2dl bV9jcmVhdGVfb2JqZWN0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHNpemVfdAogCiAJb2JqLT5i YXNlLmJhc2UuZnVuY3MgPSAmcGFuZnJvc3RfZ2VtX2Z1bmNzOwogCi0Jc2l6ZSA9IHJvdW5kdXAo c2l6ZSwgUEFHRV9TSVpFKTsKLQlhbGlnbiA9IHNpemUgPj0gU1pfMk0gPyBTWl8yTSA+PiBQQUdF X1NISUZUIDogMDsKKwlyZXR1cm4gJm9iai0+YmFzZS5iYXNlOworfQorCitzdGF0aWMgaW50IHBh bmZyb3N0X2dlbV9tYXAoc3RydWN0IHBhbmZyb3N0X2RldmljZSAqcGZkZXYsIHN0cnVjdCBwYW5m cm9zdF9nZW1fb2JqZWN0ICpibykKK3sKKwlpbnQgcmV0OworCXNpemVfdCBzaXplID0gYm8tPmJh c2UuYmFzZS5zaXplOworCXU2NCBhbGlnbiA9IHNpemUgPj0gU1pfMk0gPyBTWl8yTSA+PiBQQUdF X1NISUZUIDogMDsKIAogCXNwaW5fbG9jaygmcGZkZXYtPm1tX2xvY2spOwotCXJldCA9IGRybV9t bV9pbnNlcnRfbm9kZV9nZW5lcmljKCZwZmRldi0+bW0sICZvYmotPm5vZGUsCisJcmV0ID0gZHJt X21tX2luc2VydF9ub2RlX2dlbmVyaWMoJnBmZGV2LT5tbSwgJmJvLT5ub2RlLAogCQkJCQkgc2l6 ZSA+PiBQQUdFX1NISUZULCBhbGlnbiwgMCwgMCk7CiAJc3Bpbl91bmxvY2soJnBmZGV2LT5tbV9s b2NrKTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJcmV0dXJuIHBhbmZyb3N0X21tdV9t YXAoYm8pOworfQorCitzdHJ1Y3QgcGFuZnJvc3RfZ2VtX29iamVjdCAqCitwYW5mcm9zdF9nZW1f Y3JlYXRlX3dpdGhfaGFuZGxlKHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2LAorCQkJCSBzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCBzaXplX3Qgc2l6ZSwKKwkJCQkgdTMyIGZsYWdzLAorCQkJCSB1 aW50MzJfdCAqaGFuZGxlKQoreworCWludCByZXQ7CisJc3RydWN0IHBhbmZyb3N0X2RldmljZSAq cGZkZXYgPSBkZXYtPmRldl9wcml2YXRlOworCXN0cnVjdCBkcm1fZ2VtX3NobWVtX29iamVjdCAq c2htZW07CisJc3RydWN0IHBhbmZyb3N0X2dlbV9vYmplY3QgKmJvOworCisJc2l6ZSA9IHJvdW5k dXAoc2l6ZSwgUEFHRV9TSVpFKTsKKworCXNobWVtID0gZHJtX2dlbV9zaG1lbV9jcmVhdGVfd2l0 aF9oYW5kbGUoZmlsZV9wcml2LCBkZXYsIHNpemUsIGhhbmRsZSk7CisJaWYgKElTX0VSUihzaG1l bSkpCisJCXJldHVybiBFUlJfQ0FTVChzaG1lbSk7CisKKwlibyA9IHRvX3BhbmZyb3N0X2JvKCZz aG1lbS0+YmFzZSk7CisKKwlyZXQgPSBwYW5mcm9zdF9nZW1fbWFwKHBmZGV2LCBibyk7CiAJaWYg KHJldCkKIAkJZ290byBmcmVlX29iajsKIAotCXJldHVybiAmb2JqLT5iYXNlLmJhc2U7CisJcmV0 dXJuIGJvOwogCiBmcmVlX29iajoKLQlrZnJlZShvYmopOworCWRybV9nZW1faGFuZGxlX2RlbGV0 ZShmaWxlX3ByaXYsICpoYW5kbGUpOwogCXJldHVybiBFUlJfUFRSKHJldCk7CiB9CiAKQEAgLTgz LDggKzExMywxMCBAQCBwYW5mcm9zdF9nZW1fcHJpbWVfaW1wb3J0X3NnX3RhYmxlKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCiAJCQkJICAgc3RydWN0IGRtYV9idWZfYXR0YWNobWVudCAqYXR0YWNo LAogCQkJCSAgIHN0cnVjdCBzZ190YWJsZSAqc2d0KQogeworCWludCByZXQ7CiAJc3RydWN0IGRy bV9nZW1fb2JqZWN0ICpvYmo7CiAJc3RydWN0IHBhbmZyb3N0X2dlbV9vYmplY3QgKnBvYmo7CisJ c3RydWN0IHBhbmZyb3N0X2RldmljZSAqcGZkZXYgPSBkZXYtPmRldl9wcml2YXRlOwogCiAJb2Jq ID0gZHJtX2dlbV9zaG1lbV9wcmltZV9pbXBvcnRfc2dfdGFibGUoZGV2LCBhdHRhY2gsIHNndCk7 CiAJaWYgKElTX0VSUihvYmopKQpAQCAtOTIsNyArMTI0LDEzIEBAIHBhbmZyb3N0X2dlbV9wcmlt ZV9pbXBvcnRfc2dfdGFibGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAogCXBvYmogPSB0b19w YW5mcm9zdF9ibyhvYmopOwogCi0JcGFuZnJvc3RfbW11X21hcChwb2JqKTsKKwlyZXQgPSBwYW5m cm9zdF9nZW1fbWFwKHBmZGV2LCBwb2JqKTsKKwlpZiAocmV0KQorCQlnb3RvIGZyZWVfb2JqOwog CiAJcmV0dXJuIG9iajsKKworZnJlZV9vYmo6CisJZHJtX2dlbV9vYmplY3RfcHV0X3VubG9ja2Vk KG9iaik7CisJcmV0dXJuIEVSUl9QVFIocmV0KTsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9wYW5mcm9zdC9wYW5mcm9zdF9nZW0uaCBiL2RyaXZlcnMvZ3B1L2RybS9wYW5mcm9zdC9w YW5mcm9zdF9nZW0uaAppbmRleCA2ZGJjYWJhMDIwZmMuLmNlMDY1MjcwNzIwYiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL3BhbmZyb3N0L3BhbmZyb3N0X2dlbS5oCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9wYW5mcm9zdC9wYW5mcm9zdF9nZW0uaApAQCAtMjIsNiArMjIsMTEgQEAgc3RydWN0 ICBwYW5mcm9zdF9nZW1fb2JqZWN0ICp0b19wYW5mcm9zdF9ibyhzdHJ1Y3QgZHJtX2dlbV9vYmpl Y3QgKm9iaikKIAogc3RydWN0IGRybV9nZW1fb2JqZWN0ICpwYW5mcm9zdF9nZW1fY3JlYXRlX29i amVjdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzaXplX3Qgc2l6ZSk7CiAKK3N0cnVjdCBwYW5m cm9zdF9nZW1fb2JqZWN0ICoKK3BhbmZyb3N0X2dlbV9jcmVhdGVfd2l0aF9oYW5kbGUoc3RydWN0 IGRybV9maWxlICpmaWxlX3ByaXYsCisJCQkJc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc2l6ZV90 IHNpemUsIHUzMiBmbGFncywKKwkJCQl1aW50MzJfdCAqaGFuZGxlKTsKKwogc3RydWN0IGRybV9n ZW1fb2JqZWN0ICoKIHBhbmZyb3N0X2dlbV9wcmltZV9pbXBvcnRfc2dfdGFibGUoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKIAkJCQkgICBzdHJ1Y3QgZG1hX2J1Zl9hdHRhY2htZW50ICphdHRhY2gs Ci0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bA==