testers needed: loader: use display pixel density for font autoselection

Rodney W. Grimes freebsd-rwg at gndrsh.dnsmgr.net
Fri Feb 26 15:56:29 UTC 2021


> > On 26. Feb 2021, at 05:42, Rodney W. Grimes <freebsd at gndrsh.dnsmgr.net> wrote:
> > 
> >>> On 23. Feb 2021, at 17:53, Jakob Alvermark <jakob at alvermark.net> wrote:
> >>> 
> >>> On 2/23/21 12:27 PM, Toomas Soome via freebsd-current wrote:
> >>>> hi!
> >>>> 
> >>>> I have done some work to make font pickup a bit smarter (hopefully better;), but my own ability to test is limited to one bugged supermicro and one MBP with retina display?
> >>>> 
> >>>> The phab link ishttps://reviews.freebsd.org/D28849  <https://reviews.freebsd.org/D28849>
> >>>> 
> >>>> I have built loader binaries as well (bios and uefi):
> >>>> loader_lua<http://148-52-235-80.sta.estpak.ee/loader_lua>
> >>>> loader_lua.efi<http://148-52-235-80.sta.estpak.ee/loader_lua.efi>
> >>>> 
> >>>> To test, you should remove screen.font= line from loader.conf and test with different resolutions.
> >>>> 
> >>>> thanks,
> >>>> toomas
> >>> 
> >>> 
> >>> 
> >>> Hi Toomas,
> >>> 
> >>> 
> >>> I tested on five different setups.
> >>> 
> >>> Surface Pro 10.6"@1920x1080:
> >>> 
> >>> The loader menu looks different, the "FreeBSD" text is on the right side of the screen.
> >> 
> >> 
> >> I think, this was the lua script bug we did fix not too long time ago.
> >> 
> >>> 
> >>> Otherwise, the font size is what I would call a normal size.
> >>> 
> >>> 
> >>> Acer laptop 11.6"@1366x768:
> >>> 
> >>> Menu looks fine. Almost fills the entire screen.
> >>> 
> >>> The font feels a little too big.
> >> 
> >> 
> >> The laptop built in displays usually do not give out EDID (we get physical dimensions from EDID), so there we fall back to try to get 80x25 terminal method.
> > 
> > I am having a hard time with that statement.  EDID is very common on laptop screens, infact I can not recall ever not seeing EDID on a laptops builtin screen.
> > My 11" acer 1400 has EDID in it.
> > 
> > 
> 
> 
> If there is EDID, then it is all good. I have seen cases we do not get it with available API.

Is there a way for me to know if the laoder found EDID data or not?
It might be that the issue is that what ever loader is using for an API is not working.
I based my "EDID is very common on laptop screens" on the fact that X11 almost always finds EDID.

> >>> 
> >>> Thinkpad built in 13"@1920x1080:
> >>> 
> >>> Menu looks fine, but a little slow.
> >>> 
> >>> The font size is a little to big for my liking. When drm loads and mirrors the screen to my external 27" it looks comically large.
> >>> 
> >> 
> >> There is another issue - once DRM will kick in, we should re-consider the console attributes, like fonts, but at this time, the kernel itself only can use what was built in (8x16), or what loader was offering (default if present). So it is up to user to act there.
> > 
> > It would be really nice if DRM could pick up what the resolution and font was when it loaded!
> 
> it should do more, my supermicro X10SAE is ony doing 800x600 with UEFI, it has dell 27? 4k monitor connected. VBE can get 1600x1200 from the same set. What I would like to see is, once KMS is attached (i915), I?d like to get bets possible resolution and appropriate font. But thats something for future work.
> 
> > 
> >> 
> >>> 
> >>> Thinkpad external 24"@1920x1200:
> >>> 
> >>> Menu looks OK, uses about a quarter of the screen.
> >>> 
> >>> Font size is fine, but once drm loads it looks a bit squeezed (like thin and tall), but I guess that's drm detecting the built in 1920x1080, and the external display is stretched.
> >>> 
> >>> 
> >>> Thinkpad external 27"@3840x2160:
> >>> 
> >>> Menu looks OK, uses about a quarter of the screen.
> >>> 
> >>> Font size is fine.
> >>> 
> >>> Looking at the dmesg though, it says: VT(efifb): resolution 1920x1080
> >>> 
> >>> 
> >>> Jakob
> >>> 
> >> 
> >> 
> >> Those cases .. I suppose the menu was still at left side, not in middle? The thing there is, our menu is designed for 80x25 screen, with respective constants. 
> > 
> > SO again... why are we deviating from that causing us issues?
> 
> 
> You have misunderstood - the current menu code *is* built for 80x25 - the menu frame size is fixed, logo/brand locations are constants and so on.

No, I think you have misunderstood me.  I really do not like that the Loader and DRM seeem to deviate significantly from the default screen textual dimensions, as in that every thing is great on just about every machine I use until either the loader or DRM decides that it wants to use a resolution that, IMHO, is far too small font wise.  Aka almost all machines booted to a "DOS" prompt well have a 80x25 text mode screen.  FreeBSD seems to like to do a lot of 128x43.

> 
> 
> > 
> >> 
> >> many thanks for testing,
> > 
> > I have downloaded your modified loader, and put it in place, it shall get tested on my next reboot, which should be soon as 13-BETA4 should be popping out soon.
> > 
> 
> thank you!

Still waiting on Beta4, but I think I am going to push this loader to a few other systems and give it a try.

> 
> rgds,
> toomas
> 
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
> 
> 

-- 
Rod Grimes                                                 rgrimes at freebsd.org


More information about the freebsd-current mailing list