https://bugs.freedesktop.org/show_bug.cgi?id=63935
--- Comment #20 from Benjamin Lee ben@b1c1l1.com --- I am using a monolithic kernel without initrd (CONFIG_DRM_RADEON=y and CONFIG_EXTRA_FIRMWARE) using the exact same vmlinuz file between EFI and BIOS modes, so I don't believe I have a ucode issue since BIOS mode works correctly.
RADEON_AUX_SC_CNTL is different between EFI and BIOS emulation:
blee@supra ~/tmp $ diff bios.regs efi.regs 8c8 < RADEON_AUX_SC_CNTL 52f7377c ---
RADEON_AUX_SC_CNTL 52f7337c
46,48c46,48 < RADEON_CRTC2_H_TOTAL_DISP 0200000f < RADEON_CRTC2_H_SYNC_STRT_WID 00000000 < RADEON_CRTC2_V_TOTAL_DISP 00000100 ---
RADEON_CRTC2_H_TOTAL_DISP 0000000f RADEON_CRTC2_H_SYNC_STRT_WID 00003f3f RADEON_CRTC2_V_TOTAL_DISP 00000000
I built a separate kernel for fglrx and found that RADEON_AUX_SC_CNTL matched the BIOS emulation mode:
blee@supra ~/tmp $ diff fglrx.regs bios.regs 46c46 < RADEON_CRTC2_H_TOTAL_DISP 0203000f ---
RADEON_CRTC2_H_TOTAL_DISP 0200000f