Re: Intel builtin graphics, wsfb, gop - uses EDID?
RVP <[email protected]> Fri, 18 Aug 2023 00:39:32 +0000 (UTC)
| Newsgroups | gmane.os.netbsd.ports.x86-64 |
|---|---|
| Message-ID | <[email protected]> |
On Wed, 16 Aug 2023, Greg Troxel wrote:
> I am wondering if the builtin graphics is polling the monitor EDID and
> this list is derived from the set of builtin modes that are within or
> match the monitor. Otherwise it would be bizarre to have 1680x1050 show
> up.
>
genfb doesn't make use of EDID at all. In fact, you can't even get the EDID
data (try: wsconsctl -dw edid > edid.bin on 10.x) using it because it doesn't
implement the WSDISPLAYIO_GET_EDID ioctl. See wsdisplay(4) for what it will
handle.
It's your BIOS which has queried the monitor, changed the resolution and
set-up the framebuffer. genfb then just uses the memory handed to it.
> Should I expect that if I hook it up to a 1600x1200 monitor, or via
> displayport to a 2560x1440 monitor, that gop 0 will then refer to that
> native resolution?
>
You could try it, but, a UEFI BIOS impl. need not provide any but some
standard, safe resolutions.
> Is there a reason why "gop 0" is not chosen automatically? I'm guessing
> it is because it may not always go well, and thus it's best to have to
> opt in.
>
Yup.
> I'm also guessing that this does not work with xrandr because of lack of
> plumbing and maybe because the wsfb driver is not mode-agile once the
> system is booted.
>
It's because a) wsfb(4) is an Xorg display-driver for dumb framebuffers (just
a pixel-array which you address and write directly), and b) wsdisplay(4)--the
underlying abstraction for wsfb--doesn't support any of those advanced
features--even when it is running on top of an accelerated DRMKMS FB like
intelfb.
If you run wsfb(4) you also won't get:
a) multi-monitor support
b) HW brightness/contrast/gamma adjustment (install intel_backlight from pkgsrc
to change the backlight brightness)
c) no accel, DRI, XrandR, XVideo, etc.
SW-rotation and turning the screen on & off are basically the only advanced
features you get with this X driver.
-RVP