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