From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Anholt Subject: [PATCH 5/7] drm: Add helpers for setting up an array of dma_fence dependencies. Date: Mon, 1 Apr 2019 15:26:33 -0700 Message-ID: <20190401222635.25013-6-eric@anholt.net> References: <20190401222635.25013-1-eric@anholt.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from anholt.net (anholt.net [50.246.234.109]) by gabe.freedesktop.org (Postfix) with ESMTP id 50B506E29C for ; Mon, 1 Apr 2019 22:26:54 +0000 (UTC) In-Reply-To: <20190401222635.25013-1-eric@anholt.net> 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: thomas.spurden@broadcom.com, linux-kernel@vger.kernel.org, david.emett@broadcom.com, Qiang Yu List-Id: dri-devel@lists.freedesktop.org SSBuZWVkZWQgdG8gYWRkIGltcGxpY2l0IGRlcGVuZGVuY3kgc3VwcG9ydCBmb3IgdjNkLCBhbmQg Um9iIEhlcnJpbmcKaGFzIGJlZW4gd29ya2luZyBvbiBpdCBmb3IgcGFuZnJvc3QsIGFuZCBJIGhh ZCByZWNlbnRseSBsb29rZWQgYXQgdGhlCmxpbWEgaW1wbGVtZW50YXRpb24gc28gSSB0aGluayB0 aGlzIHdpbGwgYmUgYSBnb29kIGludGVyc2VjdGlvbiBvZgp3aGF0IHdlIGFsbCB3YW50IGFuZCBz aW1wbGlmeSBvdXIgc2NoZWR1bGVyIGltcGxlbWVudGF0aW9ucy4KClNpZ25lZC1vZmYtYnk6IEVy aWMgQW5ob2x0IDxlcmljQGFuaG9sdC5uZXQ+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9nZW0u YyB8IDk0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9k cm0vZHJtX2dlbS5oICAgICB8ICA1ICsrKwogMiBmaWxlcyBjaGFuZ2VkLCA5OSBpbnNlcnRpb25z KCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZ2VtLmMKaW5kZXggMzg4YjM3NDJlNTYyLi43YjNjNzMxMzVlNDkgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9n ZW0uYwpAQCAtMTMxMSwzICsxMzExLDk3IEBAIGRybV9nZW1fdW5sb2NrX3Jlc2VydmF0aW9ucyhz dHJ1Y3QgZHJtX2dlbV9vYmplY3QgKipvYmpzLCBpbnQgY291bnQsCiAJd3dfYWNxdWlyZV9maW5p KGFjcXVpcmVfY3R4KTsKIH0KIEVYUE9SVF9TWU1CT0woZHJtX2dlbV91bmxvY2tfcmVzZXJ2YXRp b25zKTsKKworLyoqCisgKiBkcm1fZ2VtX2ZlbmNlX2FycmF5X2FkZCAtIEFkZHMgdGhlIGZlbmNl IHRvIGFuIGFycmF5IG9mIGZlbmNlcyB0byBiZQorICogd2FpdGVkIG9uLCBkZWR1cGxpY2F0aW5n IGZlbmNlcyBmcm9tIHRoZSBzYW1lIGNvbnRleHQuCisgKgorICogQGZlbmNlX2FycmF5IGFycmF5 IG9mIGRtYV9mZW5jZSAqIGZvciB0aGUgam9iIHRvIGJsb2NrIG9uLgorICogQGZlbmNlIHRoZSBk bWFfZmVuY2UgdG8gYWRkIHRvIHRoZSBsaXN0IG9mIGRlcGVuZGVuY2llcy4KKyAqCisgKiBSZXR1 cm5zOgorICogMCBvbiBzdWNjZXNzLCBvciBhbiBlcnJvciBvbiBmYWlsaW5nIHRvIGV4cGFuZCB0 aGUgYXJyYXkuCisgKi8KK2ludCBkcm1fZ2VtX2ZlbmNlX2FycmF5X2FkZChzdHJ1Y3QgeGFycmF5 ICpmZW5jZV9hcnJheSwKKwkJCSAgICBzdHJ1Y3QgZG1hX2ZlbmNlICpmZW5jZSkKK3sKKwlzdHJ1 Y3QgZG1hX2ZlbmNlICplbnRyeTsKKwl1bnNpZ25lZCBsb25nIGluZGV4OworCXUzMiBpZCA9IDA7 CisJaW50IHJldDsKKworCWlmICghZmVuY2UpCisJCXJldHVybiAwOworCisJLyogRGVkdXBsaWNh dGUgaWYgd2UgYWxyZWFkeSBkZXBlbmQgb24gYSBmZW5jZSBmcm9tIHRoZSBzYW1lIGNvbnRleHQu CisJICogVGhpcyBsZXRzIHRoZSBzaXplIG9mIHRoZSBhcnJheSBvZiBkZXBzIHNjYWxlIHdpdGgg dGhlIG51bWJlciBvZgorCSAqIGVuZ2luZXMgaW52b2x2ZWQsIHJhdGhlciB0aGFuIHRoZSBudW1i ZXIgb2YgQk9zLgorCSAqLworCXhhX2Zvcl9lYWNoKGZlbmNlX2FycmF5LCBpbmRleCwgZW50cnkp IHsKKwkJaWYgKGVudHJ5LT5jb250ZXh0ICE9IGZlbmNlLT5jb250ZXh0KQorCQkJY29udGludWU7 CisKKwkJaWYgKGRtYV9mZW5jZV9pc19sYXRlcihmZW5jZSwgZW50cnkpKSB7CisJCQlkbWFfZmVu Y2VfcHV0KGVudHJ5KTsKKwkJCXhhX3N0b3JlKGZlbmNlX2FycmF5LCBpbmRleCwgZmVuY2UsIEdG UF9LRVJORUwpOworCQl9IGVsc2UgeworCQkJZG1hX2ZlbmNlX3B1dChmZW5jZSk7CisJCX0KKwkJ cmV0dXJuIDA7CisJfQorCisJcmV0ID0geGFfYWxsb2MoZmVuY2VfYXJyYXksICZpZCwgVUlOVF9N QVgsIGZlbmNlLCBHRlBfS0VSTkVMKTsKKwlpZiAocmV0ICE9IDApCisJCWRtYV9mZW5jZV9wdXQo ZmVuY2UpOworCisJcmV0dXJuIHJldDsKK30KK0VYUE9SVF9TWU1CT0woZHJtX2dlbV9mZW5jZV9h cnJheV9hZGQpOworCisvKioKKyAqIGRybV9nZW1fZmVuY2VfYXJyYXlfYWRkX2ltcGxpY2l0IC0g QWRkcyB0aGUgaW1wbGljaXQgZGVwZW5kZW5jaWVzIHRyYWNrZWQKKyAqIGluIHRoZSBHRU0gb2Jq ZWN0J3MgcmVzZXJ2YXRpb24gb2JqZWN0IHRvIGFuIGFycmF5IG9mIGRtYV9mZW5jZXMgZm9yIHVz ZSBpbgorICogc2NoZWR1bGluZyBhIHJlbmRlcmluZyBqb2IuCisgKgorICogVGhpcyBzaG91bGQg YmUgY2FsbGVkIGFmdGVyIGRybV9nZW1fbG9ja19yZXNlcnZhdGlvbnMoKSBvbiB5b3VyIGFycmF5 IG9mCisgKiBHRU0gb2JqZWN0cyB1c2VkIGluIHRoZSBqb2IgYnV0IGJlZm9yZSB1cGRhdGluZyB0 aGUgcmVzZXJ2YXRpb25zIHdpdGggeW91cgorICogb3duIGZlbmNlcy4KKyAqCisgKiBAZmVuY2Vf YXJyYXkgYXJyYXkgb2YgZG1hX2ZlbmNlICogZm9yIHRoZSBqb2IgdG8gYmxvY2sgb24uCisgKiBA b2JqIHRoZSBnZW0gb2JqZWN0IHRvIGFkZCBuZXcgZGVwZW5kZW5jaWVzIGZyb20uCisgKiBAd3Jp dGUgd2hldGhlciB0aGUgam9iIG1pZ2h0IHdyaXRlIHRoZSBvYmplY3QgKHNvIHdlIG5lZWQgdG8g ZGVwZW5kIG9uCisgKiBzaGFyZWQgZmVuY2VzIGluIHRoZSByZXNlcnZhdGlvbiBvYmplY3QpLgor ICovCitpbnQgZHJtX2dlbV9mZW5jZV9hcnJheV9hZGRfaW1wbGljaXQoc3RydWN0IHhhcnJheSAq ZmVuY2VfYXJyYXksCisJCQkJICAgICBzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiwKKwkJCQkg ICAgIGJvb2wgd3JpdGUpCit7CisJaW50IHJldDsKKwlzdHJ1Y3QgZG1hX2ZlbmNlICoqZmVuY2Vz OworCXVuc2lnbmVkIGksIGZlbmNlX2NvdW50OworCisJaWYgKCF3cml0ZSkgeworCQlzdHJ1Y3Qg ZG1hX2ZlbmNlICpmZW5jZSA9CisJCQlyZXNlcnZhdGlvbl9vYmplY3RfZ2V0X2V4Y2xfcmN1KG9i ai0+cmVzdik7CisKKwkJcmV0dXJuIGRybV9nZW1fZmVuY2VfYXJyYXlfYWRkKGZlbmNlX2FycmF5 LCBmZW5jZSk7CisJfQorCisJcmV0ID0gcmVzZXJ2YXRpb25fb2JqZWN0X2dldF9mZW5jZXNfcmN1 KG9iai0+cmVzdiwgTlVMTCwKKwkJCQkJCSZmZW5jZV9jb3VudCwgJmZlbmNlcyk7CisJaWYgKHJl dCB8fCAhZmVuY2VfY291bnQpCisJCXJldHVybiByZXQ7CisKKwlmb3IgKGkgPSAwOyBpIDwgZmVu Y2VfY291bnQ7IGkrKykgeworCQlyZXQgPSBkcm1fZ2VtX2ZlbmNlX2FycmF5X2FkZChmZW5jZV9h cnJheSwgZmVuY2VzW2ldKTsKKwkJaWYgKHJldCkKKwkJCWJyZWFrOworCX0KKworCWZvciAoOyBp IDwgZmVuY2VfY291bnQ7IGkrKykKKwkJZG1hX2ZlbmNlX3B1dChmZW5jZXNbaV0pOworCWtmcmVl KGZlbmNlcyk7CisJcmV0dXJuIHJldDsKK30KKworRVhQT1JUX1NZTUJPTChkcm1fZ2VtX2ZlbmNl X2FycmF5X2FkZF9pbXBsaWNpdCk7CmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fZ2VtLmgg Yi9pbmNsdWRlL2RybS9kcm1fZ2VtLmgKaW5kZXggMjk1NWFhYWIzZGNhLi5lOTU3NzUzZDNmOTQg MTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9nZW0uaAorKysgYi9pbmNsdWRlL2RybS9kcm1f Z2VtLmgKQEAgLTM4OCw2ICszODgsMTEgQEAgaW50IGRybV9nZW1fbG9ja19yZXNlcnZhdGlvbnMo c3RydWN0IGRybV9nZW1fb2JqZWN0ICoqb2JqcywgaW50IGNvdW50LAogCQkJICAgICAgc3RydWN0 IHd3X2FjcXVpcmVfY3R4ICphY3F1aXJlX2N0eCk7CiB2b2lkIGRybV9nZW1fdW5sb2NrX3Jlc2Vy dmF0aW9ucyhzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKipvYmpzLCBpbnQgY291bnQsCiAJCQkJIHN0 cnVjdCB3d19hY3F1aXJlX2N0eCAqYWNxdWlyZV9jdHgpOworaW50IGRybV9nZW1fZmVuY2VfYXJy YXlfYWRkKHN0cnVjdCB4YXJyYXkgKmZlbmNlX2FycmF5LAorCQkJICAgIHN0cnVjdCBkbWFfZmVu Y2UgKmZlbmNlKTsKK2ludCBkcm1fZ2VtX2ZlbmNlX2FycmF5X2FkZF9pbXBsaWNpdChzdHJ1Y3Qg eGFycmF5ICpmZW5jZV9hcnJheSwKKwkJCQkgICAgIHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2Jq LAorCQkJCSAgICAgYm9vbCB3cml0ZSk7CiBpbnQgZHJtX2dlbV9kdW1iX21hcF9vZmZzZXQoc3Ry dWN0IGRybV9maWxlICpmaWxlLCBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJICAgIHUzMiBo YW5kbGUsIHU2NCAqb2Zmc2V0KTsKIGludCBkcm1fZ2VtX2R1bWJfZGVzdHJveShzdHJ1Y3QgZHJt X2ZpbGUgKmZpbGUsCi0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2RyaS1kZXZlbA==