Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/sound/usb/midi2.h
26378 views
1
// SPDX-License-Identifier: GPL-2.0-or-later
2
#ifndef __USB_AUDIO_MIDI2_H
3
#define __USB_AUDIO_MIDI2_H
4
5
#include "midi.h"
6
7
#if IS_ENABLED(CONFIG_SND_USB_AUDIO_MIDI_V2)
8
int snd_usb_midi_v2_create(struct snd_usb_audio *chip,
9
struct usb_interface *iface,
10
const struct snd_usb_audio_quirk *quirk,
11
unsigned int usb_id);
12
void snd_usb_midi_v2_suspend_all(struct snd_usb_audio *chip);
13
void snd_usb_midi_v2_resume_all(struct snd_usb_audio *chip);
14
void snd_usb_midi_v2_disconnect_all(struct snd_usb_audio *chip);
15
void snd_usb_midi_v2_free_all(struct snd_usb_audio *chip);
16
#else /* CONFIG_SND_USB_AUDIO_MIDI_V2 */
17
/* fallback to MIDI 1.0 creation */
18
static inline int snd_usb_midi_v2_create(struct snd_usb_audio *chip,
19
struct usb_interface *iface,
20
const struct snd_usb_audio_quirk *quirk,
21
unsigned int usb_id)
22
{
23
return __snd_usbmidi_create(chip->card, iface, &chip->midi_list,
24
quirk, usb_id, &chip->num_rawmidis);
25
}
26
27
static inline void snd_usb_midi_v2_suspend_all(struct snd_usb_audio *chip) {}
28
static inline void snd_usb_midi_v2_resume_all(struct snd_usb_audio *chip) {}
29
static inline void snd_usb_midi_v2_disconnect_all(struct snd_usb_audio *chip) {}
30
static inline void snd_usb_midi_v2_free_all(struct snd_usb_audio *chip) {}
31
#endif /* CONFIG_SND_USB_AUDIO_MIDI_V2 */
32
33
#endif /* __USB_AUDIO_MIDI2_H */
34
35