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, 9 Dec 2015 18:16:18 +0530 Message-ID: <1449665182-10054-3-git-send-email-ankitprasad.r.sharma@intel.com> References: <1449665182-10054-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 mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id D3D5A6E29B for ; Wed, 9 Dec 2015 05:06:01 -0800 (PST) In-Reply-To: <1449665182-10054-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 aHJpcykKClRlc3RjYXNlOiBpZ3QvZ2VtX3N0b2xlbgoKU2lnbmVkLW9mZi1ieTogQW5raXRwcmFz YWQgU2hhcm1hIDxhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBU dnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZG1hLmMgICAgICAgIHwgIDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oICAgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bS5jICAgICAgICB8IDMwICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMgfCAgNCArKy0tCiBpbmNsdWRlL3VhcGkvZHJt L2k5MTVfZHJtLmggICAgICAgICAgICB8IDE2ICsrKysrKysrKysrKysrKysKIDUgZmlsZXMgY2hh bmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k bWEuYwppbmRleCBmZmNiOWM2Li42OTI3YzdlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2RtYS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMKQEAg LTE3MCw2ICsxNzAsOSBAQCBzdGF0aWMgaW50IGk5MTVfZ2V0cGFyYW0oc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgdm9pZCAqZGF0YSwKIAljYXNlIEk5MTVfUEFSQU1fSEFTX1JFU09VUkNFX1NUUkVB TUVSOgogCQl2YWx1ZSA9IEhBU19SRVNPVVJDRV9TVFJFQU1FUihkZXYpOwogCQlicmVhazsKKwlj YXNlIEk5MTVfUEFSQU1fQ1JFQVRFX1ZFUlNJT046CisJCXZhbHVlID0gMjsKKwkJYnJlYWs7CiAJ ZGVmYXVsdDoKIAkJRFJNX0RFQlVHKCJVbmtub3duIHBhcmFtZXRlciAlZFxuIiwgcGFyYW0tPnBh cmFtKTsKIAkJcmV0dXJuIC1FSU5WQUw7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCA4ZTU1 NGQzLi5kNDUyNzRlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTMyMTMsNyArMzIxMyw3 IEBAIHZvaWQgaTkxNV9nZW1fc3RvbGVuX3JlbW92ZV9ub2RlKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKIGludCBpOTE1X2dlbV9pbml0X3N0b2xlbihzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KTsKIHZvaWQgaTkxNV9nZW1fY2xlYW51cF9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2Ug KmRldik7CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCi1pOTE1X2dlbV9vYmplY3RfY3Jl YXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1MzIgc2l6ZSk7CitpOTE1X2dlbV9v YmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1NjQgc2l6ZSk7CiBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCiBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xl bl9mb3JfcHJlYWxsb2NhdGVkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkJCSAgICAgICB1 MzIgc3RvbGVuX29mZnNldCwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IGQ1N2U4NTAuLjI5 NmU2M2YgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtMzc1LDYgKzM3NSw3IEBAIHN0YXRp YyBpbnQKIGk5MTVfZ2VtX2NyZWF0ZShzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJCXN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCiAJCXVpbnQ2NF90IHNpemUsCisJCXVpbnQzMl90IGZsYWdzLAogCQl1 aW50MzJfdCAqaGFuZGxlX3ApCiB7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsK QEAgLTM4NSw4ICszODYsMzEgQEAgaTkxNV9nZW1fY3JlYXRlKHN0cnVjdCBkcm1fZmlsZSAqZmls ZSwKIAlpZiAoc2l6ZSA9PSAwKQogCQlyZXR1cm4gLUVJTlZBTDsKIAorCWlmIChmbGFncyAmIF9f STkxNV9DUkVBVEVfVU5LTk9XTl9GTEFHUykKKwkJcmV0dXJuIC1FSU5WQUw7CisKIAkvKiBBbGxv Y2F0ZSB0aGUgbmV3IG9iamVjdCAqLwotCW9iaiA9IGk5MTVfZ2VtX2FsbG9jX29iamVjdChkZXYs IHNpemUpOworCWlmIChmbGFncyAmIEk5MTVfQ1JFQVRFX1BMQUNFTUVOVF9TVE9MRU4pIHsKKwkJ bXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCQlvYmogPSBpOTE1X2dlbV9vYmplY3Rf Y3JlYXRlX3N0b2xlbihkZXYsIHNpemUpOworCQlpZiAoIW9iaikgeworCQkJbXV0ZXhfdW5sb2Nr KCZkZXYtPnN0cnVjdF9tdXRleCk7CisJCQlyZXR1cm4gLUVOT01FTTsKKwkJfQorCisJCS8qIEFs d2F5cyBjbGVhciBmcmVzaCBidWZmZXJzIGJlZm9yZSBoYW5kaW5nIHRvIHVzZXJzcGFjZSAqLwor CQlyZXQgPSBpOTE1X2dlbV9vYmplY3RfY2xlYXIob2JqKTsKKwkJaWYgKHJldCkgeworCQkJZHJt X2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7CisJCQltdXRleF91bmxvY2soJmRl di0+c3RydWN0X211dGV4KTsKKwkJCXJldHVybiByZXQ7CisJCX0KKworCQltdXRleF91bmxvY2so JmRldi0+c3RydWN0X211dGV4KTsKKwl9IGVsc2UgeworCQlvYmogPSBpOTE1X2dlbV9hbGxvY19v YmplY3QoZGV2LCBzaXplKTsKKwl9CisKIAlpZiAob2JqID09IE5VTEwpCiAJCXJldHVybiAtRU5P TUVNOwogCkBAIC00MDksNyArNDMzLDcgQEAgaTkxNV9nZW1fZHVtYl9jcmVhdGUoc3RydWN0IGRy bV9maWxlICpmaWxlLAogCWFyZ3MtPnBpdGNoID0gQUxJR04oYXJncy0+d2lkdGggKiBESVZfUk9V TkRfVVAoYXJncy0+YnBwLCA4KSwgNjQpOwogCWFyZ3MtPnNpemUgPSBhcmdzLT5waXRjaCAqIGFy Z3MtPmhlaWdodDsKIAlyZXR1cm4gaTkxNV9nZW1fY3JlYXRlKGZpbGUsIGRldiwKLQkJCSAgICAg ICBhcmdzLT5zaXplLCAmYXJncy0+aGFuZGxlKTsKKwkJCSAgICAgICBhcmdzLT5zaXplLCAwLCAm YXJncy0+aGFuZGxlKTsKIH0KIAogLyoqCkBAIC00MjIsNyArNDQ2LDcgQEAgaTkxNV9nZW1fY3Jl YXRlX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJc3RydWN0IGRy bV9pOTE1X2dlbV9jcmVhdGUgKmFyZ3MgPSBkYXRhOwogCiAJcmV0dXJuIGk5MTVfZ2VtX2NyZWF0 ZShmaWxlLCBkZXYsCi0JCQkgICAgICAgYXJncy0+c2l6ZSwgJmFyZ3MtPmhhbmRsZSk7CisJCQkg ICAgICAgYXJncy0+c2l6ZSwgYXJncy0+ZmxhZ3MsICZhcmdzLT5oYW5kbGUpOwogfQogCiBzdGF0 aWMgaW5saW5lIGludApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f c3RvbGVuLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYwppbmRleCA1 OThlZDJmLi5iOThhM2JmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9zdG9sZW4uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYwpA QCAtNTgzLDcgKzU4Myw3IEBAIGNsZWFudXA6CiB9CiAKIHN0cnVjdCBkcm1faTkxNV9nZW1fb2Jq ZWN0ICoKLWk5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHUzMiBzaXplKQoraTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgdTY0IHNpemUpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2Jq OwpAQCAtNTkzLDcgKzU5Myw3IEBAIGk5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHUzMiBzaXplKQogCWlmICghZHJtX21tX2luaXRpYWxpemVkKCZk ZXZfcHJpdi0+bW0uc3RvbGVuKSkKIAkJcmV0dXJuIE5VTEw7CiAKLQlEUk1fREVCVUdfS01TKCJj cmVhdGluZyBzdG9sZW4gb2JqZWN0OiBzaXplPSV4XG4iLCBzaXplKTsKKwlEUk1fREVCVUdfS01T KCJjcmVhdGluZyBzdG9sZW4gb2JqZWN0OiBzaXplPSVsbHhcbiIsIHNpemUpOwogCWlmIChzaXpl ID09IDApCiAJCXJldHVybiBOVUxMOwogCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2k5 MTVfZHJtLmggYi9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKaW5kZXggNjdjZWJlNi4uOGU3 ZTNhNCAxMDA2NDQKLS0tIGEvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCisrKyBiL2luY2x1 ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaApAQCAtMzU2LDYgKzM1Niw3IEBAIHR5cGVkZWYgc3RydWN0 IGRybV9pOTE1X2lycV93YWl0IHsKICNkZWZpbmUgSTkxNV9QQVJBTV9FVV9UT1RBTAkJIDM0CiAj ZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0dQVV9SRVNFVAkgMzUKICNkZWZpbmUgSTkxNV9QQVJBTV9I QVNfUkVTT1VSQ0VfU1RSRUFNRVIgMzYKKyNkZWZpbmUgSTkxNV9QQVJBTV9DUkVBVEVfVkVSU0lP TgkgMzcKIAogdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfZ2V0cGFyYW0gewogCV9fczMyIHBhcmFt OwpAQCAtNDU1LDYgKzQ1NiwyMSBAQCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NyZWF0ZSB7CiAJICov CiAJX191MzIgaGFuZGxlOwogCV9fdTMyIHBhZDsKKwkvKioKKwkgKiBSZXF1ZXN0ZWQgZmxhZ3Mg KGN1cnJlbnRseSB1c2VkIGZvciBwbGFjZW1lbnQKKwkgKiAod2hpY2ggbWVtb3J5IGRvbWFpbikp CisJICoKKwkgKiBZb3UgY2FuIHJlcXVlc3QgdGhhdCB0aGUgb2JqZWN0IGJlIGNyZWF0ZWQgZnJv bSBzcGVjaWFsIG1lbW9yeQorCSAqIHJhdGhlciB0aGFuIHJlZ3VsYXIgc3lzdGVtIHBhZ2VzIHVz aW5nIHRoaXMgcGFyYW1ldGVyLiBTdWNoCisJICogaXJyZWd1bGFyIG9iamVjdHMgbWF5IGhhdmUg Y2VydGFpbiByZXN0cmljdGlvbnMgKHN1Y2ggYXMgQ1BVCisJICogYWNjZXNzIHRvIGEgc3RvbGVu IG9iamVjdCBpcyB2ZXJib3RlbikuCisJICoKKwkgKiBUaGlzIGNhbiBiZSB1c2VkIGluIHRoZSBm dXR1cmUgZm9yIG90aGVyIHB1cnBvc2VzIHRvbworCSAqIGUuZy4gc3BlY2lmeWluZyB0aWxpbmcv Y2FjaGluZy9tYWR2aXNlCisJICovCisJX191MzIgZmxhZ3M7CisjZGVmaW5lIEk5MTVfQ1JFQVRF X1BMQUNFTUVOVF9TVE9MRU4gCSgxPDwwKSAvKiBDYW5ub3QgdXNlIENQVSBtbWFwcyAqLworI2Rl ZmluZSBfX0k5MTVfQ1JFQVRFX1VOS05PV05fRkxBR1MJLShJOTE1X0NSRUFURV9QTEFDRU1FTlRf U1RPTEVOIDw8IDEpCiB9OwogCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3ByZWFkIHsKLS0gCjEuOS4x CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=