case PCI_DEVICE_ID_DIGI96_8_PAD_OR_PST: 
case PCI_DEVICE_ID_RME_DIGI96_8_PAD_OR_PST: 
snd_rme96_put_inputtype_control(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol){	rme96_t *rme96 = snd_kcontrol_chip(kcontrol);	unsigned int val;	int change, items = 3;		switch (rme96->pci->device) {	case PCI_DEVICE_ID_DIGI96:	case PCI_DEVICE_ID_DIGI96_8:		items = 3;		break;	case PCI_DEVICE_ID_DIGI96_8_PRO:		items = 4;		break;	case PCI_DEVICE_ID_DIGI96_8_PAD_OR_PST:		if (rme96->rev > 4) {			items = 4;		} else {			items = 5;		}		break;	default:		snd_BUG();		break;	}	val = ucontrol->value.enumerated.item[0] % items;		/* special case for PST */	if (rme96->pci->device == PCI_DEVICE_ID_DIGI96_8_PAD_OR_PST && rme96->rev > 4) {		if (val == RME96_INPUT_XLR) {			val = RME96_INPUT_ANALOG;		}	}		spin_lock_irq(&rme96->lock);	change = (int)val != snd_rme96_getinputtype(rme96);	snd_rme96_setinputtype(rme96, val);	spin_unlock_irq(&rme96->lock);	return change;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/8b7fc4214b550fafe595330e28d7c2c72b8b62f6/rme96.c/buggy/sound/pci/rme96.c