From: Alvin Lee <[email protected]> [Description] On newer products no DDC / I2C pins exist for DP. In this case instance "ddc line" using aux hw inst, matching the i2c scenario where we must rely on I2C over aux.
Reviewed-by: Dominik Kaszewski <[email protected]> Signed-off-by: Alvin Lee <[email protected]> Signed-off-by: Ivan Lipski <[email protected]> --- drivers/gpu/drm/amd/display/dc/dc_fused_io.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/display/dc/dc_fused_io.c b/drivers/gpu/drm/amd/display/dc/dc_fused_io.c index 923f70724419..1c58223acce1 100644 --- a/drivers/gpu/drm/amd/display/dc/dc_fused_io.c +++ b/drivers/gpu/drm/amd/display/dc/dc_fused_io.c @@ -131,7 +131,9 @@ bool dm_atomic_write_poll_read_aux( if (!link) return false; - const uint32_t ddc_line = link->ddc->ddc_pin->pin_data->en; + /* If no DDC pins exist, then use the aux hw inst instead. Same logic as in dm_atomic_write_poll_read_i2c */ + const uint32_t ddc_line = link->no_ddc_pin ? + link->aux_hw_inst : link->ddc->ddc_pin->pin_data->en; union dmub_rb_cmd commands[3] = { 0 }; const bool converted = op_aux_convert(&commands[0], write, FUSED_REQUEST_WRITE, ddc_line) && op_aux_convert(&commands[1], poll, FUSED_REQUEST_POLL, ddc_line) -- 2.43.0
