From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 15/55] drm/i915: Split i915_ppgtt_init_hw() in half - generic and per ring Date: Fri, 29 May 2015 17:43:36 +0100 Message-ID: <1432917856-12261-16-git-send-email-John.C.Harrison@Intel.com> References: <1432917856-12261-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 5BD076EDE7 for ; Fri, 29 May 2015 09:44:34 -0700 (PDT) In-Reply-To: <1432917856-12261-1-git-send-email-John.C.Harrison@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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBpOTE1 X2dlbV9pbml0X2h3KCkgZnVuY3Rpb24gY2FsbHMgYSBidW5jaCBvZiBzbWFsbGVyIGluaXRpYWxp c2F0aW9uCmZ1bmN0aW9ucy4gTXVsdGlwbGUgb2Ygd2hpY2ggaGF2ZSBnZW5lcmljIHNlY3Rpb25z IGFuZCBwZXIgcmluZyBzZWN0aW9ucy4gVGhpcwptZWFucyBtdWx0aXBsZSBwYXNzZXMgYXJlIGRv bmUgb3ZlciB0aGUgcmluZ3MuIEVhY2ggcGFzcyB3cml0ZXMgZGF0YSB0byB0aGUgcmluZwp3aGlj aCBmbG9hdHMgYXJvdW5kIGluIHRoYXQgcmluZydzIE9MUiB1bnRpbCBzb21lIHJhbmRvbSBwb2lu dCBpbiB0aGUgZnV0dXJlCndoZW4gYW4gYWRkX3JlcXVlc3QoKSBpcyBkb25lIGJ5IHNvbWUgcmFu ZG9tIG90aGVyIHBpZWNlIG9mIGNvZGUuCgpUaGlzIHBhdGNoIGJyZWFrcyBpOTE1X3BwZ3R0X2lu aXRfaHcoKSBpbiB0d28gd2l0aCB0aGUgcGVyIHJpbmcgaW5pdGlhbGlzYXRpb24Kbm93IGJlaW5n IGRvbmUgaW4gaTkxNV9wcGd0dF9pbml0X3JpbmcoKS4gVGhlIHJpbmcgbG9vcGluZyBpcyBub3cg ZG9uZSBhdCB0aGUKdG9wIGxldmVsIGluIGk5MTVfZ2VtX2luaXRfaHcoKS4KCkZvcjogVklaLTUx MTUKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNv bT4KUmV2aWV3ZWQtYnk6IFRvbWFzIEVsZiA8dG9tYXMuZWxmQGludGVsLmNvbT4KLS0tCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jICAgICB8ICAgMjUgKysrKysrKysrKysrKysrKysr Ky0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgfCAgIDI4ICsrKysr KysrKysrKysrKy0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0 dC5oIHwgICAgMSArCiAzIGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDE5IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IGJiZDAwZTEuLmU2ZWIzMWQgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtNTA1NiwxOSArNTA1NiwzMiBAQCBpOTE1X2dlbV9p bml0X2h3KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJICovCiAJaW5pdF91bnVzZWRfcmluZ3Mo ZGV2KTsKIAorCXJldCA9IGk5MTVfcHBndHRfaW5pdF9odyhkZXYpOworCWlmIChyZXQpIHsKKwkJ RFJNX0VSUk9SKCJQUEdUVCBlbmFibGUgSFcgZmFpbGVkICVkXG4iLCByZXQpOworCQlnb3RvIG91 dDsKKwl9CisKKwkvKiBOZWVkIHRvIGRvIGJhc2ljIGluaXRpYWxpc2F0aW9uIG9mIGFsbCByaW5n cyBmaXJzdDogKi8KIAlmb3JfZWFjaF9yaW5nKHJpbmcsIGRldl9wcml2LCBpKSB7CiAJCXJldCA9 IHJpbmctPmluaXRfaHcocmluZyk7CiAJCWlmIChyZXQpCiAJCQlnb3RvIG91dDsKIAl9CiAKLQlm b3IgKGkgPSAwOyBpIDwgTlVNX0wzX1NMSUNFUyhkZXYpOyBpKyspCi0JCWk5MTVfZ2VtX2wzX3Jl bWFwKCZkZXZfcHJpdi0+cmluZ1tSQ1NdLCBpKTsKKwkvKiBOb3cgaXQgaXMgc2FmZSB0byBnbyBi YWNrIHJvdW5kIGFuZCBkbyBldmVyeXRoaW5nIGVsc2U6ICovCisJZm9yX2VhY2hfcmluZyhyaW5n LCBkZXZfcHJpdiwgaSkgeworCQlpZiAocmluZy0+aWQgPT0gUkNTKSB7CisJCQlmb3IgKGkgPSAw OyBpIDwgTlVNX0wzX1NMSUNFUyhkZXYpOyBpKyspCisJCQkJaTkxNV9nZW1fbDNfcmVtYXAocmlu ZywgaSk7CisJCX0KIAotCXJldCA9IGk5MTVfcHBndHRfaW5pdF9odyhkZXYpOwotCWlmIChyZXQg JiYgcmV0ICE9IC1FSU8pIHsKLQkJRFJNX0VSUk9SKCJQUEdUVCBlbmFibGUgZmFpbGVkICVkXG4i LCByZXQpOwotCQlpOTE1X2dlbV9jbGVhbnVwX3JpbmdidWZmZXIoZGV2KTsKKwkJcmV0ID0gaTkx NV9wcGd0dF9pbml0X3JpbmcocmluZyk7CisJCWlmIChyZXQgJiYgcmV0ICE9IC1FSU8pIHsKKwkJ CURSTV9FUlJPUigiUFBHVFQgZW5hYmxlIHJpbmcgIyVkIGZhaWxlZCAlZFxuIiwgaSwgcmV0KTsK KwkJCWk5MTVfZ2VtX2NsZWFudXBfcmluZ2J1ZmZlcihkZXYpOworCQkJZ290byBvdXQ7CisJCX0K IAl9CiAKIAlyZXQgPSBpOTE1X2dlbV9jb250ZXh0X2VuYWJsZShkZXZfcHJpdik7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jCmluZGV4IDE3YjdkZjAuLmIxNGFlNjMgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jCkBAIC0xNTQzLDExICsxNTQzLDYgQEAgaW50IGk5MTVfcHBn dHRfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaTkxNV9od19wcGd0dCAqcHBn dHQpCiAKIGludCBpOTE1X3BwZ3R0X2luaXRfaHcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIHsK LQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwot CXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7Ci0Jc3RydWN0IGk5MTVfaHdfcHBndHQgKnBw Z3R0ID0gZGV2X3ByaXYtPm1tLmFsaWFzaW5nX3BwZ3R0OwotCWludCBpLCByZXQgPSAwOwotCiAJ LyogSW4gdGhlIGNhc2Ugb2YgZXhlY2xpc3RzLCBQUEdUVCBpcyBlbmFibGVkIGJ5IHRoZSBjb250 ZXh0IGRlc2NyaXB0b3IKIAkgKiBhbmQgdGhlIFBEUHMgYXJlIGNvbnRhaW5lZCB3aXRoaW4gdGhl IGNvbnRleHQgaXRzZWxmLiAgV2UgZG9uJ3QKIAkgKiBuZWVkIHRvIGRvIGFueXRoaW5nIGhlcmUu ICovCkBAIC0xNTY2LDE2ICsxNTYxLDIzIEBAIGludCBpOTE1X3BwZ3R0X2luaXRfaHcoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKIAllbHNlCiAJCU1JU1NJTkdfQ0FTRShJTlRFTF9JTkZPKGRldikt Pmdlbik7CiAKLQlpZiAocHBndHQpIHsKLQkJZm9yX2VhY2hfcmluZyhyaW5nLCBkZXZfcHJpdiwg aSkgewotCQkJcmV0ID0gcHBndHQtPnN3aXRjaF9tbShwcGd0dCwgcmluZyk7Ci0JCQlpZiAocmV0 ICE9IDApCi0JCQkJcmV0dXJuIHJldDsKLQkJfQotCX0KKwlyZXR1cm4gMDsKK30KIAotCXJldHVy biByZXQ7CitpbnQgaTkxNV9wcGd0dF9pbml0X3Jpbmcoc3RydWN0IGludGVsX2VuZ2luZV9jcyAq cmluZykKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSByaW5nLT5kZXYt PmRldl9wcml2YXRlOworCXN0cnVjdCBpOTE1X2h3X3BwZ3R0ICpwcGd0dCA9IGRldl9wcml2LT5t bS5hbGlhc2luZ19wcGd0dDsKKworCWlmIChpOTE1LmVuYWJsZV9leGVjbGlzdHMpCisJCXJldHVy biAwOworCisJaWYgKCFwcGd0dCkKKwkJcmV0dXJuIDA7CisKKwlyZXR1cm4gcHBndHQtPnN3aXRj aF9tbShwcGd0dCwgcmluZyk7CiB9CisKIHN0cnVjdCBpOTE1X2h3X3BwZ3R0ICoKIGk5MTVfcHBn dHRfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1faTkxNV9maWxlX3By aXZhdGUgKmZwcml2KQogewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZ3R0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaAppbmRleCAwZDQ2 ZGQyLi4wY2FhOWViIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9n dHQuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaApAQCAtNDc1LDYg KzQ3NSw3IEBAIHZvaWQgaTkxNV9nbG9iYWxfZ3R0X2NsZWFudXAoc3RydWN0IGRybV9kZXZpY2Ug KmRldik7CiAKIGludCBpOTE1X3BwZ3R0X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3Ry dWN0IGk5MTVfaHdfcHBndHQgKnBwZ3R0KTsKIGludCBpOTE1X3BwZ3R0X2luaXRfaHcoc3RydWN0 IGRybV9kZXZpY2UgKmRldik7CitpbnQgaTkxNV9wcGd0dF9pbml0X3Jpbmcoc3RydWN0IGludGVs X2VuZ2luZV9jcyAqcmluZyk7CiB2b2lkIGk5MTVfcHBndHRfcmVsZWFzZShzdHJ1Y3Qga3JlZiAq a3JlZik7CiBzdHJ1Y3QgaTkxNV9od19wcGd0dCAqaTkxNV9wcGd0dF9jcmVhdGUoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKIAkJCQkJc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0ZSAqZnByaXYp OwotLSAKMS43LjkuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1n ZngK