From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: [PATCH v6 06/19] drm/i915/gen8: Add PML4 structure Date: Wed, 29 Jul 2015 17:23:50 +0100 Message-ID: <1438187043-34267-7-git-send-email-michel.thierry@intel.com> References: <1438187043-34267-1-git-send-email-michel.thierry@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 397FC6EC22 for ; Wed, 29 Jul 2015 09:24:12 -0700 (PDT) In-Reply-To: <1438187043-34267-1-git-send-email-michel.thierry@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 List-Id: intel-gfx@lists.freedesktop.org SW50cm9kdWNlcyB0aGUgUGFnZSBNYXAgTGV2ZWwgNCAoUE1MNCksIGllLiB0aGUgbmV3IHRvcCBs ZXZlbCBzdHJ1Y3R1cmUKb2YgdGhlIHBhZ2UgdGFibGVzLgoKVG8gZmFjaWxpdGF0ZSB0ZXN0aW5n LCA0OGIgbW9kZSB3aWxsIGJlIGF2YWlsYWJsZSBvbiBCcm9hZHdlbGwgYW5kCkdFTjkrLCB3aGVu IGk5MTUuZW5hYmxlX3BwZ3R0ID0gMy4KCnYyOiBSZW1vdmUgdW5uZWNlc3NhcnkgQ09ORklHX1g4 Nl82NCBjaGVja3MsIHBwZ3R0IGNvZGUgaXMgYWxyZWFkeQozMi82NC1iaXQgc2FmZSAoQ2hyaXMp Lgp2MzogQWRkIGdvdG8gZnJlZV9zY3JhdGNoIGluIHRlbXAgNDgtYml0IG1vZGUgaW5pdCBjb2Rl IChBa2FzaCkuCgpDYzogQWthc2ggR29lbCA8YWthc2guZ29lbEBpbnRlbC5jb20+ClNpZ25lZC1v ZmYtYnk6IE1pY2hlbCBUaGllcnJ5IDxtaWNoZWwudGhpZXJyeUBpbnRlbC5jb20+Ci0tLQogZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jIHwgMzggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0t LS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggfCAyNiArKysrKysr KysrKysrKysrKysrKy0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDQ4IGluc2VydGlvbnMoKyksIDE5 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDQwZmVhNDEuLjBiNWNi ZTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMjQ5OCw3ICsyNDk4LDggQEAgc3RydWN0 IGRybV9pOTE1X2NtZF90YWJsZSB7CiAjZGVmaW5lIEhBU19IV19DT05URVhUUyhkZXYpCShJTlRF TF9JTkZPKGRldiktPmdlbiA+PSA2KQogI2RlZmluZSBIQVNfTE9HSUNBTF9SSU5HX0NPTlRFWFRT KGRldikJKElOVEVMX0lORk8oZGV2KS0+Z2VuID49IDgpCiAjZGVmaW5lIFVTRVNfUFBHVFQoZGV2 KQkJKGk5MTUuZW5hYmxlX3BwZ3R0KQotI2RlZmluZSBVU0VTX0ZVTExfUFBHVFQoZGV2KQkoaTkx NS5lbmFibGVfcHBndHQgPT0gMikKKyNkZWZpbmUgVVNFU19GVUxMX1BQR1RUKGRldikJKGk5MTUu ZW5hYmxlX3BwZ3R0ID49IDIpCisjZGVmaW5lIFVTRVNfRlVMTF80OEJJVF9QUEdUVChkZXYpCShp OTE1LmVuYWJsZV9wcGd0dCA9PSAzKQogCiAjZGVmaW5lIEhBU19PVkVSTEFZKGRldikJCShJTlRF TF9JTkZPKGRldiktPmhhc19vdmVybGF5KQogI2RlZmluZSBPVkVSTEFZX05FRURTX1BIWVNJQ0FM KGRldikJKElOVEVMX0lORk8oZGV2KS0+b3ZlcmxheV9uZWVkc19waHlzaWNhbCkKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZ3R0LmMKaW5kZXggOGMxZGI5Mi4uMWExMjBhNCAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZ3R0LmMKQEAgLTEwNCw5ICsxMDQsMTIgQEAgc3RhdGljIGludCBzYW5p dGl6ZV9lbmFibGVfcHBndHQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50IGVuYWJsZV9wcGd0 dCkKIHsKIAlib29sIGhhc19hbGlhc2luZ19wcGd0dDsKIAlib29sIGhhc19mdWxsX3BwZ3R0Owor CWJvb2wgaGFzX2Z1bGxfNjRiaXRfcHBndHQ7CiAKIAloYXNfYWxpYXNpbmdfcHBndHQgPSBJTlRF TF9JTkZPKGRldiktPmdlbiA+PSA2OwogCWhhc19mdWxsX3BwZ3R0ID0gSU5URUxfSU5GTyhkZXYp LT5nZW4gPj0gNzsKKwloYXNfZnVsbF82NGJpdF9wcGd0dCA9IChJU19CUk9BRFdFTEwoZGV2KSB8 fAorCQkJCUlOVEVMX0lORk8oZGV2KS0+Z2VuID49IDkpICYmIGZhbHNlOyAvKiBGSVhNRTogNjRi ICovCiAKIAlpZiAoaW50ZWxfdmdwdV9hY3RpdmUoZGV2KSkKIAkJaGFzX2Z1bGxfcHBndHQgPSBm YWxzZTsgLyogZW11bGF0aW9uIGlzIHRvbyBoYXJkICovCkBAIC0xMjUsNiArMTI4LDkgQEAgc3Rh dGljIGludCBzYW5pdGl6ZV9lbmFibGVfcHBndHQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50 IGVuYWJsZV9wcGd0dCkKIAlpZiAoZW5hYmxlX3BwZ3R0ID09IDIgJiYgaGFzX2Z1bGxfcHBndHQp CiAJCXJldHVybiAyOwogCisJaWYgKGVuYWJsZV9wcGd0dCA9PSAzICYmIGhhc19mdWxsXzY0Yml0 X3BwZ3R0KQorCQlyZXR1cm4gMzsKKwogI2lmZGVmIENPTkZJR19JTlRFTF9JT01NVQogCS8qIERp c2FibGUgcHBndHQgb24gU05CIGlmIFZULWQgaXMgb24uICovCiAJaWYgKElOVEVMX0lORk8oZGV2 KS0+Z2VuID09IDYgJiYgaW50ZWxfaW9tbXVfZ2Z4X21hcHBlZCkgewpAQCAtNTU3LDYgKzU2Myw4 IEBAIHN0YXRpYyB2b2lkIGZyZWVfcGRwKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCSAgICAg c3RydWN0IGk5MTVfcGFnZV9kaXJlY3RvcnlfcG9pbnRlciAqcGRwKQogewogCV9fcGRwX2Zpbmko cGRwKTsKKwlpZiAoVVNFU19GVUxMXzQ4QklUX1BQR1RUKGRldikpCisJCWtmcmVlKHBkcCk7CiB9 CiAKIC8qIEJyb2Fkd2VsbCBQYWdlIERpcmVjdG9yeSBQb2ludGVyIERlc2NyaXB0b3JzICovCkBA IC02ODYsOSArNjk0LDYgQEAgZ2VuOF9wcGd0dF9pbnNlcnRfcHRlX2VudHJpZXMoc3RydWN0IGk5 MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAJcHRfdmFkZHIgPSBOVUxMOwogCiAJZm9yX2VhY2hfc2df cGFnZShwYWdlcy0+c2dsLCAmc2dfaXRlciwgcGFnZXMtPm5lbnRzLCAwKSB7Ci0JCWlmIChXQVJO X09OKHBkcGUgPj0gR0VOOF9MRUdBQ1lfUERQRVMpKQotCQkJYnJlYWs7Ci0KIAkJaWYgKHB0X3Zh ZGRyID09IE5VTEwpIHsKIAkJCXN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5ICpwZCA9IHBkcC0+ cGFnZV9kaXJlY3RvcnlbcGRwZV07CiAJCQlzdHJ1Y3QgaTkxNV9wYWdlX3RhYmxlICpwdCA9IHBk LT5wYWdlX3RhYmxlW3BkZV07CkBAIC0xMTAyLDE0ICsxMTA3LDYgQEAgc3RhdGljIGludCBnZW44 X3BwZ3R0X2luaXQoc3RydWN0IGk5MTVfaHdfcHBndHQgKnBwZ3R0KQogCQlyZXR1cm4gcmV0Owog CiAJcHBndHQtPmJhc2Uuc3RhcnQgPSAwOwotCXBwZ3R0LT5iYXNlLnRvdGFsID0gMVVMTCA8PCAz MjsKLQlpZiAoSVNfRU5BQkxFRChDT05GSUdfWDg2XzMyKSkKLQkJLyogV2hpbGUgd2UgaGF2ZSBh IHByb2xpZmVyYXRpb24gb2Ygc2l6ZV90IHZhcmlhYmxlcwotCQkgKiB3ZSBjYW5ub3QgcmVwcmVz ZW50IHRoZSBmdWxsIHBwZ3R0IHNpemUgb24gMzJiaXQsCi0JCSAqIHNvIGxpbWl0IGl0IHRvIHRo ZSBzYW1lIHNpemUgYXMgdGhlIEdHVFQgKGN1cnJlbnRseQotCQkgKiAyR2lCKS4KLQkJICovCi0J CXBwZ3R0LT5iYXNlLnRvdGFsID0gdG9faTkxNShwcGd0dC0+YmFzZS5kZXYpLT5ndHQuYmFzZS50 b3RhbDsKIAlwcGd0dC0+YmFzZS5jbGVhbnVwID0gZ2VuOF9wcGd0dF9jbGVhbnVwOwogCXBwZ3R0 LT5iYXNlLmFsbG9jYXRlX3ZhX3JhbmdlID0gZ2VuOF9hbGxvY192YV9yYW5nZTsKIAlwcGd0dC0+ YmFzZS5pbnNlcnRfZW50cmllcyA9IGdlbjhfcHBndHRfaW5zZXJ0X2VudHJpZXM7CkBAIC0xMTE5 LDEwICsxMTE2LDI1IEBAIHN0YXRpYyBpbnQgZ2VuOF9wcGd0dF9pbml0KHN0cnVjdCBpOTE1X2h3 X3BwZ3R0ICpwcGd0dCkKIAogCXBwZ3R0LT5zd2l0Y2hfbW0gPSBnZW44X21tX3N3aXRjaDsKIAot CXJldCA9IF9fcGRwX2luaXQoZmFsc2UsICZwcGd0dC0+cGRwKTsKKwlpZiAoIVVTRVNfRlVMTF80 OEJJVF9QUEdUVChwcGd0dC0+YmFzZS5kZXYpKSB7CisJCXJldCA9IF9fcGRwX2luaXQoZmFsc2Us ICZwcGd0dC0+cGRwKTsKIAotCWlmIChyZXQpCisJCWlmIChyZXQpCisJCQlnb3RvIGZyZWVfc2Ny YXRjaDsKKworCQlwcGd0dC0+YmFzZS50b3RhbCA9IDFVTEwgPDwgMzI7CisJCWlmIChJU19FTkFC TEVEKENPTkZJR19YODZfMzIpKQorCQkJLyogV2hpbGUgd2UgaGF2ZSBhIHByb2xpZmVyYXRpb24g b2Ygc2l6ZV90IHZhcmlhYmxlcworCQkJICogd2UgY2Fubm90IHJlcHJlc2VudCB0aGUgZnVsbCBw cGd0dCBzaXplIG9uIDMyYml0LAorCQkJICogc28gbGltaXQgaXQgdG8gdGhlIHNhbWUgc2l6ZSBh cyB0aGUgR0dUVCAoY3VycmVudGx5CisJCQkgKiAyR2lCKS4KKwkJCSAqLworCQkJcHBndHQtPmJh c2UudG90YWwgPSB0b19pOTE1KHBwZ3R0LT5iYXNlLmRldiktPmd0dC5iYXNlLnRvdGFsOworCX0g ZWxzZSB7CisJCXBwZ3R0LT5iYXNlLnRvdGFsID0gMVVMTCA8PCA0ODsKKwkJcmV0ID0gLUVQRVJN OyAvKiBOb3QgeWV0IGltcGxlbWVudGVkICovCiAJCWdvdG8gZnJlZV9zY3JhdGNoOworCX0KIAog CXJldHVybiAwOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9n dHQuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCmluZGV4IDg3ZTM4OWMu LjA0YmM2NmYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCkBAIC04OCw5ICs4OCwx NyBAQCB0eXBlZGVmIHVpbnQ2NF90IGdlbjhfcGRlX3Q7CiAgKiBQRFBFICB8ICBQREUgIHwgIFBU RSAgfCBvZmZzZXQKICAqIFRoZSBkaWZmZXJlbmNlIGFzIGNvbXBhcmVkIHRvIG5vcm1hbCB4ODYg MyBsZXZlbCBwYWdlIHRhYmxlIGlzIHRoZSBQRFBFcyBhcmUKICAqIHByb2dyYW1tZWQgdmlhIHJl Z2lzdGVyLgorICoKKyAqIEdFTjggNDhiIGxlZ2FjeSBzdHlsZSBhZGRyZXNzIGlzIGRlZmluZWQg YXMgYSA0IGxldmVsIHBhZ2UgdGFibGU6CisgKiA0NzozOSB8IDM4OjMwIHwgMjk6MjEgfCAyMDox MiB8ICAxMTowCisgKiBQTUw0RSB8IFBEUEUgIHwgIFBERSAgfCAgUFRFICB8IG9mZnNldAogICov CisjZGVmaW5lIEdFTjhfUE1MNEVTX1BFUl9QTUw0CQk1MTIKKyNkZWZpbmUgR0VOOF9QTUw0RV9T SElGVAkJMzkKICNkZWZpbmUgR0VOOF9QRFBFX1NISUZUCQkJMzAKLSNkZWZpbmUgR0VOOF9QRFBF X01BU0sJCQkweDMKKy8qIE5COiBHRU44X1BEUEVfTUFTSyBpcyB1bnRydWUgZm9yIDMyYiBwbGF0 Zm9ybXMsIGJ1dCBpdCBoYXMgbm8gaW1wYWN0IG9uIDMyYiBwYWdlCisgKiB0YWJsZXMgKi8KKyNk ZWZpbmUgR0VOOF9QRFBFX01BU0sJCQkweDFmZgogI2RlZmluZSBHRU44X1BERV9TSElGVAkJCTIx CiAjZGVmaW5lIEdFTjhfUERFX01BU0sJCQkweDFmZgogI2RlZmluZSBHRU44X1BURV9TSElGVAkJ CTEyCkBAIC05OCw4ICsxMDYsOCBAQCB0eXBlZGVmIHVpbnQ2NF90IGdlbjhfcGRlX3Q7CiAjZGVm aW5lIEdFTjhfTEVHQUNZX1BEUEVTCQk0CiAjZGVmaW5lIEdFTjhfUFRFUwkJCUk5MTVfUFRFUyhz aXplb2YoZ2VuOF9wdGVfdCkpCiAKLS8qIEZJWE1FOiBOZXh0IHBhdGNoIHdpbGwgdXNlIGRldiAq LwotI2RlZmluZSBJOTE1X1BEUEVTX1BFUl9QRFAoZGV2KQkJR0VOOF9MRUdBQ1lfUERQRVMKKyNk ZWZpbmUgSTkxNV9QRFBFU19QRVJfUERQKGRldikgKFVTRVNfRlVMTF80OEJJVF9QUEdUVChkZXYp ID9cCisJCQkJIEdFTjhfUE1MNEVTX1BFUl9QTUw0IDogR0VOOF9MRUdBQ1lfUERQRVMpCiAKICNk ZWZpbmUgUFBBVF9VTkNBQ0hFRF9JTkRFWAkJKF9QQUdFX1BXVCB8IF9QQUdFX1BDRCkKICNkZWZp bmUgUFBBVF9DQUNIRURfUERFX0lOREVYCQkwIC8qIFdCIExMQyAqLwpAQCAtMjUwLDYgKzI1OCwx MyBAQCBzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyIHsKIAlzdHJ1Y3QgaTkxNV9w YWdlX2RpcmVjdG9yeSAqKnBhZ2VfZGlyZWN0b3J5OwogfTsKIAorc3RydWN0IGk5MTVfcG1sNCB7 CisJc3RydWN0IGk5MTVfcGFnZV9kbWEgYmFzZTsKKworCURFQ0xBUkVfQklUTUFQKHVzZWRfcG1s NGVzLCBHRU44X1BNTDRFU19QRVJfUE1MNCk7CisJc3RydWN0IGk5MTVfcGFnZV9kaXJlY3Rvcnlf cG9pbnRlciAqcGRwc1tHRU44X1BNTDRFU19QRVJfUE1MNF07Cit9OworCiBzdHJ1Y3QgaTkxNV9h ZGRyZXNzX3NwYWNlIHsKIAlzdHJ1Y3QgZHJtX21tIG1tOwogCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXY7CkBAIC0zNDUsOCArMzYwLDkgQEAgc3RydWN0IGk5MTVfaHdfcHBndHQgewogCXN0cnVjdCBk cm1fbW1fbm9kZSBub2RlOwogCXVuc2lnbmVkIGxvbmcgcGRfZGlydHlfcmluZ3M7CiAJdW5pb24g ewotCQlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyIHBkcDsKLQkJc3RydWN0IGk5 MTVfcGFnZV9kaXJlY3RvcnkgcGQ7CisJCXN0cnVjdCBpOTE1X3BtbDQgcG1sNDsJCS8qIEdFTjgr ICYgNDhiIFBQR1RUICovCisJCXN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5X3BvaW50ZXIgcGRw OwkvKiBHRU44KyAqLworCQlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeSBwZDsJCS8qIEdFTjYt NyAqLwogCX07CiAKIAlzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXY7Ci0t IAoyLjQuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK