From mboxrd@z Thu Jan 1 00:00:00 1970 From: ankitprasad.r.sharma@intel.com Subject: [PATCH 04/10] drm/i915: Support for creating Stolen memory backed objects Date: Tue, 22 Dec 2015 11:50:47 +0530 Message-ID: <1450765253-32104-5-git-send-email-ankitprasad.r.sharma@intel.com> References: <1450765253-32104-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 B76AD6E542 for ; Mon, 21 Dec 2015 22:43:01 -0800 (PST) In-Reply-To: <1450765253-32104-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 cmd1bWVudHMgb3JkZXJpbmcgKENocmlzKQoKdjU6IENvcnJlY3RlZCBmdW5jdGlvbiBuYW1lIChD aHJpcykKCnY2OiBVcGRhdGVkIGRhdGF0eXBlIGZvciBmbGFncyB0byBrZWVwIHNpemVvZihkcm1f aTkxNV9nZW1fY3JlYXRlKSB1NjQKYWxpZ25lZCAoQ2hyaXMpCgpUZXN0Y2FzZTogaWd0L2dlbV9z dG9sZW4KClNpZ25lZC1vZmYtYnk6IEFua2l0cHJhc2FkIFNoYXJtYSA8YW5raXRwcmFzYWQuci5z aGFybWFAaW50ZWwuY29tPgpSZXZpZXdlZC1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1 bGluQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jICAgICAg ICB8ICAzICsrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgfCAgMiAr LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyAgICAgICAgfCAzMCArKysrKysrKysr KysrKysrKysrKysrKysrKystLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xl bi5jIHwgIDQgKystLQogaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oICAgICAgICAgICAgfCAx NiArKysrKysrKysrKysrKysrCiA1IGZpbGVzIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKyksIDYg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMKaW5kZXggNTJiODI4OS4uNWQyMTg5 YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jCkBAIC0xNzIsNiArMTcyLDkgQEAgc3RhdGljIGlu dCBpOTE1X2dldHBhcmFtKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJY2Fz ZSBJOTE1X1BBUkFNX0hBU19FWEVDX1NPRlRQSU46CiAJCXZhbHVlID0gMTsKIAkJYnJlYWs7CisJ Y2FzZSBJOTE1X1BBUkFNX0NSRUFURV9WRVJTSU9OOgorCQl2YWx1ZSA9IDI7CisJCWJyZWFrOwog CWRlZmF1bHQ6CiAJCURSTV9ERUJVRygiVW5rbm93biBwYXJhbWV0ZXIgJWRcbiIsIHBhcmFtLT5w YXJhbSk7CiAJCXJldHVybiAtRUlOVkFMOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggZTE5 NWZlZS4uZGNkZmI5NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0zMjU1LDcgKzMyNTUs NyBAQCB2b2lkIGk5MTVfZ2VtX3N0b2xlbl9yZW1vdmVfbm9kZShzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCiBpbnQgaTkxNV9nZW1faW5pdF9zdG9sZW4oc3RydWN0IGRybV9kZXZp Y2UgKmRldik7CiB2b2lkIGk5MTVfZ2VtX2NsZWFudXBfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpOwogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgotaTkxNV9nZW1fb2JqZWN0X2Ny ZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyIHNpemUpOworaTkxNV9nZW1f b2JqZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTY0IHNpemUpOwog c3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgogaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9s ZW5fZm9yX3ByZWFsbG9jYXRlZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCQkgICAgICAg dTMyIHN0b2xlbl9vZmZzZXQsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwppbmRleCA4ZjYzN2EyLi5j ZDdmMGFlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKQEAgLTM5Miw2ICszOTIsNyBAQCBzdGF0 aWMgaW50CiBpOTE1X2dlbV9jcmVhdGUoc3RydWN0IGRybV9maWxlICpmaWxlLAogCQlzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LAogCQl1aW50NjRfdCBzaXplLAorCQl1aW50NjRfdCBmbGFncywKIAkJ dWludDMyX3QgKmhhbmRsZV9wKQogewogCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7 CkBAIC00MDIsOCArNDAzLDMxIEBAIGk5MTVfZ2VtX2NyZWF0ZShzdHJ1Y3QgZHJtX2ZpbGUgKmZp bGUsCiAJaWYgKHNpemUgPT0gMCkKIAkJcmV0dXJuIC1FSU5WQUw7CiAKKwlpZiAoZmxhZ3MgJiBf X0k5MTVfQ1JFQVRFX1VOS05PV05fRkxBR1MpCisJCXJldHVybiAtRUlOVkFMOworCiAJLyogQWxs b2NhdGUgdGhlIG5ldyBvYmplY3QgKi8KLQlvYmogPSBpOTE1X2dlbV9hbGxvY19vYmplY3QoZGV2 LCBzaXplKTsKKwlpZiAoZmxhZ3MgJiBJOTE1X0NSRUFURV9QTEFDRU1FTlRfU1RPTEVOKSB7CisJ CW11dGV4X2xvY2soJmRldi0+c3RydWN0X211dGV4KTsKKwkJb2JqID0gaTkxNV9nZW1fb2JqZWN0 X2NyZWF0ZV9zdG9sZW4oZGV2LCBzaXplKTsKKwkJaWYgKCFvYmopIHsKKwkJCW11dGV4X3VubG9j aygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCQkJcmV0dXJuIC1FTk9NRU07CisJCX0KKworCQkvKiBB bHdheXMgY2xlYXIgZnJlc2ggYnVmZmVycyBiZWZvcmUgaGFuZGluZyB0byB1c2Vyc3BhY2UgKi8K KwkJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X2NsZWFyKG9iaik7CisJCWlmIChyZXQpIHsKKwkJCWRy bV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlKCZvYmotPmJhc2UpOworCQkJbXV0ZXhfdW5sb2NrKCZk ZXYtPnN0cnVjdF9tdXRleCk7CisJCQlyZXR1cm4gcmV0OworCQl9CisKKwkJbXV0ZXhfdW5sb2Nr KCZkZXYtPnN0cnVjdF9tdXRleCk7CisJfSBlbHNlIHsKKwkJb2JqID0gaTkxNV9nZW1fYWxsb2Nf b2JqZWN0KGRldiwgc2l6ZSk7CisJfQorCiAJaWYgKG9iaiA9PSBOVUxMKQogCQlyZXR1cm4gLUVO T01FTTsKIApAQCAtNDI2LDcgKzQ1MCw3IEBAIGk5MTVfZ2VtX2R1bWJfY3JlYXRlKHN0cnVjdCBk cm1fZmlsZSAqZmlsZSwKIAlhcmdzLT5waXRjaCA9IEFMSUdOKGFyZ3MtPndpZHRoICogRElWX1JP VU5EX1VQKGFyZ3MtPmJwcCwgOCksIDY0KTsKIAlhcmdzLT5zaXplID0gYXJncy0+cGl0Y2ggKiBh cmdzLT5oZWlnaHQ7CiAJcmV0dXJuIGk5MTVfZ2VtX2NyZWF0ZShmaWxlLCBkZXYsCi0JCQkgICAg ICAgYXJncy0+c2l6ZSwgJmFyZ3MtPmhhbmRsZSk7CisJCQkgICAgICAgYXJncy0+c2l6ZSwgMCwg JmFyZ3MtPmhhbmRsZSk7CiB9CiAKIC8qKgpAQCAtNDM5LDcgKzQ2Myw3IEBAIGk5MTVfZ2VtX2Ny ZWF0ZV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCXN0cnVjdCBk cm1faTkxNV9nZW1fY3JlYXRlICphcmdzID0gZGF0YTsKIAogCXJldHVybiBpOTE1X2dlbV9jcmVh dGUoZmlsZSwgZGV2LAotCQkJICAgICAgIGFyZ3MtPnNpemUsICZhcmdzLT5oYW5kbGUpOworCQkJ ICAgICAgIGFyZ3MtPnNpemUsIGFyZ3MtPmZsYWdzLCAmYXJncy0+aGFuZGxlKTsKIH0KIAogc3Rh dGljIGlubGluZSBpbnQKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X3N0b2xlbi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMKaW5kZXgg NTM4NDc2Ny4uMTdkNjc5ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fc3RvbGVuLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMK QEAgLTU4Niw3ICs1ODYsNyBAQCBjbGVhbnVwOgogfQogCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29i amVjdCAqCi1pOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LCB1MzIgc2l6ZSkKK2k5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsIHU2NCBzaXplKQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9i ajsKQEAgLTU5Niw3ICs1OTYsNyBAQCBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCB1MzIgc2l6ZSkKIAlpZiAoIWRybV9tbV9pbml0aWFsaXplZCgm ZGV2X3ByaXYtPm1tLnN0b2xlbikpCiAJCXJldHVybiBOVUxMOwogCi0JRFJNX0RFQlVHX0tNUygi Y3JlYXRpbmcgc3RvbGVuIG9iamVjdDogc2l6ZT0leFxuIiwgc2l6ZSk7CisJRFJNX0RFQlVHX0tN UygiY3JlYXRpbmcgc3RvbGVuIG9iamVjdDogc2l6ZT0lbGx4XG4iLCBzaXplKTsKIAlpZiAoc2l6 ZSA9PSAwKQogCQlyZXR1cm4gTlVMTDsKIApkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2RybS9p OTE1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCmluZGV4IGQ3MjdiNDkuLmY2 ODg0NjkgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAorKysgYi9pbmNs dWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKQEAgLTM1Nyw2ICszNTcsNyBAQCB0eXBlZGVmIHN0cnVj dCBkcm1faTkxNV9pcnFfd2FpdCB7CiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0dQVV9SRVNFVAkg MzUKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfUkVTT1VSQ0VfU1RSRUFNRVIgMzYKICNkZWZpbmUg STkxNV9QQVJBTV9IQVNfRVhFQ19TT0ZUUElOCSAzNworI2RlZmluZSBJOTE1X1BBUkFNX0NSRUFU RV9WRVJTSU9OCSAzOAogCiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9nZXRwYXJhbSB7CiAJX19z MzIgcGFyYW07CkBAIC00NTYsNiArNDU3LDIxIEBAIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRl IHsKIAkgKi8KIAlfX3UzMiBoYW5kbGU7CiAJX191MzIgcGFkOworCS8qKgorCSAqIFJlcXVlc3Rl ZCBmbGFncyAoY3VycmVudGx5IHVzZWQgZm9yIHBsYWNlbWVudAorCSAqICh3aGljaCBtZW1vcnkg ZG9tYWluKSkKKwkgKgorCSAqIFlvdSBjYW4gcmVxdWVzdCB0aGF0IHRoZSBvYmplY3QgYmUgY3Jl YXRlZCBmcm9tIHNwZWNpYWwgbWVtb3J5CisJICogcmF0aGVyIHRoYW4gcmVndWxhciBzeXN0ZW0g cGFnZXMgdXNpbmcgdGhpcyBwYXJhbWV0ZXIuIFN1Y2gKKwkgKiBpcnJlZ3VsYXIgb2JqZWN0cyBt YXkgaGF2ZSBjZXJ0YWluIHJlc3RyaWN0aW9ucyAoc3VjaCBhcyBDUFUKKwkgKiBhY2Nlc3MgdG8g YSBzdG9sZW4gb2JqZWN0IGlzIHZlcmJvdGVuKS4KKwkgKgorCSAqIFRoaXMgY2FuIGJlIHVzZWQg aW4gdGhlIGZ1dHVyZSBmb3Igb3RoZXIgcHVycG9zZXMgdG9vCisJICogZS5nLiBzcGVjaWZ5aW5n IHRpbGluZy9jYWNoaW5nL21hZHZpc2UKKwkgKi8KKwlfX3U2NCBmbGFnczsKKyNkZWZpbmUgSTkx NV9DUkVBVEVfUExBQ0VNRU5UX1NUT0xFTiAJKDE8PDApIC8qIENhbm5vdCB1c2UgQ1BVIG1tYXBz ICovCisjZGVmaW5lIF9fSTkxNV9DUkVBVEVfVU5LTk9XTl9GTEFHUwktKEk5MTVfQ1JFQVRFX1BM QUNFTUVOVF9TVE9MRU4gPDwgMSkKIH07CiAKIHN0cnVjdCBkcm1faTkxNV9nZW1fcHJlYWQgewot LSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==