case PCI_DEVICE_ID_DIGI96_8: 
case PCI_DEVICE_ID_RME_DIGI96_8: 
snd_rme96_probe(struct pci_dev *pci,		const struct pci_device_id *pci_id){	static int dev;	rme96_t *rme96;	snd_card_t *card;	int err;	u8 val;	if (dev >= SNDRV_CARDS) {		return -ENODEV;	}	if (!enable[dev]) {		dev++;		return -ENOENT;	}	if ((card = snd_card_new(index[dev], id[dev], THIS_MODULE,				 sizeof(rme96_t))) == NULL)		return -ENOMEM;	card->private_free = snd_rme96_card_free;	rme96 = (rme96_t *)card->private_data;		rme96->card = card;	rme96->pci = pci;	snd_card_set_dev(card, &pci->dev);	if ((err = snd_rme96_create(rme96)) < 0) {		snd_card_free(card);		return err;	}		strcpy(card->driver, "Digi96");	switch (rme96->pci->device) {	case PCI_DEVICE_ID_DIGI96:		strcpy(card->shortname, "RME Digi96");		break;	case PCI_DEVICE_ID_DIGI96_8:		strcpy(card->shortname, "RME Digi96/8");		break;	case PCI_DEVICE_ID_DIGI96_8_PRO:		strcpy(card->shortname, "RME Digi96/8 PRO");		break;	case PCI_DEVICE_ID_DIGI96_8_PAD_OR_PST:		pci_read_config_byte(rme96->pci, 8, &val);		if (val < 5) {			strcpy(card->shortname, "RME Digi96/8 PAD");		} else {			strcpy(card->shortname, "RME Digi96/8 PST");		}		break;	}	sprintf(card->longname, "%s at 0x%lx, irq %d", card->shortname,		rme96->port, rme96->irq);		if ((err = snd_card_register(card)) < 0) {		snd_card_free(card);		return err;		}	pci_set_drvdata(pci, card);	dev++;	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/8b7fc4214b550fafe595330e28d7c2c72b8b62f6/rme96.c/buggy/sound/pci/rme96.c