1
2#ifndef __USBMIDI_H
3#define __USBMIDI_H
4
5
6#define MIDI_MAX_ENDPOINTS 2
7
8
9struct snd_usb_midi_endpoint_info {
10 int8_t out_ep;
11 uint8_t out_interval;
12 int8_t in_ep;
13 uint8_t in_interval;
14 uint16_t out_cables;
15 uint16_t in_cables;
16 int16_t assoc_in_jacks[16];
17 int16_t assoc_out_jacks[16];
18};
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45int __snd_usbmidi_create(struct snd_card *card,
46 struct usb_interface *iface,
47 struct list_head *midi_list,
48 const struct snd_usb_audio_quirk *quirk,
49 unsigned int usb_id);
50
51static inline int snd_usbmidi_create(struct snd_card *card,
52 struct usb_interface *iface,
53 struct list_head *midi_list,
54 const struct snd_usb_audio_quirk *quirk)
55{
56 return __snd_usbmidi_create(card, iface, midi_list, quirk, 0);
57}
58
59void snd_usbmidi_input_stop(struct list_head *p);
60void snd_usbmidi_input_start(struct list_head *p);
61void snd_usbmidi_disconnect(struct list_head *p);
62void snd_usbmidi_suspend(struct list_head *p);
63void snd_usbmidi_resume(struct list_head *p);
64
65#endif
66