Hi Pierre, >On 3/29/19 1:23 AM, libin.yang@xxxxxxxxx wrote: >> From: Libin Yang <libin.yang@xxxxxxxxx> >> >> HDMI audio codec register operation depends on the display audio power >> domain. The hdmi audio codec dapm event callback must be called after >> display audio power is turned on. >> >> Add hdac_hdmi_device_link_add() in HDMI audio codec driver. The >> customer audio driver can call the function to set the audio power >dependency. > >Can you clarify what the 'customer audio driver(s)' are, and in the case where >you meant the cAVS/SST driver all a patch that makes use of this new routine? Sure, I will do it. I haven't made the patches for cAVS/SST driver. I tested it on SOF driver. It works. > >Also the patch subject should be ASoC: hdac_hdmi: ... Thanks for point it out. I will change the subject. Regards, Libin > > > >> >> Signed-off-by: Libin Yang <libin.yang@xxxxxxxxx> >> --- >> sound/soc/codecs/hdac_hdmi.c | 12 ++++++++++++ >> sound/soc/codecs/hdac_hdmi.h | 6 ++++++ >> 2 files changed, 18 insertions(+) >> >> diff --git a/sound/soc/codecs/hdac_hdmi.c >> b/sound/soc/codecs/hdac_hdmi.c index 5eeb0fe..c991407 100644 >> --- a/sound/soc/codecs/hdac_hdmi.c >> +++ b/sound/soc/codecs/hdac_hdmi.c >> @@ -1792,6 +1792,18 @@ int hdac_hdmi_jack_init(struct snd_soc_dai *dai, >int device, >> } >> EXPORT_SYMBOL_GPL(hdac_hdmi_jack_init); >> >> +struct device_link * >> +hdac_hdmi_device_link_add(struct device *consumer, >> + struct snd_soc_component *component, >> + u32 flags) >> +{ >> + struct hdac_hdmi_priv *hdmi = >snd_soc_component_get_drvdata(component); >> + struct hdac_device *hdev = hdmi->hdev; >> + >> + return device_link_add(consumer, &hdev->dev, flags); } >> +EXPORT_SYMBOL_GPL(hdac_hdmi_device_link_add); >> + >> static void hdac_hdmi_present_sense_all_pins(struct hdac_device *hdev, >> struct hdac_hdmi_priv *hdmi, bool detect_pin_caps) >> { >> diff --git a/sound/soc/codecs/hdac_hdmi.h >> b/sound/soc/codecs/hdac_hdmi.h index 4fa2fc9..9239c6b 100644 >> --- a/sound/soc/codecs/hdac_hdmi.h >> +++ b/sound/soc/codecs/hdac_hdmi.h >> @@ -7,4 +7,10 @@ int hdac_hdmi_jack_init(struct snd_soc_dai *dai, int >> pcm, >> >> int hdac_hdmi_jack_port_init(struct snd_soc_component *component, >> struct snd_soc_dapm_context *dapm); >> + >> +struct device_link * >> +hdac_hdmi_device_link_add(struct device *consumer, >> + struct snd_soc_component *component, >> + u32 flags); >> + >> #endif /* __HDAC_HDMI_H__ */ >> _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel