svn commit: r342961 - in head/sys/dev: sound/usb usb usb/quirk
Hans Petter Selasky
hselasky at FreeBSD.org
Sat Jan 12 11:15:01 UTC 2019
Author: hselasky
Date: Sat Jan 12 11:14:59 2019
New Revision: 342961
URL: https://svnweb.freebsd.org/changeset/base/342961
Log:
snd_uaudio: Add quirks for Edirol UA-25EX in advanced driver mode.
Extend the vendor class USB audio quirk to cover devices without
the USB audio control descriptor.
PR: 234794
MFC after: 1 week
Sponsored by: Mellanox Technologies
Modified:
head/sys/dev/sound/usb/uaudio.c
head/sys/dev/sound/usb/uaudioreg.h
head/sys/dev/usb/quirk/usb_quirk.c
head/sys/dev/usb/usbdevs
Modified: head/sys/dev/sound/usb/uaudio.c
==============================================================================
--- head/sys/dev/sound/usb/uaudio.c Sat Jan 12 08:30:13 2019 (r342960)
+++ head/sys/dev/sound/usb/uaudio.c Sat Jan 12 11:14:59 2019 (r342961)
@@ -1745,7 +1745,7 @@ uaudio_chan_fill_info_sub(struct uaudio_softc *sc, str
continue;
}
- if ((acdp != NULL) &&
+ if ((acdp != NULL || sc->sc_uq_au_vendor_class != 0) &&
(desc->bDescriptorType == UDESC_CS_INTERFACE) &&
(desc->bDescriptorSubtype == AS_GENERAL) &&
(asid.v1 == NULL)) {
@@ -1761,7 +1761,7 @@ uaudio_chan_fill_info_sub(struct uaudio_softc *sc, str
}
}
}
- if ((acdp != NULL) &&
+ if ((acdp != NULL || sc->sc_uq_au_vendor_class != 0) &&
(desc->bDescriptorType == UDESC_CS_INTERFACE) &&
(desc->bDescriptorSubtype == FORMAT_TYPE) &&
(asf1d.v1 == NULL)) {
@@ -1800,7 +1800,7 @@ uaudio_chan_fill_info_sub(struct uaudio_softc *sc, str
continue;
}
}
- if ((acdp != NULL) &&
+ if ((acdp != NULL || sc->sc_uq_au_vendor_class != 0) &&
(desc->bDescriptorType == UDESC_CS_ENDPOINT) &&
(desc->bDescriptorSubtype == AS_GENERAL) &&
(sed.v1 == NULL)) {
Modified: head/sys/dev/sound/usb/uaudioreg.h
==============================================================================
--- head/sys/dev/sound/usb/uaudioreg.h Sat Jan 12 08:30:13 2019 (r342960)
+++ head/sys/dev/sound/usb/uaudioreg.h Sat Jan 12 11:14:59 2019 (r342961)
@@ -36,7 +36,7 @@
#ifndef _UAUDIOREG_H_
#define _UAUDIOREG_H_
-#define UAUDIO_VERSION 0x0100
+#define UAUDIO_VERSION_10 0x0100
#define UAUDIO_VERSION_20 0x0200
#define UAUDIO_VERSION_30 0x0300
Modified: head/sys/dev/usb/quirk/usb_quirk.c
==============================================================================
--- head/sys/dev/usb/quirk/usb_quirk.c Sat Jan 12 08:30:13 2019 (r342960)
+++ head/sys/dev/usb/quirk/usb_quirk.c Sat Jan 12 11:14:59 2019 (r342961)
@@ -529,6 +529,7 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRK
USB_QUIRK(MAUDIO, FASTTRACKULTRA8R, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS),
USB_QUIRK(CMEDIA, CM6206, 0x0000, 0xffff, UQ_AU_SET_SPDIF_CM6206),
USB_QUIRK(PLOYTEC, SPL_CRIMSON_1, 0x0000, 0xffff, UQ_CFG_INDEX_1),
+ USB_QUIRK(ROLAND, UA25EX_AD, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS),
/*
* Quirks for manufacturers which USB devices does not respond
Modified: head/sys/dev/usb/usbdevs
==============================================================================
--- head/sys/dev/usb/usbdevs Sat Jan 12 08:30:13 2019 (r342960)
+++ head/sys/dev/usb/usbdevs Sat Jan 12 11:14:59 2019 (r342961)
@@ -3998,6 +3998,8 @@ product ROLAND SD20 0x0027 SD-20 MIDI Synth
product ROLAND SD80 0x0029 SD-80 MIDI Synth
product ROLAND UA700 0x002b UA-700 Audio I/F
product ROLAND PCR300 0x0033 EDIROL PCR-300 MIDI I/F
+product ROLAND UA25EX_AD 0x00e6 EDIROL UA-25EX (Advanced Driver)
+product ROLAND UA25EX_CC 0x00e7 EDIROL UA-25EX (Class Compliant)
/* Rockfire products */
product ROCKFIRE GAMEPAD 0x2033 gamepad 203USB
More information about the svn-src-all
mailing list