From mboxrd@z Thu Jan 1 00:00:00 1970 From: ankitprasad.r.sharma@intel.com Subject: [PATCH 2/6] drm/i915: Support for creating Stolen memory backed objects Date: Wed, 11 Nov 2015 16:06:09 +0530 Message-ID: <1447238173-31347-3-git-send-email-ankitprasad.r.sharma@intel.com> References: <1447238173-31347-1-git-send-email-ankitprasad.r.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id DA8A96E3E2 for ; Wed, 11 Nov 2015 02:55:37 -0800 (PST) In-Reply-To: <1447238173-31347-1-git-send-email-ankitprasad.r.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Ankitprasad Sharma , akash.goel@intel.com, shashidhar.hiremath@intel.com List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQW5raXRwcmFzYWQgU2hhcm1hIDxhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRlbC5jb20+ CgpFeHRlbmQgdGhlIGRybV9pOTE1X2dlbV9jcmVhdGUgc3RydWN0dXJlIHRvIGFkZCBzdXBwb3J0 IGZvcgpjcmVhdGluZyBTdG9sZW4gbWVtb3J5IGJhY2tlZCBvYmplY3RzLiBBZGRlZCBhIG5ldyBm bGFnIHRocm91Z2gKd2hpY2ggdXNlciBjYW4gc3BlY2lmeSB0aGUgcHJlZmVyZW5jZSB0byBhbGxv Y2F0ZSB0aGUgb2JqZWN0IGZyb20Kc3RvbGVuIG1lbW9yeSwgd2hpY2ggaWYgc2V0LCBhbiBhdHRl bXB0IHdpbGwgYmUgbWFkZSB0byBhbGxvY2F0ZQp0aGUgb2JqZWN0IGZyb20gc3RvbGVuIG1lbW9y eSBzdWJqZWN0IHRvIHRoZSBhdmFpbGFiaWxpdHkgb2YKZnJlZSBzcGFjZSBpbiB0aGUgc3RvbGVu IHJlZ2lvbi4KCnYyOiBSZWJhc2VkIHRvIHRoZSBsYXRlc3QgZHJtLWludGVsLW5pZ2h0bHkgKEFu a2l0KQoKdjM6IENoYW5nZWQgdmVyc2lvbmluZyBvZiBHRU1fQ1JFQVRFIHBhcmFtLCBhZGRlZCBu ZXcgY29tbWVudHMgKFR2cnRrbykKCnY0OiBDaGFuZ2VkIHNpemUgZnJvbSAzMmIgdG8gNjRiIHRv IHByZXZlbnQgdXNlcnNwYWNlIG92ZXJmbG93IChUdnJ0a28pCkNvcnJlY3RlZCBmdW5jdGlvbiBh cmd1bWVudHMgb3JkZXJpbmcgKENocmlzKQoKVGVzdGNhc2U6IGlndC9nZW1fc3RvbGVuCgpTaWdu ZWQtb2ZmLWJ5OiBBbmtpdHByYXNhZCBTaGFybWEgPGFua2l0cHJhc2FkLnIuc2hhcm1hQGludGVs LmNvbT4KUmV2aWV3ZWQtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5j b20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYyAgICAgICAgfCAgMyArKysK IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgICAgIHwgIDIgKy0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgIHwgMzAgKysrKysrKysrKysrKysrKysrKysr KysrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYyB8ICA0ICsr LS0KIGluY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCAgICAgICAgICAgIHwgMTYgKysrKysrKysr KysrKysrKwogNSBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jCmluZGV4IGZmY2I5YzYuLjY5MjdjN2UgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kbWEuYwpAQCAtMTcwLDYgKzE3MCw5IEBAIHN0YXRpYyBpbnQgaTkxNV9nZXRw YXJhbShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCWNhc2UgSTkxNV9QQVJB TV9IQVNfUkVTT1VSQ0VfU1RSRUFNRVI6CiAJCXZhbHVlID0gSEFTX1JFU09VUkNFX1NUUkVBTUVS KGRldik7CiAJCWJyZWFrOworCWNhc2UgSTkxNV9QQVJBTV9DUkVBVEVfVkVSU0lPTjoKKwkJdmFs dWUgPSAyOworCQlicmVhazsKIAlkZWZhdWx0OgogCQlEUk1fREVCVUcoIlVua25vd24gcGFyYW1l dGVyICVkXG4iLCBwYXJhbS0+cGFyYW0pOwogCQlyZXR1cm4gLUVJTlZBTDsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCmluZGV4IDM5YjI5ZDMuLjljNzMxZjYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aApAQCAtMzIxMyw3ICszMjEzLDcgQEAgdm9pZCBpOTE1X2dlbV9zdG9sZW5fcmVtb3ZlX25vZGUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogaW50IGk5MTVfZ2VtX2luaXRfc3Rv bGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogdm9pZCBpOTE1X2dlbV9jbGVhbnVwX3N0b2xl bihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoK LWk5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUz MiBzaXplKTsKK2k5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHU2NCBzaXplKTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoKIGk5MTVfZ2Vt X29iamVjdF9jcmVhdGVfc3RvbGVuX2Zvcl9wcmVhbGxvY2F0ZWQoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwKIAkJCQkJICAgICAgIHUzMiBzdG9sZW5fb2Zmc2V0LApkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt LmMKaW5kZXggNjQ1YjhhMC4uODk4OTA0ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0z NzUsNiArMzc1LDcgQEAgc3RhdGljIGludAogaTkxNV9nZW1fY3JlYXRlKHN0cnVjdCBkcm1fZmls ZSAqZmlsZSwKIAkJc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJdWludDY0X3Qgc2l6ZSwKKwkJ dWludDMyX3QgZmxhZ3MsCiAJCXVpbnQzMl90ICpoYW5kbGVfcCkKIHsKIAlzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqOwpAQCAtMzg1LDggKzM4NiwzMSBAQCBpOTE1X2dlbV9jcmVhdGUo c3RydWN0IGRybV9maWxlICpmaWxlLAogCWlmIChzaXplID09IDApCiAJCXJldHVybiAtRUlOVkFM OwogCisJaWYgKGZsYWdzICYgX19JOTE1X0NSRUFURV9VTktOT1dOX0ZMQUdTKQorCQlyZXR1cm4g LUVJTlZBTDsKKwogCS8qIEFsbG9jYXRlIHRoZSBuZXcgb2JqZWN0ICovCi0Jb2JqID0gaTkxNV9n ZW1fYWxsb2Nfb2JqZWN0KGRldiwgc2l6ZSk7CisJaWYgKGZsYWdzICYgSTkxNV9DUkVBVEVfUExB Q0VNRU5UX1NUT0xFTikgeworCQltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CisJCW9i aiA9IGk5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKGRldiwgc2l6ZSk7CisJCWlmICghb2Jq KSB7CisJCQltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKKwkJCXJldHVybiAtRU5P TUVNOworCQl9CisKKwkJLyogQWx3YXlzIGNsZWFyIGZyZXNoIGJ1ZmZlcnMgYmVmb3JlIGhhbmRp bmcgdG8gdXNlcnNwYWNlICovCisJCXJldCA9IGk5MTVfZ2VtX2NsZWFyX29iamVjdChvYmopOwor CQlpZiAocmV0KSB7CisJCQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZSgmb2JqLT5iYXNlKTsK KwkJCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCQkJcmV0dXJuIHJldDsKKwkJ fQorCisJCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCX0gZWxzZSB7CisJCW9i aiA9IGk5MTVfZ2VtX2FsbG9jX29iamVjdChkZXYsIHNpemUpOworCX0KKwogCWlmIChvYmogPT0g TlVMTCkKIAkJcmV0dXJuIC1FTk9NRU07CiAKQEAgLTQwOSw3ICs0MzMsNyBAQCBpOTE1X2dlbV9k dW1iX2NyZWF0ZShzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJYXJncy0+cGl0Y2ggPSBBTElHTihh cmdzLT53aWR0aCAqIERJVl9ST1VORF9VUChhcmdzLT5icHAsIDgpLCA2NCk7CiAJYXJncy0+c2l6 ZSA9IGFyZ3MtPnBpdGNoICogYXJncy0+aGVpZ2h0OwogCXJldHVybiBpOTE1X2dlbV9jcmVhdGUo ZmlsZSwgZGV2LAotCQkJICAgICAgIGFyZ3MtPnNpemUsICZhcmdzLT5oYW5kbGUpOworCQkJICAg ICAgIGFyZ3MtPnNpemUsIDAsICZhcmdzLT5oYW5kbGUpOwogfQogCiAvKioKQEAgLTQyMiw3ICs0 NDYsNyBAQCBpOTE1X2dlbV9jcmVhdGVfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9p ZCAqZGF0YSwKIAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NyZWF0ZSAqYXJncyA9IGRhdGE7CiAKIAly ZXR1cm4gaTkxNV9nZW1fY3JlYXRlKGZpbGUsIGRldiwKLQkJCSAgICAgICBhcmdzLT5zaXplLCAm YXJncy0+aGFuZGxlKTsKKwkJCSAgICAgICBhcmdzLT5zaXplLCBhcmdzLT5mbGFncywgJmFyZ3Mt PmhhbmRsZSk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgaW50CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX3N0b2xlbi5jCmluZGV4IDU5OGVkMmYuLmI5OGEzYmYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX3N0b2xlbi5jCkBAIC01ODMsNyArNTgzLDcgQEAgY2xlYW51cDoKIH0KIAogc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgotaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4o c3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyIHNpemUpCitpOTE1X2dlbV9vYmplY3RfY3JlYXRl X3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1NjQgc2l6ZSkKIHsKIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0ICpvYmo7CkBAIC01OTMsNyArNTkzLDcgQEAgaTkxNV9nZW1fb2JqZWN0 X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyIHNpemUpCiAJaWYgKCFk cm1fbW1faW5pdGlhbGl6ZWQoJmRldl9wcml2LT5tbS5zdG9sZW4pKQogCQlyZXR1cm4gTlVMTDsK IAotCURSTV9ERUJVR19LTVMoImNyZWF0aW5nIHN0b2xlbiBvYmplY3Q6IHNpemU9JXhcbiIsIHNp emUpOworCURSTV9ERUJVR19LTVMoImNyZWF0aW5nIHN0b2xlbiBvYmplY3Q6IHNpemU9JWxseFxu Iiwgc2l6ZSk7CiAJaWYgKHNpemUgPT0gMCkKIAkJcmV0dXJuIE5VTEw7CiAKZGlmZiAtLWdpdCBh L2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0u aAppbmRleCA2N2NlYmU2Li44ZTdlM2E0IDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2k5 MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCkBAIC0zNTYsNiArMzU2 LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfaXJxX3dhaXQgewogI2RlZmluZSBJOTE1X1BB UkFNX0VVX1RPVEFMCQkgMzQKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfR1BVX1JFU0VUCSAzNQog I2RlZmluZSBJOTE1X1BBUkFNX0hBU19SRVNPVVJDRV9TVFJFQU1FUiAzNgorI2RlZmluZSBJOTE1 X1BBUkFNX0NSRUFURV9WRVJTSU9OCSAzNwogCiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9nZXRw YXJhbSB7CiAJX19zMzIgcGFyYW07CkBAIC00NTUsNiArNDU2LDIxIEBAIHN0cnVjdCBkcm1faTkx NV9nZW1fY3JlYXRlIHsKIAkgKi8KIAlfX3UzMiBoYW5kbGU7CiAJX191MzIgcGFkOworCS8qKgor CSAqIFJlcXVlc3RlZCBmbGFncyAoY3VycmVudGx5IHVzZWQgZm9yIHBsYWNlbWVudAorCSAqICh3 aGljaCBtZW1vcnkgZG9tYWluKSkKKwkgKgorCSAqIFlvdSBjYW4gcmVxdWVzdCB0aGF0IHRoZSBv YmplY3QgYmUgY3JlYXRlZCBmcm9tIHNwZWNpYWwgbWVtb3J5CisJICogcmF0aGVyIHRoYW4gcmVn dWxhciBzeXN0ZW0gcGFnZXMgdXNpbmcgdGhpcyBwYXJhbWV0ZXIuIFN1Y2gKKwkgKiBpcnJlZ3Vs YXIgb2JqZWN0cyBtYXkgaGF2ZSBjZXJ0YWluIHJlc3RyaWN0aW9ucyAoc3VjaCBhcyBDUFUKKwkg KiBhY2Nlc3MgdG8gYSBzdG9sZW4gb2JqZWN0IGlzIHZlcmJvdGVuKS4KKwkgKgorCSAqIFRoaXMg Y2FuIGJlIHVzZWQgaW4gdGhlIGZ1dHVyZSBmb3Igb3RoZXIgcHVycG9zZXMgdG9vCisJICogZS5n LiBzcGVjaWZ5aW5nIHRpbGluZy9jYWNoaW5nL21hZHZpc2UKKwkgKi8KKwlfX3UzMiBmbGFnczsK KyNkZWZpbmUgSTkxNV9DUkVBVEVfUExBQ0VNRU5UX1NUT0xFTiAJKDE8PDApIC8qIENhbm5vdCB1 c2UgQ1BVIG1tYXBzICovCisjZGVmaW5lIF9fSTkxNV9DUkVBVEVfVU5LTk9XTl9GTEFHUwktKEk5 MTVfQ1JFQVRFX1BMQUNFTUVOVF9TVE9MRU4gPDwgMSkKIH07CiAKIHN0cnVjdCBkcm1faTkxNV9n ZW1fcHJlYWQgewotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==