From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 05/15] drm/i915/bios: abstract finding the panel sequence block Date: Tue, 5 Jan 2016 11:53:20 +0100 Message-ID: <20160105105320.GZ8076@phenom.ffwll.local> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f44.google.com (mail-wm0-f44.google.com [74.125.82.44]) by gabe.freedesktop.org (Postfix) with ESMTPS id 52E0E89FAD for ; Tue, 5 Jan 2016 02:53:23 -0800 (PST) Received: by mail-wm0-f44.google.com with SMTP id b14so22839304wmb.1 for ; Tue, 05 Jan 2016 02:53:23 -0800 (PST) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Jani Nikula Cc: Deepak M , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBEZWMgMjEsIDIwMTUgYXQgMDM6MTA6NTZQTSArMDIwMCwgSmFuaSBOaWt1bGEgd3Jv dGU6Cj4gTWFrZSB0aGUgd2hvbGUgdGhpbmcgZWFzaWVyIHRvIHJlYWQuCj4gCj4gU2lnbmVkLW9m Zi1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jIHwgNzYgKysrKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLS0tLS0tLS0tCj4gIDEgZmlsZSBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCAzNCBk ZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf Ymlvcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jCj4gaW5kZXggNzM5MzU5 NmRmMzdkLi45NTExYTUzNDE1NjIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfYmlvcy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jCj4g QEAgLTY5Nyw3ICs2OTcsNyBAQCBwYXJzZV9wc3Ioc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LCBjb25zdCBzdHJ1Y3QgYmRiX2hlYWRlciAqYmRiKQo+ICAJZGV2X3ByaXYtPnZidC5w c3IudHAyX3RwM193YWtldXBfdGltZSA9IHBzcl90YWJsZS0+dHAyX3RwM193YWtldXBfdGltZTsK PiAgfQo+ICAKPiAtc3RhdGljIHU4ICpnb3RvX25leHRfc2VxdWVuY2UodTggKmRhdGEsIGludCAq c2l6ZSkKPiArc3RhdGljIHU4ICpnb3RvX25leHRfc2VxdWVuY2UodTggKmRhdGEsIHUxNiAqc2l6 ZSkKPiAgewo+ICAJdTE2IGxlbjsKPiAgCWludCB0bXAgPSAqc2l6ZTsKPiBAQCAtODE4LDE1ICs4 MTgsNTIgQEAgcGFyc2VfbWlwaV9jb25maWcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAo+ICAJZGV2X3ByaXYtPnZidC5kc2kucGFuZWxfaWQgPSBNSVBJX0RTSV9HRU5FUklDX1BB TkVMX0lEOwo+ICB9Cj4gIAo+ICsvKiBGaW5kIHRoZSBzZXF1ZW5jZSBibG9jayBhbmQgc2l6ZSBm b3IgdGhlIGdpdmVuIHBhbmVsLiAqLwo+ICtzdGF0aWMgY29uc3QgdTggKgo+ICtmaW5kX3BhbmVs X3NlcXVlbmNlX2Jsb2NrKGNvbnN0IHN0cnVjdCBiZGJfbWlwaV9zZXF1ZW5jZSAqc2VxdWVuY2Us Cj4gKwkJCSAgdTE2IHBhbmVsX2lkLCB1MTYgKnNlcV9zaXplKQo+ICt7Cj4gKwl1MzIgdG90YWwg PSBnZXRfYmxvY2tzaXplKHNlcXVlbmNlKTsKPiArCWNvbnN0IHU4ICpkYXRhID0gJnNlcXVlbmNl LT5kYXRhWzBdOwo+ICsJdTggY3VycmVudF9pZDsKPiArCXUxNiBjdXJyZW50X3NpemU7Cj4gKwlp bnQgaW5kZXggPSAwOwo+ICsJaW50IGk7Cj4gKwo+ICsJZm9yIChpID0gMDsgaSA8IE1BWF9NSVBJ X0NPTkZJR1VSQVRJT05TICYmIGluZGV4ICsgMyA8IHRvdGFsOyBpKyspIHsKCkNvbW1pdCBtZXNz YWdlIHNob3VsZCBtZW50aW9uIHRoYXQgeW91IG1ha2UgdGhlIHBhcnNpbiBtb3JlIHJvYnVzdCBh bmQKZW5zdXJlIHdlIGRvbid0IHdhbGsgb3ZlciB0aGUgZW5kIG9mIHRoZSBhbGxvY2F0ZWQgYnVm ZmVyLgoKPiArCQljdXJyZW50X2lkID0gKihkYXRhICsgaW5kZXgpOwo+ICsJCWluZGV4Kys7Cj4g Kwo+ICsJCWN1cnJlbnRfc2l6ZSA9ICooKGNvbnN0IHUxNiAqKShkYXRhICsgaW5kZXgpKTsKPiAr CQlpbmRleCArPSAyOwo+ICsKPiArCQlpZiAoaW5kZXggKyBjdXJyZW50X3NpemUgPiB0b3RhbCkg ewo+ICsJCQlEUk1fRVJST1IoIkludmFsaWQgc2VxdWVuY2UgYmxvY2tcbiIpOwo+ICsJCQlyZXR1 cm4gTlVMTDsKPiArCQl9Cj4gKwo+ICsJCWlmIChjdXJyZW50X2lkID09IHBhbmVsX2lkKSB7Cj4g KwkJCSpzZXFfc2l6ZSA9IGN1cnJlbnRfc2l6ZTsKPiArCQkJcmV0dXJuIGRhdGEgKyBpbmRleDsK PiArCQl9Cj4gKwo+ICsJCWluZGV4ICs9IGN1cnJlbnRfc2l6ZTsKPiArCX0KPiArCj4gKwlEUk1f RVJST1IoIlNlcXVlbmNlIGJsb2NrIGRldGVjdGVkIGJ1dCBubyB2YWxpZCBjb25maWd1cmF0aW9u XG4iKTsKPiArCj4gKwlyZXR1cm4gTlVMTDsKPiArfQo+ICsKPiAgc3RhdGljIHZvaWQKPiAgcGFy c2VfbWlwaV9zZXF1ZW5jZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAkJ ICAgIGNvbnN0IHN0cnVjdCBiZGJfaGVhZGVyICpiZGIpCj4gIHsKPiAgCWNvbnN0IHN0cnVjdCBi ZGJfbWlwaV9zZXF1ZW5jZSAqc2VxdWVuY2U7Cj4gIAljb25zdCB1OCAqc2VxX2RhdGE7Cj4gKwl1 MTYgc2VxX3NpemU7Cj4gIAl1OCAqZGF0YTsKPiAgCXUxNiBibG9ja19zaXplOwo+IC0JaW50IGks IHBhbmVsX2lkLCBzZXFfc2l6ZTsKPiAgCj4gIAkvKiBPbmx5IG91ciBnZW5lcmljIHBhbmVsIGRy aXZlciB1c2VzIHRoZSBzZXF1ZW5jZSBibG9jay4gKi8KPiAgCWlmIChkZXZfcHJpdi0+dmJ0LmRz aS5wYW5lbF9pZCAhPSBNSVBJX0RTSV9HRU5FUklDX1BBTkVMX0lEKQo+IEBAIC04NTMsNDAgKzg5 MCwxMSBAQCBwYXJzZV9taXBpX3NlcXVlbmNlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiwKPiAgCSAqLwo+ICAJZGV2X3ByaXYtPnZidC5kc2kuc2VxX3ZlcnNpb24gPSBzZXF1ZW5j ZS0+dmVyc2lvbjsKPiAgCj4gLQlzZXFfZGF0YSA9ICZzZXF1ZW5jZS0+ZGF0YVswXTsKPiAtCj4g LQkvKgo+IC0JICogc2VxdWVuY2UgYmxvY2sgaXMgdmFyaWFibGUgbGVuZ3RoIGFuZCBoZW5jZSB3 ZSBuZWVkIHRvIHBhcnNlIGFuZAo+IC0JICogZ2V0IHRoZSBzZXF1ZW5jZSBkYXRhIGZvciBzcGVj aWZpYyBwYW5lbCBpZAo+IC0JICovCj4gLQlmb3IgKGkgPSAwOyBpIDwgTUFYX01JUElfQ09ORklH VVJBVElPTlM7IGkrKykgewo+IC0JCXBhbmVsX2lkID0gKnNlcV9kYXRhOwo+IC0JCXNlcV9zaXpl ID0gKigodTE2ICopIChzZXFfZGF0YSArIDEpKTsKPiAtCQlpZiAocGFuZWxfaWQgPT0gcGFuZWxf dHlwZSkKPiAtCQkJYnJlYWs7Cj4gLQo+IC0JCS8qIHNraXAgdGhlIHNlcXVlbmNlIGluY2x1ZGlu ZyBzZXEgaGVhZGVyIG9mIDMgYnl0ZXMgKi8KPiAtCQlzZXFfZGF0YSA9IHNlcV9kYXRhICsgMyAr IHNlcV9zaXplOwo+IC0JCWlmICgoc2VxX2RhdGEgLSAmc2VxdWVuY2UtPmRhdGFbMF0pID4gYmxv Y2tfc2l6ZSkgewo+IC0JCQlEUk1fRVJST1IoIlNlcXVlbmNlIHN0YXJ0IGlzIGJleW9uZCBzZXF1 ZW5jZSBibG9jayBzaXplLCBjb3JydXB0ZWQgc2VxdWVuY2UgYmxvY2tcbiIpOwo+IC0JCQlyZXR1 cm47Cj4gLQkJfQo+IC0JfQo+IC0KPiAtCWlmIChpID09IE1BWF9NSVBJX0NPTkZJR1VSQVRJT05T KSB7Cj4gLQkJRFJNX0VSUk9SKCJTZXF1ZW5jZSBibG9jayBkZXRlY3RlZCBidXQgbm8gdmFsaWQg Y29uZmlndXJhdGlvblxuIik7Cj4gKwlzZXFfZGF0YSA9IGZpbmRfcGFuZWxfc2VxdWVuY2VfYmxv Y2soc2VxdWVuY2UsIHBhbmVsX3R5cGUsICZzZXFfc2l6ZSk7Cj4gKwlpZiAoIXNlcV9kYXRhKQo+ ICAJCXJldHVybjsKPiAtCX0KPiAtCj4gLQkvKiBjaGVjayBpZiBmb3VuZCBzZXF1ZW5jZSBpcyBj b21wbGV0ZWx5IHdpdGhpbiB0aGUgc2VxdWVuY2UgYmxvY2sKPiAtCSAqIGp1c3QgYmVpbmcgcGFy YW5vaWQgKi8KPiAtCWlmIChzZXFfc2l6ZSA+IGJsb2NrX3NpemUpIHsKPiAtCQlEUk1fRVJST1Io IkNvcnJ1cHRlZCBzZXF1ZW5jZS9zaXplLCBiYWlsaW5nIG91dFxuIik7Cj4gLQkJcmV0dXJuOwo+ IC0JfQo+ICAKPiAtCS8qIHNraXAgdGhlIHBhbmVsIGlkKDEgYnl0ZSkgYW5kIHNlcSBzaXplKDIg Ynl0ZXMpICovCj4gLQlkZXZfcHJpdi0+dmJ0LmRzaS5kYXRhID0ga21lbWR1cChzZXFfZGF0YSAr IDMsIHNlcV9zaXplLCBHRlBfS0VSTkVMKTsKPiArCWRldl9wcml2LT52YnQuZHNpLmRhdGEgPSBr bWVtZHVwKHNlcV9kYXRhLCBzZXFfc2l6ZSwgR0ZQX0tFUk5FTCk7CgpTaG91bGQgZHJvcHBpbmcg dGhlICszIGJlIGluIGEgc2VwYXJhdGUgcGF0Y2g/CgpPdGhlcndpc2UgbG9va3MgZ29vZCwgd2l0 aCB0aGUgYWJvdmUgMiBhZGRyZXNzZWQKClJldmlld2VkLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5p ZWwudmV0dGVyQGZmd2xsLmNoPgoKPiAgCWlmICghZGV2X3ByaXYtPnZidC5kc2kuZGF0YSkKPiAg CQlyZXR1cm47Cj4gIAo+IC0tIAo+IDIuMS40Cj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwt Z2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVu Z2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=