Re: [PATCH] ASoC: codec: hdac_hdmi add device_link to card device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Pierre,

>-----Original Message-----
>From: Pierre-Louis Bossart [mailto:pierre-louis.bossart@xxxxxxxxxxxxxxx]
>Sent: Friday, April 12, 2019 11:03 PM
>To: Yang, Libin <libin.yang@xxxxxxxxx>; alsa-devel@xxxxxxxxxxxxxxxx;
>tiwai@xxxxxxx; broonie@xxxxxxxxxx
>Subject: Re:  [PATCH] ASoC: codec: hdac_hdmi add device_link to
>card device
>
>
>
>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.

So the dependency should always exists. I have checked all the machine
drivers and they all depends on the hdac_hdmi if they are using it.

>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?

If machine driver doesn't support HDMI, component will never be called.
It is safe.

Hi Takashi,

My patch doesn't use component->init() as you suggested. But they should
be similar. Are you OK with this patch?

Regards,
Libin
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux