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

drm/amd/display: read invalid ddc pin status cause engine busy

[Why]
There is no DDC_6 pin on new asic cause the mapping table is
incorrect. When app try to access DDC_VGA port, driver read
an invalid ddc pin status and report engine busy.

[How]
Add dummy DDC_6 pin to align gpio structure.

Reviewed-by: Alvin Lee <Alvin.Lee2@amd.com>
Acked-by: Stylon Wang <stylon.wang@amd.com>
Signed-off-by: Paul Hsieh <Paul.Hsieh@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Paul Hsieh and committed by
Alex Deucher
8747075f 2a2acdd7

+2 -2
+2 -2
drivers/gpu/drm/amd/display/dc/gpio/dcn32/hw_factory_dcn32.c
··· 256 256 */ 257 257 void dal_hw_factory_dcn32_init(struct hw_factory *factory) 258 258 { 259 - factory->number_of_pins[GPIO_ID_DDC_DATA] = 6; 260 - factory->number_of_pins[GPIO_ID_DDC_CLOCK] = 6; 259 + factory->number_of_pins[GPIO_ID_DDC_DATA] = 8; 260 + factory->number_of_pins[GPIO_ID_DDC_CLOCK] = 8; 261 261 factory->number_of_pins[GPIO_ID_GENERIC] = 4; 262 262 factory->number_of_pins[GPIO_ID_HPD] = 5; 263 263 factory->number_of_pins[GPIO_ID_GPIO_PAD] = 28;