Re: [PATCH] PnP Updates for 2.6.2-rc2

From: Adam Belay
Date: Fri Jan 30 2004 - 00:21:54 EST


This patch updates the matching code to ensure that all requested devices are
present on the card, even if they are in use. It is necessary for some ALSA
drivers to work properly because early vendors would have different sets of
devices on the same card ids. It is from Takashi Iwai <tiwai@xxxxxxx>.

--- a/drivers/pnp/card.c 2004-01-09 07:00:03.000000000 +0000
+++ b/drivers/pnp/card.c 2004-01-29 22:06:22.000000000 +0000
@@ -26,8 +26,25 @@
{
const struct pnp_card_device_id * drv_id = drv->id_table;
while (*drv_id->id){
- if (compare_pnp_id(card->id,drv_id->id))
- return drv_id;
+ if (compare_pnp_id(card->id,drv_id->id)) {
+ int i = 0;
+ for (;;) {
+ int found;
+ struct pnp_dev *dev;
+ if (i == PNP_MAX_DEVICES || ! *drv_id->devs[i].id)
+ return drv_id;
+ found = 0;
+ card_for_each_dev(card, dev) {
+ if (compare_pnp_id(dev->id, drv_id->devs[i].id)) {
+ found = 1;
+ break;
+ }
+ }
+ if (! found)
+ break;
+ i++;
+ }
+ }
drv_id++;
}
return NULL;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/