From mboxrd@z Thu Jan 1 00:00:00 1970 From: Archit Taneja Subject: [PATCH v3 1/5] drm/dsi: Refactor device creation Date: Mon, 30 Nov 2015 17:31:28 +0530 Message-ID: <1448884892-7731-2-git-send-email-architt@codeaurora.org> References: <1444123482-25579-1-git-send-email-architt@codeaurora.org> <1448884892-7731-1-git-send-email-architt@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from smtp.codeaurora.org (smtp.codeaurora.org [198.145.29.96]) by gabe.freedesktop.org (Postfix) with ESMTPS id 15D0B6E57D for ; Mon, 30 Nov 2015 04:01:43 -0800 (PST) In-Reply-To: <1448884892-7731-1-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: dri-devel@lists.freedesktop.org, a.hajda@samsung.com Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, treding@nvidia.com List-Id: dri-devel@lists.freedesktop.org U2ltcGxpZnkgdGhlIG1pcGkgZHNpIGRldmljZSBjcmVhdGlvbiBwcm9jZXNzLiBkZXZpY2VfaW5p dGlhbGl6ZSBhbmQKZGV2aWNlX2FkZCBkb24ndCBuZWVkIHRvIGJlIGNhbGxlZCBzZXBhcmF0ZWx5 IHdoZW4gY3JlYXRpbmcKbWlwaV9kc2lfZGV2aWNlJ3MuIFVzZSBkZXZpY2VfcmVnaXN0ZXIgaW5z dGVhZCB0byBzaW1wbGlmeSB0aGluZ3MuCgpDcmVhdGUgYSBoZWxwZXIgZnVuY3Rpb24gbWlwaV9k c2lfZGV2aWNlX25ldyB3aGljaCB0YWtlcyBpbiBzdHJ1Y3QKbWlwaV9kc2lfZGV2aWNlX2luZm8g YW5kIG1pcGlfZHNpX2hvc3QuIEl0IGNsdWJzIHRoZSBmdW5jdGlvbnMKbWlwaV9kc2lfZGV2aWNl X2FsbG9jIGFuZCBtaXBpX2RzaV9kZXZpY2VfYWRkIGludG8gb25lLgoKbWlwaV9kc2lfZGV2aWNl X2luZm8gYWN0cyBhcyBhIHRlbXBsYXRlIHRvIHBvcHVsYXRlIHRoZSBkc2kgZGV2aWNlCmluZm9y bWF0aW9uLiBUaGlzIGlzIHBvcHVsYXRlZCBieSBvZl9taXBpX2RzaV9kZXZpY2VfYWRkIGFuZCBw YXNzZWQgdG8KbWlwaV9kc2lfZGV2aWNlX25ldy4KCkxhdGVyIG9uLCB3ZSdsbCBwcm92aWRlIG1p cGlfZHNpX2RldmljZV9uZXcgYXMgYSBzdGFuZGFsb25lIHdheSB0byBjcmVhdGUKYSBkc2kgZGV2 aWNlIG5vdCBhdmFpbGFibGUgdmlhIERULgoKVGhlIG5ldyBkZXZpY2UgY3JlYXRpb24gcHJvY2Vz cyB0cmllcyB0byBjbG9zZWx5IGZvbGxvdyB3aGF0J3MgYmVlbiBkb25lCmluIGkyY19uZXdfZGV2 aWNlIGluIGkyYy1jb3JlLgoKUmV2aWV3ZWQtYnk6IEFuZHJ6ZWogSGFqZGEgPGEuaGFqZGFAc2Ft c3VuZy5jb20+ClNpZ25lZC1vZmYtYnk6IEFyY2hpdCBUYW5lamEgPGFyY2hpdHRAY29kZWF1cm9y YS5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9taXBpX2RzaS5jIHwgNjEgKysrKysrKysr KysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpbmNsdWRlL2RybS9kcm1fbWlwaV9k c2kuaCAgICAgfCAxNSArKysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25z KCspLCAzNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21p cGlfZHNpLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX21pcGlfZHNpLmMKaW5kZXggMmQ1Y2E4ZWUu LjgyYmNkY2QgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fbWlwaV9kc2kuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX21pcGlfZHNpLmMKQEAgLTEwMiw5ICsxMDIsMTggQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBkZXZpY2VfdHlwZSBtaXBpX2RzaV9kZXZpY2VfdHlwZSA9IHsKIAku cmVsZWFzZSA9IG1pcGlfZHNpX2Rldl9yZWxlYXNlLAogfTsKIAotc3RhdGljIHN0cnVjdCBtaXBp X2RzaV9kZXZpY2UgKm1pcGlfZHNpX2RldmljZV9hbGxvYyhzdHJ1Y3QgbWlwaV9kc2lfaG9zdCAq aG9zdCkKK3N0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKm1pcGlfZHNpX2RldmljZV9uZXcoc3RydWN0 IG1pcGlfZHNpX2hvc3QgKmhvc3QsCisJCQkJCSAgICBzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlX2lu Zm8gKmluZm8pCiB7CiAJc3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpOworCXN0cnVjdCBkZXZp Y2UgKmRldiA9IGhvc3QtPmRldjsKKwlpbnQgcmV0OworCisJaWYgKGluZm8tPnJlZyA+IDMpIHsK KwkJZGV2X2VycihkZXYsICJkZXZpY2Ugbm9kZSBoYXMgaW52YWxpZCByZWcgcHJvcGVydHk6ICV1 XG4iLAorCQkJaW5mby0+cmVnKTsKKwkJcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7CisJfQogCiAJ ZHNpID0ga3phbGxvYyhzaXplb2YoKmRzaSksIEdGUF9LRVJORUwpOwogCWlmICghZHNpKQpAQCAt MTE0LDI2ICsxMjMsMjcgQEAgc3RhdGljIHN0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKm1pcGlfZHNp X2RldmljZV9hbGxvYyhzdHJ1Y3QgbWlwaV9kc2lfaG9zdCAqaG9zdCkKIAlkc2ktPmRldi5idXMg PSAmbWlwaV9kc2lfYnVzX3R5cGU7CiAJZHNpLT5kZXYucGFyZW50ID0gaG9zdC0+ZGV2OwogCWRz aS0+ZGV2LnR5cGUgPSAmbWlwaV9kc2lfZGV2aWNlX3R5cGU7CisJZHNpLT5kZXYub2Zfbm9kZSA9 IGluZm8tPm5vZGU7CisJZHNpLT5jaGFubmVsID0gaW5mby0+cmVnOwogCi0JZGV2aWNlX2luaXRp YWxpemUoJmRzaS0+ZGV2KTsKLQotCXJldHVybiBkc2k7Ci19Ci0KLXN0YXRpYyBpbnQgbWlwaV9k c2lfZGV2aWNlX2FkZChzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlICpkc2kpCi17Ci0Jc3RydWN0IG1p cGlfZHNpX2hvc3QgKmhvc3QgPSBkc2ktPmhvc3Q7CisJZGV2X3NldF9uYW1lKCZkc2ktPmRldiwg IiVzLiVkIiwgZGV2X25hbWUoaG9zdC0+ZGV2KSwgaW5mby0+cmVnKTsKIAotCWRldl9zZXRfbmFt ZSgmZHNpLT5kZXYsICIlcy4lZCIsIGRldl9uYW1lKGhvc3QtPmRldiksICBkc2ktPmNoYW5uZWwp OworCXJldCA9IGRldmljZV9yZWdpc3RlcigmZHNpLT5kZXYpOworCWlmIChyZXQpIHsKKwkJZGV2 X2VycihkZXYsICJmYWlsZWQgdG8gcmVnaXN0ZXIgZGV2aWNlOiAlZFxuIiwgcmV0KTsKKwkJa2Zy ZWUoZHNpKTsKKwkJcmV0dXJuIEVSUl9QVFIocmV0KTsKKwl9CiAKLQlyZXR1cm4gZGV2aWNlX2Fk ZCgmZHNpLT5kZXYpOworCXJldHVybiBkc2k7CiB9CitFWFBPUlRfU1lNQk9MKG1pcGlfZHNpX2Rl dmljZV9uZXcpOwogCiBzdGF0aWMgc3RydWN0IG1pcGlfZHNpX2RldmljZSAqCiBvZl9taXBpX2Rz aV9kZXZpY2VfYWRkKHN0cnVjdCBtaXBpX2RzaV9ob3N0ICpob3N0LCBzdHJ1Y3QgZGV2aWNlX25v ZGUgKm5vZGUpCiB7Ci0Jc3RydWN0IG1pcGlfZHNpX2RldmljZSAqZHNpOwogCXN0cnVjdCBkZXZp Y2UgKmRldiA9IGhvc3QtPmRldjsKKwlzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlX2luZm8gaW5mbyA9 IHsgfTsKIAlpbnQgcmV0OwogCXUzMiByZWc7CiAKQEAgLTE0NCwzMSArMTU0LDEwIEBAIG9mX21p cGlfZHNpX2RldmljZV9hZGQoc3RydWN0IG1pcGlfZHNpX2hvc3QgKmhvc3QsIHN0cnVjdCBkZXZp Y2Vfbm9kZSAqbm9kZSkKIAkJcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7CiAJfQogCi0JaWYgKHJl ZyA+IDMpIHsKLQkJZGV2X2VycihkZXYsICJkZXZpY2Ugbm9kZSAlcyBoYXMgaW52YWxpZCByZWcg cHJvcGVydHk6ICV1XG4iLAotCQkJbm9kZS0+ZnVsbF9uYW1lLCByZWcpOwotCQlyZXR1cm4gRVJS X1BUUigtRUlOVkFMKTsKLQl9Ci0KLQlkc2kgPSBtaXBpX2RzaV9kZXZpY2VfYWxsb2MoaG9zdCk7 Ci0JaWYgKElTX0VSUihkc2kpKSB7Ci0JCWRldl9lcnIoZGV2LCAiZmFpbGVkIHRvIGFsbG9jYXRl IERTSSBkZXZpY2UgJXM6ICVsZFxuIiwKLQkJCW5vZGUtPmZ1bGxfbmFtZSwgUFRSX0VSUihkc2kp KTsKLQkJcmV0dXJuIGRzaTsKLQl9Ci0KLQlkc2ktPmRldi5vZl9ub2RlID0gb2Zfbm9kZV9nZXQo bm9kZSk7Ci0JZHNpLT5jaGFubmVsID0gcmVnOworCWluZm8ucmVnID0gcmVnOworCWluZm8ubm9k ZSA9IG9mX25vZGVfZ2V0KG5vZGUpOwogCi0JcmV0ID0gbWlwaV9kc2lfZGV2aWNlX2FkZChkc2kp OwotCWlmIChyZXQpIHsKLQkJZGV2X2VycihkZXYsICJmYWlsZWQgdG8gYWRkIERTSSBkZXZpY2Ug JXM6ICVkXG4iLAotCQkJbm9kZS0+ZnVsbF9uYW1lLCByZXQpOwotCQlrZnJlZShkc2kpOwotCQly ZXR1cm4gRVJSX1BUUihyZXQpOwotCX0KLQotCXJldHVybiBkc2k7CisJcmV0dXJuIG1pcGlfZHNp X2RldmljZV9uZXcoaG9zdCwgJmluZm8pOwogfQogCiBpbnQgbWlwaV9kc2lfaG9zdF9yZWdpc3Rl cihzdHJ1Y3QgbWlwaV9kc2lfaG9zdCAqaG9zdCkKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2Ry bV9taXBpX2RzaS5oIGIvaW5jbHVkZS9kcm0vZHJtX21pcGlfZHNpLmgKaW5kZXggZjFkOGQwZC4u OTBmNGYzYyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX21pcGlfZHNpLmgKKysrIGIvaW5j bHVkZS9kcm0vZHJtX21pcGlfZHNpLmgKQEAgLTE0MCw2ICsxNDAsMTkgQEAgZW51bSBtaXBpX2Rz aV9waXhlbF9mb3JtYXQgewogfTsKIAogLyoqCisgKiBzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlX2lu Zm8gLSB0ZW1wbGF0ZSBmb3IgY3JlYXRpbmcgYSBtaXBpX2RzaV9kZXZpY2UKKyAqIEByZWc6IERT SSB2aXJ0dWFsIGNoYW5uZWwgYXNzaWduZWQgdG8gcGVyaXBoZXJhbAorICogQG5vZGU6IHBvaW50 ZXIgdG8gT0YgZGV2aWNlIG5vZGUKKyAqCisgKiBUaGlzIGlzIHBvcHVsYXRlZCBhbmQgcGFzc2Vk IHRvIG1pcGlfZHNpX2RldmljZV9uZXcgdG8gY3JlYXRlIGEgbmV3CisgKiBEU0kgZGV2aWNlCisg Ki8KK3N0cnVjdCBtaXBpX2RzaV9kZXZpY2VfaW5mbyB7CisJdTMyIHJlZzsKKwlzdHJ1Y3QgZGV2 aWNlX25vZGUgKm5vZGU7Cit9OworCisvKioKICAqIHN0cnVjdCBtaXBpX2RzaV9kZXZpY2UgLSBE U0kgcGVyaXBoZXJhbCBkZXZpY2UKICAqIEBob3N0OiBEU0kgaG9zdCBmb3IgdGhpcyBwZXJpcGhl cmFsCiAgKiBAZGV2OiBkcml2ZXIgbW9kZWwgZGV2aWNlIG5vZGUgZm9yIHRoaXMgcGVyaXBoZXJh bApAQCAtMTc0LDYgKzE4Nyw4IEBAIHNzaXplX3QgbWlwaV9kc2lfZ2VuZXJpY193cml0ZShzdHJ1 Y3QgbWlwaV9kc2lfZGV2aWNlICpkc2ksIGNvbnN0IHZvaWQgKnBheWxvYWQsCiBzc2l6ZV90IG1p cGlfZHNpX2dlbmVyaWNfcmVhZChzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlICpkc2ksIGNvbnN0IHZv aWQgKnBhcmFtcywKIAkJCSAgICAgIHNpemVfdCBudW1fcGFyYW1zLCB2b2lkICpkYXRhLCBzaXpl X3Qgc2l6ZSk7CiAKK3N0cnVjdCBtaXBpX2RzaV9kZXZpY2UgKm1pcGlfZHNpX2RldmljZV9uZXco c3RydWN0IG1pcGlfZHNpX2hvc3QgKmhvc3QsCisJCQkJCSAgICBzdHJ1Y3QgbWlwaV9kc2lfZGV2 aWNlX2luZm8gKmluZm8pOwogLyoqCiAgKiBlbnVtIG1pcGlfZHNpX2Rjc190ZWFyX21vZGUgLSBU ZWFyaW5nIEVmZmVjdCBPdXRwdXQgTGluZSBtb2RlCiAgKiBATUlQSV9EU0lfRENTX1RFQVJfTU9E RV9WQkxBTks6IHRoZSBURSBvdXRwdXQgbGluZSBjb25zaXN0cyBvZiBWLUJsYW5raW5nCi0tIApU aGUgUXVhbGNvbW0gSW5ub3ZhdGlvbiBDZW50ZXIsIEluYy4gaXMgYSBtZW1iZXIgb2YgdGhlIENv ZGUgQXVyb3JhIEZvcnVtLApob3N0ZWQgYnkgVGhlIExpbnV4IEZvdW5kYXRpb24KCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5n IGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==