From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH v1 16/16] drm/panel: simple: use drm_panel infrastructure Date: Mon, 5 Aug 2019 14:12:08 +0300 Message-ID: <20190805111208.GK29747@pendragon.ideasonboard.com> References: <20190804201637.1240-1-sam@ravnborg.org> <20190804201637.1240-17-sam@ravnborg.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20190804201637.1240-17-sam@ravnborg.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Sam Ravnborg Cc: Neil Armstrong , David Airlie , dri-devel@lists.freedesktop.org, Thierry Reding , Marek Vasut , Laurent Pinchart , Vincent Abriou , Krzysztof Kozlowski , Jonathan Hunter , Maxime Ripard , Kukjin Kim , linux-arm-kernel@lists.infradead.org, NXP Linux Team , Pengutronix Kernel Team , Jonas Karlman , Alison Wang , Gwan-gyeong Mun , Alexios Zavras , linux-samsung-soc@vger.kernel.org, linux-tegra@vger.kernel.org, Thomas Gleixner , Sean Paul , Allison Randal List-Id: linux-tegra@vger.kernel.org SGkgU2FtLAoKVGhhbmsgeW91IGZvciB0aGUgcGF0Y2guCgpPbiBTdW4sIEF1ZyAwNCwgMjAxOSBh dCAxMDoxNjozN1BNICswMjAwLCBTYW0gUmF2bmJvcmcgd3JvdGU6Cj4gVXNlIGRybV9wYW5lbCBp bmZyYXN0cnVjdXRlOgo+IC0gZHJtX3BhbmVsIGhhcyBndWFyZHMgZm9yIGNhbGxpbmcgZGlzYWJs ZS9lbmFibGUgdHdpY2UKCkFzIHN0YXRlZCBpbiB0aGUgcmV2aWV3IG9mIHRoZSBjb3JyZXNwb25k aW5nIHBhdGNoLCBJIHRoaW5rIHRob3NlIGNoZWNrcwpzaG91bGQgYmUgZHJvcHBlZCwgYnV0IG5v dCBtb3ZlZCB0byB0aGUgcGFuZWwgY29yZS4KCj4gLSBkcm1fcGFuZWwgaGFzIGJhY2tsaWdodCBz dXBwb3J0CgpUaGlzIGFuc3dlcnMgbXkgZmlyc3QgcXVlc3Rpb24gaW4gdGhlIHJldmlldyBvZiAx NS8xNiA6LSkKCj4gVG8gdXNlIHRoZSBkcm1fcGFuZWwgaW5mcmFzdHJ1Y3R1cmUgdXNlIHRoZSBk cm1fcGFuZWxfKgo+IHZhcmlhbnRzIGZvciBwcmVwYXJlL2VuYWJsZS9kaXNhYmxlL3VucHJlcGFy ZS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBTYW0gUmF2bmJvcmcgPHNhbUByYXZuYm9yZy5vcmc+Cj4g Q2M6IFRoaWVycnkgUmVkaW5nIDx0aGllcnJ5LnJlZGluZ0BnbWFpbC5jb20+Cj4gQ2M6IFNhbSBS YXZuYm9yZyA8c2FtQHJhdm5ib3JnLm9yZz4KClRoZSBjaGFuZ2UgbG9va3MgZ29vZCBvdmVyYWxs LAoKUmV2aWV3ZWQtYnk6IExhdXJlbnQgUGluY2hhcnQgPGxhdXJlbnQucGluY2hhcnRAaWRlYXNv bmJvYXJkLmNvbT4KCmJ1dCB0aGlzIGlzIHBlbmRpbmcgYW4gYWdyZWVtZW50IG9uIHdoYXQgdG8g ZG8gd2l0aCB0aGUgbXVsdGlwbGUKcHJlcGFyZS9lbmFibGUgZ3VhcmRzLgoKPiAtLS0KPiAgZHJp dmVycy9ncHUvZHJtL3BhbmVsL3BhbmVsLXNpbXBsZS5jIHwgNzMgKysrKystLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgNjIgZGVsZXRp b25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zaW1w bGUuYyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zaW1wbGUuYwo+IGluZGV4IGJmZjc1 NzhmODRkZC4uYzdlZWQzNGYyYzljIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW5l bC9wYW5lbC1zaW1wbGUuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1zaW1w bGUuYwo+IEBAIC0yMSw3ICsyMSw2IEBACj4gICAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4K PiAgICovCj4gIAo+IC0jaW5jbHVkZSA8bGludXgvYmFja2xpZ2h0Lmg+Cj4gICNpbmNsdWRlIDxs aW51eC9kZWxheS5oPgo+ICAjaW5jbHVkZSA8bGludXgvZ3Bpby9jb25zdW1lci5oPgo+ICAjaW5j bHVkZSA8bGludXgvbW9kdWxlLmg+Cj4gQEAgLTk4LDEzICs5NywxMCBAQCBzdHJ1Y3QgcGFuZWxf ZGVzYyB7Cj4gIAo+ICBzdHJ1Y3QgcGFuZWxfc2ltcGxlIHsKPiAgCXN0cnVjdCBkcm1fcGFuZWwg YmFzZTsKPiAtCWJvb2wgcHJlcGFyZWQ7Cj4gLQlib29sIGVuYWJsZWQ7Cj4gIAlib29sIG5vX2hw ZDsKPiAgCj4gIAljb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyAqZGVzYzsKPiAgCj4gLQlzdHJ1Y3Qg YmFja2xpZ2h0X2RldmljZSAqYmFja2xpZ2h0Owo+ICAJc3RydWN0IHJlZ3VsYXRvciAqc3VwcGx5 Owo+ICAJc3RydWN0IGkyY19hZGFwdGVyICpkZGM7Cj4gIAo+IEBAIC0yMzIsMjAgKzIyOCw5IEBA IHN0YXRpYyBpbnQgcGFuZWxfc2ltcGxlX2Rpc2FibGUoc3RydWN0IGRybV9wYW5lbCAqcGFuZWwp Cj4gIHsKPiAgCXN0cnVjdCBwYW5lbF9zaW1wbGUgKnAgPSB0b19wYW5lbF9zaW1wbGUocGFuZWwp Owo+ICAKPiAtCWlmICghcC0+ZW5hYmxlZCkKPiAtCQlyZXR1cm4gMDsKPiAtCj4gLQlpZiAocC0+ YmFja2xpZ2h0KSB7Cj4gLQkJcC0+YmFja2xpZ2h0LT5wcm9wcy5wb3dlciA9IEZCX0JMQU5LX1BP V0VSRE9XTjsKPiAtCQlwLT5iYWNrbGlnaHQtPnByb3BzLnN0YXRlIHw9IEJMX0NPUkVfRkJCTEFO SzsKPiAtCQliYWNrbGlnaHRfdXBkYXRlX3N0YXR1cyhwLT5iYWNrbGlnaHQpOwo+IC0JfQo+IC0K PiAgCWlmIChwLT5kZXNjLT5kZWxheS5kaXNhYmxlKQo+ICAJCW1zbGVlcChwLT5kZXNjLT5kZWxh eS5kaXNhYmxlKTsKPiAgCj4gLQlwLT5lbmFibGVkID0gZmFsc2U7Cj4gLQo+ICAJcmV0dXJuIDA7 Cj4gIH0KPiAgCj4gQEAgLTI1Myw5ICsyMzgsNiBAQCBzdGF0aWMgaW50IHBhbmVsX3NpbXBsZV91 bnByZXBhcmUoc3RydWN0IGRybV9wYW5lbCAqcGFuZWwpCj4gIHsKPiAgCXN0cnVjdCBwYW5lbF9z aW1wbGUgKnAgPSB0b19wYW5lbF9zaW1wbGUocGFuZWwpOwo+ICAKPiAtCWlmICghcC0+cHJlcGFy ZWQpCj4gLQkJcmV0dXJuIDA7Cj4gLQo+ICAJZ3Bpb2Rfc2V0X3ZhbHVlX2NhbnNsZWVwKHAtPmVu YWJsZV9ncGlvLCAwKTsKPiAgCj4gIAlyZWd1bGF0b3JfZGlzYWJsZShwLT5zdXBwbHkpOwo+IEBA IC0yNjMsOCArMjQ1LDYgQEAgc3RhdGljIGludCBwYW5lbF9zaW1wbGVfdW5wcmVwYXJlKHN0cnVj dCBkcm1fcGFuZWwgKnBhbmVsKQo+ICAJaWYgKHAtPmRlc2MtPmRlbGF5LnVucHJlcGFyZSkKPiAg CQltc2xlZXAocC0+ZGVzYy0+ZGVsYXkudW5wcmVwYXJlKTsKPiAgCj4gLQlwLT5wcmVwYXJlZCA9 IGZhbHNlOwo+IC0KPiAgCXJldHVybiAwOwo+ICB9Cj4gIAo+IEBAIC0yNzQsOSArMjU0LDYgQEAg c3RhdGljIGludCBwYW5lbF9zaW1wbGVfcHJlcGFyZShzdHJ1Y3QgZHJtX3BhbmVsICpwYW5lbCkK PiAgCXVuc2lnbmVkIGludCBkZWxheTsKPiAgCWludCBlcnI7Cj4gIAo+IC0JaWYgKHAtPnByZXBh cmVkKQo+IC0JCXJldHVybiAwOwo+IC0KPiAgCWVyciA9IHJlZ3VsYXRvcl9lbmFibGUocC0+c3Vw cGx5KTsKPiAgCWlmIChlcnIgPCAwKSB7Cj4gIAkJZGV2X2VycihwYW5lbC0+ZGV2LCAiZmFpbGVk IHRvIGVuYWJsZSBzdXBwbHk6ICVkXG4iLCBlcnIpOwo+IEBAIC0yOTEsOCArMjY4LDYgQEAgc3Rh dGljIGludCBwYW5lbF9zaW1wbGVfcHJlcGFyZShzdHJ1Y3QgZHJtX3BhbmVsICpwYW5lbCkKPiAg CWlmIChkZWxheSkKPiAgCQltc2xlZXAoZGVsYXkpOwo+ICAKPiAtCXAtPnByZXBhcmVkID0gdHJ1 ZTsKPiAtCj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBAQCAtMzAwLDIwICsyNzUsOSBAQCBzdGF0 aWMgaW50IHBhbmVsX3NpbXBsZV9lbmFibGUoc3RydWN0IGRybV9wYW5lbCAqcGFuZWwpCj4gIHsK PiAgCXN0cnVjdCBwYW5lbF9zaW1wbGUgKnAgPSB0b19wYW5lbF9zaW1wbGUocGFuZWwpOwo+ICAK PiAtCWlmIChwLT5lbmFibGVkKQo+IC0JCXJldHVybiAwOwo+IC0KPiAgCWlmIChwLT5kZXNjLT5k ZWxheS5lbmFibGUpCj4gIAkJbXNsZWVwKHAtPmRlc2MtPmRlbGF5LmVuYWJsZSk7Cj4gIAo+IC0J aWYgKHAtPmJhY2tsaWdodCkgewo+IC0JCXAtPmJhY2tsaWdodC0+cHJvcHMuc3RhdGUgJj0gfkJM X0NPUkVfRkJCTEFOSzsKPiAtCQlwLT5iYWNrbGlnaHQtPnByb3BzLnBvd2VyID0gRkJfQkxBTktf VU5CTEFOSzsKPiAtCQliYWNrbGlnaHRfdXBkYXRlX3N0YXR1cyhwLT5iYWNrbGlnaHQpOwo+IC0J fQo+IC0KPiAtCXAtPmVuYWJsZWQgPSB0cnVlOwo+IC0KPiAgCXJldHVybiAwOwo+ICB9Cj4gIAo+ IEBAIC00MTMsNyArMzc3LDcgQEAgc3RhdGljIHZvaWQgcGFuZWxfc2ltcGxlX3BhcnNlX3BhbmVs X3RpbWluZ19ub2RlKHN0cnVjdCBkZXZpY2UgKmRldiwKPiAgCj4gIHN0YXRpYyBpbnQgcGFuZWxf c2ltcGxlX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3Qgc3RydWN0IHBhbmVsX2Rlc2Mg KmRlc2MpCj4gIHsKPiAtCXN0cnVjdCBkZXZpY2Vfbm9kZSAqYmFja2xpZ2h0LCAqZGRjOwo+ICsJ c3RydWN0IGRldmljZV9ub2RlICpkZGM7Cj4gIAlzdHJ1Y3QgcGFuZWxfc2ltcGxlICpwYW5lbDsK PiAgCXN0cnVjdCBkaXNwbGF5X3RpbWluZyBkdDsKPiAgCWludCBlcnI7Cj4gQEAgLTQyMiw4ICsz ODYsNiBAQCBzdGF0aWMgaW50IHBhbmVsX3NpbXBsZV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYs IGNvbnN0IHN0cnVjdCBwYW5lbF9kZXNjICpkZXNjKQo+ICAJaWYgKCFwYW5lbCkKPiAgCQlyZXR1 cm4gLUVOT01FTTsKPiAgCj4gLQlwYW5lbC0+ZW5hYmxlZCA9IGZhbHNlOwo+IC0JcGFuZWwtPnBy ZXBhcmVkID0gZmFsc2U7Cj4gIAlwYW5lbC0+ZGVzYyA9IGRlc2M7Cj4gIAo+ICAJcGFuZWwtPm5v X2hwZCA9IG9mX3Byb3BlcnR5X3JlYWRfYm9vbChkZXYtPm9mX25vZGUsICJuby1ocGQiKTsKPiBA QCAtNDQxLDI0ICs0MDMsMTMgQEAgc3RhdGljIGludCBwYW5lbF9zaW1wbGVfcHJvYmUoc3RydWN0 IGRldmljZSAqZGV2LCBjb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyAqZGVzYykKPiAgCQlyZXR1cm4g ZXJyOwo+ICAJfQo+ICAKPiAtCWJhY2tsaWdodCA9IG9mX3BhcnNlX3BoYW5kbGUoZGV2LT5vZl9u b2RlLCAiYmFja2xpZ2h0IiwgMCk7Cj4gLQlpZiAoYmFja2xpZ2h0KSB7Cj4gLQkJcGFuZWwtPmJh Y2tsaWdodCA9IG9mX2ZpbmRfYmFja2xpZ2h0X2J5X25vZGUoYmFja2xpZ2h0KTsKPiAtCQlvZl9u b2RlX3B1dChiYWNrbGlnaHQpOwo+IC0KPiAtCQlpZiAoIXBhbmVsLT5iYWNrbGlnaHQpCj4gLQkJ CXJldHVybiAtRVBST0JFX0RFRkVSOwo+IC0JfQo+IC0KPiAgCWRkYyA9IG9mX3BhcnNlX3BoYW5k bGUoZGV2LT5vZl9ub2RlLCAiZGRjLWkyYy1idXMiLCAwKTsKPiAgCWlmIChkZGMpIHsKPiAgCQlw YW5lbC0+ZGRjID0gb2ZfZmluZF9pMmNfYWRhcHRlcl9ieV9ub2RlKGRkYyk7Cj4gIAkJb2Zfbm9k ZV9wdXQoZGRjKTsKPiAgCj4gLQkJaWYgKCFwYW5lbC0+ZGRjKSB7Cj4gLQkJCWVyciA9IC1FUFJP QkVfREVGRVI7Cj4gLQkJCWdvdG8gZnJlZV9iYWNrbGlnaHQ7Cj4gLQkJfQo+ICsJCWlmICghcGFu ZWwtPmRkYykKPiArCQkJcmV0dXJuIC1FUFJPQkVfREVGRVI7Cj4gIAl9Cj4gIAo+ICAJaWYgKCFv Zl9nZXRfZGlzcGxheV90aW1pbmcoZGV2LT5vZl9ub2RlLCAicGFuZWwtdGltaW5nIiwgJmR0KSkK PiBAQCAtNDY4LDYgKzQxOSwxMCBAQCBzdGF0aWMgaW50IHBhbmVsX3NpbXBsZV9wcm9iZShzdHJ1 Y3QgZGV2aWNlICpkZXYsIGNvbnN0IHN0cnVjdCBwYW5lbF9kZXNjICpkZXNjKQo+ICAJcGFuZWwt PmJhc2UuZGV2ID0gZGV2Owo+ICAJcGFuZWwtPmJhc2UuZnVuY3MgPSAmcGFuZWxfc2ltcGxlX2Z1 bmNzOwo+ICAKPiArCWVyciA9IGRybV9wYW5lbF9vZl9iYWNrbGlnaHQoJnBhbmVsLT5iYXNlKTsK PiArCWlmIChlcnIpCj4gKwkJZ290byBmcmVlX2RkYzsKPiArCj4gIAllcnIgPSBkcm1fcGFuZWxf YWRkKCZwYW5lbC0+YmFzZSk7Cj4gIAlpZiAoZXJyIDwgMCkKPiAgCQlnb3RvIGZyZWVfZGRjOwo+ IEBAIC00NzksOSArNDM0LDYgQEAgc3RhdGljIGludCBwYW5lbF9zaW1wbGVfcHJvYmUoc3RydWN0 IGRldmljZSAqZGV2LCBjb25zdCBzdHJ1Y3QgcGFuZWxfZGVzYyAqZGVzYykKPiAgZnJlZV9kZGM6 Cj4gIAlpZiAocGFuZWwtPmRkYykKPiAgCQlwdXRfZGV2aWNlKCZwYW5lbC0+ZGRjLT5kZXYpOwo+ IC1mcmVlX2JhY2tsaWdodDoKPiAtCWlmIChwYW5lbC0+YmFja2xpZ2h0KQo+IC0JCXB1dF9kZXZp Y2UoJnBhbmVsLT5iYWNrbGlnaHQtPmRldik7CgpUaGlzIGxvb2tzIHdlaXJkLCB3aGVyZQoKPiAg Cj4gIAlyZXR1cm4gZXJyOwo+ICB9Cj4gQEAgLTQ5MiwxNSArNDQ0LDEyIEBAIHN0YXRpYyBpbnQg cGFuZWxfc2ltcGxlX3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpCj4gIAo+ICAJZHJtX3BhbmVs X3JlbW92ZSgmcGFuZWwtPmJhc2UpOwo+ICAKPiAtCXBhbmVsX3NpbXBsZV9kaXNhYmxlKCZwYW5l bC0+YmFzZSk7Cj4gLQlwYW5lbF9zaW1wbGVfdW5wcmVwYXJlKCZwYW5lbC0+YmFzZSk7Cj4gKwlk cm1fcGFuZWxfZGlzYWJsZSgmcGFuZWwtPmJhc2UpOwo+ICsJZHJtX3BhbmVsX3VucHJlcGFyZSgm cGFuZWwtPmJhc2UpOwo+ICAKPiAgCWlmIChwYW5lbC0+ZGRjKQo+ICAJCXB1dF9kZXZpY2UoJnBh bmVsLT5kZGMtPmRldik7Cj4gIAo+IC0JaWYgKHBhbmVsLT5iYWNrbGlnaHQpCj4gLQkJcHV0X2Rl dmljZSgmcGFuZWwtPmJhY2tsaWdodC0+ZGV2KTsKPiAtCj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAK PiBAQCAtNTA4LDggKzQ1Nyw4IEBAIHN0YXRpYyB2b2lkIHBhbmVsX3NpbXBsZV9zaHV0ZG93bihz dHJ1Y3QgZGV2aWNlICpkZXYpCj4gIHsKPiAgCXN0cnVjdCBwYW5lbF9zaW1wbGUgKnBhbmVsID0g ZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gIAo+IC0JcGFuZWxfc2ltcGxlX2Rpc2FibGUoJnBhbmVs LT5iYXNlKTsKPiAtCXBhbmVsX3NpbXBsZV91bnByZXBhcmUoJnBhbmVsLT5iYXNlKTsKPiArCWRy bV9wYW5lbF9kaXNhYmxlKCZwYW5lbC0+YmFzZSk7Cj4gKwlkcm1fcGFuZWxfdW5wcmVwYXJlKCZw YW5lbC0+YmFzZSk7Cj4gIH0KPiAgCj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSBhbXBpcmVfYW1fNDgwMjcyaDN0bXF3X3QwMWhfbW9kZSA9IHsKCi0tIApSZWdhcmRzLAoK TGF1cmVudCBQaW5jaGFydApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmkt ZGV2ZWw=