All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/amd/display: Shorten name of FRL polling workqueue
@ 2026-07-11 11:30 Timur Kristóf
  2026-07-11 11:30 ` [PATCH 2/2] drm/amd/display: Check HDMI FRL support before creating " Timur Kristóf
  2026-07-13 10:15 ` [PATCH 1/2] drm/amd/display: Shorten name of FRL " Tvrtko Ursulin
  0 siblings, 2 replies; 6+ messages in thread
From: Timur Kristóf @ 2026-07-11 11:30 UTC (permalink / raw)
  To: amd-gfx, Alex Deucher, Tvrtko Ursulin, Natalie Vock, Melissa Wen,
	mario.limonciello, alex.hung, harry.wentland
  Cc: Timur Kristóf

The current name is too long and triggers a warning.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index b97ceabe6173..6299f0e384f1 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -829,9 +829,9 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
 	}
 	if (adev->dm.dc->caps.max_links > 0) {
 		adev->dm.hdmi_frl_status_polling_wq =
-			create_singlethread_workqueue("hdmi_frl_status_polling_workqueue");
+			create_singlethread_workqueue("hdmi_frl_status_polling_wq");
 		if (!adev->dm.hdmi_frl_status_polling_wq)
-			drm_err(adev_to_drm(adev), "failed to initialize hdmi_frl_status_polling_workqueue\n");
+			drm_err(adev_to_drm(adev), "failed to initialize hdmi_frl_status_polling_wq\n");
 	}
 	if (dc_is_dmub_outbox_supported(adev->dm.dc)) {
 		init_completion(&adev->dm.dmub_aux_transfer_done);
-- 
2.55.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/2] drm/amd/display: Check HDMI FRL support before creating polling workqueue
  2026-07-11 11:30 [PATCH 1/2] drm/amd/display: Shorten name of FRL polling workqueue Timur Kristóf
@ 2026-07-11 11:30 ` Timur Kristóf
  2026-07-13 10:15 ` [PATCH 1/2] drm/amd/display: Shorten name of FRL " Tvrtko Ursulin
  1 sibling, 0 replies; 6+ messages in thread
From: Timur Kristóf @ 2026-07-11 11:30 UTC (permalink / raw)
  To: amd-gfx, Alex Deucher, Tvrtko Ursulin, Natalie Vock, Melissa Wen,
	mario.limonciello, alex.hung, harry.wentland
  Cc: Timur Kristóf

The workqueue is not necessary when FRL is not supported or
when it's disabled. Add a helper to tell when the current
board has any HDMI FRL capable connectors and call that
before creating the workqueue.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
---
 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c |  2 +-
 drivers/gpu/drm/amd/display/dc/core/dc.c      | 26 +++++++++++++++++++
 drivers/gpu/drm/amd/display/dc/dc.h           |  2 ++
 3 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 6299f0e384f1..87d7b60ceb3f 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -827,7 +827,7 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
 
 		dc_init_callbacks(adev->dm.dc, &init_params);
 	}
-	if (adev->dm.dc->caps.max_links > 0) {
+	if (dc_is_hdmi_frl_supported(adev->dm.dc)) {
 		adev->dm.hdmi_frl_status_polling_wq =
 			create_singlethread_workqueue("hdmi_frl_status_polling_wq");
 		if (!adev->dm.hdmi_frl_status_polling_wq)
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index 1b6627a92d24..1a7073abb8ba 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -6592,6 +6592,32 @@ void dc_mclk_switch_using_fw_based_vblank_stretch_shut_down(struct dc *dc)
 		dc->current_state->bw_ctx.bw.dcn.clk.fw_based_mclk_switching_shut_down = true;
 }
 
+/**
+ * dc_is_hdmi_frl_supported() - Check HDMI FRL support
+ *
+ * @dc: [in] dc structure
+ *
+ * Return:
+ * True if the current board has any HDMI FRL capable connectors,
+ * False otherwise.
+ */
+bool dc_is_hdmi_frl_supported(struct dc *dc)
+{
+	int i;
+
+	if (!dc->config.enable_frl)
+		return false;
+
+	for (i = 0; i < dc->link_count; ++i) {
+		if (dc->links[i] &&
+		    dc->links[i]->link_enc &&
+		    dc->links[i]->link_enc->features.flags.bits.IS_HDMI_FRL_CAPABLE)
+			return true;
+	}
+
+	return false;
+}
+
 /**
  * dc_is_dmub_outbox_supported - Check if DMUB firmware support outbox notification
  *
diff --git a/drivers/gpu/drm/amd/display/dc/dc.h b/drivers/gpu/drm/amd/display/dc/dc.h
index 13c1f7cd9d7d..d27c7437ee7a 100644
--- a/drivers/gpu/drm/amd/display/dc/dc.h
+++ b/drivers/gpu/drm/amd/display/dc/dc.h
@@ -3056,6 +3056,8 @@ bool dc_set_ips_disable(struct dc *dc, unsigned int disable_ips);
 void dc_z10_restore(const struct dc *dc);
 void dc_z10_save_init(struct dc *dc);
 
+bool dc_is_hdmi_frl_supported(struct dc *dc);
+
 bool dc_is_dmub_outbox_supported(struct dc *dc);
 bool dc_enable_dmub_notifications(struct dc *dc);
 
-- 
2.55.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] drm/amd/display: Shorten name of FRL polling workqueue
  2026-07-11 11:30 [PATCH 1/2] drm/amd/display: Shorten name of FRL polling workqueue Timur Kristóf
  2026-07-11 11:30 ` [PATCH 2/2] drm/amd/display: Check HDMI FRL support before creating " Timur Kristóf
@ 2026-07-13 10:15 ` Tvrtko Ursulin
  2026-07-13 13:33   ` Mario Limonciello
  2026-07-14  8:51   ` Timur Kristóf
  1 sibling, 2 replies; 6+ messages in thread
From: Tvrtko Ursulin @ 2026-07-13 10:15 UTC (permalink / raw)
  To: Timur Kristóf, amd-gfx, Alex Deucher, Natalie Vock,
	Melissa Wen, mario.limonciello, alex.hung, harry.wentland



On 11/07/2026 12:30, Timur Kristóf wrote:
> The current name is too long and triggers a warning.
> 
> Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
> ---
>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index b97ceabe6173..6299f0e384f1 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -829,9 +829,9 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
>   	}
>   	if (adev->dm.dc->caps.max_links > 0) {
>   		adev->dm.hdmi_frl_status_polling_wq =
> -			create_singlethread_workqueue("hdmi_frl_status_polling_workqueue");
> +			create_singlethread_workqueue("hdmi_frl_status_polling_wq");
>   		if (!adev->dm.hdmi_frl_status_polling_wq)
> -			drm_err(adev_to_drm(adev), "failed to initialize hdmi_frl_status_polling_workqueue\n");
> +			drm_err(adev_to_drm(adev), "failed to initialize hdmi_frl_status_polling_wq\n");
>   	}
>   	if (dc_is_dmub_outbox_supported(adev->dm.dc)) {
>   		init_completion(&adev->dm.dmub_aux_transfer_done);

This one does not require display knowledge so I feel okay to review it:

Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>

Two nitpicks would be that the _wq suffix is even redundant since for 
the task name it will have the kworker/ prefix anyway. Second one is 
that while touching this it may make sense to replace the variable name 
from the error message with a human readable name like "failed to 
initialize HDMI FLR status polling". In fact, is this even an error or 
should be a warning given I do not see an immediate exit?

Regards,

Tvrtko


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] drm/amd/display: Shorten name of FRL polling workqueue
  2026-07-13 10:15 ` [PATCH 1/2] drm/amd/display: Shorten name of FRL " Tvrtko Ursulin
@ 2026-07-13 13:33   ` Mario Limonciello
  2026-07-14  8:51   ` Timur Kristóf
  1 sibling, 0 replies; 6+ messages in thread
From: Mario Limonciello @ 2026-07-13 13:33 UTC (permalink / raw)
  To: Tvrtko Ursulin, Timur Kristóf, amd-gfx, Alex Deucher,
	Natalie Vock, Melissa Wen, alex.hung, harry.wentland



On 7/13/26 05:15, Tvrtko Ursulin wrote:
> 
> 
> On 11/07/2026 12:30, Timur Kristóf wrote:
>> The current name is too long and triggers a warning.
>>
>> Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
>> ---
>>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++--
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/ 
>> drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> index b97ceabe6173..6299f0e384f1 100644
>> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> @@ -829,9 +829,9 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
>>       }
>>       if (adev->dm.dc->caps.max_links > 0) {
>>           adev->dm.hdmi_frl_status_polling_wq =
>> -            
>> create_singlethread_workqueue("hdmi_frl_status_polling_workqueue");
>> +            create_singlethread_workqueue("hdmi_frl_status_polling_wq");
>>           if (!adev->dm.hdmi_frl_status_polling_wq)
>> -            drm_err(adev_to_drm(adev), "failed to initialize 
>> hdmi_frl_status_polling_workqueue\n");
>> +            drm_err(adev_to_drm(adev), "failed to initialize 
>> hdmi_frl_status_polling_wq\n");
>>       }
>>       if (dc_is_dmub_outbox_supported(adev->dm.dc)) {
>>           init_completion(&adev->dm.dmub_aux_transfer_done);
> 
> This one does not require display knowledge so I feel okay to review it:
> 
> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
> 
> Two nitpicks would be that the _wq suffix is even redundant since for 
> the task name it will have the kworker/ prefix anyway. Second one is 
> that while touching this it may make sense to replace the variable name 
> from the error message with a human readable name like "failed to 
> initialize HDMI FLR status polling". In fact, is this even an error or 
> should be a warning given I do not see an immediate exit?
> 

I'd say fix those nitpicks in v2 so we don't need to spin it again over 
them later.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] drm/amd/display: Shorten name of FRL polling workqueue
  2026-07-13 10:15 ` [PATCH 1/2] drm/amd/display: Shorten name of FRL " Tvrtko Ursulin
  2026-07-13 13:33   ` Mario Limonciello
@ 2026-07-14  8:51   ` Timur Kristóf
  2026-07-14  9:56     ` Tvrtko Ursulin
  1 sibling, 1 reply; 6+ messages in thread
From: Timur Kristóf @ 2026-07-14  8:51 UTC (permalink / raw)
  To: amd-gfx, Alex Deucher, Natalie Vock, Melissa Wen,
	mario.limonciello, alex.hung, harry.wentland, Tvrtko Ursulin

On Monday, July 13, 2026 12:15:13 PM Central European Summer Time Tvrtko 
Ursulin wrote:
> On 11/07/2026 12:30, Timur Kristóf wrote:
> > The current name is too long and triggers a warning.
> > 
> > Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
> > ---
> > 
> >   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++--
> >   1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> > b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index
> > b97ceabe6173..6299f0e384f1 100644
> > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> > @@ -829,9 +829,9 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
> > 
> >   	}
> >   	if (adev->dm.dc->caps.max_links > 0) {
> >   	
> >   		adev->dm.hdmi_frl_status_polling_wq =
> > 
> > -			
create_singlethread_workqueue("hdmi_frl_status_polling_workqueue");
> > +			
create_singlethread_workqueue("hdmi_frl_status_polling_wq");
> > 
> >   		if (!adev->dm.hdmi_frl_status_polling_wq)
> > 
> > -			drm_err(adev_to_drm(adev), "failed to 
initialize
> > hdmi_frl_status_polling_workqueue\n"); +			
drm_err(adev_to_drm(adev),
> > "failed to initialize hdmi_frl_status_polling_wq\n");> 
> >   	}
> >   	if (dc_is_dmub_outbox_supported(adev->dm.dc)) {
> >   	
> >   		init_completion(&adev->dm.dmub_aux_transfer_done);
> 
> This one does not require display knowledge so I feel okay to review it:
> 
> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
> 
> Two nitpicks would be that the _wq suffix is even redundant since for
> the task name it will have the kworker/ prefix anyway.

Ok, what name do you suggest to use then?

> Second one is
> that while touching this it may make sense to replace the variable name
> from the error message with a human readable name like "failed to
> initialize HDMI FLR status polling".

Ok, can do.

> In fact, is this even an error or
> should be a warning given I do not see an immediate exit?

No idea, I just wanted to fix the warning that I saw.


Timur



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] drm/amd/display: Shorten name of FRL polling workqueue
  2026-07-14  8:51   ` Timur Kristóf
@ 2026-07-14  9:56     ` Tvrtko Ursulin
  0 siblings, 0 replies; 6+ messages in thread
From: Tvrtko Ursulin @ 2026-07-14  9:56 UTC (permalink / raw)
  To: Timur Kristóf, amd-gfx, Alex Deucher, Natalie Vock,
	Melissa Wen, mario.limonciello, alex.hung, harry.wentland


On 14/07/2026 09:51, Timur Kristóf wrote:
> On Monday, July 13, 2026 12:15:13 PM Central European Summer Time Tvrtko
> Ursulin wrote:
>> On 11/07/2026 12:30, Timur Kristóf wrote:
>>> The current name is too long and triggers a warning.
>>>
>>> Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
>>> ---
>>>
>>>    drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++--
>>>    1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>>> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index
>>> b97ceabe6173..6299f0e384f1 100644
>>> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>>> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>>> @@ -829,9 +829,9 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
>>>
>>>    	}
>>>    	if (adev->dm.dc->caps.max_links > 0) {
>>>    	
>>>    		adev->dm.hdmi_frl_status_polling_wq =
>>>
>>> -			
> create_singlethread_workqueue("hdmi_frl_status_polling_workqueue");
>>> +			
> create_singlethread_workqueue("hdmi_frl_status_polling_wq");
>>>
>>>    		if (!adev->dm.hdmi_frl_status_polling_wq)
>>>
>>> -			drm_err(adev_to_drm(adev), "failed to
> initialize
>>> hdmi_frl_status_polling_workqueue\n"); +			
> drm_err(adev_to_drm(adev),
>>> "failed to initialize hdmi_frl_status_polling_wq\n");>
>>>    	}
>>>    	if (dc_is_dmub_outbox_supported(adev->dm.dc)) {
>>>    	
>>>    		init_completion(&adev->dm.dmub_aux_transfer_done);
>>
>> This one does not require display knowledge so I feel okay to review it:
>>
>> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
>>
>> Two nitpicks would be that the _wq suffix is even redundant since for
>> the task name it will have the kworker/ prefix anyway.
> 
> Ok, what name do you suggest to use then?

Dropping the suffix. :)

>> Second one is
>> that while touching this it may make sense to replace the variable name
>> from the error message with a human readable name like "failed to
>> initialize HDMI FLR status polling".
> 
> Ok, can do.

You can leave it for follow up work. Perhaps to clarify things, when I 
give r-b that implies it is acceptable as is. Otherwise I would have 
said "with that fixed r-b".

>> In fact, is this even an error or
>> should be a warning given I do not see an immediate exit?
> 
> No idea, I just wanted to fix the warning that I saw.

drm_warn or drm_notice I would say is appropriate for things which 
failed, were expected to work, but do not prevent the driver to probe 
and work. Btw, on a glance, the neighbouring code is already confused 
with a mix or drm_err and drm_info for this class of issues.

Regards,

Tvrtko


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-07-14  9:57 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-11 11:30 [PATCH 1/2] drm/amd/display: Shorten name of FRL polling workqueue Timur Kristóf
2026-07-11 11:30 ` [PATCH 2/2] drm/amd/display: Check HDMI FRL support before creating " Timur Kristóf
2026-07-13 10:15 ` [PATCH 1/2] drm/amd/display: Shorten name of FRL " Tvrtko Ursulin
2026-07-13 13:33   ` Mario Limonciello
2026-07-14  8:51   ` Timur Kristóf
2026-07-14  9:56     ` Tvrtko Ursulin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.