]> git.alsa-project.org Git - alsa-lib.git/commitdiff
pcm: Fill sw_params proto field
authorTakashi Iwai <tiwai@suse.de>
Wed, 16 Jul 2014 15:48:34 +0000 (17:48 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 22 Jul 2014 10:14:49 +0000 (12:14 +0200)
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
src/pcm/pcm.c
src/pcm/pcm_params.c

index 552f41bd1ca96124224078a4f8a59f4028fbce76..c819df421434b4c3b0a6a65d764f1ae1d9b8b6b7 100644 (file)
@@ -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 */
 };
 
index 89844430bf35548d988aec86b8e2ae8dd97f096b..1399a5b2e671530424d35d9a6bdd32ff00f190e8 100644 (file)
@@ -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;
index 4adbefae0530e96c556ff9bdd4f16609d052916a..6e57904e445b6bcfc11056ece325682fcf35907d 100644 (file)
@@ -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;