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};
17
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
43int __snd_usbmidi_create(struct snd_card *card,
44 struct usb_interface *iface,
45 struct list_head *midi_list,
46 const struct snd_usb_audio_quirk *quirk,
47 unsigned int usb_id);
48
49static inline int snd_usbmidi_create(struct snd_card *card,
50 struct usb_interface *iface,
51 struct list_head *midi_list,
52 const struct snd_usb_audio_quirk *quirk)
53{
54 return __snd_usbmidi_create(card, iface, midi_list, quirk, 0);
55}
56
57void snd_usbmidi_input_stop(struct list_head *p);
58void snd_usbmidi_input_start(struct list_head *p);
59void snd_usbmidi_disconnect(struct list_head *p);
60void snd_usbmidi_suspend(struct list_head *p);
61void snd_usbmidi_resume(struct list_head *p);
62
63#endif
64