On Sun, 2011-04-17 at 00:56 -0400, Neal Murphy wrote: > Gently illuminating a point that does not necessarily invalidate your whole > argument: pci.ids and the IDs used in drivers are not necessarily in sync. > Udev should depend solely on the IDs compiled into the drivers; it can easily > obtain this info from the driver itself. Udev v165 seems to care about > pci.ids > only in config.h*, configure, and configure.ac; pci.ids doesn't seem to be > referenced anywhere else in the source. Neither 'pci.ids' nor #defines using > the file seem to be used in any code, which makes sense since a driver should > not claim any device that does not match its compiled-in IDs. I would expect > usb.ids to be treated similarly. I wouldn't expect great changes within > several releases of udev.
As I understand it, it's not about drivers; at least, not the kernel variety. The only example I can see in my installation is the file: /lib/udev/rules.d/78-sound-card.rules And from what I can see, they're using the descriptions from the usb.ids to recognise arbitrary devices as being USB-connected speakers, headsets, microphones, etc. Rules like: ------------------- # Matching on the model strings is a bit ugly, I admit ENV{ID_MODEL}=="*[Ss]peaker*", ENV{SOUND_FORM_FACTOR}="speaker", GOTO="sound_end" ENV{ID_MODEL_FROM_DATABASE}=="*[Ss]peaker*", ENV{SOUND_FORM_FACTOR}="speaker", GOTO="sound_end" ENV{ID_MODEL}=="*[Hh]eadphone*", ENV{SOUND_FORM_FACTOR}="headphone", GOTO="sound_end" ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]eadphone*", ENV{SOUND_FORM_FACTOR}="headphone", GOTO="sound_end" ------------------- I guess the issue is that a lot of USB devices aren't handled by kernel drivers matching on known device ids - they're handled in userspace. And udev is the bit providing information so that userspace can tell which devices it cares about. Simon.
signature.asc
Description: This is a digitally signed message part
-- http://linuxfromscratch.org/mailman/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/lfs/faq.html Unsubscribe: See the above information page