Hi Takashi,
On 19.10.2023 16:48, Takashi Iwai wrote:
On Thu, 19 Oct 2023 03:20:19 +0200,
Anton Yakovlev wrote:
Hi Takashi,
On 19.10.2023 03:07, Takashi Iwai wrote:
On Wed, 18 Oct 2023 12:48:23 +0200,
Matias Ezequiel Vara Larsen wrote:
This commit replaces the mmap mechanism with the copy
it
in the used ring. It is only after the ack() for capturing is issued
that the driver re-enqueues the buffer in the available ring.
Co-developed-by: Anton Yakovlev
Signed-off-by: Anton Yakovlev
Signed-off-by: Matias Ezequiel Vara Larsen
---
Changelog:
v2 -> v3:
* Use ack() callback in
Hi Matias,
On 18.10.2023 22:30, Matias Ezequiel Vara Larsen wrote:
Hello Anton,
thanks for the response. I added some inline comments.
On Wed, Oct 18, 2023 at 10:06:05AM +0900, Anton Yakovlev wrote:
Hi Matias,
On 18.10.2023 00:19, Matias Ezequiel Vara Larsen wrote:
Hello,
This email is
vice. After device updates the content of a buffer, it enqueues it
in the used ring. It is only after the copy() for capturing is issued
that the driver re-enqueues the buffer in the available ring.
Co-developed-by: Anton Yakovlev
Signed-off-by: Matias Ezequiel Vara Larsen
--
33bb129a
[2]
https://github.com/rust-vmm/vhost-device/tree/main/staging/vhost-device-sound
--
Anton Yakovlev
Senior Software Engineer
OpenSynergy GmbH
Rotherstr. 20, 10245 Berlin
___
Virtualization mailing list
Virtualization@lists.linux-foundation.o
Hi Matias,
On 17.10.2023 21:54, Matias Ezequiel Vara Larsen wrote:
Hello Anton,
Thanks for your help! I am going to send a second version of the patch
with your changes. Is it OK if I add you with the "Co-developed-by"
tag?.
Yes, I'm fine with that. :)
Best regards,
--
d_pcm_lib_ioctl,
@@ -461,4 +532,5 @@ const struct snd_pcm_ops virtsnd_pcm_ops = {
.trigger = virtsnd_pcm_trigger,
.sync_stop = virtsnd_pcm_sync_stop,
.pointer = virtsnd_pcm_pointer,
+ .copy = virtsnd_pcm_cap_copy,
};
base-commit: 8a749fd1a8720d4619c91c8b6e7528c0a355c0aa
--
Anton Yakov
o implement read/write()
operations for the substream, and disable MMAP access mode.
I'll try, but I'm not sure I'll have enough time for this in the near future.
--
Anton Yakovlev
Senior Software Engineer
OpenSynergy GmbH
Rotherstr. 20, 10245 Berlin
_
emory. Then it should be possible to implement mmap() support on top of it.
--
Anton Yakovlev
Senior Software Engineer
OpenSynergy GmbH
Rotherstr. 20, 10245 Berlin
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
s allow the use of shared memory, it
was decided to make message-passing the basis. For shared memory, stream
features were reserved for further work on the spec.
--
Anton Yakovlev
Senior Software Engineer
OpenSynergy GmbH
Rotherstr. 20, 10245 Berlin
___
Vi
Hello Paolo,
On 19.09.2023 15:58, Paolo Bonzini wrote:
On 9/19/23 02:35, Anton Yakovlev wrote:
If the Linux virtio sound driver violates a specification, then there must be
a conformance statement that the driver does not follow. As far as I know,
there is no such thing at the moment.
There
logic cannot be reliably applied to MMAP
mode.
Best regards,
--
Anton Yakovlev
Senior Software Engineer
OpenSynergy GmbH
Rotherstr. 20, 10245 Berlin
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https
*/
VIRTIO_SND_EVT_CTL_NOTIFY = 0x1200,
...
};
See additional details in [1].
[1] https://lists.oasis-open.org/archives/virtio-comment/202104/msg00013.html
Signed-off-by: Anton Yakovlev
---
include/uapi/linux/virtio_snd.h | 154 +++
sound/virtio/Makefile | 1 +
sound/virtio
Anton Yakovlev (1):
ALSA: virtio: add support for audio controls
include/uapi/linux/virtio_snd.h | 154 +++
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 21 ++
sound/virtio/virtio_card.h | 22 ++
sound/virtio/virtio_kctl.c | 464
--
sound/virtio/virtio_card.c | 4 ++--
Reviewed-by: Anton Yakovlev
--
Anton Yakovlev
Senior Software Engineer
OpenSynergy GmbH
Rotherstr. 20, 10245 Berlin
___
Virtualization mailing list
Virtualization@lists.linux-foundation
: Randy Dunlap
Cc: Anton Yakovlev
Cc: "Michael S. Tsirkin"
Cc: virtualization@lists.linux-foundation.org
Cc: alsa-de...@alsa-project.org
Thanks for fixing the copy/paste mistake. :)
Reviewed-by: Anton Yakovlev
---
sound/virtio/virtio_ctl_msg.c |2 +-
1 file changed, 1 inser
On 08.04.2021 14:54, Chen Huang wrote
module_virtio_driver() makes the code simpler by eliminating
boilerplate code.
Signed-off-by: Chen Huang
Thanks for the patch.
Reviewed-by: Anton Yakovlev
---
sound/virtio/virtio_card.c | 12 +---
1 file changed, 1 insertion(+), 11
The OASIS virtio spec defines a sound device type ID that is not
present in the header yet.
Signed-off-by: Anton Yakovlev
---
include/uapi/linux/virtio_ids.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/uapi/linux/virtio_ids.h b/include/uapi/linux/virtio_ids.h
index bc1c0621f5ed
Introduce skeleton of the virtio sound driver. The driver implements
the virtio sound device specification, which has become part of the
virtio standard.
Initial initialization of the device, virtqueues and creation of an
empty ALSA sound device.
Signed-off-by: Anton Yakovlev
---
MAINTAINERS
:
msg_timeout_ms [=1000]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c| 13 ++
sound/virtio/virtio_card.h| 7 +
sound/virtio/virtio_ctl_msg.c | 310 ++
sound/virtio/virtio_ctl_msg.h | 78 +
5 files
it was previously suspended.
- Some additional code readability improvements/comments.
[1] https://lists.oasis-open.org/archives/virtio-dev/202003/msg00185.html
Anton Yakovlev (9):
uapi: virtio_ids: add a sound device type ID from OASIS spec
ALSA: virtio: add virtio sound driver
ALSA: vir
All running PCM substreams are stopped on device suspend and restarted
on device resume.
Signed-off-by: Anton Yakovlev
---
sound/virtio/virtio_card.c| 56 +++
sound/virtio/virtio_pcm.h | 3 ++
sound/virtio/virtio_pcm_ops.c | 33 -
3
Enumerate all available PCM channel maps and create ALSA controls.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 10 ++
sound/virtio/virtio_card.h | 8 ++
sound/virtio/virtio_chmap.c | 219
sound
Enumerate all available jacks and create ALSA controls.
At the moment jacks have a simple implementation and can only be used
to receive notifications about a plugged in/out device.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 14
Introduce the operators required for the operation of substreams.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_pcm.c | 2 +
sound/virtio/virtio_pcm.h | 5 +
sound/virtio/virtio_pcm_ops.c | 445 ++
4
messages are organized in an ordered queue. The completion of the
I/O message indicates an elapsed period (the only exception is the end
of the stream for the capture substream). Upon completion, the message
is automatically re-added to the end of the queue.
Signed-off-by: Anton Yakovlev
hardware buffer
parameters:
pcm_buffer_ms [=160]
pcm_periods_min [=2]
pcm_periods_max [=16]
pcm_period_ms_min [=10]
pcm_period_ms_max [=80]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c | 18 ++
sound/virtio/virtio_card.h | 10 +
sound
On 02.03.2021 10:11, Takashi Iwai wrote:
On Tue, 02 Mar 2021 09:09:33 +0100,
Anton Yakovlev wrote:
On 02.03.2021 07:48, Takashi Iwai wrote:
On Tue, 02 Mar 2021 07:29:20 +0100,
Anton Yakovlev wrote:
On 28.02.2021 13:05, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:56 +0100,
Anton Yakovlev
On 02.03.2021 07:48, Takashi Iwai wrote:
On Tue, 02 Mar 2021 07:29:20 +0100,
Anton Yakovlev wrote:
On 28.02.2021 13:05, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:56 +0100,
Anton Yakovlev wrote:
[snip]
--- a/sound/virtio/virtio_pcm.c
+++ b/sound/virtio/virtio_pcm.c
@@ -109,6 +109,7
On 28.02.2021 13:05, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:56 +0100,
Anton Yakovlev wrote:
[snip]
--- a/sound/virtio/virtio_pcm.c
+++ b/sound/virtio/virtio_pcm.c
@@ -109,6 +109,7 @@ static int virtsnd_pcm_build_hw(struct virtio_pcm_substream
*vss
On 01.03.2021 14:38, Takashi Iwai wrote:
On Mon, 01 Mar 2021 11:03:04 +0100,
Anton Yakovlev wrote:
On 28.02.2021 13:05, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:56 +0100,
Anton Yakovlev wrote:
All running PCM substreams are stopped on device suspend and restarted
on device resume
On 01.03.2021 15:56, Takashi Iwai wrote:
On Mon, 01 Mar 2021 15:47:46 +0100,
Anton Yakovlev wrote:
On 01.03.2021 14:32, Takashi Iwai wrote:
On Mon, 01 Mar 2021 10:25:05 +0100,
Anton Yakovlev wrote:
On 28.02.2021 12:27, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:52 +0100,
Anton Yakovlev
On 01.03.2021 14:32, Takashi Iwai wrote:
On Mon, 01 Mar 2021 10:25:05 +0100,
Anton Yakovlev wrote:
On 28.02.2021 12:27, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:52 +0100,
Anton Yakovlev wrote:
+/**
+ * virtsnd_pcm_event() - Handle the PCM device event notification.
+ * @snd: VirtIO
On 28.02.2021 13:05, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:56 +0100,
Anton Yakovlev wrote:
All running PCM substreams are stopped on device suspend and restarted
on device resume.
Signed-off-by: Anton Yakovlev
---
sound/virtio/virtio_card.c| 56
On 28.02.2021 12:32, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:53 +0100,
Anton Yakovlev wrote:
[snip]
+static snd_pcm_uframes_t
+virtsnd_pcm_pointer(struct snd_pcm_substream *substream)
+{
+ struct virtio_pcm_substream *vss = snd_pcm_substream_chip(substream
On 28.02.2021 12:27, Takashi Iwai wrote:
On Sat, 27 Feb 2021 09:59:52 +0100,
Anton Yakovlev wrote:
+/**
+ * virtsnd_pcm_event() - Handle the PCM device event notification.
+ * @snd: VirtIO sound device.
+ * @event: VirtIO sound event.
+ *
+ * Context: Interrupt context.
OK, then nonatomic PCM
On 28.02.2021 12:04, Takashi Iwai wrote:> On Sat, 27 Feb 2021 09:59:50
+0100,
Anton Yakovlev wrote:
--- a/sound/virtio/virtio_card.c
+++ b/sound/virtio/virtio_card.c
@@ -11,6 +11,10 @@
#include "virtio_card.h"
+int msg_timeout_ms = MSEC_PER_SEC;
+module_param(msg_timeout_
All running PCM substreams are stopped on device suspend and restarted
on device resume.
Signed-off-by: Anton Yakovlev
---
sound/virtio/virtio_card.c| 56 +++
sound/virtio/virtio_pcm.c | 1 +
sound/virtio/virtio_pcm_ops.c | 41
Introduce the operators required for the operation of substreams.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_pcm.c | 2 +
sound/virtio/virtio_pcm.h | 4 +
sound/virtio/virtio_pcm_ops.c | 453 ++
4
Enumerate all available PCM channel maps and create ALSA controls.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 10 ++
sound/virtio/virtio_card.h | 8 ++
sound/virtio/virtio_chmap.c | 219
sound
Enumerate all available jacks and create ALSA controls.
At the moment jacks have a simple implementation and can only be used
to receive notifications about a plugged in/out device.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 14
messages are organized in an ordered queue. The completion of the
I/O message indicates an elapsed period (the only exception is the end
of the stream for the capture substream). Upon completion, the message
is automatically re-added to the end of the queue.
Signed-off-by: Anton Yakovlev
hardware buffer
parameters:
pcm_buffer_ms [=160]
pcm_periods_min [=2]
pcm_periods_max [=16]
pcm_period_ms_min [=10]
pcm_period_ms_max [=80]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c | 14 ++
sound/virtio/virtio_card.h | 10 +
sound
:
msg_timeout_ms [=1000]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c| 13 ++
sound/virtio/virtio_card.h| 7 +
sound/virtio/virtio_ctl_msg.c | 310 ++
sound/virtio/virtio_ctl_msg.h | 78 +
5 files
Introduce skeleton of the virtio sound driver. The driver implements
the virtio sound device specification, which has become part of the
virtio standard.
Initial initialization of the device, virtqueues and creation of an
empty ALSA sound device.
Signed-off-by: Anton Yakovlev
---
MAINTAINERS
requires a separate discussion of the possibility of implementing such
handling for virtio devices whose configuration may change (which may require
re-probing, like in case of the sound device).
[1] https://lists.oasis-open.org/archives/virtio-dev/202003/msg00185.html
Anton Yakovlev (9):
uapi
The OASIS virtio spec defines a sound device type ID that is not
present in the header yet.
Signed-off-by: Anton Yakovlev
---
include/uapi/linux/virtio_ids.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/uapi/linux/virtio_ids.h b/include/uapi/linux/virtio_ids.h
index bc1c0621f5ed
ing from the changes put in
sound/* directory.
Then should I update the MAINTAINERS and add Takashi instead of
Michael, or should I put both of you there?
--
Anton Yakovlev
Senior Software Engineer
OpenSynergy GmbH
Rotherstr. 20, 1024
On 26.02.2021 15:23, Takashi Iwai wrote:
On Thu, 25 Feb 2021 23:19:31 +0100,
Anton Yakovlev wrote:
On 25.02.2021 21:30, Takashi Iwai wrote:> On Thu, 25 Feb 2021 20:02:50
+0100,
Michael S. Tsirkin wrote:
On Thu, Feb 25, 2021 at 01:51:16PM +0100, Takashi Iwai wrote:
On Thu, 25 Feb 2021 13
On 25.02.2021 21:30, Takashi Iwai wrote:> On Thu, 25 Feb 2021 20:02:50
+0100,
Michael S. Tsirkin wrote:
On Thu, Feb 25, 2021 at 01:51:16PM +0100, Takashi Iwai wrote:
On Thu, 25 Feb 2021 13:14:37 +0100,
Anton Yakovlev wrote:
[snip]
Takashi given I was in my tree for a while and I plan
On 25.02.2021 11:55, Takashi Iwai wrote:
On Mon, 22 Feb 2021 16:34:41 +0100,
Anton Yakovlev wrote:
+static int virtsnd_pcm_open(struct snd_pcm_substream *substream)
+{
+ struct virtio_pcm *vpcm = snd_pcm_substream_chip(substream);
+ struct virtio_pcm_substream *vss = NULL;
+
+ if
On 25.02.2021 11:38, Takashi Iwai wrote:
On Mon, 22 Feb 2021 16:34:37 +0100,
Anton Yakovlev wrote:
+static int virtsnd_find_vqs(struct virtio_snd *snd)
+{
+ struct virtio_device *vdev = snd->vdev;
+ vq_callback_t *callbacks[VIRTIO_SND_VQ_MAX] = {
+ [VIRTIO_SND_VQ_EV
On 23.02.2021 13:09, Michael S. Tsirkin wrote:
On Mon, Feb 22, 2021 at 04:34:35PM +0100, Anton Yakovlev wrote:
This series implements a driver part of the virtio sound device
specification v8 [1].
The driver supports PCM playback and capture substreams, jack and
channel map controls. A message
All running PCM substreams are stopped on device suspend and restarted
on device resume.
Signed-off-by: Anton Yakovlev
---
sound/virtio/virtio_card.c| 57 +++
sound/virtio/virtio_pcm.c | 1 +
sound/virtio/virtio_pcm_ops.c | 44
Enumerate all available PCM channel maps and create ALSA controls.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 10 ++
sound/virtio/virtio_card.h | 8 ++
sound/virtio/virtio_chmap.c | 219
sound
Enumerate all available jacks and create ALSA controls.
At the moment jacks have a simple implementation and can only be used
to receive notifications about a plugged in/out device.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 14
Introduce the operators required for the operation of substreams.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_pcm.c | 2 +
sound/virtio/virtio_pcm.h | 4 +
sound/virtio/virtio_pcm_ops.c | 469 ++
4
messages are organized in an ordered queue. The completion of the
I/O message indicates an elapsed period (the only exception is the end
of the stream for the capture substream). Upon completion, the message
is automatically re-added to the end of the queue.
Signed-off-by: Anton Yakovlev
hardware buffer
parameters:
pcm_buffer_ms [=160]
pcm_periods_min [=2]
pcm_periods_max [=16]
pcm_period_ms_min [=10]
pcm_period_ms_max [=80]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c | 14 ++
sound/virtio/virtio_card.h | 10 +
sound
:
msg_timeout_ms [=1000]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c| 13 ++
sound/virtio/virtio_card.h| 7 +
sound/virtio/virtio_ctl_msg.c | 310 ++
sound/virtio/virtio_ctl_msg.h | 78 +
5 files
.
Signed-off-by: Anton Yakovlev
---
MAINTAINERS | 9 +
include/uapi/linux/virtio_snd.h | 334 +++
sound/Kconfig | 2 +
sound/Makefile | 3 +-
sound/virtio/Kconfig| 10 +
sound/virtio/Makefile
The OASIS virtio spec defines a sound device type ID that is not
present in the header yet.
Signed-off-by: Anton Yakovlev
---
include/uapi/linux/virtio_ids.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/uapi/linux/virtio_ids.h b/include/uapi/linux/virtio_ids.h
index bc1c0621f5ed
msg00185.html
Anton Yakovlev (9):
uapi: virtio_ids: add a sound device type ID from OASIS spec
ALSA: virtio: add virtio sound driver
ALSA: virtio: handling control messages
ALSA: virtio: build PCM devices and substream hardware descriptors
ALSA: virtio: handling control and I/O messages
Introduce the operators required for the operation of substreams.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_pcm.c | 2 +
sound/virtio/virtio_pcm.h | 4 +
sound/virtio/virtio_pcm_ops.c | 469 ++
4
messages are organized in an ordered queue. The completion of the
I/O message indicates an elapsed period (the only exception is the end
of the stream for the capture substream). Upon completion, the message
is automatically re-added to the end of the queue.
Signed-off-by: Anton Yakovlev
All running PCM substreams are stopped on device suspend and restarted
on device resume.
Signed-off-by: Anton Yakovlev
---
sound/virtio/virtio_card.c| 57 +++
sound/virtio/virtio_pcm.c | 1 +
sound/virtio/virtio_pcm_ops.c | 44
Enumerate all available PCM channel maps and create ALSA controls.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 10 ++
sound/virtio/virtio_card.h | 8 ++
sound/virtio/virtio_chmap.c | 219
sound
.
Signed-off-by: Anton Yakovlev
---
MAINTAINERS | 9 +
include/uapi/linux/virtio_snd.h | 334 +++
sound/Kconfig | 2 +
sound/Makefile | 3 +-
sound/virtio/Kconfig| 10 +
sound/virtio/Makefile
The OASIS virtio spec defines a sound device type ID that is not
present in the header yet.
Signed-off-by: Anton Yakovlev
---
include/uapi/linux/virtio_ids.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/uapi/linux/virtio_ids.h b/include/uapi/linux/virtio_ids.h
index bc1c0621f5ed
:
msg_timeout_ms [=1000]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c| 13 ++
sound/virtio/virtio_card.h| 7 +
sound/virtio/virtio_ctl_msg.c | 310 ++
sound/virtio/virtio_ctl_msg.h | 78 +
5 files
hardware buffer
parameters:
pcm_buffer_ms [=160]
pcm_periods_min [=2]
pcm_periods_max [=16]
pcm_period_ms_min [=10]
pcm_period_ms_max [=80]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c | 14 ++
sound/virtio/virtio_card.h | 10 +
sound
Enumerate all available jacks and create ALSA controls.
At the moment jacks have a simple implementation and can only be used
to receive notifications about a plugged in/out device.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 14
proprietary implementation.
v4 changes:
- fixed sparse warnings, no functional change
[1] https://lists.oasis-open.org/archives/virtio-dev/202003/msg00185.html
Anton Yakovlev (9):
uapi: virtio_ids: add a sound device type ID from OASIS spec
ALSA: virtio: add virtio sound driver
ALSA: virtio
All running PCM substreams are stopped on device suspend and restarted
on device resume.
Signed-off-by: Anton Yakovlev
---
sound/virtio/virtio_card.c| 57 +++
sound/virtio/virtio_pcm.c | 1 +
sound/virtio/virtio_pcm_ops.c | 44
messages are organized in an ordered queue. The completion of the
I/O message indicates an elapsed period (the only exception is the end
of the stream for the capture substream). Upon completion, the message
is automatically re-added to the end of the queue.
Signed-off-by: Anton Yakovlev
hardware buffer
parameters:
pcm_buffer_ms [=160]
pcm_periods_min [=2]
pcm_periods_max [=16]
pcm_period_ms_min [=10]
pcm_period_ms_max [=80]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c | 14 ++
sound/virtio/virtio_card.h | 10 +
sound
Enumerate all available PCM channel maps and create ALSA controls.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 10 ++
sound/virtio/virtio_card.h | 8 ++
sound/virtio/virtio_chmap.c | 219
sound
Enumerate all available jacks and create ALSA controls.
At the moment jacks have a simple implementation and can only be used
to receive notifications about a plugged in/out device.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 14
.
Signed-off-by: Anton Yakovlev
---
MAINTAINERS | 9 +
include/uapi/linux/virtio_snd.h | 334 +++
sound/Kconfig | 2 +
sound/Makefile | 3 +-
sound/virtio/Kconfig| 10 +
sound/virtio/Makefile
tream release wait function.
[6/9] virtio_pcm_ops.c:virtsnd_pcm_released()
[1] https://lists.oasis-open.org/archives/virtio-dev/202003/msg00185.html
Anton Yakovlev (9):
uapi: virtio_ids: add a sound device type ID from OASIS spec
ALSA: virtio: add virtio sound driver
ALSA: virtio: han
The OASIS virtio spec defines a sound device type ID that is not
present in the header yet.
Signed-off-by: Anton Yakovlev
---
include/uapi/linux/virtio_ids.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/uapi/linux/virtio_ids.h b/include/uapi/linux/virtio_ids.h
index bc1c0621f5ed
hanks,
Takashi
--
Anton Yakovlev
Senior Software Engineer
OpenSynergy GmbH
Rotherstr. 20, 10245 Berlin
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
Hi Takashi,
On 03.02.2021 17:59, Takashi Iwai wrote:
On Tue, 02 Feb 2021 00:18:09 +0100,
Anton Yakovlev wrote:
+/**
+ * virtsnd_reset_fn() - Kernel worker's function to reset the device.
+ * @work: Reset device work.
+ *
+ * Context: Process context.
+ */
+static void virtsnd_reset_fn(s
On 26.01.2021 10:22, Guennadi Liakhovetski wrote:
> CAUTION: This email originated from outside of the organization.
> Do not click links or open attachments unless you recognize the sender
> and know the content is safe.
>
>
> On Sun, 24 Jan 2021, Anton Yakovlev wrote:
On 25.01.2021 17:59, Guennadi Liakhovetski wrote:
> On Sun, 24 Jan 2021, Anton Yakovlev wrote:
>
> [snip]
>
>> +/**
>> + * virtsnd_pcm_release() - Release the PCM substream on the device
side.
>> + * @substream: VirtIO substream.
>> + *
>> + *
bled
written in the trigger() substream operator
read in the virtsnd_pcm_msg_complete()
ALSA takes some substream locks while calling for trigger/pointer().
Unfortunately, we cannot use the same substream locks here, as it opens
up many control paths leading to deadlock. And all that remains is either
to use atomic fiel
On 25.01.2021 16:44, Guennadi Liakhovetski wrote:
> On Sun, 24 Jan 2021, Anton Yakovlev wrote:
>
...[snip]...
>>
>> diff --git a/sound/virtio/virtio_card.c b/sound/virtio/virtio_card.c
>> index 955eadc2d858..39fe13b43dd1 100644
>> --- a/sound/virtio/virti
is also taken on success, so maybe better just call
> the lable "exit" or similar.
Ok! Then I probably need to check for other goto cases as well.
...[snip]...
>> +
>> +/**
>> + * virtsnd_ctl_msg_unref() - Decrement reference counter for the
>> message.
>> + * @vdev: VirtIO parent device
(rc)
>> + dev_warn(dev, "bus->remove() failed: %d", rc);
>> +
>> + rc = dev->bus->probe(dev);
>> + if (rc)
>> + dev_err(dev, "bus->probe() failed: %d", rc);
>
> This looks very suspicious to me. Wondering what
All running PCM substreams are stopped on device suspend and restarted
on device resume.
Signed-off-by: Anton Yakovlev
---
sound/virtio/virtio_card.c| 54
sound/virtio/virtio_pcm.c | 40 +++
sound/virtio/virtio_pcm.h | 6 +++
sound/virtio
Enumerate all available PCM channel maps and create ALSA controls.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 15 +++
sound/virtio/virtio_card.h | 8 ++
sound/virtio/virtio_chmap.c | 237
sound
Enumerate all available jacks and create ALSA controls.
At the moment jacks have a simple implementation and can only be used
to receive notifications about a plugged in/out device.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 1 +
sound/virtio/virtio_card.c | 18
Introduce the operators required for the operation of substreams.
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_pcm.c | 5 +-
sound/virtio/virtio_pcm.h | 2 +
sound/virtio/virtio_pcm_ops.c | 513 ++
4
messages are organized in an ordered queue. The completion of the
I/O message indicates an elapsed period (the only exception is the end
of the stream for the capture substream). Upon completion, the message
is automatically re-added to the end of the queue.
Signed-off-by: Anton Yakovlev
hardware buffer
parameters:
pcm_buffer_ms [=160]
pcm_periods_min [=2]
pcm_periods_max [=16]
pcm_period_ms_min [=10]
pcm_period_ms_max [=80]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c | 45
sound/virtio/virtio_card.h | 9 +
sound
:
msg_timeout_ms [=1000]
Signed-off-by: Anton Yakovlev
---
sound/virtio/Makefile | 3 +-
sound/virtio/virtio_card.c| 20 +++
sound/virtio/virtio_card.h| 7 +
sound/virtio/virtio_ctl_msg.c | 293 ++
sound/virtio/virtio_ctl_msg.h | 122 ++
5
.
Signed-off-by: Anton Yakovlev
---
MAINTAINERS | 9 +
include/uapi/linux/virtio_snd.h | 361 +++
sound/Kconfig | 2 +
sound/Makefile | 3 +-
sound/virtio/Kconfig| 10 +
sound/virtio/Makefile
The OASIS virtio spec defines a sound device type ID that is not
present in the header yet.
Signed-off-by: Anton Yakovlev
---
include/uapi/linux/virtio_ids.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/uapi/linux/virtio_ids.h b/include/uapi/linux/virtio_ids.h
index bc1c0621f5ed
tx/rx interrupt handler:
[5/9] virtio_pcm_msg.c:virtsnd_pcm_msg_complete()
8. Added additional comments to substream release wait function.
[6/9] virtio_pcm_ops.c:virtsnd_pcm_released()
[1] https://lists.oasis-open.org/archives/virtio-dev/202003/msg00185.html
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
Hi, Liam!
On 20.01.2021 11:10, Girdwood, Liam R wrote:
CAUTION: This email originated from outside of the organization.
Do not click links or open attachments unless you recognize the sender and know
the content is safe.
Hi Anton,
On Wed, 2021-01-20 at 01:36 +0100, Anton Yakovlev wrote
1 - 100 of 112 matches
Mail list logo