Lines Matching defs:mpu

43 	struct snd_msndmidi *mpu;
47 mpu = substream->rmidi->private_data;
49 mpu->substream_input = substream;
51 snd_msnd_enable_irq(mpu->dev);
53 snd_msnd_send_dsp_cmd(mpu->dev, HDEX_MIDI_IN_START);
54 set_bit(MSNDMIDI_MODE_BIT_INPUT, &mpu->mode);
60 struct snd_msndmidi *mpu;
62 mpu = substream->rmidi->private_data;
63 snd_msnd_send_dsp_cmd(mpu->dev, HDEX_MIDI_IN_STOP);
64 clear_bit(MSNDMIDI_MODE_BIT_INPUT, &mpu->mode);
65 mpu->substream_input = NULL;
66 snd_msnd_disable_irq(mpu->dev);
70 static void snd_msndmidi_input_drop(struct snd_msndmidi *mpu)
74 tail = readw(mpu->dev->MIDQ + JQS_wTail);
75 writew(tail, mpu->dev->MIDQ + JQS_wHead);
85 struct snd_msndmidi *mpu;
89 mpu = substream->rmidi->private_data;
90 spin_lock_irqsave(&mpu->input_lock, flags);
93 &mpu->mode))
94 snd_msndmidi_input_drop(mpu);
96 clear_bit(MSNDMIDI_MODE_BIT_INPUT_TRIGGER, &mpu->mode);
98 spin_unlock_irqrestore(&mpu->input_lock, flags);
100 snd_msndmidi_input_read(mpu);
106 struct snd_msndmidi *mpu = mpuv;
107 void __iomem *pwMIDQData = mpu->dev->mappedbase + MIDQ_DATA_BUFF;
110 spin_lock_irqsave(&mpu->input_lock, flags);
111 head = readw(mpu->dev->MIDQ + JQS_wHead);
112 tail = readw(mpu->dev->MIDQ + JQS_wTail);
113 size = readw(mpu->dev->MIDQ + JQS_wSize);
119 if (test_bit(MSNDMIDI_MODE_BIT_INPUT_TRIGGER, &mpu->mode))
120 snd_rawmidi_receive(mpu->substream_input, &val, 1);
123 writew(head, mpu->dev->MIDQ + JQS_wHead);
126 spin_unlock_irqrestore(&mpu->input_lock, flags);
138 struct snd_msndmidi *mpu = rmidi->private_data;
139 kfree(mpu);
145 struct snd_msndmidi *mpu;
152 mpu = kzalloc(sizeof(*mpu), GFP_KERNEL);
153 if (mpu == NULL) {
157 mpu->dev = chip;
158 chip->msndmidi_mpu = mpu;
159 rmidi->private_data = mpu;
161 spin_lock_init(&mpu->input_lock);