alsa/0012-pcm-Fill-sw_params-proto-field.patch

59 lines
2.1 KiB
Diff
Raw Normal View History

From 55c53625212702debf55c719ec62f6c81c780927 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Wed, 16 Jul 2014 17:48:34 +0200
Subject: [PATCH 12/14] pcm: Fill sw_params proto field
Fill the new proto field introduced to sw_params with the current PCM
protocol version. This makes tstamp_type evaluated properly in the
kernel.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
include/sound/asound.h | 4 ++--
src/pcm/pcm.c | 1 +
src/pcm/pcm_params.c | 1 +
3 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/include/sound/asound.h b/include/sound/asound.h
index 552f41bd1ca9..c819df421434 100644
--- a/include/sound/asound.h
+++ b/include/sound/asound.h
@@ -386,8 +386,8 @@ struct snd_pcm_sw_params {
snd_pcm_uframes_t silence_threshold; /* min distance from noise for silence filling */
snd_pcm_uframes_t silence_size; /* silence block size */
snd_pcm_uframes_t boundary; /* pointers wrap point */
- unsigned int tstamp_type; /* timestamp type */
- int pads; /* alignment, reserved */
+ unsigned int proto; /* protocol version */
+ unsigned int tstamp_type; /* timestamp type (req. proto >= 2.0.12) */
unsigned char reserved[56]; /* reserved for future */
};
diff --git a/src/pcm/pcm.c b/src/pcm/pcm.c
index 89844430bf35..1399a5b2e671 100644
--- a/src/pcm/pcm.c
+++ b/src/pcm/pcm.c
@@ -5610,6 +5610,7 @@ int snd_pcm_sw_params_current(snd_pcm_t *pcm, snd_pcm_sw_params_t *params)
SNDMSG("PCM not set up");
return -EIO;
}
+ params->proto = SNDRV_PCM_VERSION;
params->tstamp_mode = pcm->tstamp_mode;
params->tstamp_type = pcm->tstamp_type;
params->period_step = pcm->period_step;
diff --git a/src/pcm/pcm_params.c b/src/pcm/pcm_params.c
index 4adbefae0530..6e57904e445b 100644
--- a/src/pcm/pcm_params.c
+++ b/src/pcm/pcm_params.c
@@ -2257,6 +2257,7 @@ static int snd_pcm_sw_params_default(snd_pcm_t *pcm, snd_pcm_sw_params_t *params
{
assert(pcm && params);
assert(pcm->setup);
+ params->proto = SNDRV_PCM_VERSION;
params->tstamp_mode = SND_PCM_TSTAMP_NONE;
params->tstamp_type = pcm->tstamp_type;
params->period_step = 1;
--
2.0.1