On 2025-10-09 13:49, Wheeler, Daniel wrote:
> [Public]
>
> Sure, we can add it to next week's promotion, I'm almost through this week's
> candidate. Tom is scheduled to prepare next week's candidate, so I'll tag him
> in.
>
Great. Thanks.
Harry
> Thank you,
>
> Dan Wheeler
> Sr. Technologist | AMD
> SW Display
> ------------------------------------------------------------------------------------------------------------------
> 1 Commerce Valley Dr E, Thornhill, ON L3T 7X6
> amd.com
>
>
> -----Original Message-----
> From: Wentland, Harry <[email protected]>
> Sent: Thursday, October 9, 2025 1:27 PM
> To: Timur Kristóf <[email protected]>; [email protected];
> Wheeler, Daniel <[email protected]>
> Cc: Deucher, Alexander <[email protected]>; Hung, Alex
> <[email protected]>; [email protected]; Koenig, Christian
> <[email protected]>
> Subject: Re: [PATCH 00/23] Analog connector support in DC (v2)
>
>
>
> On 2025-10-08 17:11, Harry Wentland wrote:
>> On 2025-09-26 14:01, Timur Kristóf wrote:
>>> This series adds support for analog connectors to DC for DCE6-10.
>>> There are two reasons to add this support:
>>>
>>> 1. GPUs that already use DC by default and have analog connectors.
>>> Some Tonga and Hawaii graphics cards in fact have DVI-I connectors,
>>> and their analog part doesn't work with DC. This functionality
>>> regressed when switching from the amdgpu legacy display code to DC.
>>>
>>> 2. GPUs that don't use amdgpu by default yet.
>>> Currently, SI (GFX6) and CIK (GFX7) don't use amdgpu by default yet,
>>> and missing analog connector support in DC is cited as one of the
>>> main reasons why not.
>>>
>>> Before starting this work, I asked Harry and Alex about how best to
>>> do it and we agreed that we'd like to use the VBIOS to set up the
>>> DAC. So I used the amdgpu legacy display code as a reference.
>>> The first few commits add some minor changes to DC to prepare for
>>> supporting analog stream and link encoders, then analog link
>>> detection is added along with polling, and finally DAC load detection
>>> support, which is useful for old displays and adapters.
>>>
>>> With this analog support added to DC, we could already fully switch
>>> CIK discrete GPUs to use DC and switch them to the amdgpu driver by
>>> default. This series switches Bonaire to DC by default, we can do the
>>> switch to amdgpu in a later series.
>>>
>>> For SI dGPUs, there are other pending patches to make DC work well,
>>> afterwards we could switch to DC by default, but missing
>>> VCE1 support is the blocker from using amdgpu by default.
>>>
>>> For GFX7 APUs, further work is needed before enabling DC by default,
>>> specifically with regards to the TRAVIS and NUTMEG external encoders
>>> which are not supported by DC at all.
>>>
>>> Changes in v2 of the series:
>>> Fixed regression on RDNA2 and newer APUs.
>>> Fixed flickering caused by polling analog connectors.
>>> Fixed crash on Kaveri.
>>> Fixed bug when HPD was high without a connected display.
>>> Reduced code churn by reusing same link encoder.
>>> Addressed other feedback from the review of v1.
>>
>> Thanks for the series.
>>
>> Patches 1-13 are
>> Reviewed-by: Harry Wentland <[email protected]>
>>
>> I'll hope to find time for the rest tomorrow or Friday.
>>
>
> The rest looks good to me as well.
>
> The whole series is
> Reviewed-by: Harry Wentland <[email protected]>
>
> Dan, can we give this a spin in our weekly promotion tests before I merge it?
>
> Harry
>
>> Harry
>>
>>>
>>> Timur Kristóf (23):
>>> drm/amd/display: Determine DVI-I connector type (v2)
>>> drm/amd/display: Add analog bit to edid_caps (v2)
>>> drm/amd/display: Introduce MAX_LINK_ENCODERS (v2)
>>> drm/amd/display: Hook up DAC to bios_parser_encoder_control
>>> drm/amd/display: Add SelectCRTC_Source to BIOS parser
>>> drm/amd/display: Get maximum pixel clock from VBIOS
>>> drm/amd/display: Don't use stereo sync and audio on RGB signals (v2)
>>> drm/amd/display: Don't try to enable/disable HPD when unavailable
>>> drm/amd/display: Determine early if a link has supported encoders (v2)
>>> drm/amd/display: Add concept of analog encoders (v2)
>>> drm/amd/display: Implement DCE analog stream encoders
>>> drm/amd/display: Implement DCE analog link encoders (v2)
>>> drm/amd/display: Support DAC in dce110_hwseq
>>> drm/amd/display: Add analog link detection (v2)
>>> drm/amd/display: Refactor amdgpu_dm_connector_detect (v2)
>>> drm/amd/display: Poll analog connectors (v2)
>>> drm/amd/display: Add DCE BIOS_SCRATCH_0 register
>>> drm/amd/display: Make get_support_mask_for_device_id reusable
>>> drm/amd/display: Add DAC_LoadDetection to BIOS parser (v2)
>>> drm/amd/display: Use DAC load detection on analog connectors (v2)
>>> drm/amd/display: Add common modes to analog displays without EDID
>>> drm/amd/display: Don't add freesync modes to analog displays (v2)
>>> drm/amdgpu: Use DC by default for Bonaire
>>>
>>> drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 1 -
>>> .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 173 ++++++++---
>>> .../amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 5 +-
>>> .../amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 1 +
>>> .../drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 20 ++
>>> .../gpu/drm/amd/display/dc/bios/bios_parser.c | 95 +++++-
>>> .../drm/amd/display/dc/bios/command_table.c | 286 ++++++++++++++++++
>>> .../drm/amd/display/dc/bios/command_table.h | 6 +
>>> .../drm/amd/display/dc/core/dc_link_enc_cfg.c | 4 +-
>>> .../gpu/drm/amd/display/dc/core/dc_resource.c | 8 +
>>> .../gpu/drm/amd/display/dc/dc_bios_types.h | 9 +
>>> drivers/gpu/drm/amd/display/dc/dc_types.h | 8 +-
>>> .../drm/amd/display/dc/dce/dce_link_encoder.c | 85 ++++++
>>> .../drm/amd/display/dc/dce/dce_link_encoder.h | 16 +-
>>> .../amd/display/dc/dce/dce_stream_encoder.c | 14 +
>>> .../amd/display/dc/dce/dce_stream_encoder.h | 5 +
>>> .../amd/display/dc/hwss/dce110/dce110_hwseq.c | 75 ++++-
>>> .../gpu/drm/amd/display/dc/inc/core_types.h | 8 +-
>>> .../gpu/drm/amd/display/dc/inc/hw/hw_shared.h | 24 ++
>>> .../drm/amd/display/dc/inc/hw/link_encoder.h | 2 +
>>> drivers/gpu/drm/amd/display/dc/inc/resource.h | 1 +
>>> .../amd/display/dc/link/hwss/link_hwss_dio.c | 19 +-
>>> .../drm/amd/display/dc/link/link_detection.c | 147 ++++++++-
>>> .../gpu/drm/amd/display/dc/link/link_dpms.c | 9 +-
>>> .../drm/amd/display/dc/link/link_factory.c | 60 +++-
>>> .../dc/resource/dce100/dce100_resource.c | 31 +-
>>> .../dc/resource/dce110/dce110_resource.c | 2 +
>>> .../dc/resource/dce112/dce112_resource.c | 2 +
>>> .../dc/resource/dce120/dce120_resource.c | 1 +
>>> .../dc/resource/dce60/dce60_resource.c | 29 +-
>>> .../dc/resource/dce80/dce80_resource.c | 26 +-
>>> .../amd/display/include/bios_parser_types.h | 11 +-
>>> .../display/include/grph_object_ctrl_defs.h | 1 +
>>> .../drm/amd/display/include/grph_object_id.h | 7 +
>>> .../drm/amd/display/include/signal_types.h | 12 +
>>> 35 files changed, 1117 insertions(+), 86 deletions(-)
>>>
>>
>