2002-01-10 15:33:58

by William Robison

[permalink] [raw]
Subject: Re: [PATCH][RFCA] Sound: adding /proc/driver/{vendor}/{dev_pci}/ac97 entry

Alan mentioned that some cards make use of multiple codecs,
but also consider those of us that have multiple sound
cards when forming the '/proc' pathname. As a quick&dirty
hack to allow two 1371 cards to co-exist in /proc, I added
the upper 8 bits of the address into the filename...

(One sound card dedicated to being used as a 1200 baud
modem for AX25 work, leaving one free for use as a
normal soundcard)

regards
-Willy
William Robison


2002-01-10 17:30:57

by Salvador Eduardo Tropea

[permalink] [raw]
Subject: Re: [PATCH][RFCA] Sound: adding /proc/driver/{vendor}/{dev_pci}/ac97 entry

William Robison wrote:

> Alan mentioned that some cards make use of multiple codecs,
> but also consider those of us that have multiple sound
> cards when forming the '/proc' pathname. As a quick&dirty
> hack to allow two 1371 cards to co-exist in /proc, I added
> the upper 8 bits of the address into the filename...
>
> (One sound card dedicated to being used as a 1200 baud
> modem for AX25 work, leaving one free for use as a
> normal soundcard)

My patch creates an entry that looks like it:

/proc/drivers/es1371/00:03.00/ac97

Where 00:03.00 is PCI bus == 00, 03 is card 3 of the bus and the last 00 is
feature/chip on the card == 00.
This name is the unique name of the card created by the pci part of the
kernel. Somebody pointed out that this will change to allow more than 256
elements, in this case the id will change and the module will create a
correct unique name.
If you have 2 boards in the same PCI bus it will look like it:

/proc/drivers/es1371/00:03.00/ac97
/proc/drivers/es1371/00:04.00/ac97

If you have a board with a chip that implements 2 ESS1371/CT5880/... will
look like it:

/proc/drivers/es1371/00:03.00/ac97
/proc/drivers/es1371/00:03.01/ac97

And if you have 2 boards in different PCI buses:

/proc/drivers/es1371/00:03.00/ac97
/proc/drivers/es1371/01:03.00/ac97

These are just examples but I think you get the idea and understand that
there is no problem. What Alan pointed out (and he is 100% right) is that the
same DC97 chip (ESS1371 for example) can have attached more than one AC97
codec (upto 4 according the spec) all using the AC-link communication. In
this case the PCI bus, card number and feature number is the same for all the
codecs. I'm resending a patch that will create it:

/proc/drivers/es1371/00:03.00/ac97-0
/proc/drivers/es1371/00:03.00/ac97-1

SET

--
Salvador Eduardo Tropea (SET). (Electronics Engineer)
Visit my home page: http://welcome.to/SetSoft or
http://www.geocities.com/SiliconValley/Vista/6552/
Alternative e-mail: [email protected] [email protected]
Address: Curapaligue 2124, Caseros, 3 de Febrero
Buenos Aires, (1678), ARGENTINA Phone: +(5411) 4759 0013