if (rme32->pci->device != PCI_DEVICE_ID_DIGI32_PRO) 
if (rme32->pci->device != PCI_DEVICE_ID_RME_DIGI32_PRO) 
static int snd_rme32_playback_setrate(rme32_t * rme32, int rate){        int ds;        ds = rme32->wcreg & RME32_WCR_DS_BM;	switch (rate) {	case 32000:		rme32->wcreg &= ~RME32_WCR_DS_BM;		rme32->wcreg = (rme32->wcreg | RME32_WCR_FREQ_0) & 			~RME32_WCR_FREQ_1;		break;	case 44100:		rme32->wcreg &= ~RME32_WCR_DS_BM;		rme32->wcreg = (rme32->wcreg | RME32_WCR_FREQ_1) & 			~RME32_WCR_FREQ_0;		break;	case 48000:		rme32->wcreg &= ~RME32_WCR_DS_BM;		rme32->wcreg = (rme32->wcreg | RME32_WCR_FREQ_0) | 			RME32_WCR_FREQ_1;		break;	case 64000:		if (rme32->pci->device != PCI_DEVICE_ID_DIGI32_PRO)			return -EINVAL;		rme32->wcreg |= RME32_WCR_DS_BM;		rme32->wcreg = (rme32->wcreg | RME32_WCR_FREQ_0) & 			~RME32_WCR_FREQ_1;		break;	case 88200:		if (rme32->pci->device != PCI_DEVICE_ID_DIGI32_PRO)			return -EINVAL;		rme32->wcreg |= RME32_WCR_DS_BM;		rme32->wcreg = (rme32->wcreg | RME32_WCR_FREQ_1) & 			~RME32_WCR_FREQ_0;		break;	case 96000:		if (rme32->pci->device != PCI_DEVICE_ID_DIGI32_PRO)			return -EINVAL;		rme32->wcreg |= RME32_WCR_DS_BM;		rme32->wcreg = (rme32->wcreg | RME32_WCR_FREQ_0) | 			RME32_WCR_FREQ_1;		break;	default:		return -EINVAL;	}        if ((!ds && rme32->wcreg & RME32_WCR_DS_BM) ||            (ds && !(rme32->wcreg & RME32_WCR_DS_BM)))        {                /* change to/from double-speed: reset the DAC (if available) */                snd_rme32_reset_dac(rme32);        } else {                writel(rme32->wcreg, rme32->iobase + RME32_IO_CONTROL_REGISTER);	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/8b7fc4214b550fafe595330e28d7c2c72b8b62f6/rme32.c/buggy/sound/pci/rme32.c