From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: [PATCH v4 03/18] drm/i915/gen8: Add PML4 structure Date: Tue, 7 Jul 2015 16:14:48 +0100 Message-ID: <1436282103-5854-4-git-send-email-michel.thierry@intel.com> References: <1436282103-5854-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 mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 51AD66EA3C for ; Tue, 7 Jul 2015 08:15:08 -0700 (PDT) In-Reply-To: <1436282103-5854-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 IGk5MTUuZW5hYmxlX3BwZ3R0ID0gMy4KCkNjOiBBa2FzaCBHb2VsIDxha2FzaC5nb2VsQGludGVs LmNvbT4KU2lnbmVkLW9mZi1ieTogTWljaGVsIFRoaWVycnkgPG1pY2hlbC50aGllcnJ5QGludGVs LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICB8ICA3ICsrKysr Ky0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIHwgNDAgKysrKysrKysrKysr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f Z3R0LmggfCAzNSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLQogMyBmaWxlcyBjaGFu Z2VkLCA1OSBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaAppbmRleCA0NjRiMjhkLi5kZTNhNWQxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAg LTI0OTcsNyArMjQ5NywxMiBAQCBzdHJ1Y3QgZHJtX2k5MTVfY21kX3RhYmxlIHsKICNkZWZpbmUg SEFTX0hXX0NPTlRFWFRTKGRldikJKElOVEVMX0lORk8oZGV2KS0+Z2VuID49IDYpCiAjZGVmaW5l IEhBU19MT0dJQ0FMX1JJTkdfQ09OVEVYVFMoZGV2KQkoSU5URUxfSU5GTyhkZXYpLT5nZW4gPj0g OCkKICNkZWZpbmUgVVNFU19QUEdUVChkZXYpCQkoaTkxNS5lbmFibGVfcHBndHQpCi0jZGVmaW5l IFVTRVNfRlVMTF9QUEdUVChkZXYpCShpOTE1LmVuYWJsZV9wcGd0dCA9PSAyKQorI2RlZmluZSBV U0VTX0ZVTExfUFBHVFQoZGV2KQkoaTkxNS5lbmFibGVfcHBndHQgPj0gMikKKyNpZmRlZiBDT05G SUdfWDg2XzY0CisjIGRlZmluZSBVU0VTX0ZVTExfNDhCSVRfUFBHVFQoZGV2KQkoaTkxNS5lbmFi bGVfcHBndHQgPT0gMykKKyNlbHNlCisjIGRlZmluZSBVU0VTX0ZVTExfNDhCSVRfUFBHVFQoZGV2 KQlmYWxzZQorI2VuZGlmCiAKICNkZWZpbmUgSEFTX09WRVJMQVkoZGV2KQkJKElOVEVMX0lORk8o ZGV2KS0+aGFzX292ZXJsYXkpCiAjZGVmaW5lIE9WRVJMQVlfTkVFRFNfUEhZU0lDQUwoZGV2KQko SU5URUxfSU5GTyhkZXYpLT5vdmVybGF5X25lZWRzX3BoeXNpY2FsKQpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9ndHQuYwppbmRleCA0ZTE1MDFhLi5mYTY2ZGZhIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9ndHQuYwpAQCAtMTA0LDkgKzEwNCwxMyBAQCBzdGF0aWMgaW50IHNhbml0aXplX2Vu YWJsZV9wcGd0dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgZW5hYmxlX3BwZ3R0KQogewog CWJvb2wgaGFzX2FsaWFzaW5nX3BwZ3R0OwogCWJvb2wgaGFzX2Z1bGxfcHBndHQ7CisJYm9vbCBo YXNfZnVsbF82NGJpdF9wcGd0dDsKIAogCWhhc19hbGlhc2luZ19wcGd0dCA9IElOVEVMX0lORk8o ZGV2KS0+Z2VuID49IDY7CiAJaGFzX2Z1bGxfcHBndHQgPSBJTlRFTF9JTkZPKGRldiktPmdlbiA+ PSA3OworCWhhc19mdWxsXzY0Yml0X3BwZ3R0ID0gSVNfRU5BQkxFRChDT05GSUdfWDg2XzY0KSAm JgorCQkJICAgICAgIChJU19CUk9BRFdFTEwoZGV2KSB8fAorCQkJCUlOVEVMX0lORk8oZGV2KS0+ Z2VuID49IDkpICYmIGZhbHNlOyAvKiBGSVhNRTogNjRiICovCiAKIAlpZiAoaW50ZWxfdmdwdV9h Y3RpdmUoZGV2KSkKIAkJaGFzX2Z1bGxfcHBndHQgPSBmYWxzZTsgLyogZW11bGF0aW9uIGlzIHRv byBoYXJkICovCkBAIC0xMjUsNiArMTI5LDkgQEAgc3RhdGljIGludCBzYW5pdGl6ZV9lbmFibGVf cHBndHQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50IGVuYWJsZV9wcGd0dCkKIAlpZiAoZW5h YmxlX3BwZ3R0ID09IDIgJiYgaGFzX2Z1bGxfcHBndHQpCiAJCXJldHVybiAyOwogCisJaWYgKGVu YWJsZV9wcGd0dCA9PSAzICYmIGhhc19mdWxsXzY0Yml0X3BwZ3R0KQorCQlyZXR1cm4gMzsKKwog I2lmZGVmIENPTkZJR19JTlRFTF9JT01NVQogCS8qIERpc2FibGUgcHBndHQgb24gU05CIGlmIFZU LWQgaXMgb24uICovCiAJaWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuID09IDYgJiYgaW50ZWxfaW9t bXVfZ2Z4X21hcHBlZCkgewpAQCAtNTU3LDYgKzU2NCw4IEBAIHN0YXRpYyB2b2lkIGZyZWVfcGRw KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCSAgICAgc3RydWN0IGk5MTVfcGFnZV9kaXJlY3Rv cnlfcG9pbnRlciAqcGRwKQogewogCV9fcGRwX2ZpbmkocGRwKTsKKwlpZiAoVVNFU19GVUxMXzQ4 QklUX1BQR1RUKGRldikpCisJCWtmcmVlKHBkcCk7CiB9CiAKIC8qIEJyb2Fkd2VsbCBQYWdlIERp cmVjdG9yeSBQb2ludGVyIERlc2NyaXB0b3JzICovCkBAIC02NzEsOSArNjgwLDYgQEAgc3RhdGlj IHZvaWQgZ2VuOF9wcGd0dF9pbnNlcnRfZW50cmllcyhzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNl ICp2bSwKIAlwdF92YWRkciA9IE5VTEw7CiAKIAlmb3JfZWFjaF9zZ19wYWdlKHBhZ2VzLT5zZ2ws ICZzZ19pdGVyLCBwYWdlcy0+bmVudHMsIDApIHsKLQkJaWYgKFdBUk5fT04ocGRwZSA+PSBHRU44 X0xFR0FDWV9QRFBFUykpCi0JCQlicmVhazsKLQogCQlpZiAocHRfdmFkZHIgPT0gTlVMTCkgewog CQkJc3RydWN0IGk5MTVfcGFnZV9kaXJlY3RvcnkgKnBkID0gcHBndHQtPnBkcC5wYWdlX2RpcmVj dG9yeVtwZHBlXTsKIAkJCXN0cnVjdCBpOTE1X3BhZ2VfdGFibGUgKnB0ID0gcGQtPnBhZ2VfdGFi bGVbcGRlXTsKQEAgLTEwNjYsMTQgKzEwNzIsNiBAQCBzdGF0aWMgaW50IGdlbjhfcHBndHRfaW5p dChzdHJ1Y3QgaTkxNV9od19wcGd0dCAqcHBndHQpCiAJCXJldHVybiByZXQ7CiAKIAlwcGd0dC0+ YmFzZS5zdGFydCA9IDA7Ci0JcHBndHQtPmJhc2UudG90YWwgPSAxVUxMIDw8IDMyOwotCWlmIChJ U19FTkFCTEVEKENPTkZJR19YODZfMzIpKQotCQkvKiBXaGlsZSB3ZSBoYXZlIGEgcHJvbGlmZXJh dGlvbiBvZiBzaXplX3QgdmFyaWFibGVzCi0JCSAqIHdlIGNhbm5vdCByZXByZXNlbnQgdGhlIGZ1 bGwgcHBndHQgc2l6ZSBvbiAzMmJpdCwKLQkJICogc28gbGltaXQgaXQgdG8gdGhlIHNhbWUgc2l6 ZSBhcyB0aGUgR0dUVCAoY3VycmVudGx5Ci0JCSAqIDJHaUIpLgotCQkgKi8KLQkJcHBndHQtPmJh c2UudG90YWwgPSB0b19pOTE1KHBwZ3R0LT5iYXNlLmRldiktPmd0dC5iYXNlLnRvdGFsOwogCXBw Z3R0LT5iYXNlLmNsZWFudXAgPSBnZW44X3BwZ3R0X2NsZWFudXA7CiAJcHBndHQtPmJhc2UuYWxs b2NhdGVfdmFfcmFuZ2UgPSBnZW44X2FsbG9jX3ZhX3JhbmdlOwogCXBwZ3R0LT5iYXNlLmluc2Vy dF9lbnRyaWVzID0gZ2VuOF9wcGd0dF9pbnNlcnRfZW50cmllczsKQEAgLTEwODMsMTAgKzEwODEs MjQgQEAgc3RhdGljIGludCBnZW44X3BwZ3R0X2luaXQoc3RydWN0IGk5MTVfaHdfcHBndHQgKnBw Z3R0KQogCiAJcHBndHQtPnN3aXRjaF9tbSA9IGdlbjhfbW1fc3dpdGNoOwogCi0JcmV0ID0gX19w ZHBfaW5pdChmYWxzZSwgJnBwZ3R0LT5wZHApOworCWlmICghVVNFU19GVUxMXzQ4QklUX1BQR1RU KHBwZ3R0LT5iYXNlLmRldikpIHsKKwkJcmV0ID0gX19wZHBfaW5pdChmYWxzZSwgJnBwZ3R0LT5w ZHApOwogCi0JaWYgKHJldCkKLQkJZ290byBmcmVlX3NjcmF0Y2g7CisJCWlmIChyZXQpCisJCQln b3RvIGZyZWVfc2NyYXRjaDsKKworCQlwcGd0dC0+YmFzZS50b3RhbCA9IDFVTEwgPDwgMzI7CisJ CWlmIChJU19FTkFCTEVEKENPTkZJR19YODZfMzIpKQorCQkJLyogV2hpbGUgd2UgaGF2ZSBhIHBy b2xpZmVyYXRpb24gb2Ygc2l6ZV90IHZhcmlhYmxlcworCQkJICogd2UgY2Fubm90IHJlcHJlc2Vu dCB0aGUgZnVsbCBwcGd0dCBzaXplIG9uIDMyYml0LAorCQkJICogc28gbGltaXQgaXQgdG8gdGhl IHNhbWUgc2l6ZSBhcyB0aGUgR0dUVCAoY3VycmVudGx5CisJCQkgKiAyR2lCKS4KKwkJCSAqLwor CQkJcHBndHQtPmJhc2UudG90YWwgPSB0b19pOTE1KHBwZ3R0LT5iYXNlLmRldiktPmd0dC5iYXNl LnRvdGFsOworCX0gZWxzZSB7CisJCXBwZ3R0LT5iYXNlLnRvdGFsID0gMVVMTCA8PCA0ODsKKwkJ cmV0dXJuIC1FUEVSTTsgLyogTm90IHlldCBpbXBsZW1lbnRlZCAqLworCX0KIAogCXJldHVybiAw OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaCBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCmluZGV4IGY1OTI4ZGIuLjZmYTgyNGUg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCkBAIC04OCw5ICs4OCwxNyBAQCB0eXBl ZGVmIHVpbnQ2NF90IGdlbjhfcGRlX3Q7CiAgKiBQRFBFICB8ICBQREUgIHwgIFBURSAgfCBvZmZz ZXQKICAqIFRoZSBkaWZmZXJlbmNlIGFzIGNvbXBhcmVkIHRvIG5vcm1hbCB4ODYgMyBsZXZlbCBw YWdlIHRhYmxlIGlzIHRoZSBQRFBFcyBhcmUKICAqIHByb2dyYW1tZWQgdmlhIHJlZ2lzdGVyLgor ICoKKyAqIEdFTjggNDhiIGxlZ2FjeSBzdHlsZSBhZGRyZXNzIGlzIGRlZmluZWQgYXMgYSA0IGxl dmVsIHBhZ2UgdGFibGU6CisgKiA0NzozOSB8IDM4OjMwIHwgMjk6MjEgfCAyMDoxMiB8ICAxMTow CisgKiBQTUw0RSB8IFBEUEUgIHwgIFBERSAgfCAgUFRFICB8IG9mZnNldAogICovCisjZGVmaW5l IEdFTjhfUE1MNEVTX1BFUl9QTUw0CQk1MTIKKyNkZWZpbmUgR0VOOF9QTUw0RV9TSElGVAkJMzkK ICNkZWZpbmUgR0VOOF9QRFBFX1NISUZUCQkJMzAKLSNkZWZpbmUgR0VOOF9QRFBFX01BU0sJCQkw eDMKKy8qIE5COiBHRU44X1BEUEVfTUFTSyBpcyB1bnRydWUgZm9yIDMyYiBwbGF0Zm9ybXMsIGJ1 dCBpdCBoYXMgbm8gaW1wYWN0IG9uIDMyYiBwYWdlCisgKiB0YWJsZXMgKi8KKyNkZWZpbmUgR0VO OF9QRFBFX01BU0sJCQkweDFmZgogI2RlZmluZSBHRU44X1BERV9TSElGVAkJCTIxCiAjZGVmaW5l IEdFTjhfUERFX01BU0sJCQkweDFmZgogI2RlZmluZSBHRU44X1BURV9TSElGVAkJCTEyCkBAIC05 OCw4ICsxMDYsOCBAQCB0eXBlZGVmIHVpbnQ2NF90IGdlbjhfcGRlX3Q7CiAjZGVmaW5lIEdFTjhf TEVHQUNZX1BEUEVTCQk0CiAjZGVmaW5lIEdFTjhfUFRFUwkJCUk5MTVfUFRFUyhzaXplb2YoZ2Vu OF9wdGVfdCkpCiAKLS8qIEZJWE1FOiBOZXh0IHBhdGNoIHdpbGwgdXNlIGRldiAqLwotI2RlZmlu ZSBJOTE1X1BEUEVTX1BFUl9QRFAoZGV2KQkJR0VOOF9MRUdBQ1lfUERQRVMKKyNkZWZpbmUgSTkx NV9QRFBFU19QRVJfUERQKGRldikgKFVTRVNfRlVMTF80OEJJVF9QUEdUVChkZXYpID9cCisJCQkJ IEdFTjhfUE1MNEVTX1BFUl9QTUw0IDogR0VOOF9MRUdBQ1lfUERQRVMpCiAKICNkZWZpbmUgUFBB VF9VTkNBQ0hFRF9JTkRFWAkJKF9QQUdFX1BXVCB8IF9QQUdFX1BDRCkKICNkZWZpbmUgUFBBVF9D QUNIRURfUERFX0lOREVYCQkwIC8qIFdCIExMQyAqLwpAQCAtMjUwLDYgKzI1OCwxMyBAQCBzdHJ1 Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyIHsKIAlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVj dG9yeSAqKnBhZ2VfZGlyZWN0b3J5OwogfTsKIAorc3RydWN0IGk5MTVfcG1sNCB7CisJc3RydWN0 IGk5MTVfcGFnZV9kbWEgYmFzZTsKKworCURFQ0xBUkVfQklUTUFQKHVzZWRfcG1sNGVzLCBHRU44 X1BNTDRFU19QRVJfUE1MNCk7CisJc3RydWN0IGk5MTVfcGFnZV9kaXJlY3RvcnlfcG9pbnRlciAq cGRwc1tHRU44X1BNTDRFU19QRVJfUE1MNF07Cit9OworCiBzdHJ1Y3QgaTkxNV9hZGRyZXNzX3Nw YWNlIHsKIAlzdHJ1Y3QgZHJtX21tIG1tOwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXY7CkBAIC0z NDUsOCArMzYwLDkgQEAgc3RydWN0IGk5MTVfaHdfcHBndHQgewogCXN0cnVjdCBkcm1fbW1fbm9k ZSBub2RlOwogCXVuc2lnbmVkIGxvbmcgcGRfZGlydHlfcmluZ3M7CiAJdW5pb24gewotCQlzdHJ1 Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyIHBkcDsKLQkJc3RydWN0IGk5MTVfcGFnZV9k aXJlY3RvcnkgcGQ7CisJCXN0cnVjdCBpOTE1X3BtbDQgcG1sNDsJCS8qIEdFTjgrICYgNDhiIFBQ R1RUICovCisJCXN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5X3BvaW50ZXIgcGRwOwkvKiBHRU44 KyAqLworCQlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeSBwZDsJCS8qIEdFTjYtNyAqLwogCX07 CiAKIAlzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXY7CkBAIC00NDAsMTQg KzQ1NiwxNyBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IGdlbjZfcGRlX2luZGV4KHVpbnQzMl90 IGFkZHIpCiAJICAgICB0ZW1wID0gbWluKHRlbXAsIGxlbmd0aCksCQkJCQlcCiAJICAgICBzdGFy dCArPSB0ZW1wLCBsZW5ndGggLT0gdGVtcCkKIAotI2RlZmluZSBnZW44X2Zvcl9lYWNoX3BkcGUo cGQsIHBkcCwgc3RhcnQsIGxlbmd0aCwgdGVtcCwgaXRlcikJCVwKLQlmb3IgKGl0ZXIgPSBnZW44 X3BkcGVfaW5kZXgoc3RhcnQpOwlcCi0JICAgICBwZCA9IChwZHApLT5wYWdlX2RpcmVjdG9yeVtp dGVyXSwgbGVuZ3RoID4gMCAmJiBpdGVyIDwgR0VOOF9MRUdBQ1lfUERQRVM7CVwKKyNkZWZpbmUg Z2VuOF9mb3JfZWFjaF9wZHBlX2UocGQsIHBkcCwgc3RhcnQsIGxlbmd0aCwgdGVtcCwgaXRlciwg YikJXAorCWZvciAoaXRlciA9IGdlbjhfcGRwZV9pbmRleChzdGFydCk7IFwKKwkgICAgIHBkID0g KHBkcCktPnBhZ2VfZGlyZWN0b3J5W2l0ZXJdLCBsZW5ndGggPiAwICYmIChpdGVyIDwgYik7CVwK IAkgICAgIGl0ZXIrKywJCQkJXAogCSAgICAgdGVtcCA9IEFMSUdOKHN0YXJ0KzEsIDEgPDwgR0VO OF9QRFBFX1NISUZUKSAtIHN0YXJ0LAlcCiAJICAgICB0ZW1wID0gbWluKHRlbXAsIGxlbmd0aCks CQkJCQlcCiAJICAgICBzdGFydCArPSB0ZW1wLCBsZW5ndGggLT0gdGVtcCkKIAorI2RlZmluZSBn ZW44X2Zvcl9lYWNoX3BkcGUocGQsIHBkcCwgc3RhcnQsIGxlbmd0aCwgdGVtcCwgaXRlcikJCVwK KwlnZW44X2Zvcl9lYWNoX3BkcGVfZShwZCwgcGRwLCBzdGFydCwgbGVuZ3RoLCB0ZW1wLCBpdGVy LCBJOTE1X1BEUEVTX1BFUl9QRFAoZGV2KSkKKwogc3RhdGljIGlubGluZSB1aW50MzJfdCBnZW44 X3B0ZV9pbmRleCh1aW50NjRfdCBhZGRyZXNzKQogewogCXJldHVybiBpOTE1X3B0ZV9pbmRleChh ZGRyZXNzLCBHRU44X1BERV9TSElGVCk7Ci0tIAoyLjQuNQoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngK