From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Widawsky Subject: [PATCH 21/62] drm/i915/bdw: Support BDW caching Date: Sat, 2 Nov 2013 21:07:19 -0700 Message-ID: <1383451680-11173-22-git-send-email-benjamin.widawsky@intel.com> References: <1383451680-11173-1-git-send-email-benjamin.widawsky@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 82363EDE56 for ; Sat, 2 Nov 2013 21:08:13 -0700 (PDT) In-Reply-To: <1383451680-11173-1-git-send-email-benjamin.widawsky@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: Intel GFX Cc: Daniel Vetter , Ben Widawsky , Ben Widawsky List-Id: intel-gfx@lists.freedesktop.org QkRXIGNhY2hpbmcgd29ya3MgZGlmZmVyZW50bHkgdGhhbiB0aGUgcHJldmlvdXMgZ2VuZXJhdGlv bnMuIEluc3RlYWQgb2YKaGF2aW5nIGJpdHMgaW4gdGhlIFBURSB3aGljaCBkaXJlY3RseSBjb250 cm9sIGhvdyB0aGUgcGFnZSBpcyBjYWNoZWQsCnRoZSAzIFBURSBiaXRzIFBXVCBQQ0QgYW5kIFBB VCBwcm92aWRlIGFuIGluZGV4IGludG8gYSBQQVQgZGVmaW5lZCBieQpyZWdpc3RlciAweDQwZTAu IFRoaXMgc3R5bGUgb2YgY2FjaGluZyBpcyBmdW5jdGlvbmFsbHkgZXF1aXZhbGVudCB0byBob3cK aXQgd29ya3Mgb24gSFNXIGFuZCBiZWZvcmUuCgp2MjogVGlueSBiaWtlc2hlZCBhcyBkaXNjdXNz ZWQgb24gaW50ZXJuYWwgaXJjLgoKdjM6IFNxdWFzaCBpbiBwYXRjaCBmcm9tIFZpbGxlIHRvIG1p cnJvciB0aGUgeDg2IFBBVCBzZXR1cCBtb3JlIGxpa2UKaW4gYXJjaC94ODYvbW0vcGF0LmMuIFBy aW1hcmlseSwgdGhlIDB0aCBpbmRleCB3aWxsIGJlIFdCLCBhbmQgbm90CnVuY2FjaGVkLgoKU2ln bmVkLW9mZi1ieTogQmVuIFdpZGF3c2t5IDxiZW5AYndpZGF3c2submV0PiAodjEpClNpZ25lZC1v ZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+ClNp Z25lZC1vZmYtYnk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgfCA0MiArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oICAg ICB8ICAxICsKIDIgZmlsZXMgY2hhbmdlZCwgNDMgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fZ3R0LmMKaW5kZXggZGY5OTJkYy4uMDJkZTEyZCAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fZ3R0LmMKQEAgLTU4LDEyICs1OCwyMSBAQCB0eXBlZGVmIHVpbnQ2NF90IGdl bjhfZ3R0X3B0ZV90OwogI2RlZmluZSBIU1dfV0JfRUxMQ19MTENfQUdFMAkJSFNXX0NBQ0hFQUJJ TElUWV9DT05UUk9MKDB4YikKICNkZWZpbmUgSFNXX1dUX0VMTENfTExDX0FHRTAJCUhTV19DQUNI RUFCSUxJVFlfQ09OVFJPTCgweDYpCiAKKyNkZWZpbmUgUFBBVF9VTkNBQ0hFRF9JTkRFWAkJKF9Q QUdFX1BXVCB8IF9QQUdFX1BDRCkKKyNkZWZpbmUgUFBBVF9DQUNIRURfUERFX0lOREVYCQkwIC8q IFdCIExMQyAqLworI2RlZmluZSBQUEFUX0NBQ0hFRF9JTkRFWAkJX1BBR0VfUEFUIC8qIFdCIExM Q2VMTEMgKi8KKyNkZWZpbmUgUFBBVF9ESVNQTEFZX0VMTENfSU5ERVgJCV9QQUdFX1BDRCAvKiBX VCBlTExDICovCisKIHN0YXRpYyBpbmxpbmUgZ2VuOF9ndHRfcHRlX3QgZ2VuOF9wdGVfZW5jb2Rl KGRtYV9hZGRyX3QgYWRkciwKIAkJCQkJICAgICBlbnVtIGk5MTVfY2FjaGVfbGV2ZWwgbGV2ZWws CiAJCQkJCSAgICAgYm9vbCB2YWxpZCkKIHsKIAlnZW44X2d0dF9wdGVfdCBwdGUgPSB2YWxpZCA/ IF9QQUdFX1BSRVNFTlQgfCBfUEFHRV9SVyA6IDA7CiAJcHRlIHw9IGFkZHI7CisJaWYgKGxldmVs ICE9IEk5MTVfQ0FDSEVfTk9ORSkKKwkJcHRlIHw9IFBQQVRfQ0FDSEVEX0lOREVYOworCWVsc2UK KwkJcHRlIHw9IFBQQVRfVU5DQUNIRURfSU5ERVg7CiAJcmV0dXJuIHB0ZTsKIH0KIApAQCAtODA1 LDYgKzgxNCw3IEBAIHN0YXRpYyB2b2lkIGk5MTVfZ3R0X2NvbG9yX2FkanVzdChzdHJ1Y3QgZHJt X21tX25vZGUgKm5vZGUsCiAJCQkqZW5kIC09IDQwOTY7CiAJfQogfQorCiB2b2lkIGk5MTVfZ2Vt X3NldHVwX2dsb2JhbF9ndHQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCSAgICAgICB1bnNp Z25lZCBsb25nIHN0YXJ0LAogCQkJICAgICAgIHVuc2lnbmVkIGxvbmcgbWFwcGFibGVfZW5kLApA QCAtMTAwMiw2ICsxMDEyLDM2IEBAIHN0YXRpYyBpbnQgZ2d0dF9wcm9iZV9jb21tb24oc3RydWN0 IGRybV9kZXZpY2UgKmRldiwKIAlyZXR1cm4gcmV0OwogfQogCisvKiBUaGUgR0dUVCBhbmQgUFBH VFQgbmVlZCBhIHByaXZhdGUgUFBBVCBzZXR1cCBpbiBvcmRlciB0byBoYW5kbGUgY2FjaGVhYmls aXR5CisgKiBiaXRzLiBXaGVuIHVzaW5nIGFkdmFuY2VkIGNvbnRleHRzIGVhY2ggY29udGV4dCBz dG9yZXMgaXRzIG93biBQQVQsIGJ1dAorICogd3JpdGluZyB0aGlzIGRhdGEgc2hvdWxkbid0IGJl IGhhcm1mdWwgZXZlbiBpbiB0aG9zZSBjYXNlcy4gKi8KK3N0YXRpYyB2b2lkIGdlbjhfc2V0dXBf cHJpdmF0ZV9wcGF0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKK3sKKyNkZWZp bmUgR0VOOF9QUEFUX1VDCQkoMDw8MCkKKyNkZWZpbmUgR0VOOF9QUEFUX1dDCQkoMTw8MCkKKyNk ZWZpbmUgR0VOOF9QUEFUX1dUCQkoMjw8MCkKKyNkZWZpbmUgR0VOOF9QUEFUX1dCCQkoMzw8MCkK KyNkZWZpbmUgR0VOOF9QUEFUX0VMTENfT1ZFUlJJREUJKDA8PDIpCisjZGVmaW5lIEdFTjhfUFBB VF9MTEMJCSgxPDwyKQorI2RlZmluZSBHRU44X1BQQVRfTExDRUxMQwkoMjw8MikKKyNkZWZpbmUg R0VOOF9QUEFUX0xMQ2VMTEMJKDM8PDIpIC8qIEJTUEVDIG1pc3Rha2U/ICovCisjZGVmaW5lIEdF TjhfUFBBVF9BR0UoeCkJKHg8PDQpCisjZGVmaW5lIEdFTjhfUFBBVChpLCB4KSAoKHVpbnQ2NF90 KSAoeCkgPDwgKChpKSAqIDgpKQorCXVpbnQ2NF90IHBhdDsKKworCXBhdCA9IEdFTjhfUFBBVCgw LCBHRU44X1BQQVRfV0IgfCBHRU44X1BQQVRfTExDKSAgICAgfCAvKiBmb3Igbm9ybWFsIG9iamVj dHMsIG5vIGVMTEMgKi8KKwkgICAgICBHRU44X1BQQVQoMSwgR0VOOF9QUEFUX1dDIHwgR0VOOF9Q UEFUX0xMQ0VMTEMpIHwgLyogZm9yIHNvbWV0aGluZyBwb2ludGluZyB0byBwdGVzPyAqLworCSAg ICAgIEdFTjhfUFBBVCgyLCBHRU44X1BQQVRfV1QgfCBHRU44X1BQQVRfTExDRUxMQykgfCAvKiBm b3Igc2Nhbm91dCB3aXRoIGVMTEMgKi8KKwkgICAgICBHRU44X1BQQVQoMywgR0VOOF9QUEFUX1VD KSAgICAgICAgICAgICAgICAgICAgIHwgLyogVW5jYWNoZWQgb2JqZWN0cywgbW9zdGx5IGZvciBz Y2Fub3V0ICovCisJICAgICAgR0VOOF9QUEFUKDQsIEdFTjhfUFBBVF9XQiB8IEdFTjhfUFBBVF9M TENFTExDIHwgR0VOOF9QUEFUX0FHRSgwKSkgfAorCSAgICAgIEdFTjhfUFBBVCg1LCBHRU44X1BQ QVRfV0IgfCBHRU44X1BQQVRfTExDRUxMQyB8IEdFTjhfUFBBVF9BR0UoMSkpIHwKKwkgICAgICBH RU44X1BQQVQoNiwgR0VOOF9QUEFUX1dCIHwgR0VOOF9QUEFUX0xMQ0VMTEMgfCBHRU44X1BQQVRf QUdFKDIpKSB8CisJICAgICAgR0VOOF9QUEFUKDcsIEdFTjhfUFBBVF9XQiB8IEdFTjhfUFBBVF9M TENFTExDIHwgR0VOOF9QUEFUX0FHRSgzKSk7CisKKwlJOTE1X1dSSVRFKEdFTjhfUFJJVkFURV9Q QVQsIHBhdCk7CisJSTkxNV9XUklURShHRU44X1BSSVZBVEVfUEFUICsgNCwgcGF0ID4+IDMyKTsK K30KKwogc3RhdGljIGludCBnZW44X2dtY2hfcHJvYmUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwK IAkJCSAgIHNpemVfdCAqZ3R0X3RvdGFsLAogCQkJICAgc2l6ZV90ICpzdG9sZW4sCkBAIC0xMDI3 LDYgKzEwNjcsOCBAQCBzdGF0aWMgaW50IGdlbjhfZ21jaF9wcm9iZShzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAogCWd0dF9zaXplID0gZ2VuOF9nZXRfdG90YWxfZ3R0X3NpemUoc25iX2dtY2hfY3Rs KTsKIAkqZ3R0X3RvdGFsID0gKGd0dF9zaXplIC8gc2l6ZW9mKGdlbjhfZ3R0X3B0ZV90KSkgPDwg UEFHRV9TSElGVDsKIAorCWdlbjhfc2V0dXBfcHJpdmF0ZV9wcGF0KGRldl9wcml2KTsKKwogCXJl dCA9IGdndHRfcHJvYmVfY29tbW9uKGRldiwgZ3R0X3NpemUpOwogCiAJZGV2X3ByaXYtPmd0dC5i YXNlLmNsZWFyX3JhbmdlID0gZ2VuOF9nZ3R0X2NsZWFyX3JhbmdlOwpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf cmVnLmgKaW5kZXggYjgwMWI4OC4uOTkyOTc1MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9yZWcuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCkBA IC02NjQsNiArNjY0LDcgQEAKICNkZWZpbmUgICBSSU5HX0ZBVUxUX0ZBVUxUX1RZUEUoeCkgKCh4 ID4+IDEpICYgMHgzKQogI2RlZmluZSAgIFJJTkdfRkFVTFRfVkFMSUQJKDE8PDApCiAjZGVmaW5l IERPTkVfUkVHCQkweDQwYjAKKyNkZWZpbmUgR0VOOF9QUklWQVRFX1BBVAkweDQwZTAKICNkZWZp bmUgQlNEX0hXU19QR0FfR0VONwkoMHgwNDE4MCkKICNkZWZpbmUgQkxUX0hXU19QR0FfR0VONwko MHgwNDI4MCkKICNkZWZpbmUgVkVCT1hfSFdTX1BHQV9HRU43CSgweDA0MzgwKQotLSAKMS44LjQu MgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK