[alsa-devel] [PATCH] ASoC: codec: hdac_hdmi add device_link to card device

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Fri Apr 12 17:02:33 CEST 2019



On 4/12/19 9:33 AM, Yang, Libin wrote:
>>>
>>>>>> +	device_link_add(component->card->dev, &hdev->dev,
>>>>> DL_FLAG_RPM_ACTIVE |
>>>>>> +			DL_FLAG_AUTOREMOVE_CONSUMER);
>>>>>
>>>>> Should device_link_free() be added to hdmi_codec_remove then?
>>>>
>>>> As Takashi suggested, I add the DL_FLAG_AUTOREMOVE_CONSUMER flag.
>>>> This will make sure the link will be freed when machine driver are removed.
>>>> And as machine driver depends on the hdac_hdmi module, when
>>>> hdmi_codec_remove() is called, the link is freed already.
>>>
>>> ok, maybe adding a comment would help dummies like me who didn't know
>>> about this flag? Thanks!
>>
>> Thanks for suggestion. I will add the comment.
> 
> After a second thought, is there any possibility that the machine driver does
> not depend on the hdac_hdmi module? I checked our current driver,
> there is the dependency between machine driver and hdac_hdmi module.

I don't get your question.
All machine drivers supporting the iDISP link explicitly use a select 
HDAC_HDMI in the Kconfig and refer to DAIs created/exposed by the 
hdac_hdmi module.
It's possible that the hdac_hdmi codec is probed as a result of the 
platform driver configuration but the machine driver does not support 
HDMI. In that case, is there any issue with your solution?


More information about the Alsa-devel mailing list