Re: [LAU] Many identical cards - how to keep them straight

From: Mark Knecht <markknecht@email-addr-hidden>
Date: Mon Mar 10 2008 - 15:17:11 EET

On Mon, Mar 10, 2008 at 5:06 AM, Paul Davis <paul@email-addr-hidden> wrote:
>
> On Mon, 2008-03-10 at 11:22 +0100, Arnold Krille wrote:
> > Am Sonntag, 9. März 2008 schrieb Mark Knecht:
> > > On Sun, Mar 9, 2008 at 3:52 PM, drew Roberts <zotz@email-addr-hidden> wrote:
> > > > On Sunday 09 March 2008 18:44:21 Mark Knecht wrote:
> > > > > Hi,
> > > > > I'm aware of and use standard Alsa methods to keep different sound
> > > > > cards in the same system straight as far as Alsa is concerned. I'm
> > > > > wondering what the proper process would be to keep 3 HDSP9652's which
> > > > > are physically in the same system, or multiple USB sound devices
> > > > > external to the system, straight as far as Alsa is concerned. I'd like
> > > > > to know that a certain card always will be always be card 0, card 1 or
> > > > > card 2. I do not want Alsa or Linux to make this decision for me and I
> > > > > certainly don't want Alsa to change them from boot cycle to boot
> > > > > cycle.
> > > > I needed to solve this problem a while back. The best help I got was
> > > > telling me it was not possible.
> > > Humm, that's a pretty glaring disappointment, assuming it's true, and
> > > I have no reason to believe it isn't.
> >
> > Probably the one giving that answer was me. It is not entirely impossible. The
> > solution is roughly:
>
> I don't think that this is what Mark was asking for.
>
> The problem he is facing is that if you have, say, 3 RME HDSP's, the
> information used to identify them to ALSA (at least) is identical in
> every case. It is therefore tricky to ensure that what you consider to
> be the "first" card is always hw:0 and so forth. The usual ALSA
> mechanism relies on PCI id and other stuff that, IIRC, is not going to
> distinguish between 3 identical cards.
>
> He does *not* want to run the 3 cards as one, and if he does, he knows
> he has to keep them in sync.
>
> I don't know of a solution to this. I guess that the PCI registers for
> the cards contain some kind of serial number, but how you can get ALSA
> to based its snd_index assignments on that, I don't know.
>
> --p
>
Thanks Paul. Your assessment of my question was correct. In my current
system I already keep cards in sync just using ADAT or spdif sync.
Personally I probably wouldn't buy any card these days that couldn't
respond to some sort of external sync signal as it seems that over
time some need for that always comes up. Thanks to Arnold for his
information though. Maybe that will help someone else in the future.

For example if I have 3 HDSP9652's in a system in a system I could in
theory have the ADAT cables from two of the cards going to a mixing
desk, the lower half of the desk being card 0 and the upper half being
card 1. (Or two desks in parallel.) The 3rd card might be talking to
an external rack of signal processors. What is important is that the
system not arbitrarily change the 3 groups of connections the next
time I boot the system or I find myself mixing inside of a reverb unit
and wondering why my mixer sounds dry.

In Windows the system seems to read the card's firmware where it finds
some unique ID value, possibly just the PCI device and vendor IDs, and
then I think possibly builds a table where it records the card type
and possibly the PCI slot number or something system specific to make
a semi-permanent record of how things are configured. Windows manages
to keep this straight even if the interrupts from identical devices
are shared. This record is then used to set things up the same way the
next time you boot. If the records haven't changed then the assumption
is the configuration hasn't either. It seem that Alsa has no
capabilities to do that sort of thing but I wanted to check here just
to make sure I wasn't selling Alsa short.

While it may not be much of a problem for most of us folks would there
be any reason not to file an enhancement request with the Alsa devs on
this issue?

Thanks,
Mark
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user
Received on Mon Mar 10 16:15:03 2008

This archive was generated by hypermail 2.1.8 : Mon Mar 10 2008 - 16:15:03 EET