At Wed, 23 May 2012 13:57:34 -0500, Pierre-Louis Bossart wrote:
Also, the point of the sync id is that it's shared with all linked streams. Your patch breaks it. It updates only the last added sync id.
The fact that the driver currently sets only the card number is actually problematic. It's not unique enough. This should be fixed. But, exposing the substream bitmask doesn't help much because it can't be fully implemented in the sync id size. If you need to know which streams are linked, loop over all streams and check the sync id.
If I understand you well, the sync id should be a unique identifier shared by all linked streams in the same group. Since devices can be linked/unlinked, this id cannot use anything related to device or subdevice number. Maybe a pid-like value incremented when a group is created would do?
Yes, that sounds like a reasonable solution.
thanks,
Takashi