Lines Matching defs:mts

63 static int snd_mts64_free(struct mts64 *mts)
65 kfree(mts);
73 struct mts64 *mts;
77 mts = kzalloc(sizeof(struct mts64), GFP_KERNEL);
78 if (mts == NULL)
82 spin_lock_init(&mts->lock);
83 mts->card = card;
84 mts->pardev = pardev;
85 mts->current_midi_output_port = -1;
86 mts->current_midi_input_port = -1;
88 *rchip = mts;
130 static int mts64_device_open(struct mts64 *mts);
131 static int mts64_device_close(struct mts64 *mts);
143 static void mts64_write_midi(struct mts64 *mts, u8 c, int midiport);
223 static int mts64_device_open(struct mts64 *mts)
226 struct parport *p = mts->pardev->port;
237 static int mts64_device_close(struct mts64 *mts)
240 struct parport *p = mts->pardev->port;
409 static void mts64_write_midi(struct mts64 *mts, u8 c,
412 struct parport *p = mts->pardev->port;
415 if (mts->current_midi_output_port != midiport)
432 struct mts64 *mts = snd_kcontrol_chip(kctl);
434 spin_lock_irq(&mts->lock);
435 uctl->value.integer.value[0] = mts->smpte_switch;
436 spin_unlock_irq(&mts->lock);
446 struct mts64 *mts = snd_kcontrol_chip(kctl);
450 spin_lock_irq(&mts->lock);
451 if (mts->smpte_switch == val)
455 mts->smpte_switch = val;
456 if (mts->smpte_switch) {
457 mts64_smpte_start(mts->pardev->port,
458 mts->time[0], mts->time[1],
459 mts->time[2], mts->time[3],
460 mts->fps);
462 mts64_smpte_stop(mts->pardev->port);
465 spin_unlock_irq(&mts->lock);
514 struct mts64 *mts = snd_kcontrol_chip(kctl);
517 spin_lock_irq(&mts->lock);
518 uctl->value.integer.value[0] = mts->time[idx];
519 spin_unlock_irq(&mts->lock);
527 struct mts64 *mts = snd_kcontrol_chip(kctl);
532 spin_lock_irq(&mts->lock);
533 if (mts->time[idx] != time) {
535 mts->time[idx] = time;
537 spin_unlock_irq(&mts->lock);
600 struct mts64 *mts = snd_kcontrol_chip(kctl);
602 spin_lock_irq(&mts->lock);
603 uctl->value.enumerated.item[0] = mts->fps;
604 spin_unlock_irq(&mts->lock);
612 struct mts64 *mts = snd_kcontrol_chip(kctl);
617 spin_lock_irq(&mts->lock);
618 if (mts->fps != uctl->value.enumerated.item[0]) {
620 mts->fps = uctl->value.enumerated.item[0];
622 spin_unlock_irq(&mts->lock);
640 struct mts64 *mts)
653 err = snd_ctl_add(card, snd_ctl_new1(control[i], mts));
671 struct mts64 *mts = substream->rmidi->private_data;
673 if (mts->open_count == 0) {
677 mts64_device_open(mts);
681 ++(mts->open_count);
688 struct mts64 *mts = substream->rmidi->private_data;
691 --(mts->open_count);
692 if (mts->open_count == 0) {
695 spin_lock_irqsave(&mts->lock, flags);
696 mts64_device_close(mts);
697 spin_unlock_irqrestore(&mts->lock, flags);
701 } else if (mts->open_count < 0)
702 mts->open_count = 0;
710 struct mts64 *mts = substream->rmidi->private_data;
714 spin_lock_irqsave(&mts->lock, flags);
716 mts64_write_midi(mts, data, substream->number+1);
719 spin_unlock_irqrestore(&mts->lock, flags);
725 struct mts64 *mts = substream->rmidi->private_data;
728 spin_lock_irqsave(&mts->lock, flags);
730 mts->mode[substream->number] |= MTS64_MODE_INPUT_TRIGGERED;
732 mts->mode[substream->number] &= ~MTS64_MODE_INPUT_TRIGGERED;
734 spin_unlock_irqrestore(&mts->lock, flags);
752 struct mts64 *mts = card->private_data;
765 rmidi->private_data = mts;
771 mts->rmidi = rmidi;
791 mts->midi_input_substream[substream->number] = substream;
803 err = snd_mts64_ctl_create(card, mts);
813 struct mts64 *mts = ((struct snd_card*)private)->private_data;
818 if (!mts)
821 spin_lock(&mts->lock);
822 ret = mts64_read(mts->pardev->port);
827 mts->current_midi_input_port = mts64_map_midi_input(data);
829 if (mts->current_midi_input_port == -1)
831 substream = mts->midi_input_substream[mts->current_midi_input_port];
832 if (mts->mode[substream->number] & MTS64_MODE_INPUT_TRIGGERED)
836 spin_unlock(&mts->lock);
893 struct mts64 *mts = card->private_data;
894 struct pardevice *pardev = mts->pardev;
901 snd_mts64_free(mts);
910 struct mts64 *mts = NULL;
956 err = snd_mts64_create(card, pardev, &mts);
961 card->private_data = mts;