Home
last modified time | relevance | path

Searched refs:midi (Results 1 – 25 of 74) sorted by relevance

123

/linux-6.6.21/sound/pci/ca0106/
Dca_midi.c20 #define ca_midi_write_data(midi, data) midi->write(midi, data, 0) argument
21 #define ca_midi_write_cmd(midi, data) midi->write(midi, data, 1) argument
22 #define ca_midi_read_data(midi) midi->read(midi, 0) argument
23 #define ca_midi_read_stat(midi) midi->read(midi, 1) argument
24 #define ca_midi_input_avail(midi) (!(ca_midi_read_stat(midi) & midi->input_avail)) argument
25 #define ca_midi_output_ready(midi) (!(ca_midi_read_stat(midi) & midi->output_ready)) argument
27 static void ca_midi_clear_rx(struct snd_ca_midi *midi) in ca_midi_clear_rx() argument
30 for (; timeout > 0 && ca_midi_input_avail(midi); timeout--) in ca_midi_clear_rx()
31 ca_midi_read_data(midi); in ca_midi_clear_rx()
35 ca_midi_read_stat(midi)); in ca_midi_clear_rx()
[all …]
Dca_midi.h40 void (*interrupt)(struct snd_ca_midi *midi, unsigned int status);
41 void (*interrupt_enable)(struct snd_ca_midi *midi, int intr);
42 void (*interrupt_disable)(struct snd_ca_midi *midi, int intr);
44 unsigned char (*read)(struct snd_ca_midi *midi, int idx);
45 void (*write)(struct snd_ca_midi *midi, int data, int idx);
52 int ca_midi_init(void *card, struct snd_ca_midi *midi, int device, char *name);
Dca0106_main.c1249 if (chip->midi.dev_id && in snd_ca0106_interrupt()
1250 (status & (chip->midi.ipr_tx|chip->midi.ipr_rx))) { in snd_ca0106_interrupt()
1251 if (chip->midi.interrupt) in snd_ca0106_interrupt()
1252 chip->midi.interrupt(&chip->midi, status); in snd_ca0106_interrupt()
1254 chip->midi.interrupt_disable(&chip->midi, chip->midi.tx_enable | chip->midi.rx_enable); in snd_ca0106_interrupt()
1645 static void ca0106_midi_interrupt_enable(struct snd_ca_midi *midi, int intr) in ca0106_midi_interrupt_enable() argument
1647 snd_ca0106_intr_enable((struct snd_ca0106 *)(midi->dev_id), intr); in ca0106_midi_interrupt_enable()
1650 static void ca0106_midi_interrupt_disable(struct snd_ca_midi *midi, int intr) in ca0106_midi_interrupt_disable() argument
1652 snd_ca0106_intr_disable((struct snd_ca0106 *)(midi->dev_id), intr); in ca0106_midi_interrupt_disable()
1655 static unsigned char ca0106_midi_read(struct snd_ca_midi *midi, int idx) in ca0106_midi_read() argument
[all …]
/linux-6.6.21/sound/isa/wavefront/
Dwavefront_midi.c55 wf_mpu_status (snd_wavefront_midi_t *midi) in wf_mpu_status() argument
58 return inb (midi->mpu_status_port); in wf_mpu_status()
62 input_avail (snd_wavefront_midi_t *midi) in input_avail() argument
65 return !(wf_mpu_status(midi) & INPUT_AVAIL); in input_avail()
69 output_ready (snd_wavefront_midi_t *midi) in output_ready() argument
72 return !(wf_mpu_status(midi) & OUTPUT_READY); in output_ready()
76 read_data (snd_wavefront_midi_t *midi) in read_data() argument
79 return inb (midi->mpu_data_port); in read_data()
83 write_data (snd_wavefront_midi_t *midi, unsigned char byte) in write_data() argument
86 outb (byte, midi->mpu_data_port); in write_data()
[all …]
/linux-6.6.21/sound/pci/emu10k1/
Demumpu401.c62 static void do_emu10k1_midi_interrupt(struct snd_emu10k1 *emu, struct snd_emu10k1_midi *midi, unsig… in do_emu10k1_midi_interrupt() argument
66 if (midi->rmidi == NULL) { in do_emu10k1_midi_interrupt()
67 snd_emu10k1_intr_disable(emu, midi->tx_enable | midi->rx_enable); in do_emu10k1_midi_interrupt()
71 spin_lock(&midi->input_lock); in do_emu10k1_midi_interrupt()
72 if ((status & midi->ipr_rx) && mpu401_input_avail(emu, midi)) { in do_emu10k1_midi_interrupt()
73 if (!(midi->midi_mode & EMU10K1_MIDI_MODE_INPUT)) { in do_emu10k1_midi_interrupt()
74 mpu401_clear_rx(emu, midi); in do_emu10k1_midi_interrupt()
76 byte = mpu401_read_data(emu, midi); in do_emu10k1_midi_interrupt()
77 if (midi->substream_input) in do_emu10k1_midi_interrupt()
78 snd_rawmidi_receive(midi->substream_input, &byte, 1); in do_emu10k1_midi_interrupt()
[all …]
Demu10k1x.c237 struct emu10k1x_midi midi; member
788 if (chip->midi.interrupt) in snd_emu10k1x_interrupt()
789 chip->midi.interrupt(chip, status); in snd_emu10k1x_interrupt()
1199 struct emu10k1x_midi *midi, unsigned int status) in do_emu10k1x_midi_interrupt() argument
1203 if (midi->rmidi == NULL) { in do_emu10k1x_midi_interrupt()
1204 snd_emu10k1x_intr_disable(emu, midi->tx_enable | midi->rx_enable); in do_emu10k1x_midi_interrupt()
1208 spin_lock(&midi->input_lock); in do_emu10k1x_midi_interrupt()
1209 if ((status & midi->ipr_rx) && mpu401_input_avail(emu, midi)) { in do_emu10k1x_midi_interrupt()
1210 if (!(midi->midi_mode & EMU10K1X_MIDI_MODE_INPUT)) { in do_emu10k1x_midi_interrupt()
1211 mpu401_clear_rx(emu, midi); in do_emu10k1x_midi_interrupt()
[all …]
/linux-6.6.21/drivers/usb/gadget/function/
Df_midi.c110 static void f_midi_transmit(struct f_midi *midi);
243 struct f_midi *midi = ep->driver_data; in f_midi_read_data() local
244 struct snd_rawmidi_substream *substream = midi->out_substream[cable]; in f_midi_read_data()
250 if (!test_bit(cable, &midi->out_triggered)) in f_midi_read_data()
272 struct f_midi *midi = ep->driver_data; in f_midi_complete() local
273 struct usb_composite_dev *cdev = midi->func.config->cdev; in f_midi_complete()
278 if (ep == midi->out_ep) { in f_midi_complete()
281 } else if (ep == midi->in_ep) { in f_midi_complete()
285 f_midi_transmit(midi); in f_midi_complete()
296 if (ep == midi->out_ep) { in f_midi_complete()
[all …]
/linux-6.6.21/sound/core/seq/
DMakefile12 snd-seq-midi-objs := seq_midi.o
13 snd-seq-midi-emul-objs := seq_midi_emul.o
14 snd-seq-midi-event-objs := seq_midi_event.o
23 obj-$(CONFIG_SND_SEQ_MIDI) += snd-seq-midi.o
25 obj-$(CONFIG_SND_SEQ_MIDI_EMUL) += snd-seq-midi-emul.o
26 obj-$(CONFIG_SND_SEQ_MIDI_EVENT) += snd-seq-midi-event.o
/linux-6.6.21/Documentation/devicetree/bindings/sound/
Dserial-midi.yaml5 $id: http://devicetree.org/schemas/sound/serial-midi.yaml#
27 const: serial-midi
41 midi {
42 compatible = "serial-midi";
47 midi {
48 compatible = "serial-midi";
/linux-6.6.21/Documentation/ABI/testing/
Dsysfs-driver-hid-prodikeys6 Allows control (via software) the midi channel to which
7 that the pc-midi keyboard will output.midi data.
16 note held by the pc-midi driver.
25 Controls the octave shift modifier in the pc-midi driver.
/linux-6.6.21/sound/firewire/motu/
Damdtp-motu.c37 struct snd_rawmidi_substream *midi; member
203 struct snd_rawmidi_substream *midi) in amdtp_motu_midi_trigger() argument
208 WRITE_ONCE(p->midi, midi); in amdtp_motu_midi_trigger()
215 struct snd_rawmidi_substream *midi = READ_ONCE(p->midi); in write_midi_messages() local
222 if (midi && p->midi_db_count == 0 && in write_midi_messages()
223 snd_rawmidi_transmit(midi, b + p->midi_byte_offset, 1) == 1) { in write_midi_messages()
241 struct snd_rawmidi_substream *midi; in read_midi_messages() local
247 midi = READ_ONCE(p->midi); in read_midi_messages()
249 if (midi && (b[p->midi_flag_offset] & 0x01)) in read_midi_messages()
250 snd_rawmidi_receive(midi, b + p->midi_byte_offset, 1); in read_midi_messages()
/linux-6.6.21/sound/firewire/
Damdtp-am824.c31 struct snd_rawmidi_substream *midi[AM824_MAX_CHANNELS_FOR_MIDI * 8]; member
253 struct snd_rawmidi_substream *midi) in amdtp_am824_midi_trigger() argument
258 WRITE_ONCE(p->midi[port], midi); in amdtp_am824_midi_trigger()
308 p->midi[port] != NULL && in write_midi_messages()
309 snd_rawmidi_transmit(p->midi[port], &b[1], 1) == 1) { in write_midi_messages()
340 if ((1 <= len) && (len <= 3) && (p->midi[port])) in read_midi_messages()
341 snd_rawmidi_receive(p->midi[port], b + 1, len); in read_midi_messages()
/linux-6.6.21/sound/firewire/digi00x/
Damdtp-dot.c47 struct snd_rawmidi_substream *midi[MAX_MIDI_PORTS]; member
263 p->midi[port] != NULL) in write_midi_messages()
264 len = snd_rawmidi_transmit(p->midi[port], b + 1, 2); in write_midi_messages()
314 if (port < MAX_MIDI_PORTS && p->midi[port]) in read_midi_messages()
315 snd_rawmidi_receive(p->midi[port], b + 1, len); in read_midi_messages()
336 struct snd_rawmidi_substream *midi) in amdtp_dot_midi_trigger() argument
341 WRITE_ONCE(p->midi[port], midi); in amdtp_dot_midi_trigger()
/linux-6.6.21/sound/pci/rme9652/
Dhdspm.c998 struct hdspm_midi midi[4]; member
1812 return hdspm_read(hdspm, hdspm->midi[id].dataIn); in snd_hdspm_midi_read_byte()
1819 return hdspm_write(hdspm, hdspm->midi[id].dataOut, val); in snd_hdspm_midi_write_byte()
1824 return hdspm_read(hdspm, hdspm->midi[id].statusIn) & 0xFF; in snd_hdspm_midi_input_available()
1831 fifo_bytes_used = hdspm_read(hdspm, hdspm->midi[id].statusOut) & 0xFF; in snd_hdspm_midi_output_possible()
2059 hdspm->midi[id].id = id; in snd_hdspm_create_midi()
2060 hdspm->midi[id].hdspm = hdspm; in snd_hdspm_create_midi()
2061 spin_lock_init (&hdspm->midi[id].lock); in snd_hdspm_create_midi()
2066 hdspm->midi[0].dataIn = HDSPM_midiDataIn2; in snd_hdspm_create_midi()
2067 hdspm->midi[0].statusIn = HDSPM_midiStatusIn2; in snd_hdspm_create_midi()
[all …]
Dhdsp.c446 struct hdsp_midi midi[2]; member
1506 hdsp->midi[id].id = id; in snd_hdsp_create_midi()
1507 hdsp->midi[id].rmidi = NULL; in snd_hdsp_create_midi()
1508 hdsp->midi[id].input = NULL; in snd_hdsp_create_midi()
1509 hdsp->midi[id].output = NULL; in snd_hdsp_create_midi()
1510 hdsp->midi[id].hdsp = hdsp; in snd_hdsp_create_midi()
1511 hdsp->midi[id].istimer = 0; in snd_hdsp_create_midi()
1512 hdsp->midi[id].pending = 0; in snd_hdsp_create_midi()
1513 spin_lock_init (&hdsp->midi[id].lock); in snd_hdsp_create_midi()
1516 if (snd_rawmidi_new (card, buf, id, 1, 1, &hdsp->midi[id].rmidi) < 0) in snd_hdsp_create_midi()
[all …]
/linux-6.6.21/sound/usb/6fire/
Dmidi.c195 chip->midi = rt; in usb6fire_midi_init()
201 struct midi_runtime *rt = chip->midi; in usb6fire_midi_abort()
209 struct midi_runtime *rt = chip->midi; in usb6fire_midi_destroy()
213 chip->midi = NULL; in usb6fire_midi_destroy()
Dchip.h21 struct midi_runtime *midi; member
DMakefile2 snd-usb-6fire-objs += chip.o comm.o midi.o control.o firmware.o pcm.o
/linux-6.6.21/sound/firewire/bebob/
Dbebob_stream.c257 unsigned int pcm, midi, location; in map_data_channels() local
289 midi = 0; in map_data_channels()
336 if ((midi > 0) && (stm_pos != midi)) { in map_data_channels()
341 midi = stm_pos; in map_data_channels()
369 midi += channels; in map_data_channels()
742 formation[i].midi += channels; in parse_stream_formation()
768 formation[i].midi > AM824_MAX_CHANNELS_FOR_MIDI) in parse_stream_formation()
834 if (formats[i].midi > 0) in detect_midi_ports()
/linux-6.6.21/sound/firewire/oxfw/
Doxfw-stream.c233 fmt.midi == formation.midi) in keep_resources()
244 formation.midi * 8, false); in keep_resources()
556 formation->midi = channels; in snd_oxfw_stream_parse_format()
588 formation->midi > AM824_MAX_CHANNELS_FOR_MIDI) in snd_oxfw_stream_parse_format()
770 if (formation.midi > 0) in snd_oxfw_stream_discover()
798 if (formation.midi > 0) in snd_oxfw_stream_discover()
Doxfw-proc.c43 formation.rate, formation.pcm, formation.midi); in proc_read_formation()
73 formation.rate, formation.pcm, formation.midi); in proc_read_formation()
/linux-6.6.21/sound/usb/line6/
Dmidi.c178 struct snd_line6_midi *midi = line6->line6midi; in line6_midi_output_drain() local
180 wait_event_interruptible(midi->send_wait, in line6_midi_output_drain()
181 midi->num_active_send_urbs == 0); in line6_midi_output_drain()
/linux-6.6.21/sound/drivers/
Dvirmidi.c65 struct snd_rawmidi *midi[MAX_MIDI_DEVICES]; member
97 vmidi->midi[idx] = rmidi; in snd_virmidi_probe()
/linux-6.6.21/sound/usb/caiaq/
DMakefile2 snd-usb-caiaq-y := device.o audio.o midi.o control.o
/linux-6.6.21/Documentation/sound/designs/
Dindex.rst18 midi-2.0

123