Unable to get Ultrawide Native Resolution

Good day,

So, being unable to boot on UEFI my home box (R5700G on Gigabyte Aorus B450), I touched the BIOS (enabling CSM) to be able to run Haiku in BIOS mode. In this situation, Haiku uses the VESA driver, instead of the Framebuffer one.

The display I’m using is an Ultrawide 3840x1600. I’m puzzled with the UEFI issue because I tried all the safe mode options without success, but now we are at a different stage: Try to get native resolution on that Display.

The highest resolution I can get is 2560x1440 which is 16:9 aspect ratio. That results in everything on screen wider/fatter than normal.

As commented on another threads, I tried the screenmode tool to try to get the native resolution:

screenmode 3840x1600x32
screenmode: Could not set screen mode 3840x1600x32: No such file or directory

Syslog spits that there is an aditional video mode:

KERN: Additional Video Mode (3840x1600@59Hz):
KERN: clock=395 MHz
KERN: h: (3840, 3888, 3920, 4000)
KERN: v: (1600, 1603, 1613, 1646)
KERN: size: 88 cm x 36.7 cm
KERN: border: 0 cm x 0 cm
KERN: Serial Number: 1NSXZ63
KERN: Monitor Name: DELL U3821DW
KERN: Horizontal frequency range = 30..100 kHz
KERN: Vertical frequency range = 56..76 Hz
KERN: Maximum pixel clock = 400 MHz
KERN: Extension blocks: 1

So when I boot Haiku in BIOS mode, the Haiku logo and Icons appear on screen BIG, I mean BIIIIG and FAAAT. When calling the boot manager, it says that it’s going to use 2560x1440, so icons are FAAT and BIIG.

Then, following another thread, I added the ‘vesa’ file at ~/config/settings/kernel/drivers/ with the following content:

mode 3840 1600 32

And, I still don’t get native resolution on the desktop, and trying the screenmode command on the Terminal results in same error as indicated above. Though I get native resolution on the Boot screen!?!?! Now the Haiku logo and Icons appear with the right proportions on the Boot screen. Strange? :thinking:

Is there anything else that I’m missing to get this working?

Any hints will be sincerely appreciated.

Regards,
RR

Try screenmode 3840x1600x32 59. 60 Hz probably goes just above the maximum pixel rate. But it should also appear in the Screen preferences.

If that doesn’t work, see what screenmode -l spits.

1 Like

That probably means app_server loads another driver. Try the failsafe graphics option.

Videocable HDMI or DP ?

This is a dump of the EDID data from your monitor. So, the monitor says that it supports that mode, but the VESA BIOS in your machine does nothing with that information (as usual for most VESA BIOS implementations).

Haiku can read the EDID data and show it in the syslog, but it can’t tell the VESA BIOS to use that mode, since VESA just provides a fixed videomode list to choose from, and no way to set anything else.

To access this mode, you need either to enable VESA BIOS patching, if that works on your machine, or use a native driver.

1 Like

Good day,

@madmax , that didn’t work. On Arch it works at 60Hz without issues.

> screenmode -l

does not report the ultrawide resolution. The maximum available is 2560x1440.

@nephele, I’ve tried that already, and other safe mode options. The failsafe gets the Vesa driver loaded, so still out of luck on that one.

@kim1963, I’m using DP. I have been using DP with this box since I built it. More on that later.

@PulkoMandy, I tried the BIOS patching and didn’t work. Use a native driver is out of question because there is no native AMD Radeon driver, AFAIK.

Thanks all for the tips. I’ll keep trying with new hrevs and check combinations… patience.

I’m thinking that this might be related to the MOBO. This box is an update. I started with an MSI B350M Mortar and the Ryzen 1600, then changed to the Gigabyte AORUS B450I and the Ryzen 1600, then updated the processor. Before, with the B350M I could use UltraWide resolution with the Framebuffer driver on UEFI mode boot. Now I can’t boot on UEFI mode, so no way to load the Framebuffer driver, which seemed to be able to use UW resolutions. The VESA driver is stuck with 4:3 ratios.

Thus, a question arise:

  • Can I force the Framebuffer driver to load on BIOS mode, instead of the VESA?
  • If YES, how?

I presume that if I can get this box boot on UEFI mode again, Framebuffer driver will be loaded by default, and will get the UW resolution & aspect ratio. Is this Correct?

Again, thanks everyone for your assistance.

Regards,
RR

1 Like

No, that driver relies on the EFI firmware to set the video mode, just like the VESA one relies on the BIOS.

There is radeon_hd, but it may need some work to support the newest generations of cards.

Yes, that should work.

3 Likes