[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAAOTY_9bgYK2MDySstc4F2jN0M+Zpmcq2R3G_PdWz2sgt9wp7A@mail.gmail.com>
Date: Sat, 3 Oct 2020 11:22:30 +0800
From: Chun-Kuang Hu <chunkuang.hu@...nel.org>
To: Jassi Brar <jassisinghbrar@...il.com>
Cc: Chun-Kuang Hu <chunkuang.hu@...nel.org>,
Matthias Brugger <matthias.bgg@...il.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
DRI Development <dri-devel@...ts.freedesktop.org>,
"moderated list:ARM/Mediatek SoC support"
<linux-mediatek@...ts.infradead.org>,
linux-arm-kernel <linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH 0/4] Mediatek DRM driver detect CMDQ execution timeout by
vblank IRQ
Hi, Jassi:
Jassi Brar <jassisinghbrar@...il.com> 於 2020年10月3日 週六 上午4:30寫道:
>
> On Sun, Sep 27, 2020 at 6:04 PM Chun-Kuang Hu <chunkuang.hu@...nel.org> wrote:
> >
> > CMDQ helper provide timer to detect execution timeout, but DRM driver
> > could have a better way to detect execution timeout by vblank IRQ.
> > For DRM, CMDQ command should execute in vblank, so if it fail to
> > execute in next 2 vblank, timeout happen. Even though we could
> > calculate time between 2 vblank and use timer to delect, this would
> > make things more complicated.
> >
> > This introduce a series refinement for CMDQ mailbox controller and CMDQ
> > helper. Remove timer handler in helper function because different
> > client have different way to detect timeout. Use standard mailbox
> > callback instead of proprietary one to get the necessary data
> > in callback function. Remove struct cmdq_client to access client
> > instance data by struct mbox_client.
> >
> > Chun-Kuang Hu (4):
> > soc / drm: mediatek: cmdq: Remove timeout handler in helper function
> > mailbox / soc / drm: mediatek: Use mailbox rx_callback instead of
> > cmdq_task_cb
> > mailbox / soc / drm: mediatek: Remove struct cmdq_client
> > drm/mediatek: Detect CMDQ execution timeout
> >
> > drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 54 ++++++---
> > drivers/mailbox/mtk-cmdq-mailbox.c | 24 ++--
> > drivers/soc/mediatek/mtk-cmdq-helper.c | 146 ++---------------------
> > include/linux/mailbox/mtk-cmdq-mailbox.h | 25 +---
> > include/linux/soc/mediatek/mtk-cmdq.h | 54 +--------
> > 5 files changed, 66 insertions(+), 237 deletions(-)
> >
> Please break this into two patchsets - one for mailbox and one for its users.
> Also, CC original author and recent major contributors to mtk-cmdq-mailbox.c
>
Agree with you. But for patch [2/4] ("Use mailbox rx_callback instead
of cmdq_task_cb"), I think it would be a long term process.
I would break it into:
1. mtk-cmdq-mailbox.c: add rx_callback and keep cmdq_task_cb because
client is using cmdq_task_cb.
2. client: change from cmdq_task_cb to rx_callback.
3. mtk-cmdq-mailbox.c: remove cmdq_task_cb.
The three step has dependency, but the 2nd should move to another
series, so I would go 1st step first.
Regards,
Chun-Kuang.
> Thanks.
Powered by blists - more mailing lists