Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
sound
usb
midi.h
Go to the documentation of this file.
1
#ifndef __USBMIDI_H
2
#define __USBMIDI_H
3
4
/* maximum number of endpoints per interface */
5
#define MIDI_MAX_ENDPOINTS 2
6
7
/* data for QUIRK_MIDI_FIXED_ENDPOINT */
8
struct
snd_usb_midi_endpoint_info
{
9
int8_t
out_ep
;
/* ep number, 0 autodetect */
10
uint8_t
out_interval
;
/* interval for interrupt endpoints */
11
int8_t
in_ep
;
12
uint8_t
in_interval
;
13
uint16_t
out_cables
;
/* bitmask */
14
uint16_t
in_cables
;
/* bitmask */
15
};
16
17
/* for QUIRK_MIDI_YAMAHA, data is NULL */
18
19
/* for QUIRK_MIDI_MIDIMAN, data points to a snd_usb_midi_endpoint_info
20
* structure (out_cables and in_cables only) */
21
22
/* for QUIRK_COMPOSITE, data points to an array of snd_usb_audio_quirk
23
* structures, terminated with .ifnum = -1 */
24
25
/* for QUIRK_AUDIO_FIXED_ENDPOINT, data points to an audioformat structure */
26
27
/* for QUIRK_AUDIO/MIDI_STANDARD_INTERFACE, data is NULL */
28
29
/* for QUIRK_AUDIO_EDIROL_UA700_UA25/UA1000, data is NULL */
30
31
/* for QUIRK_IGNORE_INTERFACE, data is NULL */
32
33
/* for QUIRK_MIDI_NOVATION and _RAW, data is NULL */
34
35
/* for QUIRK_MIDI_EMAGIC, data points to a snd_usb_midi_endpoint_info
36
* structure (out_cables and in_cables only) */
37
38
/* for QUIRK_MIDI_CME, data is NULL */
39
40
/* for QUIRK_MIDI_AKAI, data is NULL */
41
42
int
snd_usbmidi_create
(
struct
snd_card
*
card
,
43
struct
usb_interface
*iface,
44
struct
list_head
*midi_list,
45
const
struct
snd_usb_audio_quirk
*quirk);
46
void
snd_usbmidi_input_stop
(
struct
list_head
*
p
);
47
void
snd_usbmidi_input_start
(
struct
list_head
*
p
);
48
void
snd_usbmidi_disconnect
(
struct
list_head
*
p
);
49
50
#endif
/* __USBMIDI_H */
Generated on Thu Jan 10 2013 14:29:09 for Linux Kernel by
1.8.2