[alsa-devel] snd-bebob : from kernel 4.13 to 5.3.19 and .20

Takashi Sakamoto o-takashi at sakamocchi.jp
Sat Nov 9 13:36:35 CET 2019


Hi,

I'm sorry to be late for reply but I have a short vacation in this week.

On Wed, Oct 30, 2019 at 03:40:03PM +0100, Jean-Paul Argudo wrote:
> >  * /proc/asound/cardX/firewire/firmware
> 
> $ cat /proc/asound/card3/firewire/firmware 
> Manufacturer:	bridgeCo
> Protocol Ver:	1
> Build Ver:	0
> GUID:		0x00130E010004394C
> Model ID:	0x02
> Model Rev:	1
> Firmware Date:	20061207
> Firmware Time:	140826
> Firmware ID:	0x0
> Firmware Ver:	16850194
> Base Addr:	0x20080000
> Max Size:	1572864
> Loader Date:	20051019
> Loader Time:	094952

Before vacation I made arrangement to buy Focusrite Saffire LE in used
market and today it arrived. As long as I can see, the unit uses the same
firmware which your unit uses.

>>> At startup it lights green ok, but no sound is playable, then the
>>> lights turn orange (like it is when it's not working), I hear a
>>> "relay sound" (a electric clic of a relay), then, the Saffire LE
>>> disapears from the sound menu in Ubuntu sound menu.

I can regenerate this phenomena.

>>> I can see this in dmesg:
>>> 
>>> [   19.083583] snd-bebob fw1.0: Detect discontinuity of CIP: 10 50
>>> [   19.746665] snd-bebob fw1.0: Detect discontinuity of CIP: A0 A8
>>> ...
>>> [  284.965508] snd-bebob fw1.0: Detect discontinuity of CIP: D0 10
>>> [  285.469348] snd-bebob fw1.0: Detect discontinuity of CIP: 68 A8
>>> [  285.965174] snd-bebob fw1.0: Detect discontinuity of CIP: 20 60
>>> [  285.981618] firewire_core 0000:05:01.0: phy config: new root=ffc1,
>>> gap_count=5
>>> [  290.103982] firewire_core 0000:05:01.0: phy config: new root=ffc1, gap_count=5

I can see as well.

Then, I realized that these discontinuity occurs in packet streaming
of 'second or later'. In short, once disconnection of packet streaming,
the unit transfers packets with discontinuity in packet streaming of
reconnection. Furthermore, the discontinuity is in the early isoc
cycles of packet streaming.

I've already commit to avoid the detection of discontinuity in recent
commit for v5.5 kernel (under development):
https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git/commit/sound/firewire/bebob?id=acfedcbe1ce4c69e1da914f39c02d945c80198d4

In this patch, isoc packets from the device are captured enough after
connection to skip early cycles of packet streaming, thus the
discontinuity is not detected.

As long as I tested, this version of ALSA BeBoB driver works well with
the device. I'd like you to test with backport drivers as well:
https://github.com/takaswie/snd-firewire-improve


Regards

Takashi Sakamoto


More information about the Alsa-devel mailing list