acidanthera / bugtracker

Acidanthera Bugtracker
383 stars 44 forks source link

Whatevergreen: possible -raddvi issue #2317

Closed AlexKusnezov closed 9 months ago

AlexKusnezov commented 1 year ago

I have a SAPPHIRE AMD Radeon RX 570 NITRO+ 8Gb with Connectors DP,DP,HDMI,HDMI,DVI which never had working HDMI and DVI, only dual DP. If a monitor is attached via HDMI or DVI, it will be detected, but the screen stays black. In Screen Sharing it is also present.

Recently I got both HDMI and the DVI working, but only one at a time by setting CFG_FB_LIMIT to 2 This allows having all of the ports working, but only two at a time - this would be my resource/contribution

Looking at Whatevergreen debug, there seems to be -raddvi is applied also to hdmi, which doesn't seem to be correct:

WhateverGreen       con: @ (DBG) 0 is type 00000400 (DP  ) flags 00000304 feat 0100 pri 0000 txmit 12 enc 04 hotplug 06 sense 01
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 got sense id 01
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 checking 2121 object id
WhateverGreen       rad: @ (DBG) autocorrectConnector use -raddvi to enable dvi autocorrection
WhateverGreen       con: @ (DBG) 0 is type 00000400 (DP  ) flags 00000304 feat 0100 pri 0000 txmit 22 enc 05 hotplug 04 sense 03
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 got sense id 03
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 checking 2221 object id
WhateverGreen       rad: @ (DBG) autocorrectConnector use -raddvi to enable dvi autocorrection
WhateverGreen       con: @ (DBG) 0 is type 00000800 (HDMI) flags 00000204 feat 0100 pri 0000 txmit 11 enc 02 hotplug 01 sense 02
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 got sense id 02
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 checking 2120 object id
WhateverGreen       rad: @ (DBG) autocorrectConnector use -raddvi to enable dvi autocorrection
WhateverGreen       con: @ (DBG) 0 is type 00000800 (HDMI) flags 00000204 feat 0100 pri 0000 txmit 21 enc 03 hotplug 05 sense 04
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 got sense id 04
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 checking 2220 object id
WhateverGreen       rad: @ (DBG) autocorrectConnector use -raddvi to enable dvi autocorrection
WhateverGreen       con: @ (DBG) 0 is type 00000004 (DVI ) flags 00000004 feat 0100 pri 0000 txmit 00 enc 00 hotplug 03 sense 06
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 got sense id 06
WhateverGreen       rad: @ (DBG) translateAtomConnectorInfoV1 checking 211E object id
WhateverGreen       rad: @ (DBG) autocorrectConnector use -raddvi to enable dvi autocorrection
WhateverGreen       rad: @ (DBG) setting fb limit to 5

Can you clairify this, also why is HDMI suddenly working when setting a low fb limit?

EFI and Lilu/WG Log attached.

EFI.zip

Lilu_1.6.7_22.6.txt

vit9696 commented 9 months ago

if I remember correctly, hdmi and dvi are using the same phy, so for the driver they are about the same. Limiting the active amount of framebuffers is likely doing something to activity checks deep inside the driver.