From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [PATCH 32/42] drm/i915: Calculate haswell plane workaround. Date: Tue, 12 May 2015 16:05:24 +0200 Message-ID: <555208A4.1060808@linux.intel.com> References: <1431354318-11995-1-git-send-email-maarten.lankhorst@linux.intel.com> <1431354318-11995-33-git-send-email-maarten.lankhorst@linux.intel.com> <20150512094348.GN15256@phenom.ffwll.local> 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 62EF86E606 for ; Tue, 12 May 2015 07:07:38 -0700 (PDT) In-Reply-To: <20150512094348.GN15256@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Ander Conselvan de Oliveira , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T3AgMTItMDUtMTUgb20gMTE6NDMgc2NocmVlZiBEYW5pZWwgVmV0dGVyOgo+IE9uIE1vbiwgTWF5 IDExLCAyMDE1IGF0IDA0OjI1OjA4UE0gKzAyMDAsIE1hYXJ0ZW4gTGFua2hvcnN0IHdyb3RlOgo+ PiBTaWduZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGlu dXguaW50ZWwuY29tPgo+PiAtLS0KPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYyB8IDEwOSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQo+PiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgICAyICsKPj4gIDIgZmlsZXMgY2hhbmdl ZCwgODEgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCj4+Cj4+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMKPj4gaW5kZXggN2JjNzhiNDlmOWY0Li43YTc5NjU5ZGNhMDAgMTAw NjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+PiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPj4gQEAgLTQ4NDgsMzUgKzQ4 NDgsNiBAQCBzdGF0aWMgYm9vbCBoc3dfY3J0Y19zdXBwb3J0c19pcHMoc3RydWN0IGludGVsX2Ny dGMgKmNydGMpCj4+ICAJcmV0dXJuIEhBU19JUFMoY3J0Yy0+YmFzZS5kZXYpICYmIGNydGMtPnBp cGUgPT0gUElQRV9BOwo+PiAgfQo+PiAgCj4+IC0vKgo+PiAtICogVGhpcyBpbXBsZW1lbnRzIHRo ZSB3b3JrYXJvdW5kIGRlc2NyaWJlZCBpbiB0aGUgIm5vdGVzIiBzZWN0aW9uIG9mIHRoZSBtb2Rl Cj4+IC0gKiBzZXQgc2VxdWVuY2UgZG9jdW1lbnRhdGlvbi4gV2hlbiBnb2luZyBmcm9tIG5vIHBp cGVzIG9yIHNpbmdsZSBwaXBlIHRvCj4+IC0gKiBtdWx0aXBsZSBwaXBlcywgYW5kIHBsYW5lcyBh cmUgZW5hYmxlZCBhZnRlciB0aGUgcGlwZSwgd2UgbmVlZCB0byB3YWl0IGF0Cj4+IC0gKiBsZWFz dCAyIHZibGFua3Mgb24gdGhlIGZpcnN0IHBpcGUgYmVmb3JlIGVuYWJsaW5nIHBsYW5lcyBvbiB0 aGUgc2Vjb25kIHBpcGUuCj4+IC0gKi8KPj4gLXN0YXRpYyB2b2lkIGhhc3dlbGxfbW9kZV9zZXRf cGxhbmVzX3dvcmthcm91bmQoc3RydWN0IGludGVsX2NydGMgKmNydGMpCj4+IC17Cj4+IC0Jc3Ry dWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmJhc2UuZGV2Owo+PiAtCXN0cnVjdCBpbnRlbF9j cnRjICpjcnRjX2l0LCAqb3RoZXJfYWN0aXZlX2NydGMgPSBOVUxMOwo+PiAtCj4+IC0JLyogV2Ug d2FudCB0byBnZXQgdGhlIG90aGVyX2FjdGl2ZV9jcnRjIG9ubHkgaWYgdGhlcmUncyBvbmx5IDEg b3RoZXIKPj4gLQkgKiBhY3RpdmUgY3J0Yy4gKi8KPj4gLQlmb3JfZWFjaF9pbnRlbF9jcnRjKGRl diwgY3J0Y19pdCkgewo+PiAtCQlpZiAoIWNydGNfaXQtPmFjdGl2ZSB8fCBjcnRjX2l0ID09IGNy dGMpCj4+IC0JCQljb250aW51ZTsKPj4gLQo+PiAtCQlpZiAob3RoZXJfYWN0aXZlX2NydGMpCj4+ IC0JCQlyZXR1cm47Cj4+IC0KPj4gLQkJb3RoZXJfYWN0aXZlX2NydGMgPSBjcnRjX2l0Owo+PiAt CX0KPj4gLQlpZiAoIW90aGVyX2FjdGl2ZV9jcnRjKQo+PiAtCQlyZXR1cm47Cj4+IC0KPj4gLQlp bnRlbF93YWl0X2Zvcl92YmxhbmsoZGV2LCBvdGhlcl9hY3RpdmVfY3J0Yy0+cGlwZSk7Cj4+IC0J aW50ZWxfd2FpdF9mb3JfdmJsYW5rKGRldiwgb3RoZXJfYWN0aXZlX2NydGMtPnBpcGUpOwo+PiAt fQo+PiAtCj4+ICBzdGF0aWMgdm9pZCBoYXN3ZWxsX2NydGNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YykKPj4gIHsKPj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2Owo+ PiBAQCAtNDk2Nyw3ICs0OTM4LDEwIEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfY3J0Y19lbmFibGUo c3RydWN0IGRybV9jcnRjICpjcnRjKQo+PiAgCj4+ICAJLyogSWYgd2UgY2hhbmdlIHRoZSByZWxh dGl2ZSBvcmRlciBiZXR3ZWVuIHBpcGUvcGxhbmVzIGVuYWJsaW5nLCB3ZSBuZWVkCj4+ICAJICog dG8gY2hhbmdlIHRoZSB3b3JrYXJvdW5kLiAqLwo+PiAtCWhhc3dlbGxfbW9kZV9zZXRfcGxhbmVz X3dvcmthcm91bmQoaW50ZWxfY3J0Yyk7Cj4+ICsJaWYgKHBpcGVfY29uZmlnLT5oc3dfd29ya2Fy b3VuZF9waXBlICE9IElOVkFMSURfUElQRSkgewo+PiArCQlpbnRlbF93YWl0X2Zvcl92Ymxhbmso ZGV2LCBwaXBlX2NvbmZpZy0+aHN3X3dvcmthcm91bmRfcGlwZSk7Cj4+ICsJCWludGVsX3dhaXRf Zm9yX3ZibGFuayhkZXYsIHBpcGVfY29uZmlnLT5oc3dfd29ya2Fyb3VuZF9waXBlKTsKPj4gKwl9 Cj4+ICB9Cj4+ICAKPj4gIHN0YXRpYyB2b2lkIGlyb25sYWtlX3BmaXRfZGlzYWJsZShzdHJ1Y3Qg aW50ZWxfY3J0YyAqY3J0YykKPj4gQEAgLTEyMTQ3LDYgKzEyMTIxLDc0IEBAIGRvbmU6Cj4+ICAJ cmV0dXJuIHJldDsKPj4gIH0KPj4gIAo+PiArLyoKPj4gKyAqIFRoaXMgaW1wbGVtZW50cyB0aGUg d29ya2Fyb3VuZCBkZXNjcmliZWQgaW4gdGhlICJub3RlcyIgc2VjdGlvbiBvZiB0aGUgbW9kZQo+ PiArICogc2V0IHNlcXVlbmNlIGRvY3VtZW50YXRpb24uIFdoZW4gZ29pbmcgZnJvbSBubyBwaXBl cyBvciBzaW5nbGUgcGlwZSB0bwo+PiArICogbXVsdGlwbGUgcGlwZXMsIGFuZCBwbGFuZXMgYXJl IGVuYWJsZWQgYWZ0ZXIgdGhlIHBpcGUsIHdlIG5lZWQgdG8gd2FpdCBhdAo+PiArICogbGVhc3Qg MiB2YmxhbmtzIG9uIHRoZSBmaXJzdCBwaXBlIGJlZm9yZSBlbmFibGluZyBwbGFuZXMgb24gdGhl IHNlY29uZCBwaXBlLgo+PiArICovCj4+ICtzdGF0aWMgaW50IGhhc3dlbGxfbW9kZV9zZXRfcGxh bmVzX3dvcmthcm91bmQoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+PiArewo+PiAr CXN0cnVjdCBkcm1fY3J0YyAqY3J0YzsKPj4gKwlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNf c3RhdGU7Cj4+ICsJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmZpcnN0X2NydGNfc3RhdGUgPSBO VUxMLCAqb3RoZXJfY3J0Y19zdGF0ZSA9IE5VTEw7Cj4+ICsJc3RydWN0IGludGVsX2NydGMgKmlu dGVsX2NydGMsICpmaXJzdF9jcnRjID0gTlVMTCwgKmVuYWJsZWRfY3J0YzsKPj4gKwlpbnQgZW5h YmxlZF9jcnRjcyA9IDAsIHJldCwgaTsKPj4gKwo+PiArCWZvcl9lYWNoX2NydGNfaW5fc3RhdGUo c3RhdGUsIGNydGMsIGNydGNfc3RhdGUsIGkpIHsKPj4gKwkJc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKnBpcGVfY29uZmlnID0KPj4gKwkJCXRvX2ludGVsX2NydGNfc3RhdGUoY3J0Y19zdGF0ZSk7 Cj4+ICsKPj4gKwkJcGlwZV9jb25maWctPmhzd193b3JrYXJvdW5kX3BpcGUgPSBJTlZBTElEX1BJ UEU7Cj4gVGhpcyBraW5kIG9mIHN0YXRlIHJlc2V0dGluZyBzaG91bGQgYmUgZG9uZSBpbiBkdXBs aWNhdGVfc3RhdGUuClRoZSB2MiBvZiB0aGlzIHBhdGNoIHVzZXMgaW50ZWxfY3J0Yy0+YXRvbWlj Lmhzd193b3JrYXJvdW5kIHBpcGUsIHdoaWNoIHdvdWxkIHdvcmsgYmV0dGVyLiA6KQo+PiArCj4+ ICsJCWlmICghY3J0Y19zdGF0ZS0+YWN0aXZlKQo+PiArCQkJY29udGludWU7Cj4+ICsKPj4gKwkJ aWYgKCFuZWVkc19tb2Rlc2V0KGNydGNfc3RhdGUpKSB7Cj4+ICsJCQllbmFibGVkX2NydGNzKys7 Cj4+ICsJCQllbmFibGVkX2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwo+PiArCQkJY29udGlu dWU7Cj4+ICsJCX0KPj4gKwo+PiArCQlpZiAoZmlyc3RfY3J0Yykgewo+PiArCQkJb3RoZXJfY3J0 Y19zdGF0ZSA9IHBpcGVfY29uZmlnOwo+PiArCQkJYnJlYWs7Cj4+ICsJCX0KPj4gKwkJZmlyc3Rf Y3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7Cj4+ICsJCWZpcnN0X2NydGNfc3RhdGUgPSBwaXBl X2NvbmZpZzsKPj4gKwl9Cj4+ICsKPj4gKwkvKiBObyB3b3JrYXJvdW5kIG5lZWRlZD8gKi8KPj4g KwlpZiAoIWZpcnN0X2NydGMgfHwgZW5hYmxlZF9jcnRjcyA+IDEpCj4+ICsJCXJldHVybiAwOwo+ PiArCj4+ICsJZm9yX2VhY2hfaW50ZWxfY3J0YyhzdGF0ZS0+ZGV2LCBpbnRlbF9jcnRjKSB7Cj4+ ICsJCWlmIChzdGF0ZS0+Y3J0Y3NbZHJtX2NydGNfaW5kZXgoJmludGVsX2NydGMtPmJhc2UpXSkK Pj4gKwkJCWNvbnRpbnVlOwo+PiArCj4+ICsJCXJldCA9IGRybV9tb2Rlc2V0X2xvY2soJmludGVs X2NydGMtPmJhc2UubXV0ZXgsCj4+ICsJCQkJICAgICAgIHN0YXRlLT5hY3F1aXJlX2N0eCk7Cj4+ ICsJCWlmIChyZXQpCj4+ICsJCQlyZXR1cm4gcmV0Owo+PiArCj4+ICsJCWlmICghaW50ZWxfY3J0 Yy0+YmFzZS5zdGF0ZS0+YWN0aXZlKQo+PiArCQkJY29udGludWU7Cj4gSW1vIGp1c3QgdW5jb25k aXRpb25hbGx5IGFjcXVpcmUgdGhlIGNydGMgc3RhdGUsIHRoZXJlJyBzaG91bGRuJ3QgYmUgYW55 Cj4gaGFybSBpbiB0aGF0IChhcyBsb25nIGFzIHdlIGxlYXZlIG1vZGUvYWN0aXZlL3BsYW5lc19j aGFuZ2VkIHVudG91Y2hlZCkuClByb2JhYmx5Lgo+PiArCj4+ICsJCS8qIDIgZW5hYmxlZCBjcnRj cyBtZWFucyBubyBuZWVkIGZvciB3L2EgKi8KPj4gKwkJaWYgKCsrZW5hYmxlZF9jcnRjcyA+PSAy KQo+PiArCQkJcmV0dXJuIDA7Cj4+ICsKPj4gKwkJZW5hYmxlZF9jcnRjID0gaW50ZWxfY3J0YzsK Pj4gKwl9Cj4+ICsKPj4gKwlpZiAoZW5hYmxlZF9jcnRjcyA9PSAxKQo+PiArCQlmaXJzdF9jcnRj X3N0YXRlLT5oc3dfd29ya2Fyb3VuZF9waXBlID0gZW5hYmxlZF9jcnRjLT5waXBlOwo+IGZpcnN0 X2NydGNfc3RhdGUgY291bGQgYmUgbWlzY29tcHV0ZWQgaWYgMSBjcnRjIGlzIGFscmVhZHkgb24g YW5kIHlvdSBhZGQKPiBhbm90aGVyIG9uZS4gVGhlbiBmaXJzdF9jcnRjIHdpbGwgcG9pbnQgYXQg dGhlIG90aGVyIGNydGMgc2luY2UgdGhhdCdzIHRoZQo+IG9ubHkgb25lIGF0IGZpcnN0IGluIHRo ZSBhdG9taWMgc2V0LiBJbW8gYSBzaW1wbGVyIGFsZ28gd291bGQgYmU6Ck5vLCBpbiB0aGF0IGNh c2UgZW5hYmxlZF9jcnRjcyAhPSAwIGFuZCBlbmFibGVkX2NydGMgaXMgc2V0IHRvIHRoZSBjb3Jy ZWN0IGNydGMuCgoKPiAxLiBDaGVjayB3aGV0aGVyIHlvdXIgYWN0aXZhdGluZyBhbnkgY3J0YyBh dCBhbGwuCj4gMi4gSWYgc28gYWRkIGFsbCBjcnRjIHN0YXRlcy4KPiAzLiBTYW1lIGxvb3AgYXMg dGhlIG9sZCBvbmUsIGp1c3QgdXNpbmcgZm9yX2VhY2hfY3J0Y19pbl9zdGF0ZS4KPgo+IFRoZXJl J3Mgb3RoZXIgY2FzZXMgd2l0aCBzaGFyZWQgcmVzb3VyY2VzIHdoZXJlIHdlIG5lZWQgdG8gZ3Jh YiBhbGwgY3J0Ywo+IGxvY2tzIGFscmVhZHkgYW55d2F5IChzaGFyZWQgZHBsbCksIHRyeWluZyB0 byBiZSBjbGV2ZXIgZG9lc24ndCBzZWVtCj4gYmVuZWZpY2lhbC4gQW5kIGlmIHRoaXMgaW5kZWVk IGJlY29tZXMgYSBwcm9ibGVtIHRoZW4gd2UgbmVlZCBhIGdsb2JhbAo+IHN0YXRlIHd3IG11dGV4 IGFuZCB1c2UgdGhhdCAoaW5zdGVhZCBvZiBjcnRjIGxvY2tzKSBmb3IgdGhpcyBib29rLWtlZXBp bmc6Cj4gRmlyc3QgZW5hYmxlIGNydGMgd291bGQgc2V0IGdsb2JhbF9zdGF0ZS0+aHN3X3dhX3Bp cGUsIDJuZCBhbmQgbGF0ZXIgd291bGQKPiBjbGVhciBpdC4gV2UgbWlnaHQgbmVlZCB0aGlzIGV2 ZW50dWFsbHkgKEkndmUgaGVhcmQgcnVtb3VycyBhYm91dCBwZW9wbGUKPiBub3QgbGlraW5nIHN0 YWxscyB3aGVuIHVucGx1Z2dpbmcgZXh0ZXJuYWwgc2NyZWVucyB0aGF0IG11Y2gpLCBidXQgbGV0 J3MKPiBub3Qgb3ZlcmNvbXBsaWNhdGUgdGhpbmdzIHdoaWxlIHdlIGRvIHRoaXMgY29udmVyc2lv bi4KWW91IHdvdWxkIHN0aWxsIG5lZWQgaXQgd2hlbiBkaXNhYmxpbmcgY3J0YydzIHRoZW4uIFRv IGRvIGl0IHJpZ2h0IHlvdSB3b3VsZCBuZWVkIHRvIGtlZXAgY3J0Yy0+YWN0aXZlLApvciB1c2Ug YSBjcnRjX21hc2ssIGJ1dCB0aGF0IHdvdWxkIGJlIGFidXNlZCBzbyBJJ2QgcmF0aGVyIG5vdC4g VGhlIGNydGMgbG9jayBpcyBhbHNvIG5lZWRlZCBzbyB0aGUKb3RoZXIgY3J0YydzIGNhbm5vdCBi ZSBkaXNhYmxlZCBvciBlbmFibGVkIHdoaWxlIG1vZGVzZXR0aW5nLCBidXQgSSBndWVzcyBhbHdh eXMgdGFraW5nIHRoZQpjb25uZWN0b3JfbXV0ZXggZm9yIHRoYXQgY291bGQgd29yayB0b28uCgp+ TWFhcnRlbgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=