#include <sys/stdint.h>
#include <sys/stddef.h>
#include <sys/param.h>
#include <sys/queue.h>
#include <sys/types.h>
#include <sys/systm.h>
#include <sys/kernel.h>
#include <sys/bus.h>
#include <sys/module.h>
#include <sys/lock.h>
#include <sys/mutex.h>
#include <sys/condvar.h>
#include <sys/sysctl.h>
#include <sys/sx.h>
#include <sys/unistd.h>
#include <sys/callout.h>
#include <sys/malloc.h>
#include <sys/priv.h>
#include <dev/usb/usb.h>
#include <dev/usb/usbdi.h>
#include <dev/usb/usb_core.h>
#include <dev/usb/usb_ioctl.h>
#include <dev/usb/usb_util.h>
#include <dev/usb/template/usb_template.h>
Go to the source code of this file.
◆ MIDI_DEFAULT_INTERFACE
#define MIDI_DEFAULT_INTERFACE "MIDI interface" |
◆ MIDI_DEFAULT_MANUFACTURER
◆ MIDI_DEFAULT_PRODUCT
#define MIDI_DEFAULT_PRODUCT "MIDI Test Device" |
◆ MIDI_DEFAULT_PRODUCT_ID
#define MIDI_DEFAULT_PRODUCT_ID 0x27de |
◆ MIDI_DEFAULT_SERIAL_NUMBER
#define MIDI_DEFAULT_SERIAL_NUMBER "March 2008" |
◆ MIDI_DEFAULT_VENDOR_ID
◆ anonymous enum
Enumerator |
---|
MIDI_LANG_INDEX | |
MIDI_INTERFACE_INDEX | |
MIDI_MANUFACTURER_INDEX | |
MIDI_PRODUCT_INDEX | |
MIDI_SERIAL_NUMBER_INDEX | |
MIDI_MAX_INDEX | |
Definition at line 69 of file usb_template_midi.c.
◆ midi_get_string_desc()
static const void * midi_get_string_desc |
( |
uint16_t |
lang_id, |
|
|
uint8_t |
string_index |
|
) |
| |
|
static |
Definition at line 236 of file usb_template_midi.c.
References midi_interface, MIDI_INTERFACE_INDEX, MIDI_LANG_INDEX, midi_manufacturer, MIDI_MANUFACTURER_INDEX, MIDI_MAX_INDEX, midi_product, MIDI_PRODUCT_INDEX, midi_serial_number, MIDI_SERIAL_NUMBER_INDEX, and usb_string_lang_en.
◆ midi_init()
static void midi_init |
( |
void *arg |
__unused | ) |
|
|
static |
Definition at line 259 of file usb_template_midi.c.
References usb_temp_device_desc::idProduct, usb_temp_device_desc::idVendor, midi_ctx_list, MIDI_DEFAULT_INTERFACE, MIDI_DEFAULT_MANUFACTURER, MIDI_DEFAULT_PRODUCT, MIDI_DEFAULT_SERIAL_NUMBER, midi_interface, midi_manufacturer, midi_product, midi_serial_number, usb_make_str_desc(), USB_TEMP_MIDI, usb_temp_sysctl(), and usb_template_midi.
◆ midi_uninit()
static void midi_uninit |
( |
void *arg |
__unused | ) |
|
|
static |
◆ SYSINIT()
◆ SYSUNINIT()
◆ midi_bulk_in_ep
Initial value:= {
}
static const struct usb_temp_packet_size midi_mps
static const void * midi_descs_3[]
Definition at line 143 of file usb_template_midi.c.
◆ midi_bulk_out_ep
◆ midi_config_desc
Initial value:= {
.bmAttributes = 0,
.bMaxPower = 0,
}
static const struct usb_temp_interface_desc * midi_interfaces[]
Definition at line 200 of file usb_template_midi.c.
◆ midi_configs
Initial value:= {
NULL,
}
static const struct usb_temp_config_desc midi_config_desc
Definition at line 207 of file usb_template_midi.c.
◆ midi_ctx_list
struct sysctl_ctx_list midi_ctx_list |
|
static |
◆ midi_desc_raw_0
const uint8_t midi_desc_raw_0[9] |
|
static |
Initial value:= {
0x09, 0x24, 0x01, 0x00, 0x01, 0x09, 0x00, 0x01, 0x01
}
Definition at line 94 of file usb_template_midi.c.
◆ midi_desc_raw_1
const uint8_t midi_desc_raw_1[7] |
|
static |
Initial value:= {
0x07, 0x24, 0x01, 0x00, 0x01, 0x41, 0x00
}
Definition at line 156 of file usb_template_midi.c.
◆ midi_desc_raw_2
const uint8_t midi_desc_raw_2[6] |
|
static |
◆ midi_desc_raw_3
const uint8_t midi_desc_raw_3[6] |
|
static |
◆ midi_desc_raw_4
const uint8_t midi_desc_raw_4[9] |
|
static |
Initial value:= {
0x09, 0x24, 0x03, 0x01, 0x03, 0x01, 0x02, 0x01, 0x00
}
Definition at line 168 of file usb_template_midi.c.
◆ midi_desc_raw_5
const uint8_t midi_desc_raw_5[9] |
|
static |
Initial value:= {
0x09, 0x24, 0x03, 0x02, 0x04, 0x01, 0x01, 0x01, 0x00
}
Definition at line 172 of file usb_template_midi.c.
◆ midi_desc_raw_6
const uint8_t midi_desc_raw_6[5] |
|
static |
◆ midi_desc_raw_7
const uint8_t midi_desc_raw_7[5] |
|
static |
◆ midi_descs_0
const void* midi_descs_0[] |
|
static |
Initial value:= {
NULL
}
static const uint8_t midi_desc_raw_0[9]
Definition at line 98 of file usb_template_midi.c.
◆ midi_descs_1
const void* midi_descs_1[] |
|
static |
Initial value:= {
NULL
}
static const uint8_t midi_desc_raw_5[9]
static const uint8_t midi_desc_raw_3[6]
static const uint8_t midi_desc_raw_1[7]
static const uint8_t midi_desc_raw_2[6]
static const uint8_t midi_desc_raw_4[9]
Definition at line 176 of file usb_template_midi.c.
◆ midi_descs_2
const void* midi_descs_2[] |
|
static |
Initial value:= {
NULL
}
static const uint8_t midi_desc_raw_7[5]
Definition at line 122 of file usb_template_midi.c.
◆ midi_descs_3
const void* midi_descs_3[] |
|
static |
Initial value:= {
NULL
}
static const uint8_t midi_desc_raw_6[5]
Definition at line 138 of file usb_template_midi.c.
◆ midi_get_string_desc
◆ midi_iface_0
Initial value:= {
.ppEndpoints = NULL,
.bInterfaceProtocol = 0,
}
#define UISUBCLASS_AUDIOCONTROL
static const void * midi_descs_0[]
Definition at line 103 of file usb_template_midi.c.
◆ midi_iface_1
Initial value:= {
.bInterfaceProtocol = 0,
}
#define UISUBCLASS_MIDISTREAM
static const struct usb_temp_endpoint_desc * midi_iface_1_ep[]
static const void * midi_descs_1[]
Definition at line 185 of file usb_template_midi.c.
◆ midi_iface_1_ep
Initial value:= {
NULL,
}
static const struct usb_temp_endpoint_desc midi_bulk_out_ep
static const struct usb_temp_endpoint_desc midi_bulk_in_ep
Definition at line 150 of file usb_template_midi.c.
◆ midi_interface
◆ midi_interfaces
Initial value:= {
NULL,
}
static const struct usb_temp_interface_desc midi_iface_1
static const struct usb_temp_interface_desc midi_iface_0
Definition at line 194 of file usb_template_midi.c.
◆ midi_manufacturer
◆ midi_mps
◆ midi_product
◆ midi_serial_number
◆ usb_template_midi
Initial value:= {
.bcdDevice = 0x0100,
.bDeviceClass = 0,
.bDeviceSubClass = 0,
.bDeviceProtocol = 0,
}
static const struct usb_temp_config_desc * midi_configs[]
#define MIDI_DEFAULT_VENDOR_ID
static usb_temp_get_string_desc_t midi_get_string_desc
#define MIDI_DEFAULT_PRODUCT_ID
@ MIDI_MANUFACTURER_INDEX
@ MIDI_SERIAL_NUMBER_INDEX
Definition at line 214 of file usb_template_midi.c.
Referenced by midi_init(), and usb_temp_setup_by_index().