From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [PATCH 1/8] drm/i915: add simple wrappers for stolen node insertion/removal Date: Thu, 2 Jul 2015 19:25:07 -0300 Message-ID: <1435875914-11516-2-git-send-email-przanoni@gmail.com> References: <1435875914-11516-1-git-send-email-przanoni@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qk0-f172.google.com (mail-qk0-f172.google.com [209.85.220.172]) by gabe.freedesktop.org (Postfix) with ESMTPS id C1DD46E798 for ; Thu, 2 Jul 2015 15:25:54 -0700 (PDT) Received: by qkbp125 with SMTP id p125so62120930qkb.2 for ; Thu, 02 Jul 2015 15:25:54 -0700 (PDT) In-Reply-To: <1435875914-11516-1-git-send-email-przanoni@gmail.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: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org RnJvbTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CgpXZSB3YW50IHRv IG1vdmUgdGhlIEZCQyBjb2RlIG91dCBvZiBpOTE1X2dlbV9zdG9sZW4uYywgYnV0IHRoYXQgY29k ZQpkaXJlY3RseSBhZGRzL3JlbW92ZXMgc3RvbGVuIG1lbW9yeSBub2Rlcy4gTGV0J3MgY3JlYXRl IHRoaXMKYWJzdHJhY3Rpb24sIHNvIGk5MTVfZ21lX3N0b2xlbi5jIGlzIHN0aWxsIGluIGNvbnRy b2wgb2YgYWxsIHRoZQpzdG9sZW4gbWVtb3J5IGhhbmRsaW5nLiBUaGUgYWJzdHJhY3Rpb24gd2ls bCBhbHNvIGFsbG93IHVzIHRvIGFkZApsb2NraW5nIGFzc2VydGlvbnMgbGF0ZXIuCgp2MjoKICAt IEFkZCBkZXZfcHJpdiBhcyByZW1vdmVfbm9kZSgpIGFyZ3VtZW50IHNpbmNlIHdlJ2xsIG5lZWQg aXQgbGF0ZXIKICAgIChDaHJpcykuCgpSZXF1ZXN0ZWQtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNA Y2hyaXMtd2lsc29uLmNvLnVrPgpTaWduZWQtb2ZmLWJ5OiBQYXVsbyBaYW5vbmkgPHBhdWxvLnIu emFub25pQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAg ICAgICB8ICA1ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jIHwg NDggKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAz NyBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApp bmRleCAxZGJkOTU3Li4xYWYxYjQzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTMxMDks NiArMzEwOSwxMSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaTkxNV9nZW1fY2hpcHNldF9mbHVzaChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogfQogCiAvKiBpOTE1X2dlbV9zdG9sZW4uYyAqLworaW50 IGk5MTVfZ2VtX3N0b2xlbl9pbnNlcnRfbm9kZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYsCisJCQkJc3RydWN0IGRybV9tbV9ub2RlICpub2RlLCB1NjQgc2l6ZSwKKwkJCQl1bnNp Z25lZCBhbGlnbm1lbnQpOwordm9pZCBpOTE1X2dlbV9zdG9sZW5fcmVtb3ZlX25vZGUoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAorCQkJCSBzdHJ1Y3QgZHJtX21tX25vZGUgKm5v ZGUpOwogaW50IGk5MTVfZ2VtX2luaXRfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwog aW50IGk5MTVfZ2VtX3N0b2xlbl9zZXR1cF9jb21wcmVzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LCBpbnQgc2l6ZSwgaW50IGZiX2NwcCk7CiB2b2lkIGk5MTVfZ2VtX3N0b2xlbl9jbGVhbnVw X2NvbXByZXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9zdG9sZW4uYwppbmRleCAzNDhlZDVhLi5kODExYjE0IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9zdG9sZW4uYwpAQCAtNDIsNiArNDIsMjMgQEAKICAqIGZvciBpcyBhIGJv b24uCiAgKi8KIAoraW50IGk5MTVfZ2VtX3N0b2xlbl9pbnNlcnRfbm9kZShzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJCQkJc3RydWN0IGRybV9tbV9ub2RlICpub2RlLCB1NjQg c2l6ZSwKKwkJCQl1bnNpZ25lZCBhbGlnbm1lbnQpCit7CisJaWYgKCFkcm1fbW1faW5pdGlhbGl6 ZWQoJmRldl9wcml2LT5tbS5zdG9sZW4pKQorCQlyZXR1cm4gLUVOT0RFVjsKKworCXJldHVybiBk cm1fbW1faW5zZXJ0X25vZGUoJmRldl9wcml2LT5tbS5zdG9sZW4sIG5vZGUsIHNpemUsIGFsaWdu bWVudCwKKwkJCQkgIERSTV9NTV9TRUFSQ0hfREVGQVVMVCk7Cit9CisKK3ZvaWQgaTkxNV9nZW1f c3RvbGVuX3JlbW92ZV9ub2RlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKKwkJ CQkgc3RydWN0IGRybV9tbV9ub2RlICpub2RlKQoreworCWRybV9tbV9yZW1vdmVfbm9kZShub2Rl KTsKK30KKwogc3RhdGljIHVuc2lnbmVkIGxvbmcgaTkxNV9zdG9sZW5fdG9fcGh5c2ljYWwoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSBkZXYtPmRldl9wcml2YXRlOwpAQCAtMTY4LDggKzE4NSw3IEBAIHN0YXRpYyBpbnQgZmlu ZF9jb21wcmVzc2lvbl90aHJlc2hvbGQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkgKi8KIAog CS8qIFRyeSB0byBvdmVyLWFsbG9jYXRlIHRvIHJlZHVjZSByZWFsbG9jYXRpb25zIGFuZCBmcmFn bWVudGF0aW9uLiAqLwotCXJldCA9IGRybV9tbV9pbnNlcnRfbm9kZSgmZGV2X3ByaXYtPm1tLnN0 b2xlbiwgbm9kZSwKLQkJCQkgc2l6ZSA8PD0gMSwgNDA5NiwgRFJNX01NX1NFQVJDSF9ERUZBVUxU KTsKKwlyZXQgPSBpOTE1X2dlbV9zdG9sZW5faW5zZXJ0X25vZGUoZGV2X3ByaXYsIG5vZGUsIHNp emUgPDw9IDEsIDQwOTYpOwogCWlmIChyZXQgPT0gMCkKIAkJcmV0dXJuIGNvbXByZXNzaW9uX3Ro cmVzaG9sZDsKIApAQCAtMTc5LDkgKzE5NSw3IEBAIGFnYWluOgogCSAgICAoZmJfY3BwID09IDIg JiYgY29tcHJlc3Npb25fdGhyZXNob2xkID09IDIpKQogCQlyZXR1cm4gMDsKIAotCXJldCA9IGRy bV9tbV9pbnNlcnRfbm9kZSgmZGV2X3ByaXYtPm1tLnN0b2xlbiwgbm9kZSwKLQkJCQkgc2l6ZSA+ Pj0gMSwgNDA5NiwKLQkJCQkgRFJNX01NX1NFQVJDSF9ERUZBVUxUKTsKKwlyZXQgPSBpOTE1X2dl bV9zdG9sZW5faW5zZXJ0X25vZGUoZGV2X3ByaXYsIG5vZGUsIHNpemUgPj49IDEsIDQwOTYpOwog CWlmIChyZXQgJiYgSU5URUxfSU5GTyhkZXYpLT5nZW4gPD0gNCkgewogCQlyZXR1cm4gMDsKIAl9 IGVsc2UgaWYgKHJldCkgewpAQCAtMjE4LDggKzIzMiw4IEBAIHN0YXRpYyBpbnQgaTkxNV9zZXR1 cF9jb21wcmVzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgc2l6ZSwgaW50IGZiX2Nw cCkKIAkJaWYgKCFjb21wcmVzc2VkX2xsYikKIAkJCWdvdG8gZXJyX2ZiOwogCi0JCXJldCA9IGRy bV9tbV9pbnNlcnRfbm9kZSgmZGV2X3ByaXYtPm1tLnN0b2xlbiwgY29tcHJlc3NlZF9sbGIsCi0J CQkJCSA0MDk2LCA0MDk2LCBEUk1fTU1fU0VBUkNIX0RFRkFVTFQpOworCQlyZXQgPSBpOTE1X2dl bV9zdG9sZW5faW5zZXJ0X25vZGUoZGV2X3ByaXYsIGNvbXByZXNzZWRfbGxiLAorCQkJCQkJICA0 MDk2LCA0MDk2KTsKIAkJaWYgKHJldCkKIAkJCWdvdG8gZXJyX2ZiOwogCkBAIC0yNDAsNyArMjU0 LDcgQEAgc3RhdGljIGludCBpOTE1X3NldHVwX2NvbXByZXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIGludCBzaXplLCBpbnQgZmJfY3BwKQogCiBlcnJfZmI6CiAJa2ZyZWUoY29tcHJlc3Nl ZF9sbGIpOwotCWRybV9tbV9yZW1vdmVfbm9kZSgmZGV2X3ByaXYtPmZiYy5jb21wcmVzc2VkX2Zi KTsKKwlpOTE1X2dlbV9zdG9sZW5fcmVtb3ZlX25vZGUoZGV2X3ByaXYsICZkZXZfcHJpdi0+ZmJj LmNvbXByZXNzZWRfZmIpOwogZXJyX2xsYjoKIAlwcl9pbmZvX29uY2UoImRybTogbm90IGVub3Vn aCBzdG9sZW4gc3BhY2UgZm9yIGNvbXByZXNzZWQgYnVmZmVyIChuZWVkICVkIG1vcmUgYnl0ZXMp LCBkaXNhYmxpbmcuIEhpbnQ6IHlvdSBtYXkgYmUgYWJsZSB0byBpbmNyZWFzZSBzdG9sZW4gbWVt b3J5IHNpemUgaW4gdGhlIEJJT1MgdG8gYXZvaWQgdGhpcy5cbiIsIHNpemUpOwogCXJldHVybiAt RU5PU1BDOwpAQCAtMjY5LDEwICsyODMsMTEgQEAgdm9pZCBpOTE1X2dlbV9zdG9sZW5fY2xlYW51 cF9jb21wcmVzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWlmIChkZXZfcHJpdi0+ZmJj LnVuY29tcHJlc3NlZF9zaXplID09IDApCiAJCXJldHVybjsKIAotCWRybV9tbV9yZW1vdmVfbm9k ZSgmZGV2X3ByaXYtPmZiYy5jb21wcmVzc2VkX2ZiKTsKKwlpOTE1X2dlbV9zdG9sZW5fcmVtb3Zl X25vZGUoZGV2X3ByaXYsICZkZXZfcHJpdi0+ZmJjLmNvbXByZXNzZWRfZmIpOwogCiAJaWYgKGRl dl9wcml2LT5mYmMuY29tcHJlc3NlZF9sbGIpIHsKLQkJZHJtX21tX3JlbW92ZV9ub2RlKGRldl9w cml2LT5mYmMuY29tcHJlc3NlZF9sbGIpOworCQlpOTE1X2dlbV9zdG9sZW5fcmVtb3ZlX25vZGUo ZGV2X3ByaXYsCisJCQkJCSAgICBkZXZfcHJpdi0+ZmJjLmNvbXByZXNzZWRfbGxiKTsKIAkJa2Zy ZWUoZGV2X3ByaXYtPmZiYy5jb21wcmVzc2VkX2xsYik7CiAJfQogCkBAIC0zODYsOCArNDAxLDEw IEBAIHN0YXRpYyB2b2lkIGk5MTVfZ2VtX29iamVjdF9wdXRfcGFnZXNfc3RvbGVuKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiBzdGF0aWMgdm9pZAogaTkxNV9nZW1fb2JqZWN0X3Jl bGVhc2Vfc3RvbGVuKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiB7CisJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gb2JqLT5iYXNlLmRldi0+ZGV2X3ByaXZhdGU7 CisKIAlpZiAob2JqLT5zdG9sZW4pIHsKLQkJZHJtX21tX3JlbW92ZV9ub2RlKG9iai0+c3RvbGVu KTsKKwkJaTkxNV9nZW1fc3RvbGVuX3JlbW92ZV9ub2RlKGRldl9wcml2LCBvYmotPnN0b2xlbik7 CiAJCWtmcmVlKG9iai0+c3RvbGVuKTsKIAkJb2JqLT5zdG9sZW4gPSBOVUxMOwogCX0KQEAgLTQ0 OSw4ICs0NjYsNyBAQCBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LCB1MzIgc2l6ZSkKIAlpZiAoIXN0b2xlbikKIAkJcmV0dXJuIE5VTEw7CiAKLQly ZXQgPSBkcm1fbW1faW5zZXJ0X25vZGUoJmRldl9wcml2LT5tbS5zdG9sZW4sIHN0b2xlbiwgc2l6 ZSwKLQkJCQkgNDA5NiwgRFJNX01NX1NFQVJDSF9ERUZBVUxUKTsKKwlyZXQgPSBpOTE1X2dlbV9z dG9sZW5faW5zZXJ0X25vZGUoZGV2X3ByaXYsIHN0b2xlbiwgc2l6ZSwgNDA5Nik7CiAJaWYgKHJl dCkgewogCQlrZnJlZShzdG9sZW4pOwogCQlyZXR1cm4gTlVMTDsKQEAgLTQ2MCw3ICs0NzYsNyBA QCBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1 MzIgc2l6ZSkKIAlpZiAob2JqKQogCQlyZXR1cm4gb2JqOwogCi0JZHJtX21tX3JlbW92ZV9ub2Rl KHN0b2xlbik7CisJaTkxNV9nZW1fc3RvbGVuX3JlbW92ZV9ub2RlKGRldl9wcml2LCBzdG9sZW4p OwogCWtmcmVlKHN0b2xlbik7CiAJcmV0dXJuIE5VTEw7CiB9CkBAIC01MDUsNyArNTIxLDcgQEAg aTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW5fZm9yX3ByZWFsbG9jYXRlZChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LAogCW9iaiA9IF9pOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihkZXYs IHN0b2xlbik7CiAJaWYgKG9iaiA9PSBOVUxMKSB7CiAJCURSTV9ERUJVR19LTVMoImZhaWxlZCB0 byBhbGxvY2F0ZSBzdG9sZW4gb2JqZWN0XG4iKTsKLQkJZHJtX21tX3JlbW92ZV9ub2RlKHN0b2xl bik7CisJCWk5MTVfZ2VtX3N0b2xlbl9yZW1vdmVfbm9kZShkZXZfcHJpdiwgc3RvbGVuKTsKIAkJ a2ZyZWUoc3RvbGVuKTsKIAkJcmV0dXJuIE5VTEw7CiAJfQpAQCAtNTQ2LDcgKzU2Miw3IEBAIGk5 MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuX2Zvcl9wcmVhbGxvY2F0ZWQoc3RydWN0IGRybV9k ZXZpY2UgKmRldiwKIGVycl92bWE6CiAJaTkxNV9nZW1fdm1hX2Rlc3Ryb3kodm1hKTsKIGVycl9v dXQ6Ci0JZHJtX21tX3JlbW92ZV9ub2RlKHN0b2xlbik7CisJaTkxNV9nZW1fc3RvbGVuX3JlbW92 ZV9ub2RlKGRldl9wcml2LCBzdG9sZW4pOwogCWtmcmVlKHN0b2xlbik7CiAJZHJtX2dlbV9vYmpl Y3RfdW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7CiAJcmV0dXJuIE5VTEw7Ci0tIAoyLjEuNAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK