amd-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/20] Analog connector support in DC
@ 2025-07-23 15:57 Timur Kristóf
  2025-07-23 15:57 ` [PATCH 01/20] drm/amd/display: Determine DRM connector type more accurately Timur Kristóf
                   ` (20 more replies)
  0 siblings, 21 replies; 61+ messages in thread
From: Timur Kristóf @ 2025-07-23 15:57 UTC (permalink / raw)
  To: amd-gfx; +Cc: Timur Kristóf

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 the analog part doesn't work by default. 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 is cited as one of the
main reasons why not.

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.
For GFX7 APUs and SI, further fixes are needed before enabling DC.

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.

Please let me know what you think.

Timur Kristóf (20):
  drm/amd/display: Determine DRM connector type more accurately
  drm/amd/display: Add analog bit to edid_caps
  drm/amd/display: Introduce MAX_LINK_ENCODERS
  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
  drm/amd/display: Don't try to enable/disable HPD when unavailable
  drm/amd/display: Add concept of analog encoders
  drm/amd/display: Implement DCE analog stream encoders
  drm/amd/display: Implement DCE analog link encoders
  drm/amd/display: Support DAC in dce110_hwseq
  drm/amd/display: Add analog link detection
  drm/amd/display: Poll analog connectors
  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
  drm/amd/display: Use DAC load detection on analog connectors
  drm/amd/display: Add common modes to analog displays without EDID
  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 | 144 +++++++--
 .../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 |   8 +
 .../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     |   5 +
 .../drm/amd/display/dc/dce/dce_link_encoder.c | 100 ++++++
 .../drm/amd/display/dc/dce/dce_link_encoder.h |  21 +-
 .../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  | 123 +++++++-
 .../gpu/drm/amd/display/dc/link/link_dpms.c   |   9 +-
 .../drm/amd/display/dc/link/link_factory.c    |  31 ++
 .../dc/resource/dce100/dce100_resource.c      |  28 +-
 .../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        |  26 +-
 .../dc/resource/dce80/dce80_resource.c        |  23 +-
 .../amd/display/include/bios_parser_types.h   |  11 +-
 .../display/include/grph_object_ctrl_defs.h   |   1 +
 .../drm/amd/display/include/signal_types.h    |   5 +
 34 files changed, 1027 insertions(+), 76 deletions(-)

-- 
2.50.1


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

end of thread, other threads:[~2025-08-20 12:01 UTC | newest]

Thread overview: 61+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-23 15:57 [PATCH 00/20] Analog connector support in DC Timur Kristóf
2025-07-23 15:57 ` [PATCH 01/20] drm/amd/display: Determine DRM connector type more accurately Timur Kristóf
2025-07-29 18:03   ` Harry Wentland
2025-07-30  7:40     ` Timur Kristóf
2025-07-30 14:30       ` Harry Wentland
2025-07-30 17:03         ` Timur Kristóf
2025-07-30 17:29           ` Harry Wentland
2025-07-30 18:19             ` Timur Kristóf
2025-08-06 14:56   ` Harry Wentland
2025-08-06 17:45     ` Timur Kristóf
2025-08-06 18:13       ` Harry Wentland
2025-08-20 11:49         ` Timur Kristóf
2025-07-23 15:57 ` [PATCH 02/20] drm/amd/display: Add analog bit to edid_caps Timur Kristóf
2025-07-23 15:57 ` [PATCH 03/20] drm/amd/display: Introduce MAX_LINK_ENCODERS Timur Kristóf
2025-07-29 18:06   ` Harry Wentland
2025-07-30  7:40     ` Timur Kristóf
2025-07-23 15:57 ` [PATCH 04/20] drm/amd/display: Hook up DAC to bios_parser_encoder_control Timur Kristóf
2025-07-23 15:57 ` [PATCH 05/20] drm/amd/display: Add SelectCRTC_Source to BIOS parser Timur Kristóf
2025-07-23 15:57 ` [PATCH 06/20] drm/amd/display: Get maximum pixel clock from VBIOS Timur Kristóf
2025-07-23 15:58 ` [PATCH 07/20] drm/amd/display: Don't use stereo sync and audio on RGB signals Timur Kristóf
2025-07-29 18:21   ` Harry Wentland
2025-07-30  8:19     ` Timur Kristóf
2025-07-30 14:34       ` Harry Wentland
2025-07-30 17:08         ` Timur Kristóf
2025-07-31 15:37           ` Harry Wentland
2025-08-01  7:19             ` Alexandre Demers
2025-08-01  8:39               ` Timur Kristóf
2025-08-01 14:55                 ` Harry Wentland
2025-08-01 15:09                   ` Timur Kristóf
2025-07-23 15:58 ` [PATCH 08/20] drm/amd/display: Don't try to enable/disable HPD when unavailable Timur Kristóf
2025-07-23 15:58 ` [PATCH 09/20] drm/amd/display: Add concept of analog encoders Timur Kristóf
2025-07-23 15:58 ` [PATCH 10/20] drm/amd/display: Implement DCE analog stream encoders Timur Kristóf
2025-08-01 18:05   ` Alexandre Demers
2025-08-01 21:29     ` Timur Kristóf
2025-08-03 16:10       ` Alexandre Demers
2025-08-03 20:04         ` Timur Kristóf
2025-08-01 18:06   ` Alexandre Demers
2025-07-23 15:58 ` [PATCH 11/20] drm/amd/display: Implement DCE analog link encoders Timur Kristóf
2025-08-01 19:30   ` Alexandre Demers
2025-08-01 22:02     ` Timur Kristóf
2025-08-03 16:26       ` Alexandre Demers
2025-08-03 20:08         ` Timur Kristóf
2025-07-23 15:58 ` [PATCH 12/20] drm/amd/display: Support DAC in dce110_hwseq Timur Kristóf
2025-07-23 15:58 ` [PATCH 13/20] drm/amd/display: Add analog link detection Timur Kristóf
2025-08-07 19:12   ` Harry Wentland
2025-08-07 20:34     ` Harry Wentland
2025-08-07 21:32       ` Timur Kristóf
2025-08-08 14:03         ` Harry Wentland
2025-08-08 14:22           ` Wheeler, Daniel
2025-08-09 20:17             ` Timur Kristóf
2025-08-15 14:28               ` Wheeler, Daniel
2025-08-20 12:01             ` Timur Kristóf
2025-07-23 15:58 ` [PATCH 14/20] drm/amd/display: Poll analog connectors Timur Kristóf
2025-07-23 15:58 ` [PATCH 15/20] drm/amd/display: Add DCE BIOS_SCRATCH_0 register Timur Kristóf
2025-07-23 15:58 ` [PATCH 16/20] drm/amd/display: Make get_support_mask_for_device_id reusable Timur Kristóf
2025-07-23 15:58 ` [PATCH 17/20] drm/amd/display: Add DAC_LoadDetection to BIOS parser Timur Kristóf
2025-07-23 15:58 ` [PATCH 18/20] drm/amd/display: Use DAC load detection on analog connectors Timur Kristóf
2025-07-23 15:58 ` [PATCH 19/20] drm/amd/display: Add common modes to analog displays without EDID Timur Kristóf
2025-07-23 15:58 ` [PATCH 20/20] drm/amdgpu: Use DC by default for Bonaire Timur Kristóf
2025-07-30 16:29 ` [PATCH 00/20] Analog connector support in DC Harry Wentland
2025-07-30 17:15   ` Timur Kristóf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).