Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0d4e1b2a authored by Jassi Brar's avatar Jassi Brar Committed by Felipe Balbi
Browse files

usb: uac2: Add ACHeader and FormatType descriptor



Add missing, but needed, ACHeader and FormatType descriptor definitions.

Signed-off-by: default avatarYadi Brar <yadi.brar01@gmail.com>
Signed-off-by: default avatarJassi Brar <jaswinder.singh@linaro.org>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent 18b5b3b5
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -43,6 +43,27 @@ static inline bool uac2_control_is_writeable(u32 bmControls, u8 control)
	return (bmControls >> (control * 2)) & 0x2;
}

/* 4.7.2 Class-Specific AC Interface Descriptor */
struct uac2_ac_header_descriptor {
	__u8  bLength;			/* 9 */
	__u8  bDescriptorType;		/* USB_DT_CS_INTERFACE */
	__u8  bDescriptorSubtype;	/* UAC_MS_HEADER */
	__le16 bcdADC;			/* 0x0200 */
	__u8  bCategory;
	__le16 wTotalLength;		/* includes Unit and Terminal desc. */
	__u8  bmControls;
} __packed;

/* 2.3.1.6 Type I Format Type Descriptor (Frmts20 final.pdf)*/
struct uac2_format_type_i_descriptor {
	__u8  bLength;			/* in bytes: 6 */
	__u8  bDescriptorType;		/* USB_DT_CS_INTERFACE */
	__u8  bDescriptorSubtype;	/* FORMAT_TYPE */
	__u8  bFormatType;		/* FORMAT_TYPE_1 */
	__u8  bSubslotSize;		/* {1,2,3,4} */
	__u8  bBitResolution;
} __packed;

/* 4.7.2.1 Clock Source Descriptor */

struct uac_clock_source_descriptor {