summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/function/u_uac1.h
diff options
context:
space:
mode:
authorJulian Scheel <julian@jusst.de>2022-01-21 16:53:04 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-01-26 14:06:08 +0100
commit695d39ffc2b59b8333ff85724619514f98613205 (patch)
treecf372ebc45497fa8b10ead635a6f4446e1127203 /drivers/usb/gadget/function/u_uac1.h
parenta7339e4f5788bd088bb0be1f96a6cce459676ed0 (diff)
downloadlinux-next-695d39ffc2b59b8333ff85724619514f98613205.tar.gz
usb: gadget: f_uac1: Support multiple sampling rates
A list of sampling rates can be specified via configfs. All enabled sampling rates are sent to the USB host on request. When the host selects a sampling rate the internal active rate is updated. Config strings with single value stay compatible with the previous version. Multiple samplerates passed as configuration arrays to g_audio module when built for f_uac1. Signed-off-by: Julian Scheel <julian@jusst.de> Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Link: https://lore.kernel.org/r/20220121155308.48794-7-pavel.hofman@ivitera.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/gadget/function/u_uac1.h')
-rw-r--r--drivers/usb/gadget/function/u_uac1.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/usb/gadget/function/u_uac1.h b/drivers/usb/gadget/function/u_uac1.h
index 589fae861141..b6cd6171d306 100644
--- a/drivers/usb/gadget/function/u_uac1.h
+++ b/drivers/usb/gadget/function/u_uac1.h
@@ -9,6 +9,7 @@
#define __U_UAC1_H
#include <linux/usb/composite.h>
+#include "uac_common.h"
#define UAC1_OUT_EP_MAX_PACKET_SIZE 200
#define UAC1_DEF_CCHMASK 0x3
@@ -30,10 +31,10 @@
struct f_uac1_opts {
struct usb_function_instance func_inst;
int c_chmask;
- int c_srate;
+ int c_srates[UAC_MAX_RATES];
int c_ssize;
int p_chmask;
- int p_srate;
+ int p_srates[UAC_MAX_RATES];
int p_ssize;
bool p_mute_present;