Merge "sound: usb: Implementing PD transition APIs for tunnel audio"

This commit is contained in:
qctecmdr 2023-07-10 21:28:08 -07:00 committed by Gerrit - the friendly Code Review server
commit 1486f519ce

View File

@ -203,6 +203,24 @@ enum usb_qmi_audio_format {
#define NUM_LOG_PAGES 10
static int uaudio_snd_usb_pcm_change_state(struct snd_usb_substream *subs, int state)
{
int ret;
if (!subs->str_pd)
return 0;
ret = snd_usb_power_domain_set(subs->stream->chip, subs->str_pd, state);
if (ret < 0) {
dev_err(&subs->dev->dev,
"Cannot change Power Domain ID: %d to state: %d. Err: %d\n",
subs->str_pd->pd_id, state, ret);
return ret;
}
return 0;
}
static void uaudio_iommu_unmap(enum mem_type mtype, unsigned long va,
size_t iova_size, size_t mapped_iova_size);
@ -1378,6 +1396,11 @@ static int enable_audio_stream(struct snd_usb_substream *subs,
pm_runtime_barrier(&chip->intf[0]->dev);
snd_usb_autoresume(chip);
ret = uaudio_snd_usb_pcm_change_state(subs, UAC3_PD_STATE_D0);
if (ret < 0)
return ret;
fmt = find_format_and_si(&subs->fmt_list, pcm_format, cur_rate,
channels, datainterval, subs);
if (!fmt) {