Lines Matching refs:card_mpuout
45 struct emu10k1_mpuout *card_mpuout = card->mpuout; in emu10k1_mpuout_open() local
49 if (!(card_mpuout->status & FLAGS_AVAILABLE)) in emu10k1_mpuout_open()
53 card_mpuout->intr = 0; in emu10k1_mpuout_open()
54 card_mpuout->openinfo = *openinfo; in emu10k1_mpuout_open()
55 card_mpuout->status &= ~FLAGS_AVAILABLE; in emu10k1_mpuout_open()
56 card_mpuout->laststatus = 0x80; in emu10k1_mpuout_open()
57 card_mpuout->firstmidiq = NULL; in emu10k1_mpuout_open()
58 card_mpuout->lastmidiq = NULL; in emu10k1_mpuout_open()
68 struct emu10k1_mpuout *card_mpuout = card->mpuout; in emu10k1_mpuout_close() local
77 spin_lock_irqsave(&card_mpuout->lock, flags); in emu10k1_mpuout_close()
79 while (card_mpuout->firstmidiq != NULL) { in emu10k1_mpuout_close()
80 midiq = card_mpuout->firstmidiq; in emu10k1_mpuout_close()
83 card_mpuout->firstmidiq = midiq->next; in emu10k1_mpuout_close()
90 card_mpuout->lastmidiq = NULL; in emu10k1_mpuout_close()
94 card_mpuout->status |= FLAGS_AVAILABLE; in emu10k1_mpuout_close()
96 spin_unlock_irqrestore(&card_mpuout->lock, flags); in emu10k1_mpuout_close()
108 struct emu10k1_mpuout *card_mpuout = card->mpuout; in emu10k1_mpuout_add_buffer() local
114 if (card_mpuout->state == CARDMIDIOUT_STATE_SUSPEND) in emu10k1_mpuout_add_buffer()
133 spin_lock_irqsave(&card_mpuout->lock, flags); in emu10k1_mpuout_add_buffer()
135 if (card_mpuout->firstmidiq == NULL) { in emu10k1_mpuout_add_buffer()
136 card_mpuout->firstmidiq = midiq; in emu10k1_mpuout_add_buffer()
137 card_mpuout->lastmidiq = midiq; in emu10k1_mpuout_add_buffer()
139 (card_mpuout->lastmidiq)->next = midiq; in emu10k1_mpuout_add_buffer()
140 card_mpuout->lastmidiq = midiq; in emu10k1_mpuout_add_buffer()
143 card_mpuout->intr = 0; in emu10k1_mpuout_add_buffer()
147 spin_unlock_irqrestore(&card_mpuout->lock, flags); in emu10k1_mpuout_add_buffer()
155 struct emu10k1_mpuout *card_mpuout = card->mpuout; in emu10k1_mpuout_bh() local
161 spin_lock_irqsave(&card_mpuout->lock, flags); in emu10k1_mpuout_bh()
163 while (card_mpuout->firstmidiq != NULL) { in emu10k1_mpuout_bh()
164 midiq = card_mpuout->firstmidiq; in emu10k1_mpuout_bh()
179 card_mpuout->firstmidiq = midiq->next; in emu10k1_mpuout_bh()
184 if (card_mpuout->firstmidiq == NULL) in emu10k1_mpuout_bh()
185 card_mpuout->lastmidiq = NULL; in emu10k1_mpuout_bh()
188 while (doneq != card_mpuout->firstmidiq) { in emu10k1_mpuout_bh()
199 emu10k1_midi_callback(ICARDMIDI_OUTLONGDATA, card_mpuout->openinfo.refdata, callback_msg); in emu10k1_mpuout_bh()
201 card_mpuout->laststatus = (u8) midiq->refdata; in emu10k1_mpuout_bh()
207 if ((card_mpuout->firstmidiq != NULL) || cByteSent) { in emu10k1_mpuout_bh()
208 card_mpuout->intr = 0; in emu10k1_mpuout_bh()
212 spin_unlock_irqrestore(&card_mpuout->lock, flags); in emu10k1_mpuout_bh()
219 struct emu10k1_mpuout *card_mpuout = card->mpuout; in emu10k1_mpuout_irqhandler() local
223 card_mpuout->intr = 1; in emu10k1_mpuout_irqhandler()
226 tasklet_hi_schedule(&card_mpuout->tasklet); in emu10k1_mpuout_irqhandler()