Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/amd/display: Allow embedded connectors without DDC

On some laptops, the embedded panel may not have
a DDC (display data channel) available. On these,
the EDID may be hardcoded in ACPI or the VBIOS.

In this case, use GPIO_DDC_LINE_UNKNOWN and don't fail.

Fixes: def3488eb0fd ("drm/amd/display: refactor HPD to increase flexibility")
Link: https://gitlab.freedesktop.org/drm/amd/-/work_items/5192
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 75b8a6ca0e8bc3ce24572f854e95f8721b321179)

authored by

Timur Kristóf and committed by
Alex Deucher
494941aa a1fc7bf6

+7 -2
+1 -1
drivers/gpu/drm/amd/display/dc/dc.h
··· 1682 1682 struct dc_link_training_overrides preferred_training_settings; 1683 1683 struct dp_audio_test_data audio_test_data; 1684 1684 1685 - uint8_t ddc_hw_inst; 1685 + enum gpio_ddc_line ddc_hw_inst; 1686 1686 1687 1687 uint8_t hpd_src; 1688 1688
+3
drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c
··· 646 646 enum gpio_ddc_line dal_ddc_get_line( 647 647 const struct ddc *ddc) 648 648 { 649 + if (!ddc) 650 + return GPIO_DDC_LINE_UNKNOWN; 651 + 649 652 return (enum gpio_ddc_line)dal_gpio_get_enum(ddc->pin_data); 650 653 } 651 654