Opened 6 years ago

Closed 5 years ago

#15036 closed bug (not reproducible)

Prevent auto defaulting to screen resolutions higher than monitor display capability.

Reported by: cocobean Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: Drivers/Graphics Version: R1/Development
Keywords: Cc:
Blocked By: Blocking: #15037
Platform: All

Description

During system bootup, if checking for monitor's EDID, block defaulting to high screen resolution settings beyond active primary monitor capabilities.

NOTE: 800x600 or 1024x768 screen resolution default suggested. Currently, it defaults to 1600x1200.

Change History (7)

comment:1 by waddlesplash, 5 years ago

Blocking: 15037 added

comment:2 by waddlesplash, 5 years ago

Component: Drivers/Graphics/radeon_hdDrivers/Graphics
Owner: changed from kallisti5 to nobody

comment:3 by waddlesplash, 5 years ago

Priority: highnormal

comment:4 by cocobean, 5 years ago

NOTE:

  1. app_server shows display resolution of: 2576x1118
  2. Some common video display modes 'guessed' and not handled properly by specific video driver accelerant:
    1. 1600 x 1200
    2. 2560 x 1440
    3. 2048 x 1536

If Check mode returns:

  1. B_BAD_VALUE - mode can be made, but outside limits
  2. B_ERROR - not possible

Then MODE_OUT_SYNC issue.

Updating video accelerants for modern 'VESA-compliant' display modelines may mitigate the 'out of sync' monitor issue.

Last edited 5 years ago by cocobean (previous) (diff)

comment:5 by pulkomandy, 5 years ago

We read the EDID data of the display and use the resolutions that are advertised there. We try to use the native resolution because that looks better.

If your display is telling us it supports a resolution but it in fact doesn't, we can't do anything about it. Blame your display manufacturer.

If on the other hand it supports that resolution, but we end up using the wrong timings, that's a problem in our video drivers and we could fix it. It is unclear from your message if the problem is during boot (when the VESA driver is used) or later (when app_server is started and the "real" driver is loaded). You also did not include any info on your hardware: video card, and EDID data (a syslog would include both), as well as the specs for the display if possible (so we know which resolution it is supposed to use).

We already use VESA compliant GTF modelines.

As it is, this bugreport is unusable because you do not give us enough information to know what your problem really is.

comment:6 by cocobean, 5 years ago

The issue happened after the Haiku splash screen using the radeon_hd driver. Driver fallback to the VESA driver didn't automagically happen. VESA driver worked fine when invoked. NOTE: During bootup and entire phase of Haiku's splash screen (red rocket lights up in the end), the monitor display is working fine. The issue happens during the radeon_hd driver initialization and AtomBIOS/VBIOS fails to load (or save) properly on specific Radeon HD cards. PLL probing gets screwed.

The display read from the monitor showed 1600 x 1200 (it handles this and I think the driver handles this), yet got the 'out of sync' message. Issue is not the monitor (I tested two different monitors on same graphic card setup just for fun).

Was confirming radeon_hd driver's fixed screen modes up to 2048 x 1536 (DVI - 2560 x 1440 (up to 60Hz)

Tested: XFX Radeon HD RX 560 4GB VRAM on RCA 1080p monitor.

NOTE: RCA 1080p monitor works fine on Haiku with nvidia driver and vesa driver setups with all monitor resolutions tested through Screen preflet.

Please close this ticket. Duplicates: #15044, #15098, and #14302

Version 1, edited 5 years ago by cocobean (previous) (next) (diff)

comment:7 by pulkomandy, 5 years ago

Resolution: not reproducible
Status: newclosed

Reporter is not willing to include the required files to help troubleshooting, closing as not reproducible...

Note: See TracTickets for help on using tickets.