From: Andrzej Hajda Subject: Re: [RFC v2 1/5] drm/dsi: Refactor device creation Date: Fri, 30 Oct 2015 12:28:20 +0100 Message-ID: <56335454.5090109@samsung.com> References: <1435641851-27295-1-git-send-email-architt@codeaurora.org> <1444123482-25579-1-git-send-email-architt@codeaurora.org> <1444123482-25579-2-git-send-email-architt@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-reply-to: <1444123482-25579-2-git-send-email-architt@codeaurora.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Archit Taneja , dri-devel@lists.freedesktop.org Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, treding@nvidia.com List-Id: linux-arm-msm@vger.kernel.org T24gMTAvMDYvMjAxNSAxMToyNCBBTSwgQXJjaGl0IFRhbmVqYSB3cm90ZToKPiBTaW1wbGlmeSB0 aGUgbWlwaSBkc2kgZGV2aWNlIGNyZWF0aW9uIHByb2Nlc3MuIGRldmljZV9pbml0aWFsaXplIGFu ZAo+IGRldmljZV9hZGQgZG9uJ3QgbmVlZCB0byBiZSBjYWxsZWQgc2VwYXJhdGVseSB3aGVuIGNy ZWF0aW5nCj4gbWlwaV9kc2lfZGV2aWNlJ3MuIFVzZSBkZXZpY2VfcmVnaXN0ZXIgaW5zdGVhZCB0 byBzaW1wbGlmeSB0aGluZ3MuCj4KPiBDcmVhdGUgYSBoZWxwZXIgZnVuY3Rpb24gbWlwaV9kc2lf ZGV2aWNlX25ldyB3aGljaCB0YWtlcyBpbiBzdHJ1Y3QKPiBtaXBpX2RzaV9kZXZpY2VfaW5mbyBh bmQgbWlwaV9kc2lfaG9zdC4gSXQgY2x1YnMgdGhlIGZ1bmN0aW9ucwo+IG1pcGlfZHNpX2Rldmlj ZV9hbGxvYyBhbmQgbWlwaV9kc2lfZGV2aWNlX2FkZCBpbnRvIG9uZS4KPgo+IG1pcGlfZHNpX2Rl dmljZV9pbmZvIGFjdHMgYXMgYSB0ZW1wbGF0ZSB0byBwb3B1bGF0ZSB0aGUgZHNpIGRldmljZQo+ IGluZm9ybWF0aW9uLiBUaGlzIGlzIHBvcHVsYXRlZCBieSBvZl9taXBpX2RzaV9kZXZpY2VfYWRk IGFuZCBwYXNzZWQgdG8KPiBtaXBpX2RzaV9kZXZpY2VfbmV3Lgo+Cj4gTGF0ZXIgb24sIHdlJ2xs IHByb3ZpZGUgbWlwaV9kc2lfZGV2aWNlX25ldyBhcyBhIHN0YW5kYWxvbmUgd2F5IHRvIGNyZWF0 ZQo+IGEgZHNpIGRldmljZSBub3QgYXZhaWxhYmxlIHZpYSBEVC4KPgo+IFRoZSBuZXcgZGV2aWNl IGNyZWF0aW9uIHByb2Nlc3MgdHJpZXMgdG8gY2xvc2VseSBmb2xsb3cgd2hhdCdzIGJlZW4gZG9u ZQo+IGluIGkyY19uZXdfZGV2aWNlIGluIGkyYy1jb3JlLgo+Cj4gU2lnbmVkLW9mZi1ieTogQXJj aGl0IFRhbmVqYSA8YXJjaGl0dEBjb2RlYXVyb3JhLm9yZz4KClJldmlld2VkLWJ5OiBBbmRyemVq IEhhamRhIDxhLmhhamRhQHNhbXN1bmcuY29tPgoKUmVnYXJkcwpBbmRyemVqCgo+IC0tLQo+ICBk cml2ZXJzL2dwdS9kcm0vZHJtX21pcGlfZHNpLmMgfCA2MSArKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgaW5jbHVkZS9kcm0vZHJtX21pcGlfZHNpLmggICAgIHwg MTUgKysrKysrKysrKysKPiAgMiBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCAzNiBk ZWxldGlvbnMoLSkKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21pcGlfZHNp LmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX21pcGlfZHNpLmMKPiBpbmRleCAyZDVjYThlZS4uMjQ1 ZWNmZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21pcGlfZHNpLmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX21pcGlfZHNpLmMKPiBAQCAtMTAyLDkgKzEwMiwxOCBAQCBz dGF0aWMgY29uc3Qgc3RydWN0IGRldmljZV90eXBlIG1pcGlfZHNpX2RldmljZV90eXBlID0gewo+ ICAJLnJlbGVhc2UgPSBtaXBpX2RzaV9kZXZfcmVsZWFzZSwKPiAgfTsKPiAgCj4gLXN0YXRpYyBz dHJ1Y3QgbWlwaV9kc2lfZGV2aWNlICptaXBpX2RzaV9kZXZpY2VfYWxsb2Moc3RydWN0IG1pcGlf ZHNpX2hvc3QgKmhvc3QpCj4gK3N0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKm1pcGlfZHNpX2Rldmlj ZV9uZXcoc3RydWN0IG1pcGlfZHNpX2hvc3QgKmhvc3QsCj4gKwkJCQkJICAgIHN0cnVjdCBtaXBp X2RzaV9kZXZpY2VfaW5mbyAqaW5mbykKPiAgewo+ICAJc3RydWN0IG1pcGlfZHNpX2RldmljZSAq ZHNpOwo+ICsJc3RydWN0IGRldmljZSAqZGV2ID0gaG9zdC0+ZGV2Owo+ICsJaW50IHI7Cgo+ICsK PiArCWlmIChpbmZvLT5yZWcgPiAzKSB7Cj4gKwkJZGV2X2VycihkZXYsICJkZXZpY2Ugbm9kZSBo YXMgaW52YWxpZCByZWcgcHJvcGVydHk6ICV1XG4iLAo+ICsJCQlpbmZvLT5yZWcpOwo+ICsJCXJl dHVybiBFUlJfUFRSKC1FSU5WQUwpOwo+ICsJfQo+ICAKPiAgCWRzaSA9IGt6YWxsb2Moc2l6ZW9m KCpkc2kpLCBHRlBfS0VSTkVMKTsKPiAgCWlmICghZHNpKQo+IEBAIC0xMTQsMjYgKzEyMywyNyBA QCBzdGF0aWMgc3RydWN0IG1pcGlfZHNpX2RldmljZSAqbWlwaV9kc2lfZGV2aWNlX2FsbG9jKHN0 cnVjdCBtaXBpX2RzaV9ob3N0ICpob3N0KQo+ICAJZHNpLT5kZXYuYnVzID0gJm1pcGlfZHNpX2J1 c190eXBlOwo+ICAJZHNpLT5kZXYucGFyZW50ID0gaG9zdC0+ZGV2Owo+ICAJZHNpLT5kZXYudHlw ZSA9ICZtaXBpX2RzaV9kZXZpY2VfdHlwZTsKPiArCWRzaS0+ZGV2Lm9mX25vZGUgPSBpbmZvLT5u b2RlOwo+ICsJZHNpLT5jaGFubmVsID0gaW5mby0+cmVnOwo+ICAKPiAtCWRldmljZV9pbml0aWFs aXplKCZkc2ktPmRldik7Cj4gLQo+IC0JcmV0dXJuIGRzaTsKPiAtfQo+IC0KPiAtc3RhdGljIGlu dCBtaXBpX2RzaV9kZXZpY2VfYWRkKHN0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKmRzaSkKPiAtewo+ IC0Jc3RydWN0IG1pcGlfZHNpX2hvc3QgKmhvc3QgPSBkc2ktPmhvc3Q7Cj4gKwlkZXZfc2V0X25h bWUoJmRzaS0+ZGV2LCAiJXMuJWQiLCBkZXZfbmFtZShob3N0LT5kZXYpLCBpbmZvLT5yZWcpOwo+ ICAKPiAtCWRldl9zZXRfbmFtZSgmZHNpLT5kZXYsICIlcy4lZCIsIGRldl9uYW1lKGhvc3QtPmRl diksICBkc2ktPmNoYW5uZWwpOwo+ICsJciA9IGRldmljZV9yZWdpc3RlcigmZHNpLT5kZXYpOwo+ ICsJaWYgKHIpIHsKPiArCQlkZXZfZXJyKGRldiwgImZhaWxlZCB0byByZWdpc3RlciBkZXZpY2U6 ICVkXG4iLCByKTsKPiArCQlrZnJlZShkc2kpOwo+ICsJCXJldHVybiBFUlJfUFRSKHIpOwo+ICsJ fQo+ICAKPiAtCXJldHVybiBkZXZpY2VfYWRkKCZkc2ktPmRldik7Cj4gKwlyZXR1cm4gZHNpOwo+ ICB9Cj4gK0VYUE9SVF9TWU1CT0wobWlwaV9kc2lfZGV2aWNlX25ldyk7Cj4gIAo+ICBzdGF0aWMg c3RydWN0IG1pcGlfZHNpX2RldmljZSAqCj4gIG9mX21pcGlfZHNpX2RldmljZV9hZGQoc3RydWN0 IG1pcGlfZHNpX2hvc3QgKmhvc3QsIHN0cnVjdCBkZXZpY2Vfbm9kZSAqbm9kZSkKPiAgewo+IC0J c3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpOwo+ICAJc3RydWN0IGRldmljZSAqZGV2ID0gaG9z dC0+ZGV2Owo+ICsJc3RydWN0IG1pcGlfZHNpX2RldmljZV9pbmZvIGluZm8gPSB7IH07Cj4gIAlp bnQgcmV0Owo+ICAJdTMyIHJlZzsKPiAgCj4gQEAgLTE0NCwzMSArMTU0LDEwIEBAIG9mX21pcGlf ZHNpX2RldmljZV9hZGQoc3RydWN0IG1pcGlfZHNpX2hvc3QgKmhvc3QsIHN0cnVjdCBkZXZpY2Vf bm9kZSAqbm9kZSkKPiAgCQlyZXR1cm4gRVJSX1BUUigtRUlOVkFMKTsKPiAgCX0KPiAgCj4gLQlp ZiAocmVnID4gMykgewo+IC0JCWRldl9lcnIoZGV2LCAiZGV2aWNlIG5vZGUgJXMgaGFzIGludmFs aWQgcmVnIHByb3BlcnR5OiAldVxuIiwKPiAtCQkJbm9kZS0+ZnVsbF9uYW1lLCByZWcpOwo+IC0J CXJldHVybiBFUlJfUFRSKC1FSU5WQUwpOwo+IC0JfQo+IC0KPiAtCWRzaSA9IG1pcGlfZHNpX2Rl dmljZV9hbGxvYyhob3N0KTsKPiAtCWlmIChJU19FUlIoZHNpKSkgewo+IC0JCWRldl9lcnIoZGV2 LCAiZmFpbGVkIHRvIGFsbG9jYXRlIERTSSBkZXZpY2UgJXM6ICVsZFxuIiwKPiAtCQkJbm9kZS0+ ZnVsbF9uYW1lLCBQVFJfRVJSKGRzaSkpOwo+IC0JCXJldHVybiBkc2k7Cj4gLQl9Cj4gLQo+IC0J ZHNpLT5kZXYub2Zfbm9kZSA9IG9mX25vZGVfZ2V0KG5vZGUpOwo+IC0JZHNpLT5jaGFubmVsID0g cmVnOwo+ICsJaW5mby5yZWcgPSByZWc7Cj4gKwlpbmZvLm5vZGUgPSBvZl9ub2RlX2dldChub2Rl KTsKPiAgCj4gLQlyZXQgPSBtaXBpX2RzaV9kZXZpY2VfYWRkKGRzaSk7Cj4gLQlpZiAocmV0KSB7 Cj4gLQkJZGV2X2VycihkZXYsICJmYWlsZWQgdG8gYWRkIERTSSBkZXZpY2UgJXM6ICVkXG4iLAo+ IC0JCQlub2RlLT5mdWxsX25hbWUsIHJldCk7Cj4gLQkJa2ZyZWUoZHNpKTsKPiAtCQlyZXR1cm4g RVJSX1BUUihyZXQpOwo+IC0JfQo+IC0KPiAtCXJldHVybiBkc2k7Cj4gKwlyZXR1cm4gbWlwaV9k c2lfZGV2aWNlX25ldyhob3N0LCAmaW5mbyk7Cj4gIH0KPiAgCj4gIGludCBtaXBpX2RzaV9ob3N0 X3JlZ2lzdGVyKHN0cnVjdCBtaXBpX2RzaV9ob3N0ICpob3N0KQo+IGRpZmYgLS1naXQgYS9pbmNs dWRlL2RybS9kcm1fbWlwaV9kc2kuaCBiL2luY2x1ZGUvZHJtL2RybV9taXBpX2RzaS5oCj4gaW5k ZXggZjFkOGQwZC4uOTBmNGYzYyAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fbWlwaV9k c2kuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9taXBpX2RzaS5oCj4gQEAgLTE0MCw2ICsxNDAs MTkgQEAgZW51bSBtaXBpX2RzaV9waXhlbF9mb3JtYXQgewo+ICB9Owo+ICAKPiAgLyoqCj4gKyAq IHN0cnVjdCBtaXBpX2RzaV9kZXZpY2VfaW5mbyAtIHRlbXBsYXRlIGZvciBjcmVhdGluZyBhIG1p cGlfZHNpX2RldmljZQo+ICsgKiBAcmVnOiBEU0kgdmlydHVhbCBjaGFubmVsIGFzc2lnbmVkIHRv IHBlcmlwaGVyYWwKPiArICogQG5vZGU6IHBvaW50ZXIgdG8gT0YgZGV2aWNlIG5vZGUKPiArICoK PiArICogVGhpcyBpcyBwb3B1bGF0ZWQgYW5kIHBhc3NlZCB0byBtaXBpX2RzaV9kZXZpY2VfbmV3 IHRvIGNyZWF0ZSBhIG5ldwo+ICsgKiBEU0kgZGV2aWNlCj4gKyAqLwo+ICtzdHJ1Y3QgbWlwaV9k c2lfZGV2aWNlX2luZm8gewo+ICsJdTMyIHJlZzsKPiArCXN0cnVjdCBkZXZpY2Vfbm9kZSAqbm9k ZTsKPiArfTsKPiArCj4gKy8qKgo+ICAgKiBzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlIC0gRFNJIHBl cmlwaGVyYWwgZGV2aWNlCj4gICAqIEBob3N0OiBEU0kgaG9zdCBmb3IgdGhpcyBwZXJpcGhlcmFs Cj4gICAqIEBkZXY6IGRyaXZlciBtb2RlbCBkZXZpY2Ugbm9kZSBmb3IgdGhpcyBwZXJpcGhlcmFs Cj4gQEAgLTE3NCw2ICsxODcsOCBAQCBzc2l6ZV90IG1pcGlfZHNpX2dlbmVyaWNfd3JpdGUoc3Ry dWN0IG1pcGlfZHNpX2RldmljZSAqZHNpLCBjb25zdCB2b2lkICpwYXlsb2FkLAo+ICBzc2l6ZV90 IG1pcGlfZHNpX2dlbmVyaWNfcmVhZChzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlICpkc2ksIGNvbnN0 IHZvaWQgKnBhcmFtcywKPiAgCQkJICAgICAgc2l6ZV90IG51bV9wYXJhbXMsIHZvaWQgKmRhdGEs IHNpemVfdCBzaXplKTsKPiAgCj4gK3N0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKm1pcGlfZHNpX2Rl dmljZV9uZXcoc3RydWN0IG1pcGlfZHNpX2hvc3QgKmhvc3QsCj4gKwkJCQkJICAgIHN0cnVjdCBt aXBpX2RzaV9kZXZpY2VfaW5mbyAqaW5mbyk7Cj4gIC8qKgo+ICAgKiBlbnVtIG1pcGlfZHNpX2Rj c190ZWFyX21vZGUgLSBUZWFyaW5nIEVmZmVjdCBPdXRwdXQgTGluZSBtb2RlCj4gICAqIEBNSVBJ X0RTSV9EQ1NfVEVBUl9NT0RFX1ZCTEFOSzogdGhlIFRFIG91dHB1dCBsaW5lIGNvbnNpc3RzIG9m IFYtQmxhbmtpbmcKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs Cg==