Lines Matching refs:emu
20 struct snd_emu10k1 *emu = dev_id; in snd_emu10k1_interrupt() local
25 while (((status = inl(emu->port + IPR)) != 0) && (timeout < 1000)) { in snd_emu10k1_interrupt()
30 dev_info(emu->card->dev, in snd_emu10k1_interrupt()
35 dev_err(emu->card->dev, "interrupt: PCI error\n"); in snd_emu10k1_interrupt()
36 snd_emu10k1_intr_disable(emu, INTE_PCIERRORENABLE); in snd_emu10k1_interrupt()
40 if (emu->hwvol_interrupt) in snd_emu10k1_interrupt()
41 emu->hwvol_interrupt(emu, status); in snd_emu10k1_interrupt()
43 snd_emu10k1_intr_disable(emu, INTE_VOLINCRENABLE|INTE_VOLDECRENABLE|INTE_MUTEENABLE); in snd_emu10k1_interrupt()
50 struct snd_emu10k1_voice *pvoice = emu->voices; in snd_emu10k1_interrupt()
52 val = snd_emu10k1_ptr_read(emu, CLIPL, 0); in snd_emu10k1_interrupt()
55 val = snd_emu10k1_ptr_read(emu, CLIPH, 0); in snd_emu10k1_interrupt()
58 pvoice->interrupt(emu, pvoice); in snd_emu10k1_interrupt()
59 snd_emu10k1_voice_intr_ack(emu, voice); in snd_emu10k1_interrupt()
61 snd_emu10k1_voice_intr_disable(emu, voice); in snd_emu10k1_interrupt()
67 val = snd_emu10k1_ptr_read(emu, HLIPL, 0); in snd_emu10k1_interrupt()
70 val = snd_emu10k1_ptr_read(emu, HLIPH, 0); in snd_emu10k1_interrupt()
73 pvoice->interrupt(emu, pvoice); in snd_emu10k1_interrupt()
74 snd_emu10k1_voice_half_loop_intr_ack(emu, voice); in snd_emu10k1_interrupt()
76 snd_emu10k1_voice_half_loop_intr_disable(emu, voice); in snd_emu10k1_interrupt()
86 if (emu->capture_interrupt) in snd_emu10k1_interrupt()
87 emu->capture_interrupt(emu, status); in snd_emu10k1_interrupt()
89 snd_emu10k1_intr_disable(emu, INTE_ADCBUFENABLE); in snd_emu10k1_interrupt()
93 if (emu->capture_mic_interrupt) in snd_emu10k1_interrupt()
94 emu->capture_mic_interrupt(emu, status); in snd_emu10k1_interrupt()
96 snd_emu10k1_intr_disable(emu, INTE_MICBUFENABLE); in snd_emu10k1_interrupt()
100 if (emu->capture_efx_interrupt) in snd_emu10k1_interrupt()
101 emu->capture_efx_interrupt(emu, status); in snd_emu10k1_interrupt()
103 snd_emu10k1_intr_disable(emu, INTE_EFXBUFENABLE); in snd_emu10k1_interrupt()
107 if (emu->midi.interrupt) in snd_emu10k1_interrupt()
108 emu->midi.interrupt(emu, status); in snd_emu10k1_interrupt()
110 snd_emu10k1_intr_disable(emu, INTE_MIDITXENABLE|INTE_MIDIRXENABLE); in snd_emu10k1_interrupt()
114 if (emu->midi2.interrupt) in snd_emu10k1_interrupt()
115 emu->midi2.interrupt(emu, status); in snd_emu10k1_interrupt()
117 snd_emu10k1_intr_disable(emu, INTE_A_MIDITXENABLE2|INTE_A_MIDIRXENABLE2); in snd_emu10k1_interrupt()
121 if (emu->timer) in snd_emu10k1_interrupt()
122 snd_timer_interrupt(emu->timer, emu->timer->sticks); in snd_emu10k1_interrupt()
124 snd_emu10k1_intr_disable(emu, INTE_INTERVALTIMERENB); in snd_emu10k1_interrupt()
128 if (emu->spdif_interrupt) in snd_emu10k1_interrupt()
129 emu->spdif_interrupt(emu, status); in snd_emu10k1_interrupt()
131 snd_emu10k1_intr_disable(emu, INTE_GPSPDIFENABLE|INTE_CDSPDIFENABLE); in snd_emu10k1_interrupt()
135 if (emu->dsp_interrupt) in snd_emu10k1_interrupt()
136 emu->dsp_interrupt(emu); in snd_emu10k1_interrupt()
138 snd_emu10k1_intr_disable(emu, INTE_FXDSPENABLE); in snd_emu10k1_interrupt()
142 while ((status2 = inl(emu->port + IPR2)) != 0) { in snd_emu10k1_interrupt()
144 struct snd_emu10k1_voice *pvoice = &(emu->p16v_voices[0]); in snd_emu10k1_interrupt()
145 struct snd_emu10k1_voice *cvoice = &(emu->p16v_capture_voice); in snd_emu10k1_interrupt()
153 dev_err(emu->card->dev, in snd_emu10k1_interrupt()
166 outl(orig_status2, emu->port + IPR2); /* ack all */ in snd_emu10k1_interrupt()
173 dev_err(emu->card->dev, in snd_emu10k1_interrupt()
189 if (emu->audigy) in snd_emu10k1_interrupt()
191 snd_emu10k1_intr_disable(emu, bits); in snd_emu10k1_interrupt()
193 outl(orig_status, emu->port + IPR); /* ack all */ in snd_emu10k1_interrupt()
196 dev_info(emu->card->dev, "emu10k1 irq routine failure\n"); in snd_emu10k1_interrupt()