From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jagan Teki Subject: [PATCH v8 08/10] drm/sun4i: sun6i_mipi_dsi: Setup burst mode Date: Fri, 15 Feb 2019 01:02:35 +0530 Message-ID: <20190214193236.7504-9-jagan@amarulasolutions.com> References: <20190214193236.7504-1-jagan@amarulasolutions.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pg1-x543.google.com (mail-pg1-x543.google.com [IPv6:2607:f8b0:4864:20::543]) by gabe.freedesktop.org (Postfix) with ESMTPS id 73D916EAB9 for ; Thu, 14 Feb 2019 19:33:19 +0000 (UTC) Received: by mail-pg1-x543.google.com with SMTP id m1so3548819pgq.8 for ; Thu, 14 Feb 2019 11:33:19 -0800 (PST) In-Reply-To: <20190214193236.7504-1-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: Maxime Ripard , David Airlie , Daniel Vetter , Chen-Yu Tsai Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Jagan Teki , Michael Trimarchi , linux-amarula@amarulasolutions.com, linux-arm-kernel@lists.infradead.org List-Id: dri-devel@lists.freedesktop.org QnVyc3QgbW9kZSBpbiBEU0kgd291bGQgcmVxdWlyZSBzZXBhcmF0ZSBzZXR1cCBpbml0aWFsaXph dGlvbgp3aXRoIHJlc3BlY3QgdG8gY29udmVudGlvbmFsIHZpZGVvIG1vZGUuCgpBbGx3aW5uZXIg RFNJIGNvbnRyb2xsZXIgd291bGQgbmVlZCBiZWxvdyBzZXF1ZW5jZSB0byBzZXR1cCB0aGUKYnVy c3QgbW9kZS4KMSkgY29uZmlndXJlIHRoZSBidXJzdCBkcnEuCjIpIGNvbmZpZ3VyZSB0aGUgYnVy c3QgbGluZS4KMykgZmluYWxseSBlbmFibGUgbW9kZS4KCi0gVG8gY29uZmlndXJlIGJ1cnN0IGRy cSwgY29udHJvbGxlciB3b3VsZCByZXF1aXJlIHRvIGNvbXB1dGUgdGhlCiAgZWRnZTAsIGVkZ2Ux IGFuZCBmaWxsIGludG8gYnVyc3QgbW9kZSByZWdpc3Rlci4KCi0gVG8gY29uZmlndXJlIGJ1cnN0 IGxpbmUsIGNvbnRyb2xsZXIgd291bGQgcmVxdWlyZSB0byBjb21wdXRlIHRoZQogIGxpbmUsIHN5 bmMgdmFsdWVzIGFuZCBmaWxsIGludG8gYnVyc3QgbGluZSByZWdpc3Rlci4KCi0gRW5hYmxlIGJ1 cnN0IG1vZGUsIHdvdWxkIHJlcXVpcmUgdG8gZW5hYmxlIGJ1cnN0IG1vZGUgYml0IGluIERTSQog IGNvbnRyb2wgcmVnaXN0ZXIuCgpTaW5jZSB0aGVyZSBpcyBubyBkaXJlY3QgZG9jdW1lbnRhdGlv biBmb3IgdGhlc2UgY29tcHV0YXRpb25zCnRoZSBlZGdlIGFuZCBsaW5lIGZvcm11bGFzIGFyZSB0 YWtlbiBmcm9tIEJTUCBjb2RlIChmcm9tIGxpbnV4LXN1bnhpLwpkcml2ZXJzL3ZpZGVvL3N1bnhp L2Rpc3AyL2Rpc3AvZGUvbG93bGV2ZWxfc3VuNTBpdzEvZGVfZHNpLmMpCgpsaW5lX251bSA9IHBh bmVsLT5sY2RfaHQqZHNpX3BpeGVsX2JpdHNbcGFuZWwtPmxjZF9kc2lfZm9ybWF0XS8KCSAgKDgq cGFuZWwtPmxjZF9kc2lfbGFuZSk7CmVkZ2UxID0gc3luY19wb2ludCsocGFuZWwtPmxjZF94K3Bh bmVsLT5sY2RfaGJwKzIwKSoKCWRzaV9waXhlbF9iaXRzW3BhbmVsLT5sY2RfZHNpX2Zvcm1hdF0g Lyg4KnBhbmVsLT5sY2RfZHNpX2xhbmUpOwplZGdlMSA9IChlZGdlMT5saW5lX251bSk/bGluZV9u dW06ZWRnZTE7CmVkZ2UwID0gZWRnZTErKHBhbmVsLT5sY2RfeCs0MCkqdGNvbl9kaXYvODsKZWRn ZTAgPSAoZWRnZTA+bGluZV9udW0pPyhlZGdlMC1saW5lX251bSk6MTsKCk5vdGU6IGVkZ2UwIGNv bXB1dGF0aW9uIHdvdWxkIHJlcXVpcmUgdGNvbjAgZGl2aWRlciBhbmQgaXQncyB2YWx1ZSBpcwph bHdheXMgNCBpbiBBbGx3aW5uZXIgQlNQLiBUaGlzIHBhdGNoIGZpbmQgb3V0IHRoZSBkaXZpZGVy IHZhbHVlIGF0CnJ1bnRpbWUgYnkgcmVhZGluZyB0Y29uIGNsb2Nrcy4KClNpZ25lZC1vZmYtYnk6 IEphZ2FuIFRla2kgPGphZ2FuQGFtYXJ1bGFzb2x1dGlvbnMuY29tPgpUZXN0ZWQtYnk6IE1lcmxp am4gV2FqZXIgPG1lcmxpam5Ad2l6enVwLm9yZz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vc3VuNGkv c3VuNmlfbWlwaV9kc2kuYyB8IDcwICsrKysrKysrKysrKysrKysrKysrKysrKy0tCiAxIGZpbGUg Y2hhbmdlZCwgNjcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNmlfbWlwaV9kc2kuYyBiL2RyaXZlcnMvZ3B1L2RybS9z dW40aS9zdW42aV9taXBpX2RzaS5jCmluZGV4IDYyYjRjODIyYmYxOC4uNjNiODNiNDdjZjBkIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNmlfbWlwaV9kc2kuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNmlfbWlwaV9kc2kuYwpAQCAtMzU2LDYgKzM1Niw0MSBA QCBzdGF0aWMgdm9pZCBzdW42aV9kc2lfaW5zdF9pbml0KHN0cnVjdCBzdW42aV9kc2kgKmRzaSwK IAkJICAgICBTVU42SV9EU0lfSU5TVF9KVU1QX0NGR19OVU0oMSkpOwogfTsKIAorc3RhdGljIHUz MiBzdW42aV9kc2lfZ2V0X2VkZ2UxKHN0cnVjdCBzdW42aV9kc2kgKmRzaSwKKwkJCSAgICAgICBz dHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwgdTMyIHN5bmNfcG9pbnQpCit7CisJc3RydWN0 IG1pcGlfZHNpX2RldmljZSAqZGV2aWNlID0gZHNpLT5kZXZpY2U7CisJdW5zaWduZWQgaW50IGJw cCA9IG1pcGlfZHNpX3BpeGVsX2Zvcm1hdF90b19icHAoZGV2aWNlLT5mb3JtYXQpOworCXUzMiBo YWN0X3N5bmNfYnA7CisKKwkvKiBIb3Jpem9udGFsIHRpbWluZ3MgZHVyYXRpb24gZXhjbHVkaW5n IGZyb250IHBvcmNoICovCisJaGFjdF9zeW5jX2JwID0gKG1vZGUtPmhkaXNwbGF5ICsgbW9kZS0+ aHRvdGFsIC0gbW9kZS0+aHN5bmNfc3RhcnQpOworCisJcmV0dXJuIChzeW5jX3BvaW50ICsgKCho YWN0X3N5bmNfYnAgKyAyMCkgKiBicHAgLyAoOCAqIGRldmljZS0+bGFuZXMpKSk7Cit9CisKK3N0 YXRpYyB1MzIgc3VuNmlfZHNpX2dldF9lZGdlMChzdHJ1Y3Qgc3VuNmlfZHNpICpkc2ksCisJCQkg ICAgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUsIHUzMiBlZGdlMSkKK3sKKwlzdHJ1 Y3Qgc3VuNGlfdGNvbiAqdGNvbiA9IGRzaS0+dGNvbjsKKwl1bnNpZ25lZCBsb25nIGRjbGtfcmF0 ZSwgZGNsa19wYXJlbnRfcmF0ZSwgdGNvbjBfZGl2OworCisJZGNsa19yYXRlID0gY2xrX2dldF9y YXRlKHRjb24tPmRjbGspOworCWRjbGtfcGFyZW50X3JhdGUgPSBjbGtfZ2V0X3JhdGUoY2xrX2dl dF9wYXJlbnQodGNvbi0+ZGNsaykpOworCXRjb24wX2RpdiA9IGRjbGtfcGFyZW50X3JhdGUgLyBk Y2xrX3JhdGU7CisKKwlyZXR1cm4gKGVkZ2UxICsgKG1vZGUtPmhkaXNwbGF5ICsgNDApICogdGNv bjBfZGl2IC8gOCk7Cit9CisKK3N0YXRpYyB1MzIgc3VuNmlfZHNpX2dldF9saW5lX251bShzdHJ1 Y3Qgc3VuNmlfZHNpICpkc2ksCisJCQkJICBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSkK K3sKKwlzdHJ1Y3QgbWlwaV9kc2lfZGV2aWNlICpkZXZpY2UgPSBkc2ktPmRldmljZTsKKwl1bnNp Z25lZCBpbnQgYnBwID0gbWlwaV9kc2lfcGl4ZWxfZm9ybWF0X3RvX2JwcChkZXZpY2UtPmZvcm1h dCk7CisKKwlyZXR1cm4gKG1vZGUtPmh0b3RhbCAqIGJwcCAvICg4ICogZGV2aWNlLT5sYW5lcykp OworfQorCiBzdGF0aWMgaW50IHN1bjZpX2RzaV9nZXRfZHJxKHN0cnVjdCBzdW42aV9kc2kgKmRz aSwKIAkJCSAgICAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQogewpAQCAtNDIyLDgg KzQ1NywzMiBAQCBzdGF0aWMgdTE2IHN1bjZpX2RzaV9nZXRfdmlkZW9fc3RhcnRfZGVsYXkoc3Ry dWN0IHN1bjZpX2RzaSAqZHNpLAogc3RhdGljIHZvaWQgc3VuNmlfZHNpX3NldHVwX2J1cnN0KHN0 cnVjdCBzdW42aV9kc2kgKmRzaSwKIAkJCQkgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2Rl KQogewotCXJlZ21hcF93cml0ZShkc2ktPnJlZ3MsIFNVTjZJX0RTSV9UQ09OX0RSUV9SRUcsCi0J CSAgICAgc3VuNmlfZHNpX2dldF9kcnEoZHNpLCBtb2RlKSk7CisJc3RydWN0IG1pcGlfZHNpX2Rl dmljZSAqZGV2aWNlID0gZHNpLT5kZXZpY2U7CisJdTMyIHN5bmNfcG9pbnQgPSA0MDsKKwl1MzIg bGluZV9udW0gPSBzdW42aV9kc2lfZ2V0X2xpbmVfbnVtKGRzaSwgbW9kZSk7CisJdTMyIGVkZ2Ux ID0gc3VuNmlfZHNpX2dldF9lZGdlMShkc2ksIG1vZGUsIHN5bmNfcG9pbnQpOworCXUzMiBlZGdl MCA9IHN1bjZpX2RzaV9nZXRfZWRnZTAoZHNpLCBtb2RlLCBlZGdlMSk7CisJdTMyIHZhbDsKKwor CWlmIChlZGdlMSA+IGxpbmVfbnVtKQorCQllZGdlMSA9IGxpbmVfbnVtOworCisJaWYgKGVkZ2Uw ID4gbGluZV9udW0pCisJCWVkZ2UwIC09IGxpbmVfbnVtOworCWVsc2UKKwkJZWRnZTAgPSAxOwor CisJcmVnbWFwX3dyaXRlKGRzaS0+cmVncywgU1VONklfRFNJX0JVUlNUX0RSUV9SRUcsCisJCSAg ICAgU1VONklfRFNJX0JVUlNUX0RSUV9FREdFMShlZGdlMSkgfAorCQkgICAgIFNVTjZJX0RTSV9C VVJTVF9EUlFfRURHRTAoZWRnZTApKTsKKwlyZWdtYXBfd3JpdGUoZHNpLT5yZWdzLCBTVU42SV9E U0lfQlVSU1RfTElORV9SRUcsCisJCSAgICAgU1VONklfRFNJX0JVUlNUX0xJTkVfTlVNKGxpbmVf bnVtKSB8CisJCSAgICAgU1VONklfRFNJX0JVUlNUX0xJTkVfU1lOQ19QT0lOVChzeW5jX3BvaW50 KSk7CisKKwkvKiBlbmFibGUgYnVyc3QgbW9kZSAqLworCXJlZ21hcF9yZWFkKGRzaS0+cmVncywg U1VONklfRFNJX0JBU0lDX0NUTF9SRUcsICZ2YWwpOworCXZhbCB8PSBTVU42SV9EU0lfQkFTSUNf Q1RMX1ZJREVPX0JVUlNUOworCXJlZ21hcF93cml0ZShkc2ktPnJlZ3MsIFNVTjZJX0RTSV9CQVNJ Q19DVExfUkVHLCB2YWwpOwogfQogCiBzdGF0aWMgdm9pZCBzdW42aV9kc2lfc2V0dXBfaW5zdF9s b29wKHN0cnVjdCBzdW42aV9kc2kgKmRzaSwKQEAgLTcwOCw3ICs3NjcsMTIgQEAgc3RhdGljIHZv aWQgc3VuNmlfZHNpX2VuY29kZXJfZW5hYmxlKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikK IAkJICAgICBTVU42SV9EU0lfQkFTSUNfQ1RMMV9WSURFT19QUkVDSVNJT04gfAogCQkgICAgIFNV TjZJX0RTSV9CQVNJQ19DVEwxX1ZJREVPX01PREUpOwogCi0Jc3VuNmlfZHNpX3NldHVwX2J1cnN0 KGRzaSwgbW9kZSk7CisJcmVnbWFwX3dyaXRlKGRzaS0+cmVncywgU1VONklfRFNJX1RDT05fRFJR X1JFRywKKwkJICAgICBzdW42aV9kc2lfZ2V0X2RycShkc2ksIG1vZGUpKTsKKworCWlmIChkZXZp Y2UtPm1vZGVfZmxhZ3MgJiBNSVBJX0RTSV9NT0RFX1ZJREVPX0JVUlNUKQorCQlzdW42aV9kc2lf c2V0dXBfYnVyc3QoZHNpLCBtb2RlKTsKKwogCXN1bjZpX2RzaV9zZXR1cF9pbnN0X2xvb3AoZHNp LCBtb2RlKTsKIAlzdW42aV9kc2lfc2V0dXBfZm9ybWF0KGRzaSwgbW9kZSk7CiAJc3VuNmlfZHNp X3NldHVwX3RpbWluZ3MoZHNpLCBtb2RlKTsKLS0gCjIuMTguMC4zMjEuZ2ZmYzZmYTBlMwoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1h aWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs