[PATCH 0/2] ALSA: firewire-tascam: fix to handle error code to read status of sampling clock

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

ALSA firewire-tascam driver has a bug not to check return value from
a call of snd_tscm_stream_get_clock() since its first commit. This
patchset fixes the bug.

In models of TASCAM FIreWire series, the status of sampling clock is
represented in 2 bytes in MSB of a certain register. These bits are
zero in intermediate state after configuring the sampling clock. This
behaviour sometimes takes ALSA PCM applications to receive error when
starting both playback/capture PCM substreams because the operation to
start one PCM substream can change the sampling clock. In this case,
next operation for another PCM substream possible fails.

This patchset adds check and retry for the above case. Although the
change is a bit intrusive for stable releases, it's required to avoid
superficial regression due to the additional error check.

Takashi Sakamoto (2):
  ALSA: firewire-tascam: handle error code when getting current source
    of clock
  ALSA: firewire-tascam: check intermediate state of clock status and
    retry

 sound/firewire/tascam/tascam-pcm.c    |  3 ++
 sound/firewire/tascam/tascam-stream.c | 42 ++++++++++++++++++---------
 2 files changed, 31 insertions(+), 14 deletions(-)

-- 
2.20.1

_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux