linux/drivers/gpu/drm/amd/display/dc
Timur Kristóf ac1bb49522 drm/amd/display: Use DAC load detection on analog connectors (v2)
This feature is useful for analog connections without EDID:
- Really old monitors with a VGA connector
- Cheap DVI/VGA adapters that don't connect DDC pins

When a connection is established through DAC load detection,
the driver is supposed to fill in the supported modes for the
display, which we already do in amdgpu_dm_connector_get_modes.

Also, because the load detection causes visible glitches, do not
attempt to poll the connector again after it was detected this
way. Note that it will still be polled after sleep/resume or
when force is enabled, which is okay.

v2:
Add dc_connection_dac_load connection type.
Properly release sink when no display is connected.
Don't print error when EDID isn't read from an analog display.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2025-10-28 10:10:00 -04:00
..
basics drm/amd/display: Multiplication result converted to larger type 2025-08-27 13:57:50 -04:00
bios drm/amd/display: Add DAC_LoadDetection to BIOS parser (v2) 2025-10-28 10:09:55 -04:00
clk_mgr drm/amd/display: init dispclk from bootup clock for DCN315 2025-10-28 09:58:00 -04:00
core drm/amd/display: Add concept of analog encoders (v2) 2025-10-28 10:09:03 -04:00
dccg drm/amd/display: Add more DC HW state info to underflow logging 2025-10-28 09:57:44 -04:00
dce drm/amd/display: Implement DCE analog link encoders (v2) 2025-10-28 10:09:12 -04:00
dce60 drm/amd/display/dc: reclassify DCE6 resources and hw sequencer 2025-04-08 16:48:14 -04:00
dce80 drm/amd/display: Rename program_timing function for better debugging 2025-04-30 18:18:59 -04:00
dce110 drm/amd/display: Remove unused get_max_support_fbc_buffersize 2025-02-12 21:03:03 -05:00
dce112
dce120 drm/amd/display: Add support to configure CRC window on specific CRC instance 2025-01-10 12:03:45 -05:00
dcn10 drm/amd/display: log destination of vertical interrupt 2025-02-12 21:02:57 -05:00
dcn20
dcn21
dcn30 drm/amd/display: Remove unused cm3_helper_translate_curve_to_degamma_hw_format 2024-11-04 11:26:20 -05:00
dcn31 drm/amd/display: Refactor dcn31_panel_construct to avoid assert 2024-12-10 10:31:24 -05:00
dcn201
dcn301 drm/amd/display: Refactor for dio 2024-07-27 17:31:26 -04:00
dio drm/amd/display: Rename header file link.h to link_service.h 2025-09-15 16:57:29 -04:00
dml drm/amd/display: Fix unsafe uses of kernel mode FPU 2025-10-07 14:09:19 -04:00
dml2_0 drm/amd/display: Rename dml2 to dml2_0 folder 2025-10-28 09:57:39 -04:00
dpp drm/amd/display: Update cursor offload assignments 2025-10-28 09:58:18 -04:00
dsc drm/amd/display: Add more DC HW state info to underflow logging 2025-10-28 09:57:44 -04:00
dwb drm/amd/display: Remove unused dwb3_set_host_read_rate_control 2024-12-10 10:38:19 -05:00
gpio drm/amd/display: Adjust set_value function with prefix to help in ftrace 2025-05-22 12:01:47 -04:00
hdcp drm/amd/display: Rename header file link.h to link_service.h 2025-09-15 16:57:29 -04:00
hpo drm/amd/display: Refactor DCN4x and related code 2025-02-25 11:44:02 -05:00
hubbub drm/amd/display: Add more DC HW state info to underflow logging 2025-10-28 09:57:44 -04:00
hubp drm/amd/display: Update cursor offload assignments 2025-10-28 09:58:18 -04:00
hwss drm/amd/display: Support DAC in dce110_hwseq 2025-10-28 10:09:17 -04:00
inc drm/amd/display: Add concept of analog encoders (v2) 2025-10-28 10:09:03 -04:00
irq drm/amd/display/dc/irq: Remove duplications of hpd_ack function from IRQ 2025-05-13 09:37:09 -04:00
link drm/amd/display: Use DAC load detection on analog connectors (v2) 2025-10-28 10:10:00 -04:00
mmhubbub drm/amd/display: Multiplication result converted to larger type 2025-08-27 13:57:50 -04:00
mpc drm/amd/display: Add more DC HW state info to underflow logging 2025-10-28 09:57:44 -04:00
opp drm/amd/display: Add more DC HW state info to underflow logging 2025-10-28 09:57:44 -04:00
optc drm/amd/display: Add more DC HW state info to underflow logging 2025-10-28 09:57:44 -04:00
pg drm/amd/display: Correct sequences and delays for DCN35 PG & RCG 2025-09-09 12:25:22 -04:00
resource drm/amd/display: Add DCE BIOS_SCRATCH_0 register 2025-10-28 10:09:42 -04:00
soc_and_ip_translator drm/amd/display: Rename dml2 to dml2_0 folder 2025-10-28 09:57:39 -04:00
sspl drm/amd/display: Add debug option to override EASF scaler taps 2025-10-20 18:19:27 -04:00
virtual drm/amd/display: Move setup_stream_attribute 2025-07-28 16:40:07 -04:00
Makefile drm/amd/display: Rename dml2 to dml2_0 folder 2025-10-28 09:57:39 -04:00
dc.h drm/amd/display: Promote DC to 3.2.356 2025-10-28 09:59:19 -04:00
dc_bios_types.h drm/amd/display: Add DAC_LoadDetection to BIOS parser (v2) 2025-10-28 10:09:55 -04:00
dc_ddc_types.h
dc_dmub_srv.c drm/amd/display: Add dc interface to log pre os firmware information 2025-10-28 09:58:11 -04:00
dc_dmub_srv.h drm/amd/display: Add dc interface to log pre os firmware information 2025-10-28 09:58:11 -04:00
dc_dp_types.h drm/amd/display: Read DPCD to obtain eDP capability information. 2025-09-05 17:38:41 -04:00
dc_dsc.h drm/amd/display: Add Interface to Dump DSC Caps from dm 2025-01-06 14:44:27 -05:00
dc_edid_parser.c
dc_edid_parser.h
dc_fused_io.c drm/amd/display: Prepare for Fused I2C-over-AUX 2025-05-05 12:55:30 -04:00
dc_fused_io.h drm/amd/display: HDCP Locality check using DMUB Fused IO 2025-04-07 18:01:07 -04:00
dc_hdmi_types.h
dc_helper.c drm/amd/display: Disable VRR on DCE 6 2025-09-15 17:04:28 -04:00
dc_hw_types.h drm/amd/display: Added case for when RR equals panel's max RR using freesync 2025-06-30 14:00:51 -04:00
dc_plane.h drm/amd/display: Extend dc_plane_get_status with flags 2025-05-16 13:38:25 -04:00
dc_plane_priv.h
dc_spl_translate.c drm/amd/display: Add debug option to override EASF scaler taps 2025-10-20 18:19:27 -04:00
dc_spl_translate.h drm/amd/display: add back quality EASF and ISHARP and dc dependency changes 2024-08-27 17:53:58 -04:00
dc_stat.h
dc_state.h drm/amd/display: Eliminate recursive header inclusion 2024-10-01 17:37:50 -04:00
dc_state_priv.h drm/amd/display: Refactor SubVP cursor limiting logic 2025-05-05 12:58:49 -04:00
dc_stream.h drm/amd/display: Make observers const-correct 2025-10-28 09:58:25 -04:00
dc_stream_priv.h
dc_trace.h
dc_types.h drm/amd/display: Use DAC load detection on analog connectors (v2) 2025-10-28 10:10:00 -04:00
dm_cp_psp.h
dm_event_log.h
dm_helpers.h drm/amd/display: HDCP Locality check using DMUB Fused IO 2025-04-07 18:01:07 -04:00
dm_pp_smu.h
dm_services.h drm/amd/display: Refactor SMU tracing 2025-09-23 10:31:51 -04:00
dm_services_types.h drm/amd/display: Add pixel_clock to amd_pp_display_configuration 2025-09-15 16:52:41 -04:00
irq_types.h drm/amd/display: Implement HDMI Read Request 2025-04-21 11:27:25 -04:00
os_types.h drm/amd/display: Move vmalloc include to header file 2025-06-03 15:35:59 -04:00