On Sun, Aug 02, 2020 at 01:05:37PM +0200, [email protected] wrote:
> >Synopsis: On boot, screen remains black after radeondrm driver initializes
> >Category: kernel/graphics/firmware
> >Environment:
> System : OpenBSD 6.7
> Details : OpenBSD 6.7-current (GENERIC.MP) #0: Sun Aug 2 09:57:37
> CEST 2020
>
> [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
>
> Architecture: OpenBSD.amd64
> Machine : amd64
>
> >Description:
> Installing an OpenBSD snapshot the first time on this iMac Intel Core i3
> machine. After the radaeon firmware package has been installed and you
> reboot the system, the screen remains black after the radeondrm driver
> initializes. The system as such comes up fine - SSH possible.
>
> >How-To-Repeat:
> Install an OpenBSD.amd64 or OpenBSD.i386 snapshot and reboot the system
> again after the radeon firmware package has been installed.
>
> >Fix:
> No fix found yet.
> Workaround;
> Disable the radaeondrm driver so system boots without accelerated graphics
> mode.
Try this. RV730 is DCE3.2
Index: sys/dev/pci/drm/radeon/atombios_encoders.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/drm/radeon/atombios_encoders.c,v
retrieving revision 1.15
diff -u -p -U6 -r1.15 atombios_encoders.c
--- sys/dev/pci/drm/radeon/atombios_encoders.c 8 Jun 2020 04:48:15 -0000
1.15
+++ sys/dev/pci/drm/radeon/atombios_encoders.c 2 Aug 2020 16:18:23 -0000
@@ -2191,13 +2191,14 @@ int radeon_atom_pick_dig_encoder(struct
/*
* On DCE32 any encoder can drive any block so usually just use crtc id,
* but Apple thinks different at least on iMac10,1, so there use linkb,
* otherwise the internal eDP panel will stay dark.
*/
if (ASIC_IS_DCE32(rdev)) {
- if (dmi_match(DMI_PRODUCT_NAME, "iMac10,1"))
+ if (dmi_match(DMI_PRODUCT_NAME, "iMac10,1") ||
+ dmi_match(DMI_PRODUCT_NAME, "iMac11,2"))
enc_idx = (dig->linkb) ? 1 : 0;
else
enc_idx = radeon_crtc->crtc_id;
goto assigned;
}