From: Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> To: Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>, Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org> Cc: Timo Alho <talho-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>, Peter De Schrijver <pdeschrijver-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>, Sivaram Nair <sivaramn-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>, Joseph Lo <josephl-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>, linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Subject: Re: [PATCH v3 02/12] mailbox: Add Tegra HSP driver Date: Mon, 22 Aug 2016 10:42:33 -0600 [thread overview] Message-ID: <0a70a07d-9cc6-cd35-98a8-d55c2ffdb49d@wwwdotorg.org> (raw) In-Reply-To: <20160822141728.GF17367-EkSeR96xj6Pcmrwk2tT4+A@public.gmane.org> On 08/22/2016 08:17 AM, Thierry Reding wrote: > On Mon, Aug 22, 2016 at 03:43:23PM +0200, Arnd Bergmann wrote: >> On Friday, August 19, 2016 7:32:23 PM CEST Thierry Reding wrote: >>> +static int tegra_hsp_doorbell_send_data(struct tegra_hsp_channel *channel, >>> + void *data) >>> +{ >>> + tegra_hsp_channel_writel(channel, 1, HSP_DB_TRIGGER); >>> + >>> + return 0; >>> +} >>> >> >> It seems very odd that you don't write the data at all but just trigger >> the communication here. My interpretation is that you bypass >> the mailbox infrastructure for the actual message, and instead reimplement >> it on top of the mailbox infrastructure as part of the bpmp driver. >> >> Why not expose the bpmp itself as the mailbox here? > > My understanding is that doorbell doesn't provide any means to transfer > data. It merely signals the availability of data. It is up to a use-case > specific implementation to arrange for the transport of data. Yes, the doorbell doesn't transfer any data. > BPMP implements a shmem-based protocol and uses the doorbell merely as a > mechanism for the BPMP and CPU to signal each other when data is ready. > > Exposing the BPMP as the mailbox could possibly be done, but it would > implement a fairly large software layer in the mailbox system which is > targetted primarily at simple mailbox hardware that exchanges small > amounts of data (usually fitting into 32 bits). mailbox-sti is another > driver that uses the framework only to signal, so this doesn't seem to > be a mechanism exclusive to Tegra. I also don't think that in-memory IPC mechanisms are what the mailbox subsystem is all about; it's about pure HW mechanisms that transfer data.
WARNING: multiple messages have this Message-ID (diff)
From: swarren@wwwdotorg.org (Stephen Warren) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v3 02/12] mailbox: Add Tegra HSP driver Date: Mon, 22 Aug 2016 10:42:33 -0600 [thread overview] Message-ID: <0a70a07d-9cc6-cd35-98a8-d55c2ffdb49d@wwwdotorg.org> (raw) In-Reply-To: <20160822141728.GF17367@ulmo.ba.sec> On 08/22/2016 08:17 AM, Thierry Reding wrote: > On Mon, Aug 22, 2016 at 03:43:23PM +0200, Arnd Bergmann wrote: >> On Friday, August 19, 2016 7:32:23 PM CEST Thierry Reding wrote: >>> +static int tegra_hsp_doorbell_send_data(struct tegra_hsp_channel *channel, >>> + void *data) >>> +{ >>> + tegra_hsp_channel_writel(channel, 1, HSP_DB_TRIGGER); >>> + >>> + return 0; >>> +} >>> >> >> It seems very odd that you don't write the data at all but just trigger >> the communication here. My interpretation is that you bypass >> the mailbox infrastructure for the actual message, and instead reimplement >> it on top of the mailbox infrastructure as part of the bpmp driver. >> >> Why not expose the bpmp itself as the mailbox here? > > My understanding is that doorbell doesn't provide any means to transfer > data. It merely signals the availability of data. It is up to a use-case > specific implementation to arrange for the transport of data. Yes, the doorbell doesn't transfer any data. > BPMP implements a shmem-based protocol and uses the doorbell merely as a > mechanism for the BPMP and CPU to signal each other when data is ready. > > Exposing the BPMP as the mailbox could possibly be done, but it would > implement a fairly large software layer in the mailbox system which is > targetted primarily at simple mailbox hardware that exchanges small > amounts of data (usually fitting into 32 bits). mailbox-sti is another > driver that uses the framework only to signal, so this doesn't seem to > be a mechanism exclusive to Tegra. I also don't think that in-memory IPC mechanisms are what the mailbox subsystem is all about; it's about pure HW mechanisms that transfer data.
next prev parent reply other threads:[~2016-08-22 16:42 UTC|newest] Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-08-19 17:32 [PATCH v3 00/12] Initial Tegra186 support Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-19 17:32 ` [PATCH v3 01/12] dt-bindings: mailbox: Add Tegra HSP binding Thierry Reding 2016-08-19 17:32 ` Thierry Reding 2016-08-19 17:32 ` [PATCH v3 02/12] mailbox: Add Tegra HSP driver Thierry Reding 2016-08-19 17:32 ` Thierry Reding 2016-08-22 13:43 ` Arnd Bergmann 2016-08-22 13:43 ` Arnd Bergmann 2016-08-22 14:17 ` Thierry Reding 2016-08-22 14:17 ` Thierry Reding [not found] ` <20160822141728.GF17367-EkSeR96xj6Pcmrwk2tT4+A@public.gmane.org> 2016-08-22 16:42 ` Stephen Warren [this message] 2016-08-22 16:42 ` Stephen Warren [not found] ` <20160819173233.13260-3-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 16:53 ` Stephen Warren 2016-08-22 16:53 ` Stephen Warren 2016-08-23 0:06 ` Sivaram Nair 2016-08-23 0:06 ` Sivaram Nair 2016-08-23 0:12 ` Sivaram Nair 2016-08-23 0:12 ` Sivaram Nair 2016-08-19 17:32 ` [PATCH v3 03/12] dt-bindings: firmware: Add bindings for Tegra BPMP Thierry Reding 2016-08-19 17:32 ` Thierry Reding 2016-08-19 17:32 ` [PATCH v3 04/12] firmware: tegra: Add IVC library Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-5-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 10:46 ` Jon Hunter 2016-08-22 10:46 ` Jon Hunter [not found] ` <90222c3a-7c69-6fa3-d161-4ed0c5759f34-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2016-08-22 12:40 ` Thierry Reding 2016-08-22 12:40 ` Thierry Reding 2016-08-22 18:49 ` Stephen Warren 2016-08-22 18:49 ` Stephen Warren 2016-08-24 15:13 ` Jon Hunter 2016-08-24 15:13 ` Jon Hunter 2016-08-19 17:32 ` [PATCH v3 05/12] firmware: tegra: Add BPMP support Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-6-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 9:26 ` Jon Hunter 2016-08-22 9:26 ` Jon Hunter [not found] ` <94227d94-1d60-fda7-731b-26656633d585-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2016-08-22 12:54 ` Thierry Reding 2016-08-22 12:54 ` Thierry Reding [not found] ` <20160822125458.GC17367-EkSeR96xj6Pcmrwk2tT4+A@public.gmane.org> 2016-08-22 14:24 ` Jon Hunter 2016-08-22 14:24 ` Jon Hunter [not found] ` <6bb4d32f-4f13-285e-430e-672f375a9a46-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2016-08-22 15:00 ` Thierry Reding 2016-08-22 15:00 ` Thierry Reding 2016-08-22 18:51 ` Stephen Warren 2016-08-22 18:51 ` Stephen Warren 2016-08-22 13:34 ` Arnd Bergmann 2016-08-22 13:34 ` Arnd Bergmann 2016-08-22 14:02 ` Thierry Reding 2016-08-22 14:02 ` Thierry Reding [not found] ` <20160822140211.GE17367-EkSeR96xj6Pcmrwk2tT4+A@public.gmane.org> 2016-08-22 14:42 ` Arnd Bergmann 2016-08-22 14:42 ` Arnd Bergmann 2016-08-22 15:32 ` Thierry Reding 2016-08-22 15:32 ` Thierry Reding [not found] ` <20160822153258.GB21012-EkSeR96xj6Pcmrwk2tT4+A@public.gmane.org> 2016-08-22 15:43 ` Arnd Bergmann 2016-08-22 15:43 ` Arnd Bergmann 2016-08-22 18:56 ` Stephen Warren 2016-08-22 18:56 ` Stephen Warren 2016-08-23 14:58 ` Arnd Bergmann 2016-08-23 14:58 ` Arnd Bergmann 2016-08-23 23:26 ` Sivaram Nair 2016-08-23 23:26 ` Sivaram Nair 2016-08-22 22:23 ` Stephen Warren 2016-08-22 22:23 ` Stephen Warren 2016-08-19 17:32 ` [PATCH v3 06/12] soc/tegra: Add Tegra186 support Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-7-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 19:01 ` Stephen Warren 2016-08-22 19:01 ` Stephen Warren 2016-08-23 13:44 ` Jon Hunter 2016-08-23 13:44 ` Jon Hunter 2016-08-19 17:32 ` [PATCH v3 07/12] arm64: defconfig: Enable Tegra186 SoC Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-8-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 19:01 ` Stephen Warren 2016-08-22 19:01 ` Stephen Warren 2016-08-19 17:32 ` [PATCH v3 08/12] arm64: dts: tegra: Add Tegra186 support Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-9-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 17:11 ` Stephen Warren 2016-08-22 17:11 ` Stephen Warren 2016-08-22 19:07 ` Stephen Warren 2016-08-22 19:07 ` Stephen Warren 2016-08-19 17:32 ` [PATCH v3 09/12] arm64: dts: tegra: Add NVIDIA P3310 main board support Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-10-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 19:08 ` Stephen Warren 2016-08-22 19:08 ` Stephen Warren 2016-08-23 17:35 ` Jon Hunter 2016-08-23 17:35 ` Jon Hunter 2016-08-19 17:32 ` [PATCH v3 10/12] arm64: dts: tegra: Add NVIDIA P2771 " Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-11-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 19:11 ` Stephen Warren 2016-08-22 19:11 ` Stephen Warren 2016-08-19 17:32 ` [PATCH v3 11/12] clk: tegra: Add BPMP clock driver Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-12-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 10:11 ` Jon Hunter 2016-08-22 10:11 ` Jon Hunter [not found] ` <0d7080bc-9e82-75dd-7169-0a5b7429801e-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2016-08-22 13:28 ` Thierry Reding 2016-08-22 13:28 ` Thierry Reding [not found] ` <20160822132833.GD17367-EkSeR96xj6Pcmrwk2tT4+A@public.gmane.org> 2016-08-23 13:49 ` Jon Hunter 2016-08-23 13:49 ` Jon Hunter 2016-08-22 19:47 ` Stephen Warren 2016-08-22 19:47 ` Stephen Warren 2016-08-19 17:32 ` [PATCH v3 12/12] reset: Add Tegra BPMP reset driver Thierry Reding 2016-08-19 17:32 ` Thierry Reding [not found] ` <20160819173233.13260-13-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2016-08-22 19:56 ` Stephen Warren 2016-08-22 19:56 ` Stephen Warren 2016-11-26 13:39 ` [PATCH v3 00/12] Initial Tegra186 support Pavel Machek 2016-11-26 13:39 ` Pavel Machek [not found] ` <20161126133927.GE20568-5NIqAleC692hcjWhqY66xCZi+YwRKgec@public.gmane.org> 2016-11-28 7:33 ` Thierry Reding 2016-11-28 7:33 ` Thierry Reding
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=0a70a07d-9cc6-cd35-98a8-d55c2ffdb49d@wwwdotorg.org \ --to=swarren-3lzwwm7+weoh9zmkesr00q@public.gmane.org \ --cc=arnd-r2nGTMty4D4@public.gmane.org \ --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=josephl-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=pdeschrijver-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \ --cc=sivaramn-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \ --cc=talho-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \ --cc=thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \ /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: linkBe 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.