From mboxrd@z Thu Jan 1 00:00:00 1970 From: Qiang Yu Subject: [PATCH RFC 21/24] drm/lima: add GEM Prime related functions Date: Sat, 19 May 2018 14:52:40 +0800 Message-ID: <20180519065243.27600-22-yuq825@gmail.com> References: <20180519065243.27600-1-yuq825@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pl0-x242.google.com (mail-pl0-x242.google.com [IPv6:2607:f8b0:400e:c01::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id 197816EF28 for ; Sat, 19 May 2018 06:54:43 +0000 (UTC) Received: by mail-pl0-x242.google.com with SMTP id bi12-v6so5821541plb.12 for ; Fri, 18 May 2018 23:54:43 -0700 (PDT) In-Reply-To: <20180519065243.27600-1-yuq825@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: Simon Shields , Marek Vasut , Connor Abbott , Neil Armstrong , Andrei Paulau <7134956@gmail.com>, Vasily Khoruzhick , Qiang Yu , Erico Nunes List-Id: dri-devel@lists.freedesktop.org RnJvbTogTGltYSBQcm9qZWN0IERldmVsb3BlcnMgPGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmc+CgpTaWduZWQtb2ZmLWJ5OiBRaWFuZyBZdSA8eXVxODI1QGdtYWlsLmNvbT4KU2lnbmVk LW9mZi1ieTogRXJpY28gTnVuZXMgPG51bmVzLmVyaWNvQGdtYWlsLmNvbT4KLS0tCiBkcml2ZXJz L2dwdS9kcm0vbGltYS9saW1hX2dlbV9wcmltZS5jIHwgNjYgKysrKysrKysrKysrKysrKysrKysr KysrKysrCiBkcml2ZXJzL2dwdS9kcm0vbGltYS9saW1hX2dlbV9wcmltZS5oIHwgMzEgKysrKysr KysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA5NyBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAx MDA2NDQgZHJpdmVycy9ncHUvZHJtL2xpbWEvbGltYV9nZW1fcHJpbWUuYwogY3JlYXRlIG1vZGUg MTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9saW1hL2xpbWFfZ2VtX3ByaW1lLmgKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vbGltYS9saW1hX2dlbV9wcmltZS5jIGIvZHJpdmVycy9ncHUvZHJt L2xpbWEvbGltYV9nZW1fcHJpbWUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAuLjc0ZGE0M2E0Mzc4ZgotLS0gL2Rldi9udWxsCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9s aW1hL2xpbWFfZ2VtX3ByaW1lLmMKQEAgLTAsMCArMSw2NiBAQAorLyoKKyAqIENvcHlyaWdodCAo QykgMjAxNy0yMDE4IExpbWEgUHJvamVjdAorICoKKyAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdy YW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhCisgKiBjb3B5 IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhl ICJTb2Z0d2FyZSIpLAorICogdG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmlj dGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbgorICogdGhlIHJpZ2h0cyB0byB1c2Us IGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsCisg KiBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNv bnMgdG8gd2hvbSB0aGUKKyAqIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVj dCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6CisgKgorICogVGhlIGFib3ZlIGNvcHlyaWdo dCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4K KyAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgor ICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZ IE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SCisgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBM SU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKKyAqIEZJVE5FU1Mg Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuICBJTiBOTyBFVkVO VCBTSEFMTAorICogVEhFIENPUFlSSUdIVCBIT0xERVIoUykgT1IgQVVUSE9SKFMpIEJFIExJQUJM RSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SCisgKiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIg SU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwKKyAqIEFSSVNJTkcg RlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVT RSBPUgorICogT1RIRVIgREVBTElOR1MgSU4gVEhFIFNPRlRXQVJFLgorICovCisKKyNpbmNsdWRl IDxsaW51eC9kbWEtYnVmLmg+CisjaW5jbHVkZSA8ZHJtL2RybV9wcmltZS5oPgorCisjaW5jbHVk ZSAibGltYV9kZXZpY2UuaCIKKyNpbmNsdWRlICJsaW1hX29iamVjdC5oIgorI2luY2x1ZGUgImxp bWFfZ2VtX3ByaW1lLmgiCisKK3N0cnVjdCBkcm1fZ2VtX29iamVjdCAqbGltYV9nZW1fcHJpbWVf aW1wb3J0X3NnX3RhYmxlKAorCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkbWFfYnVm X2F0dGFjaG1lbnQgKmF0dGFjaCwKKwlzdHJ1Y3Qgc2dfdGFibGUgKnNndCkKK3sKKwlzdHJ1Y3Qg cmVzZXJ2YXRpb25fb2JqZWN0ICpyZXN2ID0gYXR0YWNoLT5kbWFidWYtPnJlc3Y7CisJc3RydWN0 IGxpbWFfZGV2aWNlICpsZGV2ID0gdG9fbGltYV9kZXYoZGV2KTsKKwlzdHJ1Y3QgbGltYV9ibyAq Ym87CisKKwl3d19tdXRleF9sb2NrKCZyZXN2LT5sb2NrLCBOVUxMKTsKKworCWJvID0gbGltYV9i b19jcmVhdGUobGRldiwgYXR0YWNoLT5kbWFidWYtPnNpemUsIDAsCisJCQkgICAgdHRtX2JvX3R5 cGVfc2csIHNndCwgcmVzdik7CisJaWYgKElTX0VSUihibykpCisJCWdvdG8gZXJyX291dDsKKwor CXd3X211dGV4X3VubG9jaygmcmVzdi0+bG9jayk7CisJcmV0dXJuICZiby0+Z2VtOworCitlcnJf b3V0OgorCXd3X211dGV4X3VubG9jaygmcmVzdi0+bG9jayk7CisJcmV0dXJuICh2b2lkICopYm87 Cit9CisKK3N0cnVjdCByZXNlcnZhdGlvbl9vYmplY3QgKmxpbWFfZ2VtX3ByaW1lX3Jlc19vYmoo c3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopCit7CisgICAgICAgIHN0cnVjdCBsaW1hX2JvICpi byA9IHRvX2xpbWFfYm8ob2JqKTsKKworCXJldHVybiBiby0+dGJvLnJlc3Y7Cit9CisKK3N0cnVj dCBzZ190YWJsZSAqbGltYV9nZW1fcHJpbWVfZ2V0X3NnX3RhYmxlKHN0cnVjdCBkcm1fZ2VtX29i amVjdCAqb2JqKQoreworCXN0cnVjdCBsaW1hX2JvICpibyA9IHRvX2xpbWFfYm8ob2JqKTsKKwlp bnQgbnBhZ2VzID0gYm8tPnRiby5udW1fcGFnZXM7CisKKwlyZXR1cm4gZHJtX3ByaW1lX3BhZ2Vz X3RvX3NnKGJvLT50Ym8udHRtLT5wYWdlcywgbnBhZ2VzKTsKK30KZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9saW1hL2xpbWFfZ2VtX3ByaW1lLmggYi9kcml2ZXJzL2dwdS9kcm0vbGltYS9s aW1hX2dlbV9wcmltZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4u MDIzYmY1YmEyZDdiCi0tLSAvZGV2L251bGwKKysrIGIvZHJpdmVycy9ncHUvZHJtL2xpbWEvbGlt YV9nZW1fcHJpbWUuaApAQCAtMCwwICsxLDMxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE3 LTIwMTggTGltYSBQcm9qZWN0CisgKgorICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwg ZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEKKyAqIGNvcHkgb2YgdGhp cyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3 YXJlIiksCisgKiB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBp bmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uCisgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwg bW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwKKyAqIGFuZC9v ciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3 aG9tIHRoZQorICogU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRo ZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKyAqCisgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj ZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbgorICogYWxs IGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCisgKgorICog VEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5Z IEtJTkQsIEVYUFJFU1MgT1IKKyAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQg VE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAorICogRklUTkVTUyBGT1IgQSBQ QVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gIElOIE5PIEVWRU5UIFNIQUxM CisgKiBUSEUgQ09QWVJJR0hUIEhPTERFUihTKSBPUiBBVVRIT1IoUykgQkUgTElBQkxFIEZPUiBB TlkgQ0xBSU0sIERBTUFHRVMgT1IKKyAqIE9USEVSIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBB Q1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLAorICogQVJJU0lORyBGUk9NLCBP VVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SCisg KiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCisgKi8KKyNpZm5kZWYgX19MSU1BX0dF TV9QUklNRV9IX18KKyNkZWZpbmUgX19MSU1BX0dFTV9QUklNRV9IX18KKworc3RydWN0IGRybV9n ZW1fb2JqZWN0ICpsaW1hX2dlbV9wcmltZV9pbXBvcnRfc2dfdGFibGUoCisJc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgc3RydWN0IGRtYV9idWZfYXR0YWNobWVudCAqYXR0YWNoLAorCXN0cnVjdCBz Z190YWJsZSAqc2d0KTsKK3N0cnVjdCBzZ190YWJsZSAqbGltYV9nZW1fcHJpbWVfZ2V0X3NnX3Rh YmxlKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKTsKK3N0cnVjdCByZXNlcnZhdGlvbl9vYmpl Y3QgKmxpbWFfZ2VtX3ByaW1lX3Jlc19vYmooc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopOwor CisjZW5kaWYKLS0gCjIuMTcuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v ZHJpLWRldmVsCg==