Skip to content

Commit

Permalink
ALSA: usb: initial USB Audio Device Class 3.0 support
Browse files Browse the repository at this point in the history
Recently released USB Audio Class 3.0 specification
introduces many significant changes comparing to
previous versions, like
 - new Power Domains, support for LPM/L1
 - new Cluster descriptor
 - changed layout of all class-specific descriptors
 - new High Capability descriptors
 - New class-specific String descriptors
 - new and removed units
 - additional sources for interrupts
 - removed Type II Audio Data Formats
 - ... and many other things (check spec)

It also provides backward compatibility through
multiple configurations, as well as requires
mandatory support for BADD (Basic Audio Device
Definition) on each ADC3.0 compliant device

This patch adds initial support of UAC3 specification
that is enough for Generic I/O Profile (BAOF, BAIF)
device support from BADD document.

Signed-off-by: Ruslan Bilovol <ruslan.bilovol@gmail.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Ruslan Bilovol authored and Takashi Iwai committed Mar 21, 2018
1 parent ceb18f5 commit 9a2fe9b
Show file tree
Hide file tree
Showing 11 changed files with 1,246 additions and 194 deletions.
4 changes: 2 additions & 2 deletions include/linux/usb/audio-v2.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@
*
*/

static inline bool uac2_control_is_readable(u32 bmControls, u8 control)
static inline bool uac_v2v3_control_is_readable(u32 bmControls, u8 control)
{
return (bmControls >> (control * 2)) & 0x1;
}

static inline bool uac2_control_is_writeable(u32 bmControls, u8 control)
static inline bool uac_v2v3_control_is_writeable(u32 bmControls, u8 control)
{
return (bmControls >> (control * 2)) & 0x2;
}
Expand Down
Loading

0 comments on commit 9a2fe9b

Please sign in to comment.