Johannes Bauer schrieb:

>> Any pointer could help me to add some support about it into
>> scan-win-drivers.pl (I hope that I won't have to mimic the Windows PnP's
>> job in perl ;-)
> 
> OK, I'm fiddling with it right now to build a kind of lsbus - I've not
> read anywhere such a program already exists.

So, I'm getting somewhere. libpci is pretty neat - however I think the
problem is far too complex to solve it without kernel support:

What we want is the HDA codec device/vendor ids (struct hda_codec*)
Those are capsuled in HDA busses (struct hda_bus*)
Those busses rely on a pci bus (struct pci_dev*) and provice HDA bus
operations (struct hda_bus_ops*)

Thsoe hda_bus_ops are the problem: They define the interface how to
speak to a PCI device on the HDA level (send command, wait for
response). The problem is: Access is not uniform. It varies for each and
every device, sometimes even for subtypes. All those are specified in
the patch_*.c files, which are 32 KLOC alone.

What does this mean? We're screwed, pretty much. Unless the kernel
provides some easy was of accessing the data. Which it does :-)

I propose this: Import the HDA drivers into the initrd. Then do a scan
of /proc/asound/card[0-9][0-9]? which lists the information we're
looking for nicely:

Codec: Realtek ALC888
Address: 0
Vendor Id: 0x10ec0888
Subsystem Id: 0x14627519
Revision Id: 0x100001
[...]

(this is another PC, don't worry that the IDs are different than in my
other posting).

Kind regards,
Johannes

------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
unattended-devel mailing list
unattended-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/unattended-devel

Reply via email to