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

drm/amd/display: add support for disconnected eDP panels

[why]
On some configurations, eDP from GPU is muxed with another GPU. DC does
not know state of mux, but DM has this knowledge. This flag allows DC to ignore
creating EDP link when DM informs DC that EDP mux is not connected.

[how]
Add flag to dc, populate flag in DM

Signed-off-by: Jun Lei <Jun.Lei@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Jun Lei and committed by
Alex Deucher
8dea4960 21e471f0

+9 -3
+8 -3
drivers/gpu/drm/amd/display/dc/core/dc.c
··· 169 169 link = link_create(&link_init_params); 170 170 171 171 if (link) { 172 - dc->links[dc->link_count] = link; 173 - link->dc = dc; 174 - ++dc->link_count; 172 + if (dc->config.edp_not_connected && 173 + link->connector_signal == SIGNAL_TYPE_EDP) { 174 + link_destroy(&link); 175 + } else { 176 + dc->links[dc->link_count] = link; 177 + link->dc = dc; 178 + ++dc->link_count; 179 + } 175 180 } 176 181 } 177 182
+1
drivers/gpu/drm/amd/display/dc/dc.h
··· 205 205 bool disable_fractional_pwm; 206 206 bool allow_seamless_boot_optimization; 207 207 bool power_down_display_on_boot; 208 + bool edp_not_connected; 208 209 }; 209 210 210 211 enum visual_confirm {