From mboxrd@z Thu Jan 1 00:00:00 1970 From: Varad Gautam Subject: [PATCH 06/12] drm/cirrus: implement PRIME export for cirrus Date: Fri, 8 Sep 2017 19:05:11 +0530 Message-ID: <20170908133517.18715-7-varadgautam@gmail.com> References: <20170908133517.18715-1-varadgautam@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pf0-x241.google.com (mail-pf0-x241.google.com [IPv6:2607:f8b0:400e:c00::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id BDED56EB7D for ; Fri, 8 Sep 2017 13:36:29 +0000 (UTC) Received: by mail-pf0-x241.google.com with SMTP id g65so1212548pfe.1 for ; Fri, 08 Sep 2017 06:36:29 -0700 (PDT) In-Reply-To: <20170908133517.18715-1-varadgautam@gmail.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: Stphane Marchesin , Zach Reizner , Varad Gautam List-Id: dri-devel@lists.freedesktop.org RnJvbTogWmFjaCBSZWl6bmVyIDx6YWNockBjaHJvbWl1bS5vcmc+CgpUaGlzIHBhdGNoIGltcGxl bWVudHMgUFJJTUUgZXhwb3J0LCBidXQgbm90IGltcG9ydCBmb3IgY2lycnVzLgoKaW5pdGlhbGx5 IHJldmlld2VkIGF0OgpodHRwczovL2Nocm9taXVtLXJldmlldy5nb29nbGVzb3VyY2UuY29tLzIy OTY4OApodHRwczovL2Nocm9taXVtLXJldmlldy5nb29nbGVzb3VyY2UuY29tLzMzOTA1NwoKU2ln bmVkLW9mZi1ieTogWmFjaCBSZWl6bmVyIDx6YWNockBjaHJvbWl1bS5vcmc+ClNpZ25lZC1vZmYt Ynk6IFN0cGhhbmUgTWFyY2hlc2luIDxtYXJjaGV1QGNocm9taXVtLm9yZz4KU2lnbmVkLW9mZi1i eTogVmFyYWQgR2F1dGFtIDx2YXJhZC5nYXV0YW1AY29sbGFib3JhLmNvbT4KLS0tCiBkcml2ZXJz L2dwdS9kcm0vY2lycnVzL01ha2VmaWxlICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9j aXJydXMvY2lycnVzX2Rydi5jICAgfCAxMSArKysrKy0KIGRyaXZlcnMvZ3B1L2RybS9jaXJydXMv Y2lycnVzX2Rydi5oICAgfCAxMCArKysrKysKIGRyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVz X3ByaW1lLmMgfCA2MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogNCBmaWxl cyBjaGFuZ2VkLCA4NCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX3ByaW1lLmMKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL01ha2VmaWxlIGIvZHJpdmVycy9ncHUvZHJtL2NpcnJ1 cy9NYWtlZmlsZQppbmRleCA5MTljMGEzMzZjOTcuLmY2YmNjMjE0NTRjNiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9NYWtlZmlsZQorKysgYi9kcml2ZXJzL2dwdS9kcm0vY2ly cnVzL01ha2VmaWxlCkBAIC0xLDQgKzEsNCBAQAogY2lycnVzLXkgIDo9IGNpcnJ1c19tYWluLm8g Y2lycnVzX21vZGUubyBcCi0JY2lycnVzX2Rydi5vIGNpcnJ1c19mYmRldi5vIGNpcnJ1c190dG0u bworCWNpcnJ1c19kcnYubyBjaXJydXNfZmJkZXYubyBjaXJydXNfdHRtLm8gY2lycnVzX3ByaW1l Lm8KIAogb2JqLSQoQ09ORklHX0RSTV9DSVJSVVNfUUVNVSkgKz0gY2lycnVzLm8KZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJt L2NpcnJ1cy9jaXJydXNfZHJ2LmMKaW5kZXggNDUyMDU5NzgwZGRjLi4wOTQ2MTg2OGVkNDYgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX2Rydi5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX2Rydi5jCkBAIC0xMzAsNyArMTMwLDcgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgY2lycnVzX2RyaXZlcl9mb3BzID0gewogCS5j b21wYXRfaW9jdGwgPSBkcm1fY29tcGF0X2lvY3RsLAogfTsKIHN0YXRpYyBzdHJ1Y3QgZHJtX2Ry aXZlciBkcml2ZXIgPSB7Ci0JLmRyaXZlcl9mZWF0dXJlcyA9IERSSVZFUl9NT0RFU0VUIHwgRFJJ VkVSX0dFTSwKKwkuZHJpdmVyX2ZlYXR1cmVzID0gRFJJVkVSX01PREVTRVQgfCBEUklWRVJfR0VN IHwgRFJJVkVSX1BSSU1FLAogCS5sb2FkID0gY2lycnVzX2RyaXZlcl9sb2FkLAogCS51bmxvYWQg PSBjaXJydXNfZHJpdmVyX3VubG9hZCwKIAkuZm9wcyA9ICZjaXJydXNfZHJpdmVyX2ZvcHMsCkBA IC0xNDMsNiArMTQzLDE1IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2RyaXZlciBkcml2ZXIgPSB7CiAJ LmdlbV9mcmVlX29iamVjdF91bmxvY2tlZCA9IGNpcnJ1c19nZW1fZnJlZV9vYmplY3QsCiAJLmR1 bWJfY3JlYXRlID0gY2lycnVzX2R1bWJfY3JlYXRlLAogCS5kdW1iX21hcF9vZmZzZXQgPSBjaXJy dXNfZHVtYl9tbWFwX29mZnNldCwKKwkucHJpbWVfaGFuZGxlX3RvX2ZkID0gZHJtX2dlbV9wcmlt ZV9oYW5kbGVfdG9fZmQsCisJLnByaW1lX2ZkX3RvX2hhbmRsZSA9IGRybV9nZW1fcHJpbWVfZmRf dG9faGFuZGxlLAorCS5nZW1fcHJpbWVfZXhwb3J0ID0gZHJtX2dlbV9wcmltZV9leHBvcnQsCisJ LmdlbV9wcmltZV9pbXBvcnQgPSBkcm1fZ2VtX3ByaW1lX2ltcG9ydCwKKwkuZ2VtX3ByaW1lX3Bp biA9IGNpcnJ1c19nZW1fcHJpbWVfcGluLAorCS5nZW1fcHJpbWVfZ2V0X3NnX3RhYmxlID0gY2ly cnVzX2dlbV9wcmltZV9nZXRfc2dfdGFibGUsCisJLmdlbV9wcmltZV9pbXBvcnRfc2dfdGFibGUg PSBjaXJydXNfZ2VtX3ByaW1lX2ltcG9ydF9zZ190YWJsZSwKKwkuZ2VtX3ByaW1lX3ZtYXAgPSBj aXJydXNfZ2VtX3ByaW1lX3ZtYXAsCisJLmdlbV9wcmltZV92dW5tYXAgPSBjaXJydXNfZ2VtX3By aW1lX3Z1bm1hcCwKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZGV2X3BtX29wcyBjaXJydXNf cG1fb3BzID0gewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9jaXJydXNfZHJ2 LmggYi9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1c19kcnYuaAppbmRleCBlMTZiODZkZDZj MTkuLjhjNDNjYzk2MzAyNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9jaXJy dXNfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9jaXJydXNfZHJ2LmgKQEAgLTE2 Myw2ICsxNjMsNyBAQCBzdHJ1Y3QgY2lycnVzX2JvIHsKIAlzdHJ1Y3QgdHRtX2J1ZmZlcl9vYmpl Y3QgYm87CiAJc3RydWN0IHR0bV9wbGFjZW1lbnQgcGxhY2VtZW50OwogCXN0cnVjdCB0dG1fYm9f a21hcF9vYmoga21hcDsKKwlzdHJ1Y3QgdHRtX2JvX2ttYXBfb2JqIGRtYV9idWZfdm1hcDsKIAlz dHJ1Y3QgZHJtX2dlbV9vYmplY3QgZ2VtOwogCXN0cnVjdCB0dG1fcGxhY2UgcGxhY2VtZW50c1sz XTsKIAlpbnQgcGluX2NvdW50OwpAQCAtMjU2LDYgKzI1NywxNSBAQCBpbnQgY2lycnVzX2JvX3B1 c2hfc3lzcmFtKHN0cnVjdCBjaXJydXNfYm8gKmJvKTsKIGludCBjaXJydXNfYm9fcGluKHN0cnVj dCBjaXJydXNfYm8gKmJvLCB1MzIgcGxfZmxhZywgdTY0ICpncHVfYWRkcik7CiBpbnQgY2lycnVz X2JvX3VucGluKHN0cnVjdCBjaXJydXNfYm8gKmJvKTsKIAorc3RydWN0IHNnX3RhYmxlICpjaXJy dXNfZ2VtX3ByaW1lX2dldF9zZ190YWJsZShzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaik7Cit2 b2lkICpjaXJydXNfZ2VtX3ByaW1lX3ZtYXAoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopOwor dm9pZCBjaXJydXNfZ2VtX3ByaW1lX3Z1bm1hcChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiwg dm9pZCAqdmFkZHIpOworc3RydWN0IGRybV9nZW1fb2JqZWN0ICpjaXJydXNfZ2VtX3ByaW1lX2lt cG9ydF9zZ190YWJsZSgKKwkJCQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAorCQkJCXN0cnVjdCBk bWFfYnVmX2F0dGFjaG1lbnQgKmF0dGFjaCwKKwkJCQlzdHJ1Y3Qgc2dfdGFibGUgKnNndCk7Citp bnQgY2lycnVzX2dlbV9wcmltZV9waW4oc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopOworCiBl eHRlcm4gaW50IGNpcnJ1c19icHA7CiAKICNlbmRpZgkJCQkvKiBfX0NJUlJVU19EUlZfSF9fICov CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1c19wcmltZS5jIGIvZHJp dmVycy9ncHUvZHJtL2NpcnJ1cy9jaXJydXNfcHJpbWUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAuLmE3ZmU2YzczYmZiNgotLS0gL2Rldi9udWxsCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9jaXJydXMvY2lycnVzX3ByaW1lLmMKQEAgLTAsMCArMSw2MyBAQAorLyoKKyAq IENvcHlyaWdodCDCqSAyMDE0IFRoZSBDaHJvbWl1bSBPUyBBdXRob3JzCisgKgorICogVGhpcyBm aWxlIGlzIHN1YmplY3QgdG8gdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBHTlUgR2Vu ZXJhbAorICogUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyLiBTZWUgdGhlIGZpbGUgQ09QWUlORyBp biB0aGUgbWFpbgorICogZGlyZWN0b3J5IG9mIHRoaXMgYXJjaGl2ZSBmb3IgbW9yZSBkZXRhaWxz LgorICoKKyAqLworCisjaW5jbHVkZSA8ZHJtL3R0bS90dG1fcGFnZV9hbGxvYy5oPgorI2luY2x1 ZGUgPGRybS9kcm1QLmg+CisjaW5jbHVkZSAiY2lycnVzX2Rydi5oIgorCitzdHJ1Y3Qgc2dfdGFi bGUgKmNpcnJ1c19nZW1fcHJpbWVfZ2V0X3NnX3RhYmxlKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAq b2JqKQoreworCXN0cnVjdCBjaXJydXNfYm8gKmNpcnJ1c2JvID0gZ2VtX3RvX2NpcnJ1c19ibyhv YmopOworCXVuc2lnbmVkIGxvbmcgbnBhZ2VzID0gY2lycnVzYm8tPmJvLm51bV9wYWdlczsKKwor CXJldHVybiBkcm1fcHJpbWVfcGFnZXNfdG9fc2coY2lycnVzYm8tPmJvLnR0bS0+cGFnZXMsIG5w YWdlcyk7Cit9CisKK3ZvaWQgKmNpcnJ1c19nZW1fcHJpbWVfdm1hcChzdHJ1Y3QgZHJtX2dlbV9v YmplY3QgKm9iaikKK3sKKwlzdHJ1Y3QgY2lycnVzX2JvICpjaXJydXNibyA9IGdlbV90b19jaXJy dXNfYm8ob2JqKTsKKwlpbnQgcmV0OworCisJcmV0ID0gdHRtX2JvX2ttYXAoJmNpcnJ1c2JvLT5i bywgMCwgY2lycnVzYm8tPmJvLm51bV9wYWdlcywKKwkJCSAgJmNpcnJ1c2JvLT5kbWFfYnVmX3Zt YXApOworCWlmIChyZXQpCisJCXJldHVybiBFUlJfUFRSKHJldCk7CisKKwlyZXR1cm4gY2lycnVz Ym8tPmRtYV9idWZfdm1hcC52aXJ0dWFsOworfQorCit2b2lkIGNpcnJ1c19nZW1fcHJpbWVfdnVu bWFwKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqLCB2b2lkICp2YWRkcikKK3sKKwlzdHJ1Y3Qg Y2lycnVzX2JvICpjaXJydXNibyA9IGdlbV90b19jaXJydXNfYm8ob2JqKTsKKworCXR0bV9ib19r dW5tYXAoJmNpcnJ1c2JvLT5kbWFfYnVmX3ZtYXApOworfQorCitzdHJ1Y3QgZHJtX2dlbV9vYmpl Y3QgKmNpcnJ1c19nZW1fcHJpbWVfaW1wb3J0X3NnX3RhYmxlKAorCQkJCXN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsCisJCQkJc3RydWN0IGRtYV9idWZfYXR0YWNobWVudCAqYXR0YWNoLAorCQkJCXN0 cnVjdCBzZ190YWJsZSAqc2d0KQoreworCXJldHVybiBOVUxMOworfQorCitpbnQgY2lycnVzX2dl bV9wcmltZV9waW4oc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopCit7CisJc3RydWN0IGNpcnJ1 c19ibyAqY2lycnVzYm8gPSBnZW1fdG9fY2lycnVzX2JvKG9iaik7CisJaW50IHJldCA9IDA7CisK KwlyZXQgPSBjaXJydXNfYm9fcGluKGNpcnJ1c2JvLCBUVE1fUExfRkxBR19TWVNURU0sIE5VTEwp OworCWlmIChyZXQpCisJCWdvdG8gb3V0OworCisJdHRtX3Bvb2xfcG9wdWxhdGUoY2lycnVzYm8t PmJvLnR0bSk7CisKK291dDoKKwlyZXR1cm4gcmV0OworfQotLSAKMi4xMy4xCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK