Opened 9 years ago

Closed 3 years ago

Last modified 7 months ago

#7172 closed enhancement (no change required)

Implement VESA 3 driver

Reported by: adamk Owned by: nobody
Priority: normal Milestone: R1
Component: Drivers/Graphics Version: R1/Development
Keywords: vesa3 mode switching Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

I have a handful of newer radeons, all of which perform acceptably well well the vesa driver, except that none of them have 1680x1050 programmed into the video card's BIOS, leaving me with 1280x1024 on a monitor whose native resolution is 1860x1050.

I'd like to suggest an enhancement to the radeon driver to support newer radeons. The radeon driver does not support anything newer than the hrev400 family GPUs, which is now five generations old.

Attachments (8)

video_param_table.h (9.6 KB ) - added by stargatefan 9 years ago.
vesa3.h (6.5 KB ) - added by stargatefan 9 years ago.
vesa3.c (27.2 KB ) - added by stargatefan 9 years ago.
selector.h (1.1 KB ) - added by stargatefan 9 years ago.
readme.txt (2.9 KB ) - added by stargatefan 9 years ago.
arch_selector.c (1.8 KB ) - added by stargatefan 9 years ago.
VBE 3.0 drvier for NewOS 20110126183911 Michael Noisternig (68.0 KB ) - added by stargatefan 9 years ago.
VBE 3.0 drvier for NewOS 20110129091817 Michael Noisternig (3.3 KB ) - added by stargatefan 9 years ago.

Download all attachments as: .zip

Change History (17)

comment:1 by stargatefan, 9 years ago

there is source code for vesa 3 for the NewOs kernel "upon which haiku was heavily built" that should hopefully offer a good bit more flexability in this regard. I will see if it is ok to post the source code here. If it is I will attach it to this ticket. That in thoery should enable a great deal more modesetting.

On alot of newer gpu's the 2d acceleration is done with the regular 3d hardware but emulated by software AFAIK.

in reply to:  1 comment:2 by anevilyak, 9 years ago

Replying to stargatefan:

If it is I will attach it to this ticket. That in thoery should enable a great deal more modesetting.

There's no need to do that if it's already readily available in the NewOS repo.

comment:3 by stargatefan, 9 years ago

I looked and I didn't see it there. the author did email the source code. I would think it should be ok to post it here but I will double check. When the file author sent these he didn't make any stipulations and he was aware of the intended use. I haven't heard back. I am posting these unless they meet objection.

I would make sure they get mentioned in the contributors list and that the trademarks stay put.

Last edited 9 years ago by stargatefan (previous) (diff)

by stargatefan, 9 years ago

Attachment: video_param_table.h added

by stargatefan, 9 years ago

Attachment: vesa3.h added

by stargatefan, 9 years ago

Attachment: vesa3.c added

by stargatefan, 9 years ago

Attachment: selector.h added

by stargatefan, 9 years ago

Attachment: readme.txt added

by stargatefan, 9 years ago

Attachment: arch_selector.c added

comment:4 by stargatefan, 9 years ago

attaching the emails regarding the subject manner at hand to make sure any devs looking to implement this code understands that there is in fact clearance from the code author to do so.

comment:5 by diver, 9 years ago

Component: - GeneralDrivers/Graphics

comment:6 by diver, 9 years ago

Keywords: vesa3 mode switching added
Summary: Improved support for newer radeons.Implement VESA 3 driver
Version: R1/alpha2R1/Development

comment:7 by pulkomandy, 3 years ago

Resolution: no change required
Status: newclosed

I read the VBE 3 specification. Bad news: it does not allow setting more video resolutions than VBE 2 which we are currently using. It only allows changing the refresh rate for already supported display resolutions.

So, this will not solve the original issue, and not bring us much more functionality. Since we now have a native driver for the mentionned Radeon cards, I am closing this ticket.

comment:8 by diver, 7 months ago

This driver supports vesa bios live patching. Maybe we should move it to Gerrit after all?

comment:9 by pulkomandy, 7 months ago

It is not movable to Gerrit in its current state. It is not a patch for Haiku, it is a driver for NewOS. Also, it implements patching for 10 years old devices, the code will be a little different for recent ones to find the modelines and patch them.

So there isn't really much to extract from this.

Note: See TracTickets for help on using tickets.