From mboxrd@z Thu Jan 1 00:00:00 1970 From: CK Hu Subject: Re: [PATCH v7 7/9] drm/mediatek: add dsi transfer function Date: Wed, 7 Sep 2016 10:33:52 +0800 Message-ID: <1473215632.11736.21.camel@mtksdaap41> References: <1472815484-43821-1-git-send-email-yt.shen@mediatek.com> <1472815484-43821-8-git-send-email-yt.shen@mediatek.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1472815484-43821-8-git-send-email-yt.shen@mediatek.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: YT Shen Cc: Daniel Vetter , Jie Qiu , Mao Huang , yingjoe.chen@mediatek.com, Dan Carpenter , Jitao Shi , Sascha Hauer , linux-mediatek@lists.infradead.org, dri-devel@lists.freedesktop.org, Matthias Brugger , shaoming chen , linux-arm-kernel@lists.infradead.org, srv_heupstream@mediatek.com, emil.l.velikov@gmail.com, linux-kernel@vger.kernel.org, Maxime Ripard List-Id: linux-mediatek@lists.infradead.org SGksIFlUOgoKT24gRnJpLCAyMDE2LTA5LTAyIGF0IDE5OjI0ICswODAwLCBZVCBTaGVuIHdyb3Rl Ogo+IEZyb206IHNoYW9taW5nIGNoZW4gPHNoYW9taW5nLmNoZW5AbWVkaWF0ZWsuY29tPgo+IAo+ IGFkZCBkc2kgcmVhZC93cml0ZSBjb21tYW5kcyBmb3IgdHJhbnNmZXIgZnVuY3Rpb24KPiAKPiBT aWduZWQtb2ZmLWJ5OiBzaGFvbWluZyBjaGVuIDxzaGFvbWluZy5jaGVuQG1lZGlhdGVrLmNvbT4K PiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kc2kuYyB8IDE4OCArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gIDEgZmlsZSBjaGFuZ2VkLCAxODggaW5z ZXJ0aW9ucygrKQo+IAoKW3NuaXAuLi5dCgo+ICAKPiArc3RhdGljIHZvaWQgbXRrX2RzaV9pcnFf ZGF0YV9jbGVhcihzdHJ1Y3QgbXRrX2RzaSAqZHNpLCB1MzIgaXJxX2JpdCkKPiArewo+ICsJZHNp LT5pcnFfZGF0YSAmPSB+aXJxX2JpdDsKPiArfQo+ICsKCltzbmlwLi4uXQoKPiArCj4gK3N0YXRp YyBzMzIgbXRrX2RzaV93YWl0X2Zvcl9pcnFfZG9uZShzdHJ1Y3QgbXRrX2RzaSAqZHNpLCB1MzIg aXJxX2ZsYWcsCj4gKwkJCQkgICAgIHVuc2lnbmVkIGludCB0aW1lb3V0KQo+ICt7Cj4gKwlzMzIg cmV0ID0gMDsKPiArCXVuc2lnbmVkIGxvbmcgamlmZmllcyA9IG1zZWNzX3RvX2ppZmZpZXModGlt ZW91dCk7Cj4gKwo+ICsJcmV0ID0gd2FpdF9ldmVudF9pbnRlcnJ1cHRpYmxlX3RpbWVvdXQoX2Rz aV9pcnFfd2FpdF9xdWV1ZSwKPiArCQkJCQkgICAgICAgZHNpLT5pcnFfZGF0YSAmIGlycV9mbGFn LAo+ICsJCQkJCSAgICAgICBqaWZmaWVzKTsKPiArCWlmIChyZXQgPT0gMCkgewo+ICsJCWRldl9p bmZvKGRzaS0+ZGV2LCAiV2FpdCBEU0kgSVJRKDB4JTA4eCkgVGltZW91dFxuIiwgaXJxX2ZsYWcp Owo+ICsKPiArCQltdGtfZHNpX2VuYWJsZShkc2kpOwo+ICsJCW10a19kc2lfcmVzZXRfZW5naW5l KGRzaSk7Cj4gKwl9Cj4gKwo+ICsJcmV0dXJuIHJldDsKPiArfQoKSSB0aGluayBtdGtfZHNpX2ly cV9kYXRhX2NsZWFyKCkgYW5kIG10a19kc2lfd2FpdF9mb3JfaXJxX2RvbmUoKSBzaG91bGQKYmUg bW92ZWQgdG8gdGhlIDZ0aCBwYXRjaCBbMV0gb2YgdGhpcyBzZXJpZXMgYmVjYXVzZSB0aGVzZSB0 d28gZnVuY3Rpb25zCmRlYWwgdGhlIGlycSBjb250cm9sLgoKClsxXSBodHRwczovL3BhdGNod29y ay5rZXJuZWwub3JnL3BhdGNoLzkzMTA4MTkvCgoKUmVnYXJkcywKQ0sKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QK ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 From: ck.hu@mediatek.com (CK Hu) Date: Wed, 7 Sep 2016 10:33:52 +0800 Subject: [PATCH v7 7/9] drm/mediatek: add dsi transfer function In-Reply-To: <1472815484-43821-8-git-send-email-yt.shen@mediatek.com> References: <1472815484-43821-1-git-send-email-yt.shen@mediatek.com> <1472815484-43821-8-git-send-email-yt.shen@mediatek.com> Message-ID: <1473215632.11736.21.camel@mtksdaap41> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, YT: On Fri, 2016-09-02 at 19:24 +0800, YT Shen wrote: > From: shaoming chen > > add dsi read/write commands for transfer function > > Signed-off-by: shaoming chen > --- > drivers/gpu/drm/mediatek/mtk_dsi.c | 188 +++++++++++++++++++++++++++++++++++++ > 1 file changed, 188 insertions(+) > [snip...] > > +static void mtk_dsi_irq_data_clear(struct mtk_dsi *dsi, u32 irq_bit) > +{ > + dsi->irq_data &= ~irq_bit; > +} > + [snip...] > + > +static s32 mtk_dsi_wait_for_irq_done(struct mtk_dsi *dsi, u32 irq_flag, > + unsigned int timeout) > +{ > + s32 ret = 0; > + unsigned long jiffies = msecs_to_jiffies(timeout); > + > + ret = wait_event_interruptible_timeout(_dsi_irq_wait_queue, > + dsi->irq_data & irq_flag, > + jiffies); > + if (ret == 0) { > + dev_info(dsi->dev, "Wait DSI IRQ(0x%08x) Timeout\n", irq_flag); > + > + mtk_dsi_enable(dsi); > + mtk_dsi_reset_engine(dsi); > + } > + > + return ret; > +} I think mtk_dsi_irq_data_clear() and mtk_dsi_wait_for_irq_done() should be moved to the 6th patch [1] of this series because these two functions deal the irq control. [1] https://patchwork.kernel.org/patch/9310819/ Regards, CK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933860AbcIGCeG (ORCPT ); Tue, 6 Sep 2016 22:34:06 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:43264 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1755607AbcIGCeB (ORCPT ); Tue, 6 Sep 2016 22:34:01 -0400 Message-ID: <1473215632.11736.21.camel@mtksdaap41> Subject: Re: [PATCH v7 7/9] drm/mediatek: add dsi transfer function From: CK Hu To: YT Shen CC: , Philipp Zabel , David Airlie , Matthias Brugger , Daniel Kurtz , Mao Huang , Bibby Hsieh , "Daniel Vetter" , Thierry Reding , Jie Qiu , Maxime Ripard , Chris Wilson , shaoming chen , Jitao Shi , Boris Brezillon , Dan Carpenter , , , , , Sascha Hauer , , Date: Wed, 7 Sep 2016 10:33:52 +0800 In-Reply-To: <1472815484-43821-8-git-send-email-yt.shen@mediatek.com> References: <1472815484-43821-1-git-send-email-yt.shen@mediatek.com> <1472815484-43821-8-git-send-email-yt.shen@mediatek.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 Content-Transfer-Encoding: 7bit MIME-Version: 1.0 X-MTK: N Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, YT: On Fri, 2016-09-02 at 19:24 +0800, YT Shen wrote: > From: shaoming chen > > add dsi read/write commands for transfer function > > Signed-off-by: shaoming chen > --- > drivers/gpu/drm/mediatek/mtk_dsi.c | 188 +++++++++++++++++++++++++++++++++++++ > 1 file changed, 188 insertions(+) > [snip...] > > +static void mtk_dsi_irq_data_clear(struct mtk_dsi *dsi, u32 irq_bit) > +{ > + dsi->irq_data &= ~irq_bit; > +} > + [snip...] > + > +static s32 mtk_dsi_wait_for_irq_done(struct mtk_dsi *dsi, u32 irq_flag, > + unsigned int timeout) > +{ > + s32 ret = 0; > + unsigned long jiffies = msecs_to_jiffies(timeout); > + > + ret = wait_event_interruptible_timeout(_dsi_irq_wait_queue, > + dsi->irq_data & irq_flag, > + jiffies); > + if (ret == 0) { > + dev_info(dsi->dev, "Wait DSI IRQ(0x%08x) Timeout\n", irq_flag); > + > + mtk_dsi_enable(dsi); > + mtk_dsi_reset_engine(dsi); > + } > + > + return ret; > +} I think mtk_dsi_irq_data_clear() and mtk_dsi_wait_for_irq_done() should be moved to the 6th patch [1] of this series because these two functions deal the irq control. [1] https://patchwork.kernel.org/patch/9310819/ Regards, CK