4 Jan
2023
4 Jan
'23
11:41 p.m.
+int q6usb_alsa_connection_cb(struct snd_soc_usb *usb, int card_idx,
int connected)
+{
- struct snd_soc_dapm_context *dapm;
- struct q6usb_port_data *data;
- if (!usb->component)
return 0;
- dapm = snd_soc_component_get_dapm(usb->component);
- data = dev_get_drvdata(usb->component->dev);
- if (connected) {
snd_soc_dapm_enable_pin(dapm, "USB_RX_BE");
/* We only track the latest USB headset plugged in */
that answers to my earlier question on how to deal with multiple devices, but is this a desirable policy? This could lead to a lot of confusion. If there are restrictions to a single device, then it might be more interesting for userspace or the user to indicate which USB device gets to use USB offload and all others use legacy.
data->active_idx = card_idx;
- } else {
snd_soc_dapm_disable_pin(dapm, "USB_RX_BE");
- }
- snd_soc_dapm_sync(dapm);
- return 0;
+}