[alsa-devel] [PATCH 01/21] ASoC: SOF: Intel: Add BYT, CHT and BSW DSP HW support.

Daniel Baluta daniel.baluta at gmail.com
Tue Jan 22 17:49:33 CET 2019


On Tue, Jan 22, 2019 at 6:22 PM Pierre-Louis Bossart
<pierre-louis.bossart at linux.intel.com> wrote:
>
>
> On 1/22/19 1:35 AM, Daniel Baluta wrote:
> >> +static int byt_send_msg(struct snd_sof_dev *sdev, struct snd_sof_ipc_msg *msg)
> >> +{
> >> +       u64 cmd = msg->header;
> >> +
> >> +       /* send the message */
> >> +       sof_mailbox_write(sdev, sdev->host_box.offset, msg->msg_data,
> >> +                         msg->msg_size);
> > I was wondering if the mailbox shared memory wouldn't be better
> > implemented as a queue.
> > Do you support playing multiple streams in parallel?
> >
> > We have this use case where we need to to memory to memory
> > decoding/encoding with lots
> > of streams in parallel.
>
> Sorry Daniel, I didn't get your point.
>
> we do support multiple streams in parallel and there's been quite a few
> issues fixed in the IPC mechanisms due to concurrency. The IPC mechanism
> is serialized however since there are only few resources available,
> typically only a couple of doorbell registers and a small memory window.
> For multiple streams the PCM data is exchanged over DMA typically - the
> streams don't go over the IPC channel but the information related to a
> stream is passed using a tag or ID.
>

> Can you clarify what you had in mind?

Sometimes is hard feven for me to clarify that :)

The question was raised mostly because our audio framework
uses queues here instead just of a mailbox.

We might actually need to have an implementation ready to test
if this serialization has an impact on performance.

I will get back to you when this question will make more sense
in my mind.

thanks,
daniel.


More information about the Alsa-devel mailing list