From: Ben Widawsky Subject: Re: [PATCH 08/13] drm/i915: Implement MI decode for gen8 Date: Wed, 7 May 2014 09:59:14 -0700 Message-ID: <20140507165914.GE5147@bwidawsk.net> References: <1398808360-3674-1-git-send-email-benjamin.widawsky@intel.com> <1398808360-3674-9-git-send-email-benjamin.widawsky@intel.com> <20140430112114.GI18465@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.bwidawsk.net (bwidawsk.net [166.78.191.112]) by gabe.freedesktop.org (Postfix) with ESMTP id 6019C6E29F for ; Wed, 7 May 2014 09:59:28 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20140430112114.GI18465@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Ville =?utf-8?B?U3lyasOkbMOk?= Cc: Ben Widawsky , Intel GFX , Ben Widawsky List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBBcHIgMzAsIDIwMTQgYXQgMDI6MjE6MTVQTSArMDMwMCwgVmlsbGUgU3lyasOkbMOk IHdyb3RlOgo+IE9uIFR1ZSwgQXByIDI5LCAyMDE0IGF0IDAyOjUyOjM1UE0gLTA3MDAsIEJlbiBX aWRhd3NreSB3cm90ZToKPiA+IEZyb206IEJlbiBXaWRhd3NreSA8YmVuamFtaW4ud2lkYXdza3lA bGludXguaW50ZWwuY29tPgo+ID4gCj4gPiBUaGlzIGlzIG5lZWRlZCB0byBpbXBsZW1lbnQgaXBl aHJfaXNfc2VtYXBob3JlX3dhaXQKPiA+IAo+ID4gU2lnbmVkLW9mZi1ieTogQmVuIFdpZGF3c2t5 IDxiZW5AYndpZGF3c2submV0Pgo+ID4gLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9pcnEuYyB8IDExICsrKysrLS0tLS0tCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9u cygrKSwgNiBkZWxldGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfaXJxLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCj4gPiBp bmRleCAyZDc2MTgzLi5iZmQyMWM3IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9pcnEuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYwo+ ID4gQEAgLTI1NjEsMTIgKzI1NjEsOSBAQCBzdGF0aWMgYm9vbAo+ID4gIGlwZWhyX2lzX3NlbWFw aG9yZV93YWl0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUzMiBpcGVocikKPiA+ICB7Cj4gPiAg CWlmIChJTlRFTF9JTkZPKGRldiktPmdlbiA+PSA4KSB7Cj4gPiAtCQkvKgo+ID4gLQkJICogRklY TUU6IGdlbjggc2VtYXBob3JlIHN1cHBvcnQgLSBjdXJyZW50bHkgd2UgZG9uJ3QgZW1pdAo+ID4g LQkJICogc2VtYXBob3JlcyBvbiBiZHcgYW55d2F5LCBidXQgdGhpcyBuZWVkcyB0byBiZSBhZGRy ZXNzZWQgd2hlbgo+ID4gLQkJICogd2UgbWVyZ2UgdGhhdCBjb2RlLgo+ID4gLQkJICovCj4gPiAt CQlyZXR1cm4gZmFsc2U7Cj4gPiArCQkvKiBCcm9hZHdlbGwncyBzZW1hcGhvcmUgd2FpdCBpcyAz IGR3b3Jkcy4gV2UgaG9wZSBJUEVIUiBpcyB0aGUKPiA+ICsJCSAqIGZpcnN0IGR3b3JkLiAqLwo+ ID4gKwkJcmV0dXJuIChpcGVociA+PiAyMykgPT0gMHgxYzsKPiA+ICAJfSBlbHNlIHsKPiA+ICAJ CWlwZWhyICY9IH5NSV9TRU1BUEhPUkVfU1lOQ19NQVNLOwo+ID4gIAkJcmV0dXJuIGlwZWhyID09 IChNSV9TRU1BUEhPUkVfTUJPWCB8IE1JX1NFTUFQSE9SRV9DT01QQVJFIHwKPiA+IEBAIC0yNTg2 LDYgKzI1ODMsOCBAQCBzZW1hcGhvcmVfd2FpdF90b19zaWduYWxsZXJfcmluZyhzdHJ1Y3QgaW50 ZWxfcmluZ19idWZmZXIgKnJpbmcsIHUzMiBpcGVocikKPiA+ICAJCSAqIEZJWE1FOiBnZW44IHNl bWFwaG9yZSBzdXBwb3J0IC0gY3VycmVudGx5IHdlIGRvbid0IGVtaXQKPiA+ICAJCSAqIHNlbWFw aG9yZXMgb24gYmR3IGFueXdheSwgYnV0IHRoaXMgbmVlZHMgdG8gYmUgYWRkcmVzc2VkIHdoZW4K PiA+ICAJCSAqIHdlIG1lcmdlIHRoYXQgY29kZS4KPiA+ICsJCSAqCj4gPiArCQkgKiBYWFg6IEdl bjggbmVlZHMgbW9yZSB0aGFuIGp1c3QgSVBFSFIuCj4gPiAgCQkgKi8KPiAKPiBJIGJlbGlldmUg c29tZXRoaW5nIGxpa2UgdGhpcyBzaG91bGQgdGFrZSBjYXJlIG9mIHRoZSByZW1haW5pbmcgZ2Fw Lgo+IAoKVGhhbmtzIGZvciB0aGUgaGVscC4gQXQgdGhpcyBwb2ludCBJIGp1c3Qgd2FudCB0byBn ZXQgdGhlIGRhbW4gdGhpbmcKbWVyZ2VkLCBhbmQgd2FudCB0byBhdm9pZCBhbnkgZXh0cmEgcmlz ay4gV291bGQgeW91IG1pbmQgcmVzZW5kaW5nIHRoaXMKYXMgYSBkaXN0aW5jdCBwYXRjaCAoYXV0 aG9yZWQgYnkgeW91KSwgYWZ0ZXIgd2UgZ2V0IHRoZSByZXN0IG1lcmdlZD8KCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2lycS5jCj4gaW5kZXggMjQ0NmU2MS4uY2QxMDY5ZSAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9pcnEuYwo+IEBAIC0yNTkwLDE5ICsyNTkwLDIxIEBAIGlwZWhyX2lzX3NlbWFwaG9yZV93 YWl0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUzMiBpcGVocikKPiAgfQo+ICAKPiAgc3RhdGlj IHN0cnVjdCBpbnRlbF9yaW5nX2J1ZmZlciAqCj4gLXNlbWFwaG9yZV93YWl0X3RvX3NpZ25hbGxl cl9yaW5nKHN0cnVjdCBpbnRlbF9yaW5nX2J1ZmZlciAqcmluZywgdTMyIGlwZWhyKQo+ICtzZW1h cGhvcmVfd2FpdF90b19zaWduYWxsZXJfcmluZyhzdHJ1Y3QgaW50ZWxfcmluZ19idWZmZXIgKnJp bmcsCj4gKwkJCQkgdTMyIGlwZWhyLCB1NjQgb2Zmc2V0KQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSByaW5nLT5kZXYtPmRldl9wcml2YXRlOwo+ICAJc3RydWN0 IGludGVsX3JpbmdfYnVmZmVyICpzaWduYWxsZXI7Cj4gIAlpbnQgaTsKPiAgCj4gIAlpZiAoSU5U RUxfSU5GTyhkZXZfcHJpdi0+ZGV2KS0+Z2VuID49IDgpIHsKPiAtCQkvKgo+IC0JCSAqIEZJWE1F OiBnZW44IHNlbWFwaG9yZSBzdXBwb3J0IC0gY3VycmVudGx5IHdlIGRvbid0IGVtaXQKPiAtCQkg KiBzZW1hcGhvcmVzIG9uIGJkdyBhbnl3YXksIGJ1dCB0aGlzIG5lZWRzIHRvIGJlIGFkZHJlc3Nl ZCB3aGVuCj4gLQkJICogd2UgbWVyZ2UgdGhhdCBjb2RlLgo+IC0JCSAqLwo+IC0JCXJldHVybiBO VUxMOwo+ICsJCWZvcl9lYWNoX3Jpbmcoc2lnbmFsbGVyLCBkZXZfcHJpdiwgaSkgewo+ICsJCQlp ZiAocmluZyA9PSBzaWduYWxsZXIpCj4gKwkJCQljb250aW51ZTsKPiArCj4gKwkJCWlmIChvZmZz ZXQgPT0gc2lnbmFsbGVyLT5zZW1hcGhvcmUuc2lnbmFsX2d0dFtyaW5nLT5pZF0pCj4gKwkJCQly ZXR1cm4gc2lnbmFsbGVyOwo+ICsJCX0KPiAgCX0gZWxzZSB7Cj4gIAkJdTMyIHN5bmNfYml0cyA9 IGlwZWhyICYgTUlfU0VNQVBIT1JFX1NZTkNfTUFTSzsKPiAgCj4gQEAgLTI2MjcsNiArMjYyOSw3 IEBAIHNlbWFwaG9yZV93YWl0c19mb3Ioc3RydWN0IGludGVsX3JpbmdfYnVmZmVyICpyaW5nLCB1 MzIgKnNlcW5vKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBy aW5nLT5kZXYtPmRldl9wcml2YXRlOwo+ICAJdTMyIGNtZCwgaXBlaHIsIGhlYWQ7Cj4gKwl1NjQg b2Zmc2V0ID0gMDsKPiAgCWludCBpOwo+ICAKPiAgCWlwZWhyID0gSTkxNV9SRUFEKFJJTkdfSVBF SFIocmluZy0+bW1pb19iYXNlKSk7Cj4gQEAgLTI2NjIsNyArMjY2NSwxMiBAQCBzZW1hcGhvcmVf d2FpdHNfZm9yKHN0cnVjdCBpbnRlbF9yaW5nX2J1ZmZlciAqcmluZywgdTMyICpzZXFubykKPiAg CQlyZXR1cm4gTlVMTDsKPiAgCj4gIAkqc2Vxbm8gPSBpb3JlYWQzMihyaW5nLT52aXJ0dWFsX3N0 YXJ0ICsgaGVhZCArIDQpICsgMTsKPiAtCXJldHVybiBzZW1hcGhvcmVfd2FpdF90b19zaWduYWxs ZXJfcmluZyhyaW5nLCBpcGVocik7Cj4gKwlpZiAoSU5URUxfSU5GTyhkZXZfcHJpdi0+ZGV2KS0+ Z2VuID49IDgpIHsKPiArCQlvZmZzZXQgPSBpb3JlYWQzMihyaW5nLT52aXJ0dWFsX3N0YXJ0ICsg aGVhZCArIDEyKTsKPiArCQlvZmZzZXQgPDw9IDMyOwo+ICsJCW9mZnNldCB8PSBpb3JlYWQzMihy aW5nLT52aXJ0dWFsX3N0YXJ0ICsgaGVhZCArIDgpOwo+ICsJfQo+ICsJcmV0dXJuIHNlbWFwaG9y ZV93YWl0X3RvX3NpZ25hbGxlcl9yaW5nKHJpbmcsIGlwZWhyLCBvZmZzZXQpOwo+ICB9Cj4gIAo+ ICBzdGF0aWMgaW50IHNlbWFwaG9yZV9wYXNzZWQoc3RydWN0IGludGVsX3JpbmdfYnVmZmVyICpy aW5nKQo+IC0tIAo+IDEuOC4zLjIKPiAKPiAKPiA+ICAJCXJldHVybiBOVUxMOwo+ID4gIAl9IGVs c2Ugewo+ID4gLS0gCj4gPiAxLjkuMgo+ID4gCj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwo+ID4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ID4gSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4gaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo+IAo+IC0tIAo+IFZpbGxlIFN5cmrDpGzD pAo+IEludGVsIE9UQwo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKPiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4CgotLSAKQmVuIFdpZGF3c2t5LCBJbnRlbCBPcGVuIFNvdXJjZSBUZWNobm9sb2d5 IENlbnRlcgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=