Home
last modified time | relevance | path

Searched full:midi (Results 1 – 25 of 168) sorted by relevance

1234567

/linux/drivers/usb/gadget/function/
H A Df_midi.c3 * f_midi.c -- USB MIDI class function driver
16 * and drivers/usb/gadget/midi.c,
36 #include <linux/usb/midi.h>
41 MODULE_DESCRIPTION("USB MIDI class function driver");
45 static const char f_midi_longname[] = "MIDI Gadget";
54 /* MIDI message states */
111 static void f_midi_transmit(struct f_midi *midi);
214 [STRING_FUNC_IDX].s = "MIDI function",
239 * Receives a chunk of MIDI data.
244 struct f_midi *midi = ep->driver_data; in f_midi_read_data() local
[all …]
/linux/Documentation/devicetree/bindings/sound/
H A Dserial-midi.yaml5 $id: http://devicetree.org/schemas/sound/serial-midi.yaml#
8 title: Generic Serial MIDI Interface
14 Generic MIDI interface using a serial device. This denotes that a serial device is
15 dedicated to MIDI communication, either to an external MIDI device through a DIN5
16 or other connector, or to a known hardwired MIDI controller. This device must be a
20 parent serial device. If the standard MIDI baud of 31.25 kBaud is needed
21 (as would be the case if interfacing with arbitrary external MIDI devices),
23 results in the standard MIDI baud rate, and set the 'current-speed' property to 38400 (default)
30 const: serial-midi
33 description: Baudrate to set the serial port to when this MIDI device is opened.
[all …]
/linux/include/linux/usb/
H A Dmidi-v2.h3 * <linux/usb/midi-v2.h> -- USB MIDI 2.0 definitions.
10 #include <linux/usb/midi.h>
16 /* same as MIDI 1.0 */
30 /* A.5 MS MIDI IN and OUT Jack Types */
31 /* same as MIDI 1.0 */
38 /* A.7 Group Terminal Default MIDI Protocol */
39 #define USB_MS_MIDI_PROTO_UNKNOWN 0x00 /* Unknown (Use MIDI-CI) */
40 #define USB_MS_MIDI_PROTO_1_0_64 0x01 /* MIDI 1.0, UMP up to 64bits */
41 #define USB_MS_MIDI_PROTO_1_0_64_JRTS 0x02 /* MIDI 1.0, UMP up to 64bits, Jitter Reduction Timestam…
42 #define USB_MS_MIDI_PROTO_1_0_128 0x03 /* MIDI 1.0, UMP up to 128bits */
[all …]
/linux/Documentation/sound/cards/
H A Dserial-u16550.rst2 Serial UART 16450/16550 MIDI driver
16 In Roland Soundcanvas mode, multiple ALSA raw MIDI substreams are supported
18 sends the nonstandard MIDI command sequence F5 NN, where NN is the substream
20 "parts", so this feature lets you treat each part as a distinct raw MIDI
30 Usage example for Roland SoundCanvas with 4 MIDI ports:
36 In MS-124T mode, one raw MIDI substream is supported (midiCnD0); the outs
38 all four MIDI Out connectors. Set the A-B switch and the speed module
48 In MS-124W S/A mode, one raw MIDI substream is supported (midiCnD0);
50 the same data to all four MIDI Out connectors at full MIDI speed.
58 In MS-124W M/B mode, the driver supports 16 ALSA raw MIDI substreams;
[all …]
/linux/drivers/usb/gadget/legacy/
H A Dgmidi.c3 * gmidi.c -- USB MIDI Gadget Driver
13 * USB MIDI driver, Copyright (C) 2002-2005 Clemens Ladisch.
15 * Refer to the USB Device Class Definition for MIDI Devices:
34 MODULE_DESCRIPTION("USB MIDI Gadget Driver");
37 static const char longname[] = "MIDI Gadget";
43 MODULE_PARM_DESC(index, "Index value for the USB MIDI Gadget adapter.");
47 MODULE_PARM_DESC(id, "ID string for the USB MIDI Gadget adapter.");
51 MODULE_PARM_DESC(buflen, "MIDI buffer length");
59 MODULE_PARM_DESC(in_ports, "Number of MIDI input ports");
63 MODULE_PARM_DESC(out_ports, "Number of MIDI output ports");
[all …]
/linux/sound/firewire/
H A Damdtp-am824.h21 * AMDTP packet can include channels for MIDI conformant data.
22 * Each MIDI conformant data channel includes 8 MPX-MIDI data stream.
23 * Each MPX-MIDI data stream includes one data stream from/to MIDI ports.
25 * This module supports maximum 1 MIDI conformant data channels.
26 * Then this AMDTP packets can transfer maximum 8 MIDI data streams.
45 struct snd_rawmidi_substream *midi);
H A Damdtp-am824.c19 * Nominally 3125 bytes/second, but the MIDI port's clock might be
26 * In any case, this is more than enough for the MIDI data rate.
31 struct snd_rawmidi_substream *midi[AM824_MAX_CHANNELS_FOR_MIDI * 8]; member
47 * @midi_ports: the number of MIDI ports (i.e., MPX-MIDI Data Channels)
99 /* init the position map for PCM and MIDI channels */ in amdtp_am824_set_parameters()
105 * We do not know the actual MIDI FIFO size of most devices. Just in amdtp_am824_set_parameters()
107 * the previous one is transmitted over MIDI. in amdtp_am824_set_parameters()
134 * amdtp_am824_set_midi_position - set a index of data channel for MIDI
243 * amdtp_am824_midi_trigger - start/stop playback/capture with a MIDI device
245 * @port: index of MIDI port
[all …]
/linux/Documentation/sound/designs/
H A Dseq-oss.rst22 * Normal sequencer and MIDI events:
53 However, each MIDI device is exclusive - that is, if a MIDI device
81 At beginning, this module probes all the MIDI ports which have been
85 The available synth and MIDI devices can be found in proc interface.
101 Number of MIDI devices: 3
102 midi 0: [Emu8000 Port-0] ALSA port 65:0
105 midi 1: [Emu8000 Port-1] ALSA port 65:1
108 midi 2: [0: MPU-401 (UART)] ALSA port 64:0
127 Using MIDI Devices
130 So far, only MIDI output was tested. MIDI input was not checked at all,
[all …]
/linux/sound/drivers/
H A DKconfig130 tristate "Virtual MIDI soundcard"
137 Say Y here to include the virtual MIDI driver. This driver
138 allows to connect applications using raw MIDI devices to
141 If you don't know what MIDI is, say N here.
147 tristate "MOTU MidiTimePiece AV multiport MIDI"
151 To use a MOTU MidiTimePiece AV multiport MIDI adapter
163 The ESI Miditerminal 4140 is a 4 In 4 Out MIDI Interface with
172 tristate "UART16550 serial MIDI driver"
176 To include support for MIDI serial port interfaces, say Y here
188 tristate "Generic serial MIDI driver"
[all …]
H A Dvirmidi.c9 * VIRTUAL RAW MIDI DEVICE CARDS
14 * MIDI device arbitrary.
27 * - Run application using a midi device (eg. /dev/snd/midiC1D0)
61 MODULE_PARM_DESC(midi_devs, "MIDI devices # (1-4)");
65 struct snd_rawmidi *midi[MAX_MIDI_DEVICES]; member
87 "too much midi devices for virmidi %d: force to use %d\n", in snd_virmidi_probe()
97 vmidi->midi[idx] = rmidi; in snd_virmidi_probe()
98 strscpy(rmidi->name, "Virtual Raw MIDI"); in snd_virmidi_probe()
103 sprintf(card->longname, "Virtual MIDI Card %i", dev + 1); in snd_virmidi_probe()
/linux/sound/usb/line6/
H A Dmidi.h21 /* MIDI substream for receiving (or NULL if not active) */
24 /* MIDI substream for transmitting (or NULL if not active) */
27 /* Number of currently active MIDI send URBs */
30 /* Spin lock to protect MIDI buffer handling */
33 /* Wait queue for MIDI transmission */
36 /* Buffer for incoming MIDI stream */
39 /* Buffer for outgoing MIDI stream */
H A Ddriver.h16 #include "midi.h"
44 Line 6 MIDI control commands
53 MIDI channel for messages initiated by the host
59 MIDI channel for messages initiated by the device
107 /* device uses raw MIDI via USB (data endpoints) */
141 * Each device has at least MIDI or PCM.
148 /* Line 6 MIDI device data structure */
157 /* Buffer for message to be processed, generated from MIDI layer */
160 /* Length of message to be processed, generated from MIDI layer */
163 /* Circular buffer for non-MIDI control messages */
[all …]
/linux/sound/pci/ca0106/
H A Dca_midi.h4 * Creative Audio MIDI, for the CA0106 Driver
40 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);
/linux/Documentation/ABI/testing/
H A Dconfigfs-usb-gadget-midi1 What: /config/usb-gadget/gadget/functions/midi.name
8 index index value for the USB MIDI adapter
9 id ID string for the USB MIDI adapter
10 buflen MIDI buffer length
12 in_ports number of MIDI input ports
13 out_ports number of MIDI output ports
H A 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/include/sound/
H A Dump_msg.h3 * Universal MIDI Packet (UMP): Message Definitions
8 /* MIDI 1.0 / 2.0 Status Code (4bit) */
27 /* MIDI 1.0 Channel Control (7bit) */
103 /* MIDI 1.0 / 2.0 System Messages (0xfx) */
117 /* MIDI 1.0 Realtime and SysEx status messages (0xfx) */
128 /* MIDI 1.0 Note Off / Note On (32bit) */
147 /* MIDI 1.0 Poly Pressure (32bit) */
166 /* MIDI 1.0 Control Change (32bit) */
185 /* MIDI 1.0 Program Change (32bit) */
204 /* MIDI 1.0 Channel Pressure (32bit) */
[all …]
H A Dseq_virmidi.h6 * Virtual Raw MIDI client on Sequencer
16 * This instance is created at each time the midi device file is
17 * opened. Each instance has its own input buffer and MIDI parser
38 * Each virtual midi device has one device instance. It contains
55 * ATTACH = input/output events from midi device are routed to the
/linux/sound/core/seq/
H A Dseq_midi.c3 * Generic MIDI synth driver for ALSA sequencer
10 - automatic opening of midi ports on first received event or subscription
29 MODULE_DESCRIPTION("Advanced Linux Sound Architecture sequencer MIDI synth.");
38 /* data for this midi synth driver */
61 /* handle rawmidi input event (MIDI v1.0 stream) */
108 pr_err("ALSA: seq_midi: MIDI output buffer overrun\n"); in dump_midi()
126 unsigned char msg[10]; /* buffer for constructing midi messages */ in event_process_midi()
169 /* open associated midi device for input */
177 /* open midi port */ in midisynth_subscribe()
182 pr_debug("ALSA: seq_midi: midi input open failed!!!\n"); in midisynth_subscribe()
[all …]
H A DMakefile12 snd-seq-midi-y := seq_midi.o
13 snd-seq-midi-emul-y := seq_midi_emul.o
14 snd-seq-midi-event-y := 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
H A Dseq_dummy.c3 * ALSA sequencer MIDI-through client
17 Sequencer MIDI-through client
19 This gives a simple midi-through client. All the normal input events
49 MODULE_DESCRIPTION("ALSA sequencer MIDI-through client");
64 MODULE_PARM_DESC(ump, "UMP conversion (0: no convert, 1: MIDI 1.0, 2: MIDI 2.0)");
128 sprintf(pinfo.name, "Midi Through Port-%d:%c", idx, in create_port()
131 sprintf(pinfo.name, "Midi Through Port-%d", idx); in create_port()
173 "Midi Through"); in register_client()
/linux/sound/firewire/digi00x/
H A Damdtp-dot.c19 * Nominally 3125 bytes/second, but the MIDI port's clock might be
26 * In any case, this is more than enough for the MIDI data rate.
47 struct snd_rawmidi_substream *midi[MAX_MIDI_PORTS]; member
123 * A first data channel is for MIDI messages, the rest is Multi Bit in amdtp_dot_set_parameters()
135 * We do not know the actual MIDI FIFO size of most devices. Just in amdtp_dot_set_parameters()
137 * the previous one is transmitted over MIDI. in amdtp_dot_set_parameters()
263 p->midi[port] != NULL) in write_midi_messages()
264 len = snd_rawmidi_transmit(p->midi[port], b + 1, 2); in write_midi_messages()
269 * - 0000b: physical MIDI port 1. in write_midi_messages()
270 * - 0010b: physical MIDI port 2. in write_midi_messages()
[all …]
/linux/sound/core/
H A Dump_convert.c3 * Helpers for UMP <-> MIDI 1.0 byte stream conversion
66 * UMP -> MIDI 1 byte stream conversion
68 /* convert a UMP System message to MIDI 1.0 byte stream */
86 /* convert a UMP MIDI 1.0 Channel Voice message to MIDI 1.0 byte stream */
101 /* convert a UMP MIDI 2.0 Channel Voice message to MIDI 1.0 byte stream */
169 /* convert a UMP 7-bit SysEx message to MIDI 1.0 byte stream */
209 * snd_ump_convert_from_ump - convert from UMP to legacy MIDI
211 * @buf: buffer to store legacy MIDI data
214 * Convert from a UMP packet @data to MIDI 1.0 bytes at @buf.
217 * The function returns the number of bytes of MIDI 1.0 stream.
[all …]
/linux/drivers/hid/
H A Dhid-prodikeys.c3 * HID driver for the Prodikeys PC-MIDI Keyboard
4 * providing midi & extra multimedia keys functionality
74 static const char shortname[] = "PC-MIDI";
75 static const char longname[] = "Prodikeys PC-MIDI Keyboard";
84 MODULE_PARM_DESC(index, "Index value for the PC-MIDI virtual audio driver");
85 MODULE_PARM_DESC(id, "ID string for the PC-MIDI virtual audio driver");
86 MODULE_PARM_DESC(enable, "Enable for the PC-MIDI virtual audio driver");
401 case 0x020000: /* midi launcher..send a key (qwerty) or not? */ in pcmidi_handle_report4()
489 case 0x01: /* midi keys (qwerty)*/ in pcmidi_handle_report()
492 case 0x03: /* midi keyboard (musical)*/ in pcmidi_handle_report()
[all …]
/linux/include/uapi/linux/usb/
H A Dmidi.h3 * <linux/usb/midi.h> -- USB MIDI definitions.
13 * by the USB Device Class Definition for MIDI Devices.
33 /* A.3 MS MIDI IN and OUT Jack Types */
48 /* 6.1.2.2 MIDI IN Jack Descriptor */
65 /* 6.1.2.3 MIDI OUT Jack Descriptor */
/linux/sound/firewire/motu/
H A Damdtp-motu.c28 * Nominally 3125 bytes/second, but the MIDI port's clock might be
37 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()
[all …]

1234567