[alsa-devel] [PATCH alsa-lib v2] pcm: Fill sw_params proto field

Takashi Iwai tiwai at suse.de
Mon Jul 21 13:52:53 CEST 2014


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 at suse.de>
---
v1->v2: rearrange proto and tstamp_type fields

 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



More information about the Alsa-devel mailing list