Opened 14 months ago

Closed 14 months ago

Last modified 14 months ago

#14353 closed bug (invalid)

Certain VESA screen resolutions may cause black/blue screen after Haiku splash screen

Reported by: cocobean Owned by: kallisti5
Priority: high Milestone: Unscheduled
Component: Drivers/Graphics/radeon_hd Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

Certain VESA screen resolution modes, like 1920x1440, are not compatible with specific HDTV (1920x1080x32-related) monitors.

Note: 1920x1440 is not supported by certain 1920x1080 monitors. Upon booting, HDTV monitors may jump to a 1600x1200 screen resolution (during the 'Haiku' splash screen) but will result in 'mode unsupported/black or blue screen display' when the graphic driver tries to display a higher resolution screen (i.e. 1920x1440). This issue seems recent to hrev52187->52212. Might be conflict between actual monitor EDID and preprogrammed screen modes in graphics driver.

Change History (5)

comment:1 by cocobean, 14 months ago

UPDATE: The monitor is a HDTV/PC hybrid monitor. These hybrid 1080p monitors might not support the 1920x1440 resolution (and some other limitations). The issue may lay between this monitor and something within the radeon_hd driver not happening on standard PC HD monitors which triggers the screen blanking..

The HDTV/PC 1080p monitor is connected to a Radeon HD 4350 VGA port. My Radeon HD 4350 cards supports a maximum screen resolution of: DVI-I: 2560 x 1600 / VGA: 2048 x 1536 / HDMI: 1920 x 1080.

NOTE: hrev52212 x86_64 install - I retested by using my HDMI cable and HDMI monitor connection to the Radeon HD monitor's HDMI connection. This will boot up Haiku with a 1920x1080 @ 60hz screen resolution until the Haiku splash screen disappears (after the red rocket logo lights up). Then, black screen or screen inop.

NOTE: hrev52212 nightly CD tested - radeon_hd driver test failed. Conclusion: Monitor issue.

Last edited 14 months ago by cocobean (previous) (diff)

comment:2 by waddlesplash, 14 months ago

Resolution: invalid
Status: newclosed

We can only use whatever resolutions the VESA BIOS in the system provides us with. Some systems, it's smart enough to add the connected panel mode, but not all. There's not a lot we can do here.

comment:3 by cocobean, 14 months ago

UPDATE: I think it has something to do with radeon_init_accelerant setup used between the Haiku Boot splash screen and desktop initialization or 'Run installer/Boot to desktop' screens. During the Haiku splash screens, I get the higher screen resolutions of 1600x1200->1920x1080. Once, the Haiku Splash screen disappears this is where the issue happens.

FIXED: Swapped to my original monitor - everything works with the radeon_hd driver. So, the issue seems moreso my HDTV/PC monitor. Retested with Haiku hrev52221 x86_64.

Last edited 14 months ago by cocobean (previous) (diff)

comment:4 by pulkomandy, 14 months ago

Are you using VESA or the radeon_hd driver? For VESA, the same logic is used for the splash screen and the desktop, so if you get the splash screen, you get the desktop in the same resolution.

Please re-read https://dev.haiku-os.org/wiki/ReportingBugs and include relevant details (listimage, listdev, ...)

comment:5 by cocobean, 14 months ago

@Pulkomandy - Both the intel_extreme and the radeon_hd driver trigger my HDTV monitor to stop displaying the screen and never shows it again after the Haiku splash screen disappears. The exact same test with the VESA driver works fine everytime. Go figure. With both the intel_extreme and the radeon_hd driver, I tried various lower screen resolutions from the boot debug menu but all ended with the same issue.

My standard monitor works fine with the radeon_hd driver, but the intel_extreme driver screen blanks at the same spot.

NOTE: I can display both 1600x1200 and 1920x1440 screen resolution with the VESA driver using my Intel IGP (PCI ID: 8086:0042) using screen preferences.

Last edited 14 months ago by cocobean (previous) (diff)
Note: See TracTickets for help on using tickets.