diff options
Diffstat (limited to 'sound/core/pcm_lib.c')
| -rw-r--r-- | sound/core/pcm_lib.c | 15 | 
1 files changed, 3 insertions, 12 deletions
diff --git a/sound/core/pcm_lib.c b/sound/core/pcm_lib.c index f4a19509cccf..44b5ae833082 100644 --- a/sound/core/pcm_lib.c +++ b/sound/core/pcm_lib.c @@ -191,10 +191,7 @@ int snd_pcm_update_state(struct snd_pcm_substream *substream,  {  	snd_pcm_uframes_t avail; -	if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) -		avail = snd_pcm_playback_avail(runtime); -	else -		avail = snd_pcm_capture_avail(runtime); +	avail = snd_pcm_avail(substream);  	if (avail > runtime->avail_max)  		runtime->avail_max = avail;  	if (runtime->status->state == SNDRV_PCM_STATE_DRAINING) { @@ -1856,10 +1853,7 @@ static int wait_for_avail(struct snd_pcm_substream *substream,  		 * This check must happen after been added to the waitqueue  		 * and having current state be INTERRUPTIBLE.  		 */ -		if (is_playback) -			avail = snd_pcm_playback_avail(runtime); -		else -			avail = snd_pcm_capture_avail(runtime); +		avail = snd_pcm_avail(substream);  		if (avail >= runtime->twake)  			break;  		snd_pcm_stream_unlock_irq(substream); @@ -2175,10 +2169,7 @@ snd_pcm_sframes_t __snd_pcm_lib_xfer(struct snd_pcm_substream *substream,  	runtime->twake = runtime->control->avail_min ? : 1;  	if (runtime->status->state == SNDRV_PCM_STATE_RUNNING)  		snd_pcm_update_hw_ptr(substream); -	if (is_playback) -		avail = snd_pcm_playback_avail(runtime); -	else -		avail = snd_pcm_capture_avail(runtime); +	avail = snd_pcm_avail(substream);  	while (size > 0) {  		snd_pcm_uframes_t frames, appl_ptr, appl_ofs;  		snd_pcm_uframes_t cont;  |