From mboxrd@z Thu Jan 1 00:00:00 1970 From: ankitprasad.r.sharma@intel.com Subject: [PATCH 05/11] drm/i915: Support for creating Stolen memory backed objects Date: Thu, 14 Jan 2016 11:46:41 +0530 Message-ID: <1452752207-30382-6-git-send-email-ankitprasad.r.sharma@intel.com> References: <1452752207-30382-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 56F9B720C7 for ; Wed, 13 Jan 2016 22:38:37 -0800 (PST) In-Reply-To: <1452752207-30382-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: akash.goel@intel.com, shashidhar.hiremath@intel.com, Ankitprasad Sharma List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQW5raXRwcmFzYWQgU2hhcm1hIDxhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRlbC5jb20+ CgpFeHRlbmQgdGhlIGRybV9pOTE1X2dlbV9jcmVhdGUgc3RydWN0dXJlIHRvIGFkZCBzdXBwb3J0 IGZvcgpjcmVhdGluZyBTdG9sZW4gbWVtb3J5IGJhY2tlZCBvYmplY3RzLiBBZGRlZCBhIG5ldyBm bGFnIHRocm91Z2gKd2hpY2ggdXNlciBjYW4gc3BlY2lmeSB0aGUgcHJlZmVyZW5jZSB0byBhbGxv Y2F0ZSB0aGUgb2JqZWN0IGZyb20Kc3RvbGVuIG1lbW9yeSwgd2hpY2ggaWYgc2V0LCBhbiBhdHRl bXB0IHdpbGwgYmUgbWFkZSB0byBhbGxvY2F0ZQp0aGUgb2JqZWN0IGZyb20gc3RvbGVuIG1lbW9y eSBzdWJqZWN0IHRvIHRoZSBhdmFpbGFiaWxpdHkgb2YKZnJlZSBzcGFjZSBpbiB0aGUgc3RvbGVu IHJlZ2lvbi4KCnYyOiBSZWJhc2VkIHRvIHRoZSBsYXRlc3QgZHJtLWludGVsLW5pZ2h0bHkgKEFu a2l0KQoKdjM6IENoYW5nZWQgdmVyc2lvbmluZyBvZiBHRU1fQ1JFQVRFIHBhcmFtLCBhZGRlZCBu ZXcgY29tbWVudHMgKFR2cnRrbykKCnY0OiBDaGFuZ2VkIHNpemUgZnJvbSAzMmIgdG8gNjRiIHRv IHByZXZlbnQgdXNlcnNwYWNlIG92ZXJmbG93IChUdnJ0a28pCkNvcnJlY3RlZCBmdW5jdGlvbiBh cmd1bWVudHMgb3JkZXJpbmcgKENocmlzKQoKdjU6IENvcnJlY3RlZCBmdW5jdGlvbiBuYW1lIChD aHJpcykKCnY2OiBVcGRhdGVkIGRhdGF0eXBlIGZvciBmbGFncyB0byBrZWVwIHNpemVvZihkcm1f aTkxNV9nZW1fY3JlYXRlKSB1NjQKYWxpZ25lZCAoQ2hyaXMpCgp2NzogVXNlIGZpcnN0IDggYml0 cyBvZiBnZW1fY3JlYXRlIGZsYWdzIGZvciBwbGFjZW1lbnQgKENocmlzKSwgQWRkIGhlbHBlcgpm dW5jdGlvbiBmb3Igb2JqZWN0IGFsbG9jYXRpb24gZnJvbSBzdG9sZW4gcmVnaW9uIChBbmtpdCkK ClRlc3RjYXNlOiBpZ3QvZ2VtX3N0b2xlbgoKU2lnbmVkLW9mZi1ieTogQW5raXRwcmFzYWQgU2hh cm1hIDxhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kbWEuYyAgICAgICAgfCAgMyArKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmggICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMg ICAgICAgIHwgNDYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMgfCAgNCArLS0KIGluY2x1ZGUvdWFwaS9kcm0v aTkxNV9kcm0uaCAgICAgICAgICAgIHwgMTkgKysrKysrKysrKysrKysKIDUgZmlsZXMgY2hhbmdl ZCwgNjggaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEu YwppbmRleCA0NGE4OTZjLi43M2UxNjcwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2RtYS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMKQEAgLTE3 Miw2ICsxNzIsOSBAQCBzdGF0aWMgaW50IGk5MTVfZ2V0cGFyYW0oc3RydWN0IGRybV9kZXZpY2Ug KmRldiwgdm9pZCAqZGF0YSwKIAljYXNlIEk5MTVfUEFSQU1fSEFTX0VYRUNfU09GVFBJTjoKIAkJ dmFsdWUgPSAxOwogCQlicmVhazsKKwljYXNlIEk5MTVfUEFSQU1fQ1JFQVRFX1ZFUlNJT046CisJ CXZhbHVlID0gMjsKKwkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJRFJNX0RFQlVHKCJVbmtub3duIHBh cmFtZXRlciAlZFxuIiwgcGFyYW0tPnBhcmFtKTsKIAkJcmV0dXJuIC1FSU5WQUw7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaAppbmRleCAxMTUzMTUwLi40YWU4YjBiIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmgKQEAgLTMyNTYsNyArMzI1Niw3IEBAIHZvaWQgaTkxNV9nZW1fc3RvbGVuX3JlbW92ZV9u b2RlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIGludCBpOTE1X2dlbV9pbml0 X3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIHZvaWQgaTkxNV9nZW1fY2xlYW51cF9z dG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqCi1pOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCB1MzIgc2l6ZSk7CitpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LCB1NjQgc2l6ZSk7CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCiBpOTE1 X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbl9mb3JfcHJlYWxsb2NhdGVkKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsCiAJCQkJCSAgICAgICB1MzIgc3RvbGVuX29mZnNldCwKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbS5jCmluZGV4IGEyMTM4YzAuLjZhNDI5YzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpA QCAtMzg4LDIyICszODgsNjIgQEAgdm9pZCBpOTE1X2dlbV9vYmplY3RfZnJlZShzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCWttZW1fY2FjaGVfZnJlZShkZXZfcHJpdi0+b2JqZWN0 cywgb2JqKTsKIH0KIAorc3RhdGljIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoKK2k5MTVf Z2VtX2FsbG9jX29iamVjdF9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc2l6ZV90IHNp emUpCit7CisJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKKwlpbnQgcmV0OworCisJ bXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9j cmVhdGVfc3RvbGVuKGRldiwgc2l6ZSk7CisJaWYgKCFvYmopIHsKKwkJbXV0ZXhfdW5sb2NrKCZk ZXYtPnN0cnVjdF9tdXRleCk7CisJCXJldHVybiBOVUxMOworCX0KKworCS8qIEFsd2F5cyBjbGVh ciBmcmVzaCBidWZmZXJzIGJlZm9yZSBoYW5kaW5nIHRvIHVzZXJzcGFjZSAqLworCXJldCA9IGk5 MTVfZ2VtX29iamVjdF9jbGVhcihvYmopOworCWlmIChyZXQpIHsKKwkJZHJtX2dlbV9vYmplY3Rf dW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7CisJCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0 ZXgpOworCQlyZXR1cm4gTlVMTDsKKwl9CisKKwltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211 dGV4KTsKKwlyZXR1cm4gb2JqOworfQorCiBzdGF0aWMgaW50CiBpOTE1X2dlbV9jcmVhdGUoc3Ry dWN0IGRybV9maWxlICpmaWxlLAogCQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQl1aW50NjRf dCBzaXplLAorCQl1aW50NjRfdCBmbGFncywKIAkJdWludDMyX3QgKmhhbmRsZV9wKQogewogCXN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CiAJaW50IHJldDsKIAl1MzIgaGFuZGxlOwor CXUzMiBwbGFjZW1lbnQgPSBmbGFncyAmIEk5MTVfQ1JFQVRFX1BMQUNFTUVOVF9NQVNLOwogCiAJ c2l6ZSA9IHJvdW5kdXAoc2l6ZSwgUEFHRV9TSVpFKTsKIAlpZiAoc2l6ZSA9PSAwKQogCQlyZXR1 cm4gLUVJTlZBTDsKIAorCWlmIChmbGFncyAmIF9fSTkxNV9DUkVBVEVfVU5LTk9XTl9GTEFHUykK KwkJcmV0dXJuIC1FSU5WQUw7CisKIAkvKiBBbGxvY2F0ZSB0aGUgbmV3IG9iamVjdCAqLwotCW9i aiA9IGk5MTVfZ2VtX2FsbG9jX29iamVjdChkZXYsIHNpemUpOworCXN3aXRjaCAocGxhY2VtZW50 KSB7CisJY2FzZSBJOTE1X0NSRUFURV9QTEFDRU1FTlRfTk9STUFMOgorCQlvYmogPSBpOTE1X2dl bV9hbGxvY19vYmplY3QoZGV2LCBzaXplKTsKKwkJYnJlYWs7CisJY2FzZSBJOTE1X0NSRUFURV9Q TEFDRU1FTlRfU1RPTEVOOgorCQlvYmogPSBpOTE1X2dlbV9hbGxvY19vYmplY3Rfc3RvbGVuKGRl diwgc2l6ZSk7CisJCWJyZWFrOworCWRlZmF1bHQ6CisJCXJldHVybiAtRUlOVkFMOworCX0KKwog CWlmIChvYmogPT0gTlVMTCkKIAkJcmV0dXJuIC1FTk9NRU07CiAKQEAgLTQyNiw3ICs0NjYsNyBA QCBpOTE1X2dlbV9kdW1iX2NyZWF0ZShzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJYXJncy0+cGl0 Y2ggPSBBTElHTihhcmdzLT53aWR0aCAqIERJVl9ST1VORF9VUChhcmdzLT5icHAsIDgpLCA2NCk7 CiAJYXJncy0+c2l6ZSA9IGFyZ3MtPnBpdGNoICogYXJncy0+aGVpZ2h0OwogCXJldHVybiBpOTE1 X2dlbV9jcmVhdGUoZmlsZSwgZGV2LAotCQkJICAgICAgIGFyZ3MtPnNpemUsICZhcmdzLT5oYW5k bGUpOworCQkJICAgICAgIGFyZ3MtPnNpemUsIDAsICZhcmdzLT5oYW5kbGUpOwogfQogCiAvKioK QEAgLTQzOSw3ICs0NzksNyBAQCBpOTE1X2dlbV9jcmVhdGVfaW9jdGwoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgdm9pZCAqZGF0YSwKIAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NyZWF0ZSAqYXJncyA9 IGRhdGE7CiAKIAlyZXR1cm4gaTkxNV9nZW1fY3JlYXRlKGZpbGUsIGRldiwKLQkJCSAgICAgICBh cmdzLT5zaXplLCAmYXJncy0+aGFuZGxlKTsKKwkJCSAgICAgICBhcmdzLT5zaXplLCBhcmdzLT5m bGFncywgJmFyZ3MtPmhhbmRsZSk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgaW50CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCmluZGV4IGMzODRkYzkuLjgyMDMxNTcgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCkBAIC01ODYsNyArNTg2LDcgQEAgY2xlYW51 cDoKIH0KIAogc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKgotaTkxNV9nZW1fb2JqZWN0X2Ny ZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyIHNpemUpCitpOTE1X2dlbV9v YmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1NjQgc2l6ZSkKIHsK IAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwog CXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CkBAIC01OTYsNyArNTk2LDcgQEAgaTkx NV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyIHNp emUpCiAJaWYgKCFkcm1fbW1faW5pdGlhbGl6ZWQoJmRldl9wcml2LT5tbS5zdG9sZW4pKQogCQly ZXR1cm4gTlVMTDsKIAotCURSTV9ERUJVR19LTVMoImNyZWF0aW5nIHN0b2xlbiBvYmplY3Q6IHNp emU9JXhcbiIsIHNpemUpOworCURSTV9ERUJVR19LTVMoImNyZWF0aW5nIHN0b2xlbiBvYmplY3Q6 IHNpemU9JWxseFxuIiwgc2l6ZSk7CiAJaWYgKHNpemUgPT0gMCkKIAkJcmV0dXJuIE5VTEw7CiAK ZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCBiL2luY2x1ZGUvdWFwaS9k cm0vaTkxNV9kcm0uaAppbmRleCBhY2YyMTAyLi5lYzAxZTIwIDEwMDY0NAotLS0gYS9pbmNsdWRl L3VhcGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCkBA IC0zNTcsNiArMzU3LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfaXJxX3dhaXQgewogI2Rl ZmluZSBJOTE1X1BBUkFNX0hBU19HUFVfUkVTRVQJIDM1CiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFT X1JFU09VUkNFX1NUUkVBTUVSIDM2CiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0VYRUNfU09GVFBJ TgkgMzcKKyNkZWZpbmUgSTkxNV9QQVJBTV9DUkVBVEVfVkVSU0lPTgkgMzgKIAogdHlwZWRlZiBz dHJ1Y3QgZHJtX2k5MTVfZ2V0cGFyYW0gewogCV9fczMyIHBhcmFtOwpAQCAtNDU2LDYgKzQ1Nywy NCBAQCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NyZWF0ZSB7CiAJICovCiAJX191MzIgaGFuZGxlOwog CV9fdTMyIHBhZDsKKwkvKioKKwkgKiBSZXF1ZXN0ZWQgZmxhZ3MgKGN1cnJlbnRseSB1c2VkIGZv ciBwbGFjZW1lbnQKKwkgKiAod2hpY2ggbWVtb3J5IGRvbWFpbikpCisJICoKKwkgKiBZb3UgY2Fu IHJlcXVlc3QgdGhhdCB0aGUgb2JqZWN0IGJlIGNyZWF0ZWQgZnJvbSBzcGVjaWFsIG1lbW9yeQor CSAqIHJhdGhlciB0aGFuIHJlZ3VsYXIgc3lzdGVtIHBhZ2VzIHVzaW5nIHRoaXMgcGFyYW1ldGVy LiBTdWNoCisJICogaXJyZWd1bGFyIG9iamVjdHMgbWF5IGhhdmUgY2VydGFpbiByZXN0cmljdGlv bnMgKHN1Y2ggYXMgQ1BVCisJICogYWNjZXNzIHRvIGEgc3RvbGVuIG9iamVjdCBpcyB2ZXJib3Rl bikuCisJICoKKwkgKiBUaGlzIGNhbiBiZSB1c2VkIGluIHRoZSBmdXR1cmUgZm9yIG90aGVyIHB1 cnBvc2VzIHRvbworCSAqIGUuZy4gc3BlY2lmeWluZyB0aWxpbmcvY2FjaGluZy9tYWR2aXNlCisJ ICovCisJX191NjQgZmxhZ3M7CisjZGVmaW5lIEk5MTVfQ1JFQVRFX1BMQUNFTUVOVF9OT1JNQUwg CTAgLyogc3RhbmRhcmQgc3dhcHBhYmxlIGJvICAqLworI2RlZmluZSBJOTE1X0NSRUFURV9QTEFD RU1FTlRfU1RPTEVOIAkxIC8qIENhbm5vdCB1c2UgQ1BVIG1tYXBzICovCisKKyNkZWZpbmUgSTkx NV9DUkVBVEVfUExBQ0VNRU5UX01BU0sJMHhmZgorI2RlZmluZSBfX0k5MTVfQ1JFQVRFX1VOS05P V05fRkxBR1MJfkk5MTVfQ1JFQVRFX1BMQUNFTUVOVF9NQVNLCiB9OwogCiBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3ByZWFkIHsKLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeAo=