From mboxrd@z Thu Jan 1 00:00:00 1970 From: ankitprasad.r.sharma@intel.com Subject: [PATCH 2/5] drm/i915: Support for creating Stolen memory backed objects Date: Wed, 23 Sep 2015 16:21:20 +0530 Message-ID: <1443005483-4481-3-git-send-email-ankitprasad.r.sharma@intel.com> References: <1443005483-4481-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 mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id B0B2F6ED26 for ; Wed, 23 Sep 2015 04:09:04 -0700 (PDT) In-Reply-To: <1443005483-4481-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 L2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jCmluZGV4IDIxOTNjYzIuLjgzMTllMDcgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kbWEuYwpAQCAtMTcwLDYgKzE3MCw5IEBAIHN0YXRpYyBpbnQgaTkxNV9nZXRw YXJhbShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCWNhc2UgSTkxNV9QQVJB TV9IQVNfUkVTT1VSQ0VfU1RSRUFNRVI6CiAJCXZhbHVlID0gSEFTX1JFU09VUkNFX1NUUkVBTUVS KGRldik7CiAJCWJyZWFrOworCWNhc2UgSTkxNV9QQVJBTV9DUkVBVEVfVkVSU0lPTjoKKwkJdmFs dWUgPSAyOworCQlicmVhazsKIAlkZWZhdWx0OgogCQlEUk1fREVCVUcoIlVua25vd24gcGFyYW1l dGVyICVkXG4iLCBwYXJhbS0+cGFyYW0pOwogCQlyZXR1cm4gLUVJTlZBTDsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCmluZGV4IDhkYjkwNWEuLmU2ZWYwODMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aApAQCAtMzE1OSw3ICszMTU5LDcgQEAgdm9pZCBpOTE1X2dlbV9zdG9sZW5fcmVtb3ZlX25vZGUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogaW50IGk5MTVfZ2VtX2luaXRfc3Rv bGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogdm9pZCBpOTE1X2dlbV9jbGVhbnVwX3N0b2xl bihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoK LWk5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUz MiBzaXplKTsKK2k5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHU2NCBzaXplKTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoKIGk5MTVfZ2Vt X29iamVjdF9jcmVhdGVfc3RvbGVuX2Zvcl9wcmVhbGxvY2F0ZWQoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwKIAkJCQkJICAgICAgIHUzMiBzdG9sZW5fb2Zmc2V0LApkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt LmMKaW5kZXggOTQ1MzNiZi4uNjU2OGE3ZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 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 Z2VtX3N0b2xlbi5jCmluZGV4IGEzNmNiOTUuLjk5ZjJiY2UgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX3N0b2xlbi5jCkBAIC00NTcsNyArNDU3LDcgQEAgY2xlYW51cDoKIH0KIAogc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgotaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4o c3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyIHNpemUpCitpOTE1X2dlbV9vYmplY3RfY3JlYXRl X3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1NjQgc2l6ZSkKIHsKIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0ICpvYmo7CkBAIC00NjcsNyArNDY3LDcgQEAgaTkxNV9nZW1fb2JqZWN0 X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyIHNpemUpCiAJaWYgKCFk cm1fbW1faW5pdGlhbGl6ZWQoJmRldl9wcml2LT5tbS5zdG9sZW4pKQogCQlyZXR1cm4gTlVMTDsK IAotCURSTV9ERUJVR19LTVMoImNyZWF0aW5nIHN0b2xlbiBvYmplY3Q6IHNpemU9JXhcbiIsIHNp emUpOworCURSTV9ERUJVR19LTVMoImNyZWF0aW5nIHN0b2xlbiBvYmplY3Q6IHNpemU9JWxseFxu Iiwgc2l6ZSk7CiAJaWYgKHNpemUgPT0gMCkKIAkJcmV0dXJuIE5VTEw7CiAKZGlmZiAtLWdpdCBh L2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0u aAppbmRleCBkYmQxNmEyLi5mNzFmNzVjIDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2k5 MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCkBAIC0zNTYsNiArMzU2 LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfaXJxX3dhaXQgewogI2RlZmluZSBJOTE1X1BB UkFNX0VVX1RPVEFMCQkgMzQKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfR1BVX1JFU0VUCSAzNQog I2RlZmluZSBJOTE1X1BBUkFNX0hBU19SRVNPVVJDRV9TVFJFQU1FUiAzNgorI2RlZmluZSBJOTE1 X1BBUkFNX0NSRUFURV9WRVJTSU9OCSAzNwogCiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9nZXRw YXJhbSB7CiAJczMyIHBhcmFtOwpAQCAtNDU1LDYgKzQ1NiwyMSBAQCBzdHJ1Y3QgZHJtX2k5MTVf Z2VtX2NyZWF0ZSB7CiAJICovCiAJX191MzIgaGFuZGxlOwogCV9fdTMyIHBhZDsKKwkvKioKKwkg KiBSZXF1ZXN0ZWQgZmxhZ3MgKGN1cnJlbnRseSB1c2VkIGZvciBwbGFjZW1lbnQKKwkgKiAod2hp Y2ggbWVtb3J5IGRvbWFpbikpCisJICoKKwkgKiBZb3UgY2FuIHJlcXVlc3QgdGhhdCB0aGUgb2Jq ZWN0IGJlIGNyZWF0ZWQgZnJvbSBzcGVjaWFsIG1lbW9yeQorCSAqIHJhdGhlciB0aGFuIHJlZ3Vs YXIgc3lzdGVtIHBhZ2VzIHVzaW5nIHRoaXMgcGFyYW1ldGVyLiBTdWNoCisJICogaXJyZWd1bGFy IG9iamVjdHMgbWF5IGhhdmUgY2VydGFpbiByZXN0cmljdGlvbnMgKHN1Y2ggYXMgQ1BVCisJICog YWNjZXNzIHRvIGEgc3RvbGVuIG9iamVjdCBpcyB2ZXJib3RlbikuCisJICoKKwkgKiBUaGlzIGNh biBiZSB1c2VkIGluIHRoZSBmdXR1cmUgZm9yIG90aGVyIHB1cnBvc2VzIHRvbworCSAqIGUuZy4g c3BlY2lmeWluZyB0aWxpbmcvY2FjaGluZy9tYWR2aXNlCisJICovCisJX191MzIgZmxhZ3M7Cisj ZGVmaW5lIEk5MTVfQ1JFQVRFX1BMQUNFTUVOVF9TVE9MRU4gCSgxPDwwKSAvKiBDYW5ub3QgdXNl IENQVSBtbWFwcyAqLworI2RlZmluZSBfX0k5MTVfQ1JFQVRFX1VOS05PV05fRkxBR1MJLShJOTE1 X0NSRUFURV9QTEFDRU1FTlRfU1RPTEVOIDw8IDEpCiB9OwogCiBzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3ByZWFkIHsKLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeAo=