From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH 19/60] drm/panel: Add driver for the LG Philips LB035Q02 panel Date: Tue, 9 Jul 2019 03:56:49 +0300 Message-ID: <20190709005649.GC4819@pendragon.ideasonboard.com> References: <20190707180852.5512-1-laurent.pinchart@ideasonboard.com> <20190707181937.6250-1-laurent.pinchart@ideasonboard.com> <20190707181937.6250-16-laurent.pinchart@ideasonboard.com> <20190708185129.GA4363@ravnborg.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5B5DC8977A for ; Tue, 9 Jul 2019 00:57:18 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190708185129.GA4363@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: Maxime Ripard , Sebastian Reichel , dri-devel@lists.freedesktop.org, Tomi Valkeinen , Thierry Reding , Sean Paul List-Id: dri-devel@lists.freedesktop.org SGkgU2FtLAoKT24gTW9uLCBKdWwgMDgsIDIwMTkgYXQgMDg6NTE6MjlQTSArMDIwMCwgU2FtIFJh dm5ib3JnIHdyb3RlOgo+IEhpIExhdXJlbnQuCj4gCj4gR29vZCB0byBtb3ZlIG9tYXBkcm0gdG8g YSBtb3JlIHN0YW5kYXJkIHdheSB0byBkbyB0aGluZ3MuCgpJIGhvcGUgaXQgd2lsbCBoZWxwIGRl ZmluaW5nIHRoZSBuZXh0IHN0ZXAgZm9yIHRoZSBzdGFuZGFyZCA7LSkKCj4gPiBuZXcgZmlsZSBt b2RlIDEwMDY0NAo+ID4gaW5kZXggMDAwMDAwMDAwMDAwLi5kOGE4YzNhM2E4YzUKPiA+IC0tLSAv ZGV2L251bGwKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9wYW5lbC9wYW5lbC1sZy1sYjAzNXEw Mi5jCj4gPiBAQCAtMCwwICsxLDIzNSBAQAo+ID4gKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy OiBHUEwtMi4wCj4gPiArLyoKPiA+ICsgKiBMRy5QaGlsaXBzIExCMDM1UTAyIExDRCBQYW5lbCBE cml2ZXIKPiAKPiBMb29rcyBsaWtlIGEgdHlwby4gQXMgZmFyIGFzIEkga25vdyBMRyBhbmQgUGhp bGlwcyBhcmUgbm90IHRoZSBzYW1lLgo+IEJ1dCBJIGNhbiBzZWUgdGhpcyBpcyB1c2VkIGluIHNl dmVyYWwgcGxhY2VzLCBzbyBJIG5lZWQgdG8gY2hlY2sgdXAgb24KPiBhY3R1YWwgc3RhdHVzIGhl cmUgYW5kIGRyaXZlciBpcyBsaWtlbHkgT0suCj4gR29vZ2xlLi4uIHRoaXMgaXMgZmluZS4gU29t ZSBqb2ludCB2ZW50dXJlIGluIDIwMDEuCj4gCj4gPiArICogQmFzZWQgb24gdGhlIG9tYXBkcm0t c3BlY2lmaWMgcGFuZWwtbGctbGIwMzVxMDIgZHJpdmVyCj4gCj4gV2lsbCB3ZSBoYXZlIHR3byBk cml2ZXJzIHdpdGggdGhlIHNhbWUgbmFtZSwgb3IgYXJlIHRoaXMgYWJvdmUgYWxyZWFkeQo+IGRp c2FibGVkIGZyb20gdGhlIGJ1aWxkPwoKVGhlIG9tYXBkcm0tc3BlY2lmaWMgZHJpdmVyIGlzIGNh bGxlZCBwYW5lbC1sZ3BoaWxpcHMtbGIwMzVxMDIuYy4gSSdsbAp1cGRhdGUgdGhlIGNvbW1lbnQu Cgo+ID4gKwl1bnNpZ25lZCBpbnQgaTsKPiAKPiBpbmRleCB0byBhcnJheXMgYXJlIGRlZmF1bHQg ImludCIgSUlSQy4KPiBOb3QgdGhhdCBpdCBtYXR0ZXJzIGJ1dCBub3RpY2VkIGl0LgoKQXJlIHRo ZXkgPyBJJ3ZlIGFsd2F5cyBhZHZvY2F0ZWQgZm9yIHVuc2lnbmVkIGluZGV4ZXMgdG8gdXNlIHVu c2lnbmVkCmludC4KCj4gPiArCWludCByZXQ7Cj4gPiArCj4gPiArCWZvciAoaSA9IDA7IGkgPCBB UlJBWV9TSVpFKGluaXRfZGF0YSk7ICsraSkgewo+ID4gKwkJcmV0ID0gbGIwMzVxMDJfd3JpdGUo bGNkLCBpbml0X2RhdGFbaV0uaW5kZXgsCj4gPiArCQkJCSAgICAgaW5pdF9kYXRhW2ldLnZhbHVl KTsKPiA+ICsJCWlmIChyZXQgPCAwKQo+ID4gKwkJCXJldHVybiByZXQ7Cj4gPiArCX0KPiA+ICsK PiA+ICsJcmV0dXJuIDA7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJt X2Rpc3BsYXlfbW9kZSBsYjAzNXEwMl9tb2RlID0gewo+ID4gKwkuY2xvY2sgPSA2NTAwLAo+ID4g KwkuaGRpc3BsYXkgPSAzMjAsCj4gPiArCS5oc3luY19zdGFydCA9IDMyMCArIDIwLAo+ID4gKwku aHN5bmNfZW5kID0gMzIwICsgMjAgKyAyLAo+ID4gKwkuaHRvdGFsID0gMzIwICsgMjAgKyAyICsg NjgsCj4gPiArCS52ZGlzcGxheSA9IDI0MCwKPiA+ICsJLnZzeW5jX3N0YXJ0ID0gMjQwICsgNCwK PiA+ICsJLnZzeW5jX2VuZCA9IDI0MCArIDQgKyAyLAo+ID4gKwkudnRvdGFsID0gMjQwICsgNCAr IDIgKyAxOCwKPiA+ICsJLnZyZWZyZXNoID0gNjAsCj4gPiArCS50eXBlID0gRFJNX01PREVfVFlQ RV9EUklWRVIgfCBEUk1fTU9ERV9UWVBFX1BSRUZFUlJFRCwKPiA+ICsJLmZsYWdzID0gRFJNX01P REVfRkxBR19OSFNZTkMgfCBEUk1fTU9ERV9GTEFHX05WU1lOQywKPiA+ICt9Owo+IAo+IFdlIGFs cmVhZHkgc3BlY2lmeSBhbGwgdGhlIHRpbWluZyBkZXRhaWxzLgo+IENvbnNpZGVyIHRvIHVzZSBk aXNwbGF5X21vZGUgdG8gc3BlY2lmeSB0aGUgd2lkdGgvaGVpZ2h0IHRvby4KPiBTbyB0aGUgcGFu ZWwgc3BlY2lmaWNhdGlvc24gYXJlIGhhcmRjb2RlZCBvbmx5IGluIG9uZSBwbGFjZS4KCkkgZGlk bid0IGtub3cgZHJtX2Rpc3BsYXlfbW9kZSBoYWQgd2lkdGhfbW0gYW5kIGhlaWdodF9tbSBmaWVs ZHMuIEknbGwKZml4IHRoaXMuCgo+ID4gKwo+ID4gK3N0YXRpYyBpbnQgbGIwMzVxMDJfZ2V0X21v ZGVzKHN0cnVjdCBkcm1fcGFuZWwgKnBhbmVsKQo+ID4gK3sKPiA+ICsJc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvciA9IHBhbmVsLT5jb25uZWN0b3I7Cj4gPiArCXN0cnVjdCBkcm1fZGlz cGxheV9tb2RlICptb2RlOwo+ID4gKwo+ID4gKwltb2RlID0gZHJtX21vZGVfZHVwbGljYXRlKHBh bmVsLT5kcm0sICZsYjAzNXEwMl9tb2RlKTsKPiA+ICsJaWYgKCFtb2RlKQo+ID4gKwkJcmV0dXJu IC1FTk9NRU07Cj4gPiArCj4gPiArCWRybV9tb2RlX3NldF9uYW1lKG1vZGUpOwo+ID4gKwlkcm1f bW9kZV9wcm9iZWRfYWRkKGNvbm5lY3RvciwgbW9kZSk7Cj4gPiArCj4gPiArCWNvbm5lY3Rvci0+ ZGlzcGxheV9pbmZvLndpZHRoX21tID0gNzA7Cj4gPiArCWNvbm5lY3Rvci0+ZGlzcGxheV9pbmZv LmhlaWdodF9tbSA9IDUzOwo+IAo+IFNvIHdlIGF2b2lkIGhhcmRjb2RpbmcgaGVpZ2h0L3dpZHRo IGhlcmUsIGJ1dCBkbyBpdCB3aXRoIHRoZSB0aW1pbmcKPiBhYm92ZS4KPiAKPiA+ICsJLyoKPiA+ ICsJICogRklYTUU6IEFjY29yZGluZyB0byB0aGUgZGF0YXNoZWV0IHBpeGVsIGRhdGEgaXMgc2Ft cGxlZCBvbiB0aGUKPiA+ICsJICogcmlzaW5nIGVkZ2Ugb2YgdGhlIGNsb2NrLCBidXQgdGhlIGNv ZGUgcnVubmluZyBvbiB0aGUgR3Vtc3RpeCBPdmVybwo+ID4gKwkgKiBQYWxvMzUgaW5kaWNhdGVz IHNhbXBsaW5nIG9uIHRoZSBuZWdhdGl2ZSBlZGdlLiBUaGlzIHNob3VsZCBiZQo+ID4gKwkgKiB0 ZXN0ZWQgb24gYSByZWFsIGRldmljZS4KPiA+ICsJICovCj4gPiArCWNvbm5lY3Rvci0+ZGlzcGxh eV9pbmZvLmJ1c19mbGFncyA9IERSTV9CVVNfRkxBR19ERV9ISUdICj4gPiArCQkJCQkgIHwgRFJN X0JVU19GTEFHX1NZTkNfU0FNUExFX1BPU0VER0UKPiA+ICsJCQkJCSAgfCBEUk1fQlVTX0ZMQUdf UElYREFUQV9TQU1QTEVfTkVHRURHRTsKPiA+ICsKPiA+ICsJcmV0dXJuIDE7Cj4gPiArfQo+ID4g Kwo+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3BhbmVsX2Z1bmNzIGxiMDM1cTAyX2Z1bmNz ID0gewo+ID4gKwkuZGlzYWJsZSA9IGxiMDM1cTAyX2Rpc2FibGUsCj4gPiArCS5lbmFibGUgPSBs YjAzNXEwMl9lbmFibGUsCj4gPiArCS5nZXRfbW9kZXMgPSBsYjAzNXEwMl9nZXRfbW9kZXMsCj4g PiArfTsKPiA+ICsKPiA+ICtzdGF0aWMgaW50IGxiMDM1cTAyX3Byb2JlKHN0cnVjdCBzcGlfZGV2 aWNlICpzcGkpCj4gPiArewo+ID4gKwlzdHJ1Y3QgbGIwMzVxMDJfZGV2aWNlICpsY2Q7Cj4gPiAr CWludCByZXQ7Cj4gPiArCj4gPiArCWxjZCA9IGRldm1fa3phbGxvYygmc3BpLT5kZXYsIHNpemVv ZigqbGNkKSwgR0ZQX0tFUk5FTCk7Cj4gPiArCWlmIChsY2QgPT0gTlVMTCkKPiA+ICsJCXJldHVy biAtRU5PTUVNOwo+ID4gKwo+ID4gKwlzcGlfc2V0X2RydmRhdGEoc3BpLCBsY2QpOwo+ID4gKwls Y2QtPnNwaSA9IHNwaTsKPiA+ICsKPiA+ICsJbGNkLT5lbmFibGVfZ3BpbyA9IGRldm1fZ3Bpb2Rf Z2V0KCZzcGktPmRldiwgImVuYWJsZSIsIEdQSU9EX09VVF9MT1cpOwo+ID4gKwlpZiAoSVNfRVJS KGxjZC0+ZW5hYmxlX2dwaW8pKSB7Cj4gPiArCQlkZXZfZXJyKCZzcGktPmRldiwgImZhaWxlZCB0 byBwYXJzZSBlbmFibGUgZ3Bpb1xuIik7Cj4gPiArCQlyZXR1cm4gUFRSX0VSUihsY2QtPmVuYWJs ZV9ncGlvKTsKPiA+ICsJfQo+ID4gKwo+ID4gKwlyZXQgPSBsYjAzNXEwMl9pbml0KGxjZCk7Cj4g PiArCWlmIChyZXQgPCAwKQo+ID4gKwkJcmV0dXJuIHJldDsKPiA+ICsKPiA+ICsJZHJtX3BhbmVs X2luaXQoJmxjZC0+cGFuZWwpOwo+ID4gKwlsY2QtPnBhbmVsLmRldiA9ICZsY2QtPnNwaS0+ZGV2 Owo+ID4gKwlsY2QtPnBhbmVsLmZ1bmNzID0gJmxiMDM1cTAyX2Z1bmNzOwo+ID4gKwo+ID4gKwly ZXR1cm4gZHJtX3BhbmVsX2FkZCgmbGNkLT5wYW5lbCk7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRp YyBpbnQgbGIwMzVxMDJfcmVtb3ZlKHN0cnVjdCBzcGlfZGV2aWNlICpzcGkpCj4gPiArewo+ID4g KwlzdHJ1Y3QgbGIwMzVxMDJfZGV2aWNlICpsY2QgPSBzcGlfZ2V0X2RydmRhdGEoc3BpKTsKPiA+ ICsKPiA+ICsJZHJtX3BhbmVsX3JlbW92ZSgmbGNkLT5wYW5lbCk7Cj4gPiArCWxiMDM1cTAyX2Rp c2FibGUoJmxjZC0+cGFuZWwpOwo+IAo+IFVzZSBkcm1fcGFuZWxfZGlzYWJsZSgpIHNvIHRoZSBk cml2ZXIgd2lsbCBiZW5lZml0IHdoZW4gd2UgbW92ZSBtb3JlCj4gZnVuY3Rpb25hbGl0eSB0byB0 aGUgZHJtX3BhbmVsX2Rpc2FibGUoKSBmdW5jdGlvbi4KCldpbGwgZG8uCgo+ID4gKwo+ID4gKwly ZXR1cm4gMDsKPiA+ICt9Cj4gPiArCj4gPiArc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2Vf aWQgbGIwMzVxMDJfb2ZfbWF0Y2hbXSA9IHsKPiA+ICsJeyAuY29tcGF0aWJsZSA9ICJsZ3BoaWxp cHMsbGIwMzVxMDIiLCB9LAo+ID4gKwl7fSwKPiAKPiBTb21lIGRyaXZlcnMgdXNlIHsgLyogc2Vu dGluZWwgKi8gfSwgdG8gZG9jdW1lbnQgdGhpcyBpcyBvbiBwdXJwb3NlIHRoZQo+IGxhc3QgZW50 cnkuCgpJIGRvbid0IG1pbmQgZWl0aGVyIHdheSBzbyBJJ2xsIGNoYW5nZSBpdC4KCj4gPiArfTsK PiA+ICsKPiA+ICtNT0RVTEVfREVWSUNFX1RBQkxFKG9mLCBsYjAzNXEwMl9vZl9tYXRjaCk7Cj4g PiArCj4gPiArc3RhdGljIHN0cnVjdCBzcGlfZHJpdmVyIGxiMDM1cTAyX2RyaXZlciA9IHsKPiA+ ICsJLnByb2JlCQk9IGxiMDM1cTAyX3Byb2JlLAo+ID4gKwkucmVtb3ZlCQk9IGxiMDM1cTAyX3Jl bW92ZSwKPiA+ICsJLmRyaXZlcgkJPSB7Cj4gPiArCQkubmFtZQk9ICJwYW5lbC1sZy1sYjAzNXEw MiIsCj4gPiArCQkub2ZfbWF0Y2hfdGFibGUgPSBsYjAzNXEwMl9vZl9tYXRjaCwKPiA+ICsJfSwK PiA+ICt9Owo+ID4gKwo+ID4gK21vZHVsZV9zcGlfZHJpdmVyKGxiMDM1cTAyX2RyaXZlcik7Cj4g PiArCj4gPiArTU9EVUxFX0FMSUFTKCJzcGk6bGdwaGlsaXBzLGxiMDM1cTAyIik7Cj4gPiArTU9E VUxFX0FVVEhPUigiVG9taSBWYWxrZWluZW4gPHRvbWkudmFsa2VpbmVuQHRpLmNvbT4iKTsKPiA+ ICtNT0RVTEVfREVTQ1JJUFRJT04oIkxHLlBoaWxpcHMgTEIwMzVRMDIgTENEIFBhbmVsIGRyaXZl ciIpOwo+ID4gK01PRFVMRV9MSUNFTlNFKCJHUEwiKTsKPiAKPiBUaGlzIHNob3VsZCBiZSAiR1BM IHYyIiBpZiBJIHJlYWQgaHR0cHM6Ly93d3cua2VybmVsLm9yZy9kb2MvaHRtbC9sYXRlc3QvcHJv Y2Vzcy9saWNlbnNlLXJ1bGVzLmh0bWwKPiBjb3JyZWN0LiBTZWUgIk1PRFVMRV9MSUNFTlNFIiB0 YWJsZS4KCkFjY29yZGluZyB0byB0aGF0IHRhYmxlLCAiR1BMIHYyIiBpcyBkZWZpbmVkIGFzICJT YW1lIGFzIOKAnEdQTOKAnS4gSXQKZXhpc3RzIGZvciBoaXN0b3JpYyByZWFzb25zLiIuIE15IHVu ZGVyc3RhbmRpbmcgaXMgdGhhdCAiR1BMIHYyIiBleGlzdHMKZm9yIGhpc3RvcmljYWwgcmVhc29u cyBhbmQgc2hvdWxkIG5vdCBiZSB1c2VkIGluIG5ldyBjb2RlLgoKPiBXaXRoIHRoZSBhYm92ZSBj b21tZW50cyBhZGRyZXNzZWQvY29uc2lkZXJlZDoKPiBSZXZpZXdlZC1ieTogU2FtIFJhdm5ib3Jn IDxzYW1AcmF2bmJvcmcub3JnPgoKVGhhbmsgeW91LgoKLS0gClJlZ2FyZHMsCgpMYXVyZW50IFBp bmNoYXJ0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==