From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: [PATCH v7 06/19] drm/i915/gen8: Add PML4 structure Date: Thu, 30 Jul 2015 11:04:35 +0100 Message-ID: <1438250675-22790-1-git-send-email-michel.thierry@intel.com> References: <1438187043-34267-7-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 812B37A11E for ; Thu, 30 Jul 2015 03:04:37 -0700 (PDT) In-Reply-To: <1438187043-34267-7-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 List-Id: intel-gfx@lists.freedesktop.org SW50cm9kdWNlcyB0aGUgUGFnZSBNYXAgTGV2ZWwgNCAoUE1MNCksIGllLiB0aGUgbmV3IHRvcCBs ZXZlbCBzdHJ1Y3R1cmUKb2YgdGhlIHBhZ2UgdGFibGVzLgoKVG8gZmFjaWxpdGF0ZSB0ZXN0aW5n LCA0OGIgbW9kZSB3aWxsIGJlIGF2YWlsYWJsZSBvbiBCcm9hZHdlbGwgYW5kCkdFTjkrLCB3aGVu IGk5MTUuZW5hYmxlX3BwZ3R0ID0gMy4KCnYyOiBSZW1vdmUgdW5uZWNlc3NhcnkgQ09ORklHX1g4 Nl82NCBjaGVja3MsIHBwZ3R0IGNvZGUgaXMgYWxyZWFkeQozMi82NC1iaXQgc2FmZSAoQ2hyaXMp Lgp2MzogQWRkIGdvdG8gZnJlZV9zY3JhdGNoIGluIHRlbXAgNDgtYml0IG1vZGUgaW5pdCBjb2Rl IChBa2FzaCkuCnY0OiBrZnJlZSB0aGUgcGRwIHVudGlsIHRoZSA0bHZsIGFsbG9jL2ZyZWUgcGF0 Y2ggKEFrYXNoKS4KCkNjOiBBa2FzaCBHb2VsIDxha2FzaC5nb2VsQGludGVsLmNvbT4KU2lnbmVk LW9mZi1ieTogTWljaGVsIFRoaWVycnkgPG1pY2hlbC50aGllcnJ5QGludGVsLmNvbT4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICB8ICAzICsrLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgfCAzNiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oIHwgMjYgKysrKysr KysrKysrKysrKysrKysrLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgNDYgaW5zZXJ0aW9ucygrKSwg MTkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggMDRhYTM0YS4uNDcy OWVhZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0yNDk4LDcgKzI0OTgsOCBAQCBzdHJ1 Y3QgZHJtX2k5MTVfY21kX3RhYmxlIHsKICNkZWZpbmUgSEFTX0hXX0NPTlRFWFRTKGRldikJKElO VEVMX0lORk8oZGV2KS0+Z2VuID49IDYpCiAjZGVmaW5lIEhBU19MT0dJQ0FMX1JJTkdfQ09OVEVY VFMoZGV2KQkoSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0gOCkKICNkZWZpbmUgVVNFU19QUEdUVChk ZXYpCQkoaTkxNS5lbmFibGVfcHBndHQpCi0jZGVmaW5lIFVTRVNfRlVMTF9QUEdUVChkZXYpCShp OTE1LmVuYWJsZV9wcGd0dCA9PSAyKQorI2RlZmluZSBVU0VTX0ZVTExfUFBHVFQoZGV2KQkoaTkx NS5lbmFibGVfcHBndHQgPj0gMikKKyNkZWZpbmUgVVNFU19GVUxMXzQ4QklUX1BQR1RUKGRldikJ KGk5MTUuZW5hYmxlX3BwZ3R0ID09IDMpCiAKICNkZWZpbmUgSEFTX09WRVJMQVkoZGV2KQkJKElO VEVMX0lORk8oZGV2KS0+aGFzX292ZXJsYXkpCiAjZGVmaW5lIE9WRVJMQVlfTkVFRFNfUEhZU0lD QUwoZGV2KQkoSU5URUxfSU5GTyhkZXYpLT5vdmVybGF5X25lZWRzX3BoeXNpY2FsKQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9ndHQuYwppbmRleCA3ZjcxNzQ2Li4zMjg4MTU0IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAtMTA0LDkgKzEwNCwxMiBAQCBzdGF0aWMgaW50IHNh bml0aXplX2VuYWJsZV9wcGd0dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgZW5hYmxlX3Bw Z3R0KQogewogCWJvb2wgaGFzX2FsaWFzaW5nX3BwZ3R0OwogCWJvb2wgaGFzX2Z1bGxfcHBndHQ7 CisJYm9vbCBoYXNfZnVsbF82NGJpdF9wcGd0dDsKIAogCWhhc19hbGlhc2luZ19wcGd0dCA9IElO VEVMX0lORk8oZGV2KS0+Z2VuID49IDY7CiAJaGFzX2Z1bGxfcHBndHQgPSBJTlRFTF9JTkZPKGRl diktPmdlbiA+PSA3OworCWhhc19mdWxsXzY0Yml0X3BwZ3R0ID0gKElTX0JST0FEV0VMTChkZXYp IHx8CisJCQkJSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0gOSkgJiYgZmFsc2U7IC8qIEZJWE1FOiA2 NGIgKi8KIAogCWlmIChpbnRlbF92Z3B1X2FjdGl2ZShkZXYpKQogCQloYXNfZnVsbF9wcGd0dCA9 IGZhbHNlOyAvKiBlbXVsYXRpb24gaXMgdG9vIGhhcmQgKi8KQEAgLTEyNSw2ICsxMjgsOSBAQCBz dGF0aWMgaW50IHNhbml0aXplX2VuYWJsZV9wcGd0dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBp bnQgZW5hYmxlX3BwZ3R0KQogCWlmIChlbmFibGVfcHBndHQgPT0gMiAmJiBoYXNfZnVsbF9wcGd0 dCkKIAkJcmV0dXJuIDI7CiAKKwlpZiAoZW5hYmxlX3BwZ3R0ID09IDMgJiYgaGFzX2Z1bGxfNjRi aXRfcHBndHQpCisJCXJldHVybiAzOworCiAjaWZkZWYgQ09ORklHX0lOVEVMX0lPTU1VCiAJLyog RGlzYWJsZSBwcGd0dCBvbiBTTkIgaWYgVlQtZCBpcyBvbi4gKi8KIAlpZiAoSU5URUxfSU5GTyhk ZXYpLT5nZW4gPT0gNiAmJiBpbnRlbF9pb21tdV9nZnhfbWFwcGVkKSB7CkBAIC02ODksOSArNjk1 LDYgQEAgZ2VuOF9wcGd0dF9pbnNlcnRfcHRlX2VudHJpZXMoc3RydWN0IGk5MTVfYWRkcmVzc19z cGFjZSAqdm0sCiAJcHRfdmFkZHIgPSBOVUxMOwogCiAJZm9yX2VhY2hfc2dfcGFnZShwYWdlcy0+ c2dsLCAmc2dfaXRlciwgcGFnZXMtPm5lbnRzLCAwKSB7Ci0JCWlmIChXQVJOX09OKHBkcGUgPj0g R0VOOF9MRUdBQ1lfUERQRVMpKQotCQkJYnJlYWs7Ci0KIAkJaWYgKHB0X3ZhZGRyID09IE5VTEwp IHsKIAkJCXN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5ICpwZCA9IHBkcC0+cGFnZV9kaXJlY3Rv cnlbcGRwZV07CiAJCQlzdHJ1Y3QgaTkxNV9wYWdlX3RhYmxlICpwdCA9IHBkLT5wYWdlX3RhYmxl W3BkZV07CkBAIC0xMTA1LDE0ICsxMTA4LDYgQEAgc3RhdGljIGludCBnZW44X3BwZ3R0X2luaXQo c3RydWN0IGk5MTVfaHdfcHBndHQgKnBwZ3R0KQogCQlyZXR1cm4gcmV0OwogCiAJcHBndHQtPmJh c2Uuc3RhcnQgPSAwOwotCXBwZ3R0LT5iYXNlLnRvdGFsID0gMVVMTCA8PCAzMjsKLQlpZiAoSVNf RU5BQkxFRChDT05GSUdfWDg2XzMyKSkKLQkJLyogV2hpbGUgd2UgaGF2ZSBhIHByb2xpZmVyYXRp b24gb2Ygc2l6ZV90IHZhcmlhYmxlcwotCQkgKiB3ZSBjYW5ub3QgcmVwcmVzZW50IHRoZSBmdWxs IHBwZ3R0IHNpemUgb24gMzJiaXQsCi0JCSAqIHNvIGxpbWl0IGl0IHRvIHRoZSBzYW1lIHNpemUg YXMgdGhlIEdHVFQgKGN1cnJlbnRseQotCQkgKiAyR2lCKS4KLQkJICovCi0JCXBwZ3R0LT5iYXNl LnRvdGFsID0gdG9faTkxNShwcGd0dC0+YmFzZS5kZXYpLT5ndHQuYmFzZS50b3RhbDsKIAlwcGd0 dC0+YmFzZS5jbGVhbnVwID0gZ2VuOF9wcGd0dF9jbGVhbnVwOwogCXBwZ3R0LT5iYXNlLmFsbG9j YXRlX3ZhX3JhbmdlID0gZ2VuOF9hbGxvY192YV9yYW5nZTsKIAlwcGd0dC0+YmFzZS5pbnNlcnRf ZW50cmllcyA9IGdlbjhfcHBndHRfaW5zZXJ0X2VudHJpZXM7CkBAIC0xMTIyLDEwICsxMTE3LDI1 IEBAIHN0YXRpYyBpbnQgZ2VuOF9wcGd0dF9pbml0KHN0cnVjdCBpOTE1X2h3X3BwZ3R0ICpwcGd0 dCkKIAogCXBwZ3R0LT5zd2l0Y2hfbW0gPSBnZW44X21tX3N3aXRjaDsKIAotCXJldCA9IF9fcGRw X2luaXQoZmFsc2UsICZwcGd0dC0+cGRwKTsKKwlpZiAoIVVTRVNfRlVMTF80OEJJVF9QUEdUVChw cGd0dC0+YmFzZS5kZXYpKSB7CisJCXJldCA9IF9fcGRwX2luaXQoZmFsc2UsICZwcGd0dC0+cGRw KTsKIAotCWlmIChyZXQpCisJCWlmIChyZXQpCisJCQlnb3RvIGZyZWVfc2NyYXRjaDsKKworCQlw cGd0dC0+YmFzZS50b3RhbCA9IDFVTEwgPDwgMzI7CisJCWlmIChJU19FTkFCTEVEKENPTkZJR19Y ODZfMzIpKQorCQkJLyogV2hpbGUgd2UgaGF2ZSBhIHByb2xpZmVyYXRpb24gb2Ygc2l6ZV90IHZh cmlhYmxlcworCQkJICogd2UgY2Fubm90IHJlcHJlc2VudCB0aGUgZnVsbCBwcGd0dCBzaXplIG9u IDMyYml0LAorCQkJICogc28gbGltaXQgaXQgdG8gdGhlIHNhbWUgc2l6ZSBhcyB0aGUgR0dUVCAo Y3VycmVudGx5CisJCQkgKiAyR2lCKS4KKwkJCSAqLworCQkJcHBndHQtPmJhc2UudG90YWwgPSB0 b19pOTE1KHBwZ3R0LT5iYXNlLmRldiktPmd0dC5iYXNlLnRvdGFsOworCX0gZWxzZSB7CisJCXBw Z3R0LT5iYXNlLnRvdGFsID0gMVVMTCA8PCA0ODsKKwkJcmV0ID0gLUVQRVJNOyAvKiBOb3QgeWV0 IGltcGxlbWVudGVkICovCiAJCWdvdG8gZnJlZV9zY3JhdGNoOworCX0KIAogCXJldHVybiAwOwog CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCmluZGV4IDg3ZTM4OWMuLjA0YmM2NmYgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCkBAIC04OCw5ICs4OCwxNyBAQCB0eXBlZGVm IHVpbnQ2NF90IGdlbjhfcGRlX3Q7CiAgKiBQRFBFICB8ICBQREUgIHwgIFBURSAgfCBvZmZzZXQK ICAqIFRoZSBkaWZmZXJlbmNlIGFzIGNvbXBhcmVkIHRvIG5vcm1hbCB4ODYgMyBsZXZlbCBwYWdl IHRhYmxlIGlzIHRoZSBQRFBFcyBhcmUKICAqIHByb2dyYW1tZWQgdmlhIHJlZ2lzdGVyLgorICoK KyAqIEdFTjggNDhiIGxlZ2FjeSBzdHlsZSBhZGRyZXNzIGlzIGRlZmluZWQgYXMgYSA0IGxldmVs IHBhZ2UgdGFibGU6CisgKiA0NzozOSB8IDM4OjMwIHwgMjk6MjEgfCAyMDoxMiB8ICAxMTowCisg KiBQTUw0RSB8IFBEUEUgIHwgIFBERSAgfCAgUFRFICB8IG9mZnNldAogICovCisjZGVmaW5lIEdF TjhfUE1MNEVTX1BFUl9QTUw0CQk1MTIKKyNkZWZpbmUgR0VOOF9QTUw0RV9TSElGVAkJMzkKICNk ZWZpbmUgR0VOOF9QRFBFX1NISUZUCQkJMzAKLSNkZWZpbmUgR0VOOF9QRFBFX01BU0sJCQkweDMK Ky8qIE5COiBHRU44X1BEUEVfTUFTSyBpcyB1bnRydWUgZm9yIDMyYiBwbGF0Zm9ybXMsIGJ1dCBp dCBoYXMgbm8gaW1wYWN0IG9uIDMyYiBwYWdlCisgKiB0YWJsZXMgKi8KKyNkZWZpbmUgR0VOOF9Q RFBFX01BU0sJCQkweDFmZgogI2RlZmluZSBHRU44X1BERV9TSElGVAkJCTIxCiAjZGVmaW5lIEdF TjhfUERFX01BU0sJCQkweDFmZgogI2RlZmluZSBHRU44X1BURV9TSElGVAkJCTEyCkBAIC05OCw4 ICsxMDYsOCBAQCB0eXBlZGVmIHVpbnQ2NF90IGdlbjhfcGRlX3Q7CiAjZGVmaW5lIEdFTjhfTEVH QUNZX1BEUEVTCQk0CiAjZGVmaW5lIEdFTjhfUFRFUwkJCUk5MTVfUFRFUyhzaXplb2YoZ2VuOF9w dGVfdCkpCiAKLS8qIEZJWE1FOiBOZXh0IHBhdGNoIHdpbGwgdXNlIGRldiAqLwotI2RlZmluZSBJ OTE1X1BEUEVTX1BFUl9QRFAoZGV2KQkJR0VOOF9MRUdBQ1lfUERQRVMKKyNkZWZpbmUgSTkxNV9Q RFBFU19QRVJfUERQKGRldikgKFVTRVNfRlVMTF80OEJJVF9QUEdUVChkZXYpID9cCisJCQkJIEdF TjhfUE1MNEVTX1BFUl9QTUw0IDogR0VOOF9MRUdBQ1lfUERQRVMpCiAKICNkZWZpbmUgUFBBVF9V TkNBQ0hFRF9JTkRFWAkJKF9QQUdFX1BXVCB8IF9QQUdFX1BDRCkKICNkZWZpbmUgUFBBVF9DQUNI RURfUERFX0lOREVYCQkwIC8qIFdCIExMQyAqLwpAQCAtMjUwLDYgKzI1OCwxMyBAQCBzdHJ1Y3Qg aTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyIHsKIAlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9y eSAqKnBhZ2VfZGlyZWN0b3J5OwogfTsKIAorc3RydWN0IGk5MTVfcG1sNCB7CisJc3RydWN0IGk5 MTVfcGFnZV9kbWEgYmFzZTsKKworCURFQ0xBUkVfQklUTUFQKHVzZWRfcG1sNGVzLCBHRU44X1BN TDRFU19QRVJfUE1MNCk7CisJc3RydWN0IGk5MTVfcGFnZV9kaXJlY3RvcnlfcG9pbnRlciAqcGRw c1tHRU44X1BNTDRFU19QRVJfUE1MNF07Cit9OworCiBzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNl IHsKIAlzdHJ1Y3QgZHJtX21tIG1tOwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXY7CkBAIC0zNDUs OCArMzYwLDkgQEAgc3RydWN0IGk5MTVfaHdfcHBndHQgewogCXN0cnVjdCBkcm1fbW1fbm9kZSBu b2RlOwogCXVuc2lnbmVkIGxvbmcgcGRfZGlydHlfcmluZ3M7CiAJdW5pb24gewotCQlzdHJ1Y3Qg aTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyIHBkcDsKLQkJc3RydWN0IGk5MTVfcGFnZV9kaXJl Y3RvcnkgcGQ7CisJCXN0cnVjdCBpOTE1X3BtbDQgcG1sNDsJCS8qIEdFTjgrICYgNDhiIFBQR1RU ICovCisJCXN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5X3BvaW50ZXIgcGRwOwkvKiBHRU44KyAq LworCQlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeSBwZDsJCS8qIEdFTjYtNyAqLwogCX07CiAK IAlzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXY7Ci0tIAoyLjUuMAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK