From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sam Ravnborg Subject: Re: [PATCH V7 2/2] drm/panel: Add Sitronix ST7701 panel driver Date: Fri, 11 Jan 2019 22:19:31 +0100 Message-ID: <20190111211931.GA29735@ravnborg.org> References: <20190111124714.19566-1-jagan@amarulasolutions.com> <20190111124714.19566-2-jagan@amarulasolutions.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from asavdk3.altibox.net (asavdk3.altibox.net [109.247.116.14]) by gabe.freedesktop.org (Postfix) with ESMTPS id 35B656E23D for ; Fri, 11 Jan 2019 21:19:36 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190111124714.19566-2-jagan@amarulasolutions.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jagan Teki Cc: David Airlie , linux-amarula@amarulasolutions.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Thierry Reding , Michael Trimarchi , Sean Paul List-Id: dri-devel@lists.freedesktop.org SGkgSmFnYW4uCgpHYXZlIHRoaXMgYW5vdGhlciBtb3JlIGRldGFpbGVkIHJlYWQgLSB0cmlnZ2Vy ZWQgc29tZSBhZGRpdGlvbmFsIGNvbW1lbnRzLgpEZXBpdGUgdGhlIGNvbW1lbnRzIGl0IGxvb2tz IGdvb2QsIGFuZCB0aGlzIGlzIGFsbCBtb3JlIG9yCmxlc3MgY29zbWV0aWMgaW1wcm92ZW1lbnRz LgoKCVNhbQoKPiArc3RydWN0IHN0NzcwMV9wYW5lbF9kZXNjIHsKPiArCWNvbnN0IHN0cnVjdCBk cm1fZGlzcGxheV9tb2RlICptb2RlOwo+ICsJdW5zaWduZWQgaW50IGxhbmVzOwo+ICsJdW5zaWdu ZWQgbG9uZyBmbGFnczsKPiArCWVudW0gbWlwaV9kc2lfcGl4ZWxfZm9ybWF0IGZvcm1hdDsKPiAr CWNvbnN0IGNoYXIgKmNvbnN0ICpzdXBwbHlfbmFtZXM7Cj4gKwl1bnNpZ25lZCBpbnQgbnVtX3N1 cHBsaWVzOwo+ICsJdW5zaWduZWQgaW50IHBhbmVsX3NsZWVwX2RlbGF5Owo+ICt9Owo+ICsKPiAr c3RydWN0IHN0NzcwMSB7Cj4gKwlzdHJ1Y3QgZHJtX3BhbmVsIHBhbmVsOwo+ICsJc3RydWN0IG1p cGlfZHNpX2RldmljZSAqZHNpOwo+ICsJY29uc3Qgc3RydWN0IHN0NzcwMV9wYW5lbF9kZXNjICpk ZXNjOwo+ICsKPiArCXN0cnVjdCBiYWNrbGlnaHRfZGV2aWNlICpiYWNrbGlnaHQ7Cj4gKwlzdHJ1 Y3QgcmVndWxhdG9yX2J1bGtfZGF0YSAqc3VwcGxpZXM7Cj4gKwl1bnNpZ25lZCBpbnQgbnVtX3N1 cHBsaWVzOwpJIGNhbm5vdCBzZWUgdGhhdCBudW1fc3VwcGxpZXMgaW4gdGhpcyBzdHJ1Y3QgYXJl IHVzZWQ/CgoKPiArCXN0cnVjdCBncGlvX2Rlc2MgKnJlc2V0Owo+ICsJdW5zaWduZWQgaW50IHNs ZWVwX2RlbGF5Owo+ICt9Owo+ICsKPiArc3RhdGljIGlubGluZSBzdHJ1Y3Qgc3Q3NzAxICpwYW5l bF90b19zdDc3MDEoc3RydWN0IGRybV9wYW5lbCAqcGFuZWwpCj4gK3sKPiArCXJldHVybiBjb250 YWluZXJfb2YocGFuZWwsIHN0cnVjdCBzdDc3MDEsIHBhbmVsKTsKPiArfQo+ICsKPiArc3RhdGlj IGlubGluZSBpbnQgc3Q3NzAxX2RzaV93cml0ZShzdHJ1Y3Qgc3Q3NzAxICpzdDc3MDEsIGNvbnN0 IHZvaWQgKnNlcSwKPiArCQkJCSAgIHNpemVfdCBsZW4pCj4gK3sKPiArCXJldHVybiBtaXBpX2Rz aV9kY3Nfd3JpdGVfYnVmZmVyKHN0NzcwMS0+ZHNpLCBzZXEsIGxlbik7Cj4gK30KPiArCgoKPiAr c3RhdGljIGludCBzdDc3MDFfcHJlcGFyZShzdHJ1Y3QgZHJtX3BhbmVsICpwYW5lbCkKPiArewo+ ICsJc3RydWN0IHN0NzcwMSAqc3Q3NzAxID0gcGFuZWxfdG9fc3Q3NzAxKHBhbmVsKTsKPiArCWlu dCByZXQ7Cj4gKwo+ICsJZ3Bpb2Rfc2V0X3ZhbHVlKHN0NzcwMS0+cmVzZXQsIDApOwo+ICsJbXNs ZWVwKDIwKTsKPiArCj4gKwlyZXQgPSByZWd1bGF0b3JfYnVsa19lbmFibGUoc3Q3NzAxLT5kZXNj LT5udW1fc3VwcGxpZXMsCj4gKwkJCQkgICAgc3Q3NzAxLT5zdXBwbGllcyk7Cj4gKwlpZiAocmV0 IDwgMCkKPiArCQlyZXR1cm4gcmV0Owo+ICsJbXNsZWVwKDIwKTsKPiArCj4gKwlncGlvZF9zZXRf dmFsdWUoc3Q3NzAxLT5yZXNldCwgMSk7Cj4gKwltc2xlZXAoMjApOwo+ICsKPiArCWdwaW9kX3Nl dF92YWx1ZShzdDc3MDEtPnJlc2V0LCAwKTsKPiArCW1zbGVlcCgzMCk7Cj4gKwo+ICsJZ3Bpb2Rf c2V0X3ZhbHVlKHN0NzcwMS0+cmVzZXQsIDEpOwo+ICsJbXNsZWVwKDE1MCk7Cj4gKwo+ICsJc3Q3 NzAxX2luaXRfc2VxdWVuY2Uoc3Q3NzAxKTsKPiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICsKCj4g K3N0YXRpYyBpbnQgc3Q3NzAxX3VucHJlcGFyZShzdHJ1Y3QgZHJtX3BhbmVsICpwYW5lbCkKPiAr ewo+ICsJc3RydWN0IHN0NzcwMSAqc3Q3NzAxID0gcGFuZWxfdG9fc3Q3NzAxKHBhbmVsKTsKPiAr Cj4gKwlTVDc3MDFfRFNJKHN0NzcwMSwgTUlQSV9EQ1NfRVhJVF9TTEVFUF9NT0RFLCAweDAwKTsK PiArCj4gKwltc2xlZXAoc3Q3NzAxLT5zbGVlcF9kZWxheSk7Cj4gKwo+ICsJZ3Bpb2Rfc2V0X3Zh bHVlKHN0NzcwMS0+cmVzZXQsIDApOwo+ICsKPiArCWdwaW9kX3NldF92YWx1ZShzdDc3MDEtPnJl c2V0LCAxKTsKPiArCj4gKwlncGlvZF9zZXRfdmFsdWUoc3Q3NzAxLT5yZXNldCwgMCk7Ck5vIHRp bWluZyBjb25zdHJhaW5zIGhlcmU/IEluIHByZXBhcmUgdGhlcmUgYXJlIHNsZWVwcyBpbnRlcm1p eGVkLgoKPiArCj4gKwlyZWd1bGF0b3JfYnVsa19kaXNhYmxlKHN0NzcwMS0+ZGVzYy0+bnVtX3N1 cHBsaWVzLCBzdDc3MDEtPnN1cHBsaWVzKTsKPiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICsKPiAr c3RhdGljIGludCBzdDc3MDFfZ2V0X21vZGVzKHN0cnVjdCBkcm1fcGFuZWwgKnBhbmVsKQo+ICt7 Cj4gKwlzdHJ1Y3Qgc3Q3NzAxICpzdDc3MDEgPSBwYW5lbF90b19zdDc3MDEocGFuZWwpOwo+ICsJ Y29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmRlc2NfbW9kZSA9IHN0NzcwMS0+ZGVzYy0+ bW9kZTsKPiArCXN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlOwo+ICsKPiArCW1vZGUgPSBk cm1fbW9kZV9kdXBsaWNhdGUocGFuZWwtPmRybSwgZGVzY19tb2RlKTsKPiArCWlmICghbW9kZSkg ewo+ICsJCWRldl9lcnIoJnN0NzcwMS0+ZHNpLT5kZXYsICJmYWlsZWQgdG8gYWRkIG1vZGUgJXV4 JXV4QCV1XG4iLAo+ICsJCQlkZXNjX21vZGUtPmhkaXNwbGF5LCBkZXNjX21vZGUtPnZkaXNwbGF5 LAo+ICsJCQlkZXNjX21vZGUtPnZyZWZyZXNoKTsKVXNlIHNvbWV0aGluZyBsaWtlOgoJCURSTV9E RVZfRVJST1Ioc3Q3NzAxLT5kZXYsICJmYWlsZWQgdG8gYWRkIG1vZGUiIERSTV9NT0RFX0ZNVCAi LAoJCQkgICAgICBEUk1fTU9ERV9BUkcoZGVzY19tb2RlKSk7Cgo+ICsJCXJldHVybiAtRU5PTUVN Owo+ICsJfQo+ICsKPiArCWRybV9tb2RlX3NldF9uYW1lKG1vZGUpOwo+ICsJZHJtX21vZGVfcHJv YmVkX2FkZChwYW5lbC0+Y29ubmVjdG9yLCBtb2RlKTsKPiArCj4gKwlwYW5lbC0+Y29ubmVjdG9y LT5kaXNwbGF5X2luZm8ud2lkdGhfbW0gPSBkZXNjX21vZGUtPndpZHRoX21tOwo+ICsJcGFuZWwt PmNvbm5lY3Rvci0+ZGlzcGxheV9pbmZvLmhlaWdodF9tbSA9IGRlc2NfbW9kZS0+aGVpZ2h0X21t Owo+ICsKPiArCXJldHVybiAxOwo+ICt9Cj4gKwoKPiArc3RhdGljIGNvbnN0IHN0cnVjdCBzdDc3 MDFfcGFuZWxfZGVzYyB0czg1NTBiX2Rlc2MgPSB7Cj4gKwkubW9kZSA9ICZ0czg1NTBiX21vZGUs Cj4gKwkubGFuZXMgPSAyLAo+ICsJLmZsYWdzID0gTUlQSV9EU0lfTU9ERV9WSURFTywKPiArCS5m b3JtYXQgPSBNSVBJX0RTSV9GTVRfUkdCODg4LAo+ICsJLnN1cHBseV9uYW1lcyA9IHRzODU1MGJf c3VwcGx5X25hbWVzLAo+ICsJLm51bV9zdXBwbGllcyA9IEFSUkFZX1NJWkUodHM4NTUwYl9zdXBw bHlfbmFtZXMpLAo+ICsJLnBhbmVsX3NsZWVwX2RlbGF5ID0gODAsIC8qIHBhbmVsIG5lZWQgZXh0 cmEgODBtcyBmb3Igc2xlZXAgb3V0IGNtZCAqLwpJbiB0aGUgb25seSBwbGFjZSB0aGlzIGlzIHVz ZWQgdGhlcmUgaXMgYWRkZWQgMTIwIG1zIHRvby4KTG9va3MgaW5jb25zaXN0ZW50IC0gZG8gd2Ug aGF2ZSB0aGUgc2FtZSBkZWxheSB0d2ljZT8KCgo+ICsKPiArc3RhdGljIGludCBzdDc3MDFfZHNp X3Byb2JlKHN0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKmRzaSkKPiArewo+ICsJY29uc3Qgc3RydWN0 IHN0NzcwMV9wYW5lbF9kZXNjICpkZXNjOwo+ICsJc3RydWN0IGRldmljZV9ub2RlICpucDsKPiAr CXN0cnVjdCBzdDc3MDEgKnN0NzcwMTsKPiArCWludCByZXQsIGk7Cj4gKwo+ICsJc3Q3NzAxID0g ZGV2bV9remFsbG9jKCZkc2ktPmRldiwgc2l6ZW9mKCpzdDc3MDEpLCBHRlBfS0VSTkVMKTsKPiAr CWlmICghc3Q3NzAxKQo+ICsJCXJldHVybiAtRU5PTUVNOwo+ICsKPiArCWRlc2MgPSBvZl9kZXZp Y2VfZ2V0X21hdGNoX2RhdGEoJmRzaS0+ZGV2KTsKPiArCWRzaS0+bW9kZV9mbGFncyA9IGRlc2Mt PmZsYWdzOwo+ICsJZHNpLT5mb3JtYXQgPSBkZXNjLT5mb3JtYXQ7Cj4gKwlkc2ktPmxhbmVzID0g ZGVzYy0+bGFuZXM7Cj4gKwo+ICsJc3Q3NzAxLT5zdXBwbGllcyA9IGRldm1fa2NhbGxvYygmZHNp LT5kZXYsIGRlc2MtPm51bV9zdXBwbGllcywKPiArCQkJCQlzaXplb2YoKnN0NzcwMS0+c3VwcGxp ZXMpLAo+ICsJCQkJCUdGUF9LRVJORUwpOwo+ICsJaWYgKCFzdDc3MDEtPnN1cHBsaWVzKQo+ICsJ CXJldHVybiAtRU5PTUVNOwo+ICsKPiArCWZvciAoaSA9IDA7IGkgPCBkZXNjLT5udW1fc3VwcGxp ZXM7IGkrKykKPiArCQlzdDc3MDEtPnN1cHBsaWVzW2ldLnN1cHBseSA9IGRlc2MtPnN1cHBseV9u YW1lc1tpXTsKPiArCj4gKwlyZXQgPSBkZXZtX3JlZ3VsYXRvcl9idWxrX2dldCgmZHNpLT5kZXYs IGRlc2MtPm51bV9zdXBwbGllcywKPiArCQkJCSAgICAgIHN0NzcwMS0+c3VwcGxpZXMpOwo+ICsJ aWYgKHJldCA8IDApCj4gKwkJcmV0dXJuIHJldDsKPiArCj4gKwlzdDc3MDEtPnJlc2V0ID0gZGV2 bV9ncGlvZF9nZXQoJmRzaS0+ZGV2LCAicmVzZXQiLCBHUElPRF9PVVRfTE9XKTsKPiArCWlmIChJ U19FUlIoc3Q3NzAxLT5yZXNldCkpIHsKPiArCQlkZXZfZXJyKCZkc2ktPmRldiwgIkNvdWxkbid0 IGdldCBvdXIgcmVzZXQgR1BJT1xuIik7Cj4gKwkJcmV0dXJuIFBUUl9FUlIoc3Q3NzAxLT5yZXNl dCk7Cj4gKwl9Cj4gKwo+ICsJbnAgPSBvZl9wYXJzZV9waGFuZGxlKGRzaS0+ZGV2Lm9mX25vZGUs ICJiYWNrbGlnaHQiLCAwKTsKPiArCWlmIChucCkgewo+ICsJCXN0NzcwMS0+YmFja2xpZ2h0ID0g b2ZfZmluZF9iYWNrbGlnaHRfYnlfbm9kZShucCk7Cj4gKwkJb2Zfbm9kZV9wdXQobnApOwo+ICsK PiArCQlpZiAoIXN0NzcwMS0+YmFja2xpZ2h0KQo+ICsJCQlyZXR1cm4gLUVQUk9CRV9ERUZFUjsK PiArCX0KVGhpcyBpcyBhIHNpbXBsZXIgdmFyaWFudCBvZiB0aGUgYWJvdmU6CglzdDc3MDEtPmJh Y2tsaWdodCA9IGRldm1fb2ZfZmluZF9iYWNrbGlnaHQoZHNpLT5kZXYpOwoJaWYgKElTX0VSUihz dDc3MDEtPmJhY2tsaWdodCkpCgkJcmV0dXJuIFBUUl9FUlIoc3Q3NzAxLT5iYWNrbGlnaHQpOwoK U3VnZ2VzdGVkIGJ5IE5vcmFsZiBpbiBhbm90aGVyIHRocmVhZCBmb3IgYSBzaW1pbGFyIGRyaXZl ci4KCgo+ICsKPiArCWRybV9wYW5lbF9pbml0KCZzdDc3MDEtPnBhbmVsKTsKPiArCj4gKwkvKiBX ZSBuZWVkIHRvIHdhaXQgMTIwbXMgYWZ0ZXIgYSBzbGVlcCBvdXQgY29tbWFuZCAqLwo+ICsJc3Q3 NzAxLT5zbGVlcF9kZWxheSA9IDEyMCArIGRlc2MtPnBhbmVsX3NsZWVwX2RlbGF5OwpUaGlzIGlz IHRoZSBvdGhlciBwbGFjZSB3aGVyZSB3ZSBhZGQgMTIwIHRvIHRoZSBwcmV2aW91cyA4MCAtIGlu IHRvdGFsIDIwMCBtcy4KCj4gKwlzdDc3MDEtPnBhbmVsLmZ1bmNzID0gJnN0NzcwMV9mdW5jczsK PiArCXN0NzcwMS0+cGFuZWwuZGV2ID0gJmRzaS0+ZGV2Owo+ICsKPiArCXJldCA9IGRybV9wYW5l bF9hZGQoJnN0NzcwMS0+cGFuZWwpOwo+ICsJaWYgKHJldCA8IDApCj4gKwkJcmV0dXJuIHJldDsK PiArCj4gKwltaXBpX2RzaV9zZXRfZHJ2ZGF0YShkc2ksIHN0NzcwMSk7Cj4gKwlzdDc3MDEtPmRz aSA9IGRzaTsKCj4gKwlzdDc3MDEtPmRlc2MgPSBkZXNjOwpUaGlzIGFzc2lnbm1lbnQgY291bGQg Y29tZSBlYXJsaWVyLCBzbyB3ZSBkbyBub3QgaGF2ZSBpdCB1bmFzc2lnbmVkIHdoZW4gY2FsbGlu ZwpvdGhlciBmdW5jdGlvbnMuIEFzIGl0IGlzIG5vdyBpdCB3b3JrcyBzbyB5b3UgY2FuIHNhZmVs eSBpZ25vcmUgdGhpcyBjb21tZW50LgoKPiArCj4gKwlyZXR1cm4gbWlwaV9kc2lfYXR0YWNoKGRz aSk7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgc3Q3NzAxX2RzaV9yZW1vdmUoc3RydWN0IG1pcGlf ZHNpX2RldmljZSAqZHNpKQo+ICt7Cj4gKwlzdHJ1Y3Qgc3Q3NzAxICpzdDc3MDEgPSBtaXBpX2Rz aV9nZXRfZHJ2ZGF0YShkc2kpOwo+ICsKPiArCW1pcGlfZHNpX2RldGFjaChkc2kpOwo+ICsJZHJt X3BhbmVsX3JlbW92ZSgmc3Q3NzAxLT5wYW5lbCk7Cj4gKwo+ICsJaWYgKHN0NzcwMS0+YmFja2xp Z2h0KQo+ICsJCXB1dF9kZXZpY2UoJnN0NzcwMS0+YmFja2xpZ2h0LT5kZXYpOwoKVXNlOgoJYmFj a2xpZ2h0X3B1dChzdDc3MDEtPmJhY2tsaWdodCk7CgoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vZHJpLWRldmVsCg==