linux/sound/usb/caiaq/device.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef CAIAQ_DEVICE_H
#define CAIAQ_DEVICE_H

#include "../usbaudio.h"

#define USB_VID_NATIVEINSTRUMENTS

#define USB_PID_RIGKONTROL2
#define USB_PID_RIGKONTROL3
#define USB_PID_KORECONTROLLER
#define USB_PID_KORECONTROLLER2
#define USB_PID_AK1
#define USB_PID_AUDIO2DJ
#define USB_PID_AUDIO4DJ
#define USB_PID_AUDIO8DJ
#define USB_PID_SESSIONIO
#define USB_PID_GUITARRIGMOBILE
#define USB_PID_TRAKTORKONTROLX1
#define USB_PID_TRAKTORKONTROLS4
#define USB_PID_TRAKTORAUDIO2
#define USB_PID_MASCHINECONTROLLER

#define EP1_BUFSIZE
#define EP4_BUFSIZE
#define CAIAQ_USB_STR_LEN
#define MAX_STREAMS

#define MODNAME

#define EP1_CMD_GET_DEVICE_INFO
#define EP1_CMD_READ_ERP
#define EP1_CMD_READ_ANALOG
#define EP1_CMD_READ_IO
#define EP1_CMD_WRITE_IO
#define EP1_CMD_MIDI_READ
#define EP1_CMD_MIDI_WRITE
#define EP1_CMD_AUDIO_PARAMS
#define EP1_CMD_AUTO_MSG
#define EP1_CMD_DIMM_LEDS

struct caiaq_device_spec {} __packed;

struct snd_usb_caiaq_cb_info;

struct snd_usb_caiaqdev {};

struct snd_usb_caiaq_cb_info {};

#define caiaqdev(c)
#define caiaqdev_to_dev(d)

int snd_usb_caiaq_set_audio_params (struct snd_usb_caiaqdev *cdev, int rate, int depth, int bbp);
int snd_usb_caiaq_set_auto_msg (struct snd_usb_caiaqdev *cdev, int digital, int analog, int erp);
int snd_usb_caiaq_send_command(struct snd_usb_caiaqdev *cdev,
			       unsigned char command,
			       const unsigned char *buffer,
			       int len);
int snd_usb_caiaq_send_command_bank(struct snd_usb_caiaqdev *cdev,
			       unsigned char command,
			       unsigned char bank,
			       const unsigned char *buffer,
			       int len);

#endif /* CAIAQ_DEVICE_H */