All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jassi Brar <jaswinder.singh@linaro.org>
To: Horng-Shyang Liao <hs.liao@mediatek.com>
Cc: Jassi Brar <jassisinghbrar@gmail.com>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Rob Herring <robh+dt@kernel.org>,
	Daniel Kurtz <djkurtz@chromium.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Devicetree List <devicetree@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	linux-mediatek@lists.infradead.org, srv_heupstream@mediatek.com,
	Sascha Hauer <kernel@pengutronix.de>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Nicolas Boichat <drinkcat@chromium.org>,
	CK HU <ck.hu@mediatek.com>, cawa cheng <cawa.cheng@mediatek.com>,
	Bibby Hsieh <bibby.hsieh@mediatek.com>,
	YT Shen <yt.shen@mediatek.com>,
	Daoyuan Huang <daoyuan.huang@mediatek.com>,
	Damon Chu <damon.chu@mediatek.com>,
	Josh-YC Liu <josh-yc.liu@mediatek.com>,
	Glory Hung <glory.hung@mediatek.com>,
	Jiaguang Zhang <jiaguang.zhang@mediatek.com>,
	Dennis-YC Hsieh <dennis-yc.hsieh@mediatek.com>,
	Monica Wang <monica.wang@mediatek.com>
Subject: Re: [PATCH v8 2/3] CMDQ: Mediatek CMDQ driver
Date: Mon, 6 Jun 2016 18:47:02 +0530	[thread overview]
Message-ID: <CAJe_ZhfHQLW02pqyrSuSCHayT_7f1aaeg8cH9RAK16Skg9+3Jw@mail.gmail.com> (raw)
In-Reply-To: <1465205633.25607.33.camel@mtksdaap41>

[-- Attachment #1: Type: text/plain, Size: 2906 bytes --]

On 6 June 2016 at 15:03, Horng-Shyang Liao <hs.liao@mediatek.com> wrote:

> Hi Matthias, Jassi,
>
> On Fri, 2016-06-03 at 18:41 +0530, Jassi Brar wrote:
> > On Fri, Jun 3, 2016 at 4:48 PM, Matthias Brugger <matthias.bgg@gmail.com>
> wrote:
> > > On 03/06/16 08:12, Horng-Shyang Liao wrote:
> > >> On Thu, 2016-06-02 at 10:46 +0200, Matthias Brugger wrote:
> >
> > >>> I keep thinking about how to get rid of the two data structures,
> > >>> task_busy_list and the task_release_wq. We need the latter for the
> only
> > >>> sake of getting a timeout.
> > >>>
> > >>> Did you have a look on how the mailbox framework handles this?
> > >>> By the way, what is the reason to not implement the whole driver as a
> > >>> mailbox controller? For me, this driver looks like a good fit.
> > >>
> > >>
> > >> CMDQ needs to encode commands for GCE hardware. We think this behavior
> > >> should be put in CMDQ driver, and client just call CMDQ functions.
> > >> Therefore, if we want to use mailbox framework, cmdq_rec must be
> > >> mailbox client, and the others must be mailbox controller.
> > >>
> > >
> > > You mean the functions to fill the cmdq_rec and execute it?
> > > I think this should be part of the driver.
> > >
> > > Jassi, can you have a look on the interface this driver exports [0].
> > > They are needed to actually create the message which will be send.
> > > Could something like this be part of a mailbox driver?
> > >
> > > [0] https://patchwork.kernel.org/patch/9140221/
> > >
> > Packet creating/parsing should not be a part of controller driver. As
> > the log of this patch says, today it is used for only display but in
> > future it could work with other h/w as well, so it makes sense to have
> > mailbox api do the message queuing, the controller driver do the
> > send/receive and client drivers implement display and other h/w
> > specific packaging of data (protocol handling).
> >
> > So yes, I think this could use mailbox api.
> >
> > Cheers.
>
>
> Let me use display as an example to do some further explanation
> about CMDQ in advance. You can think CMDQ is a shadow register
> replacement. Therefore, we use cmdq_rec_write(_mask), cmdq_rec_wfe, and
> cmdq_rec_clear_event instead of accessing registers, and use
> cmdq_rec_flush(_async) instead of atomic swap.
>
> If we use mailbox to do the message queue, we can use mailbox framework
> to implement flush and callback. However, I don't think mailbox is
> suitable for cmdq_rec_write(_mask), cmdq_rec_wfe, and
> cmdq_rec_clear_event since they are just record some commands. Is this
> the same as your comment "Packet creating/parsing should not be a part
> of controller driver."?
>
> Therefore, do you mean we use mailbox framework to implement flush and
> callback and keep other interfaces?


Yes, implement flush and callback in mailbox controller driver and keep
other interfaces in mailbox client driver(s).

Cheers.

[-- Attachment #2: Type: text/html, Size: 3834 bytes --]

  reply	other threads:[~2016-06-06 13:17 UTC|newest]

Thread overview: 125+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-30  3:19 [PATCH v8 0/3] Mediatek MT8173 CMDQ support HS Liao
2016-05-30  3:19 ` HS Liao
2016-05-30  3:19 ` HS Liao
2016-05-30  3:19 ` [PATCH v8 1/3] dt-bindings: soc: Add documentation for the MediaTek GCE unit HS Liao
2016-05-30  3:19   ` HS Liao
2016-05-30  3:19   ` HS Liao
2016-05-30  3:19 ` [PATCH v8 2/3] CMDQ: Mediatek CMDQ driver HS Liao
2016-05-30  3:19   ` HS Liao
2016-05-30  3:19   ` HS Liao
2016-05-30  6:49   ` CK Hu
2016-05-30  6:49     ` CK Hu
2016-05-30  6:49     ` CK Hu
2016-05-30  9:38     ` Horng-Shyang Liao
2016-05-30  9:38       ` Horng-Shyang Liao
2016-05-30  9:38       ` Horng-Shyang Liao
2016-05-30 15:31   ` Matthias Brugger
2016-05-30 15:31     ` Matthias Brugger
2016-05-31  8:36     ` Horng-Shyang Liao
2016-05-31  8:36       ` Horng-Shyang Liao
2016-05-31  8:36       ` Horng-Shyang Liao
2016-05-31 20:04       ` Matthias Brugger
2016-05-31 20:04         ` Matthias Brugger
2016-06-01  9:57         ` Horng-Shyang Liao
2016-06-01  9:57           ` Horng-Shyang Liao
2016-06-01  9:57           ` Horng-Shyang Liao
2016-06-02  8:46           ` Matthias Brugger
2016-06-02  8:46             ` Matthias Brugger
2016-06-02  8:46             ` Matthias Brugger
2016-06-03  6:12             ` Horng-Shyang Liao
2016-06-03  6:12               ` Horng-Shyang Liao
2016-06-03  6:12               ` Horng-Shyang Liao
2016-06-03 11:18               ` Matthias Brugger
2016-06-03 11:18                 ` Matthias Brugger
2016-06-03 12:13                 ` Horng-Shyang Liao
2016-06-03 12:13                   ` Horng-Shyang Liao
2016-06-03 12:13                   ` Horng-Shyang Liao
2016-06-03 13:11                   ` Matthias Brugger
2016-06-03 13:11                     ` Matthias Brugger
2016-06-03 13:11                     ` Matthias Brugger
2016-06-07 16:59                     ` Matthias Brugger
2016-06-07 16:59                       ` Matthias Brugger
2016-06-08  5:40                       ` Horng-Shyang Liao
2016-06-08  5:40                         ` Horng-Shyang Liao
2016-06-08  5:40                         ` Horng-Shyang Liao
2016-06-08 10:45                         ` Matthias Brugger
2016-06-08 10:45                           ` Matthias Brugger
2016-06-08 10:45                           ` Matthias Brugger
2016-06-08 12:25                           ` Horng-Shyang Liao
2016-06-08 12:25                             ` Horng-Shyang Liao
2016-06-08 12:25                             ` Horng-Shyang Liao
2016-06-08 15:35                             ` Matthias Brugger
2016-06-08 15:35                               ` Matthias Brugger
2016-06-14  7:44                               ` Horng-Shyang Liao
2016-06-14  7:44                                 ` Horng-Shyang Liao
2016-06-14  7:44                                 ` Horng-Shyang Liao
2016-06-14 10:17                                 ` Matthias Brugger
2016-06-14 10:17                                   ` Matthias Brugger
2016-06-14 12:07                                   ` Horng-Shyang Liao
2016-06-14 12:07                                     ` Horng-Shyang Liao
2016-06-14 12:07                                     ` Horng-Shyang Liao
2016-06-17  8:28                                     ` Horng-Shyang Liao
2016-06-17  8:28                                       ` Horng-Shyang Liao
2016-06-17  8:28                                       ` Horng-Shyang Liao
2016-06-17 15:57                                       ` Matthias Brugger
2016-06-17 15:57                                         ` Matthias Brugger
2016-06-17 15:57                                         ` Matthias Brugger
2016-06-21  5:52                                         ` Horng-Shyang Liao
2016-06-21  5:52                                           ` Horng-Shyang Liao
2016-06-21  5:52                                           ` Horng-Shyang Liao
2016-06-21 13:41                                           ` Matthias Brugger
2016-06-21 13:41                                             ` Matthias Brugger
2016-06-21 13:41                                             ` Matthias Brugger
2016-06-22  5:43                                             ` Horng-Shyang Liao
2016-06-22  5:43                                               ` Horng-Shyang Liao
2016-06-22  5:43                                               ` Horng-Shyang Liao
2016-06-22  9:58                                               ` Matthias Brugger
2016-06-22  9:58                                                 ` Matthias Brugger
2016-06-22  9:58                                                 ` Matthias Brugger
2016-06-17 16:14                                     ` Matthias Brugger
2016-06-17 16:14                                       ` Matthias Brugger
2016-06-03 13:11                 ` Jassi Brar
2016-06-03 13:11                   ` Jassi Brar
2016-06-03 13:11                   ` Jassi Brar
2016-06-06  9:33                   ` Horng-Shyang Liao
2016-06-06  9:33                     ` Horng-Shyang Liao
2016-06-06  9:33                     ` Horng-Shyang Liao
2016-06-06 13:17                     ` Jassi Brar [this message]
2016-06-07  2:45                   ` Horng-Shyang Liao
2016-06-07  2:45                     ` Horng-Shyang Liao
2016-06-07  2:45                     ` Horng-Shyang Liao
2016-06-07 17:04   ` Matthias Brugger
2016-06-07 17:04     ` Matthias Brugger
2016-06-08  5:09     ` Horng-Shyang Liao
2016-06-08  5:09       ` Horng-Shyang Liao
2016-06-08  5:09       ` Horng-Shyang Liao
2016-06-20 10:41   ` CK Hu
2016-06-20 10:41     ` CK Hu
2016-06-20 10:41     ` CK Hu
2016-06-20 11:22     ` Horng-Shyang Liao
2016-06-20 11:22       ` Horng-Shyang Liao
2016-06-20 11:22       ` Horng-Shyang Liao
2016-06-21  2:03       ` CK Hu
2016-06-21  2:03         ` CK Hu
2016-06-21  2:03         ` CK Hu
2016-06-21  7:46         ` Horng-Shyang Liao
2016-06-21  7:46           ` Horng-Shyang Liao
2016-06-21  7:46           ` Horng-Shyang Liao
2016-06-24 11:39           ` Horng-Shyang Liao
2016-06-24 11:39             ` Horng-Shyang Liao
2016-06-24 11:39             ` Horng-Shyang Liao
2016-06-27  2:00             ` CK Hu
2016-06-27  2:00               ` CK Hu
2016-06-27  2:00               ` CK Hu
2016-06-23  6:03   ` CK Hu
2016-06-23  6:03     ` CK Hu
2016-06-23  6:03     ` CK Hu
2016-06-23  7:54     ` Horng-Shyang Liao
2016-06-23  7:54       ` Horng-Shyang Liao
2016-06-23  7:54       ` Horng-Shyang Liao
2016-06-23 11:44       ` CK Hu
2016-06-23 11:44         ` CK Hu
2016-06-23 11:44         ` CK Hu
2016-05-30  3:19 ` [PATCH v8 3/3] arm64: dts: mt8173: Add GCE node HS Liao
2016-05-30  3:19   ` HS Liao
2016-05-30  3:19   ` HS Liao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAJe_ZhfHQLW02pqyrSuSCHayT_7f1aaeg8cH9RAK16Skg9+3Jw@mail.gmail.com \
    --to=jaswinder.singh@linaro.org \
    --cc=bibby.hsieh@mediatek.com \
    --cc=cawa.cheng@mediatek.com \
    --cc=ck.hu@mediatek.com \
    --cc=damon.chu@mediatek.com \
    --cc=daoyuan.huang@mediatek.com \
    --cc=dennis-yc.hsieh@mediatek.com \
    --cc=devicetree@vger.kernel.org \
    --cc=djkurtz@chromium.org \
    --cc=drinkcat@chromium.org \
    --cc=glory.hung@mediatek.com \
    --cc=hs.liao@mediatek.com \
    --cc=jassisinghbrar@gmail.com \
    --cc=jiaguang.zhang@mediatek.com \
    --cc=josh-yc.liu@mediatek.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=matthias.bgg@gmail.com \
    --cc=monica.wang@mediatek.com \
    --cc=p.zabel@pengutronix.de \
    --cc=robh+dt@kernel.org \
    --cc=s.hauer@pengutronix.de \
    --cc=srv_heupstream@mediatek.com \
    --cc=yt.shen@mediatek.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.