|
@@ -103,7 +103,8 @@ static int uac_clock_selector_get_val(struct snd_usb_audio *chip, int selector_i
|
|
|
ret = snd_usb_ctl_msg(chip->dev, usb_rcvctrlpipe(chip->dev, 0),
|
|
|
UAC2_CS_CUR,
|
|
|
USB_RECIP_INTERFACE | USB_TYPE_CLASS | USB_DIR_IN,
|
|
|
- UAC2_CX_CLOCK_SELECTOR << 8, selector_id << 8,
|
|
|
+ UAC2_CX_CLOCK_SELECTOR << 8,
|
|
|
+ snd_usb_ctrl_intf(chip) | (selector_id << 8),
|
|
|
&buf, sizeof(buf), 1000);
|
|
|
|
|
|
if (ret < 0)
|
|
@@ -120,7 +121,8 @@ static bool uac_clock_source_is_valid(struct snd_usb_audio *chip, int source_id)
|
|
|
|
|
|
err = snd_usb_ctl_msg(dev, usb_rcvctrlpipe(dev, 0), UAC2_CS_CUR,
|
|
|
USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_DIR_IN,
|
|
|
- UAC2_CS_CONTROL_CLOCK_VALID << 8, source_id << 8,
|
|
|
+ UAC2_CS_CONTROL_CLOCK_VALID << 8,
|
|
|
+ snd_usb_ctrl_intf(chip) | (source_id << 8),
|
|
|
&data, sizeof(data), 1000);
|
|
|
|
|
|
if (err < 0) {
|
|
@@ -269,7 +271,8 @@ static int set_sample_rate_v2(struct snd_usb_audio *chip, int iface,
|
|
|
data[3] = rate >> 24;
|
|
|
if ((err = snd_usb_ctl_msg(dev, usb_sndctrlpipe(dev, 0), UAC2_CS_CUR,
|
|
|
USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_DIR_OUT,
|
|
|
- UAC2_CS_CONTROL_SAM_FREQ << 8, clock << 8,
|
|
|
+ UAC2_CS_CONTROL_SAM_FREQ << 8,
|
|
|
+ snd_usb_ctrl_intf(chip) | (clock << 8),
|
|
|
data, sizeof(data), 1000)) < 0) {
|
|
|
snd_printk(KERN_ERR "%d:%d:%d: cannot set freq %d (v2)\n",
|
|
|
dev->devnum, iface, fmt->altsetting, rate);
|
|
@@ -278,7 +281,8 @@ static int set_sample_rate_v2(struct snd_usb_audio *chip, int iface,
|
|
|
|
|
|
if ((err = snd_usb_ctl_msg(dev, usb_rcvctrlpipe(dev, 0), UAC2_CS_CUR,
|
|
|
USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_DIR_IN,
|
|
|
- UAC2_CS_CONTROL_SAM_FREQ << 8, clock << 8,
|
|
|
+ UAC2_CS_CONTROL_SAM_FREQ << 8,
|
|
|
+ snd_usb_ctrl_intf(chip) | (clock << 8),
|
|
|
data, sizeof(data), 1000)) < 0) {
|
|
|
snd_printk(KERN_WARNING "%d:%d:%d: cannot get freq (v2)\n",
|
|
|
dev->devnum, iface, fmt->altsetting);
|