Date: Mon, 15 May 2023 15:32:22 +0300 From: Toomas Soome <tsoome@me.com> To: Oleg Lelchuk <oleglelchuk@gmail.com> Cc: Warner Losh <imp@bsdimp.com>, Ed Maste <emaste@freebsd.org>, Emmanuel Vadot <manu@bidouilliste.com>, FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: Why doesn't the EFI boot loader want to display the graphical orb logo in its boot menu on an Asus Prime 7590-P motherboard? Message-ID: <4AC4F6EE-CE18-4D67-A7F7-9328DAB3E1AB@me.com> In-Reply-To: <CA%2BGqWgucZuH5jc7xGUs_GPmebPzacHdH%2BWdh7qn2X8qnBm6uLQ@mail.gmail.com> References: <CA%2BGqWgudMq%2BeV5OJzuC_zR1Osdrak70PmOpFJqLMk3aDE0wy8w@mail.gmail.com> <3B658415-3AD0-4E8B-8CBE-F13FA70CBDC8@me.com> <20230512070557.859671981b7c616c0da7d666@bidouilliste.com> <CA%2BGqWguYpkm17xTQKN3qgyACpG7MkHPK3jJz=f9tx=zovvaNMA@mail.gmail.com> <4F0D21B1-58B6-413D-8499-11AF0E338C78@me.com> <CA%2BGqWguPT8uxtGhbWBw4kmR34jC7kG-DSMT0SuEm02smaigoEA@mail.gmail.com> <B8A678CB-8E2C-4A4C-852C-3E66C2C3B4B4@me.com> <CA%2BGqWgta5%2B-POUk88Z%2B-_FtcJouvLZpu5vYQ6kfX1DGwwjeCXw@mail.gmail.com> <CAPyFy2A4cW4SnFLEypM31JMDJT=A=vMh%2BW5g%2BO2gigf5OWDKrA@mail.gmail.com> <CA%2BGqWgsviBD_B_OQHERZd4J6S0chT-F=Rz0kExtUWq9t6QV_dA@mail.gmail.com> <CA%2BGqWgumZtyVJTbyfMf2bLypK1Ndw1L1AcQ7LTjnCtvRwAtJtA@mail.gmail.com> <CANCZdforzzd6kwQZ7RVctB5MG1=BU86ot7vBGydCek%2BUV44JOw@mail.gmail.com> <CA%2BGqWgsfVxvEduT_ncD%2BMKWDw9r8LqADF0wGsuZS8xt8V0p_-w@mail.gmail.com> <CA%2BGqWgucZuH5jc7xGUs_GPmebPzacHdH%2BWdh7qn2X8qnBm6uLQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_014146C7-A0D4-479C-B6D4-F3C1327B5374 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On 15. May 2023, at 15:22, Oleg Lelchuk <oleglelchuk@gmail.com> wrote: >=20 > Adding screen.font=3D"16=C3=9732" to loader.conf fixed that tiny issue = mentioned in the previous email message... I find it a bit surprising = that I only had to make one tiny change to the source code of stand to = make the graphical logo appear, to start playing with the EFI = resolution, and etc. The font size/resolution is difficult topic. The implementation itself = can choose =E2=80=9Cgood enough=E2=80=9D variant and then some people = are happy and some people are unhappy. The current loader UI is built on terminal dimensions (which depend on = glyph size and resolution), and there the traditional assumption is that = we have 80x24 terminal. With different fonts and depending on how much = screen space we want to leave unused, we can get different dimensions = for terminal. And since there is quite a variation of displays, the challenge is to = get decent enough visual on most commonly used displays - so there can = be pressure to use fixed resolution etc. And this is also the reason, = why you see very simple boot screens with something like spinning wheel = on some other systems. rgds, toomas >=20 > On Sun, May 14, 2023, 8:58 AM Oleg Lelchuk <oleglelchuk@gmail.com = <mailto:oleglelchuk@gmail.com>> wrote: >> Okay, so I edited /usr/src/stand/efi/loader/main.c , and I replaced = ConOut with ConIn in this line: rv =3D efi_global_getenv("ConIn", buf, = &sz); . Now I am able to see the beautiful graphical logo in the efi = boot menu! But why are the boot menu and the logo shown in the top left = corner of my computer screen? My monitor is 1080p and the setting = efi_max_resolution=3D1080p in loader.conf only affects what happens = after the kernel starts booting up, but it doesn't affect what happens = before it: the boot menu and the logo remain in the top left corner of = the screen. Why is this the case? You can see the photo in the provided = attachment... And thank you, guys, for your work! >>=20 >> On Sat, May 13, 2023 at 9:35=E2=80=AFAM Warner Losh <imp@bsdimp.com = <mailto:imp@bsdimp.com>> wrote: >>>=20 >>>=20 >>> On Sat, May 13, 2023, 6:26 AM Oleg Lelchuk <oleglelchuk@gmail.com = <mailto:oleglelchuk@gmail.com>> wrote: >>>> I've been reading the documentation for loader.efi and it says = this: "If there is no ConOut variable, both serial and video are = attempted. >>>> loader.efi uses the "efi" console for the video (which may or = may not >>>> work) and "comconsole" for the serial on COM1 at the default = baud rate. >>>> The kernel will use a dual console, with the video console = primary if a >>>> UEFI graphics device is detected, or the serial console as = primary if >>>> not." >>>> I find this language confusing because I don't know what is meant = by "a UEFI graphics device". In my situation, is my Intel Integrated = Graphics card an UEFI graphics device? Does it mean that once i915kms is = loaded, I no longer deal with UEFI graphics? I think lots of people = whose native language is English will find the documentation describing = loader.efi confusing. The documentation page also mentions this: "BUGS >>>> Systems that do not have a ConOut variable set are not = conformant with >>>> the standard, and likely have unexpected results." But I think = you guys already implied that the UEFI specification doesn't mandate = having such a variable. >>>=20 >>>=20 >>> That's unclear. The standard refers to it many times. Earlier = versions especially. It doesn't say it's optional, unlike some other = variables. Yet later versions don't say it's mandatory. I've yet to own = or use a system without it... such systems exist but they are quite = new... >>>=20 >>> Warner >>>=20 >>>> On Fri, May 12, 2023 at 7:55=E2=80=AFPM Oleg Lelchuk = <oleglelchuk@gmail.com <mailto:oleglelchuk@gmail.com>> wrote: >>>>> I got it. Thanks. >>>>>=20 >>>>> On Fri, May 12, 2023 at 7:45=E2=80=AFPM Ed Maste = <emaste@freebsd.org <mailto:emaste@freebsd.org>> wrote: >>>>>> On Fri, 12 May 2023 at 09:26, Oleg Lelchuk <oleglelchuk@gmail.com = <mailto:oleglelchuk@gmail.com>> wrote: >>>>>> > >>>>>> > I don't want to go through the hassle of filling a bug with my = vendor. I will just wait for you, guys, to update the stand = implementation. Thank you for explaining to me what causes this issue. >>>>>>=20 >>>>>> This issue is tracked in PR 265980 if you want to follow it. >>>>>> https://bugs.freebsd.org/265980 --Apple-Mail=_014146C7-A0D4-479C-B6D4-F3C1327B5374 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 <html><head><meta http-equiv=3D"content-type" content=3D"text/html; = charset=3Dutf-8"></head><body style=3D"overflow-wrap: break-word; = -webkit-nbsp-mode: space; line-break: = after-white-space;"><br><div><br><blockquote type=3D"cite"><div>On 15. = May 2023, at 15:22, Oleg Lelchuk <oleglelchuk@gmail.com> = wrote:</div><br class=3D"Apple-interchange-newline"><div><div = dir=3D"auto">Adding screen.font=3D"16=C3=9732" to loader.conf fixed that = tiny issue mentioned in the previous email message... I find it a bit = surprising that I only had to make one tiny change to the source code of = stand to make the graphical logo appear, to start playing with the EFI = resolution, and etc.</div></div></blockquote><div><br></div><div>The = font size/resolution is difficult topic. The implementation itself can = choose =E2=80=9Cgood enough=E2=80=9D variant and then some people are = happy and some people are unhappy.</div><div><br></div><div>The current = loader UI is built on terminal dimensions (which depend on glyph size = and resolution), and there the traditional assumption is that we have = 80x24 terminal. With different fonts and depending on how much screen = space we want to leave unused, we can get different dimensions for = terminal.</div><div><br></div><div>And since there is quite a variation = of displays, the challenge is to get decent enough visual on most = commonly used displays - so there can be pressure to use fixed = resolution etc. And this is also the reason, why you see very simple = boot screens with something like spinning wheel on some other = systems.</div><div><br></div><div>rgds,</div><div>toomas</div><br><blockqu= ote type=3D"cite"><div><br><div class=3D"gmail_quote"><div dir=3D"ltr" = class=3D"gmail_attr">On Sun, May 14, 2023, 8:58 AM Oleg Lelchuk <<a = href=3D"mailto:oleglelchuk@gmail.com">oleglelchuk@gmail.com</a>> = wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 = .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr">Okay, = so I edited /usr/src/stand/efi/loader/main.c , and I replaced ConOut = with ConIn in this line: rv =3D efi_global_getenv("ConIn", buf, = &sz); . Now I am able to see the beautiful graphical logo in the efi = boot menu! But why are the boot menu and the logo shown in the top left = corner of my computer screen? My monitor is 1080p and the setting = efi_max_resolution=3D1080p in loader.conf only affects what happens = after the kernel starts booting up, but it doesn't affect what happens = before it: the boot menu and the logo remain in the top left corner of = the screen. Why is this the case? You can see the photo in the provided = attachment... And thank you, guys, for your work!</div><br><div = class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Sat, May = 13, 2023 at 9:35=E2=80=AFAM Warner Losh <<a = href=3D"mailto:imp@bsdimp.com" target=3D"_blank" = rel=3D"noreferrer">imp@bsdimp.com</a>> wrote:<br></div><blockquote = class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px = solid rgb(204,204,204);padding-left:1ex"><div = dir=3D"auto"><div><br><br><div class=3D"gmail_quote"><div dir=3D"ltr" = class=3D"gmail_attr">On Sat, May 13, 2023, 6:26 AM Oleg Lelchuk <<a = href=3D"mailto:oleglelchuk@gmail.com" target=3D"_blank" = rel=3D"noreferrer">oleglelchuk@gmail.com</a>> = wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px = 0px 0px 0.8ex;border-left:1px solid = rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr">I've been reading = the documentation for loader.efi and it says this: "If there is no = ConOut variable, both serial and video are attempted.<br> = loader.efi uses the "efi" console for the video (which may = or may not<br> work) and "comconsole" for the = serial on COM1 at the default baud rate.<br> The = kernel will use a dual console, with the video console primary if = a<br> UEFI graphics device is detected, or the serial = console as primary if<br> not."<div>I find this = language confusing because I don't know what is meant by "a UEFI = graphics device". In my situation, is my Intel Integrated Graphics card = an UEFI graphics device? Does it mean that once i915kms is loaded, I no = longer deal with UEFI graphics? I think lots of people whose native = language is English will find the documentation describing loader.efi = confusing. The documentation page also mentions this: "BUGS</div> = Systems that do not have a ConOut variable set are not = conformant with<br> the standard, and likely have = unexpected results." But I think you guys already implied that the UEFI = specification doesn't mandate having such a = variable.</div></blockquote></div></div><div dir=3D"auto"><br></div><div = dir=3D"auto">That's unclear. The standard refers to it many times. = Earlier versions especially. It doesn't say it's optional, unlike some = other variables. Yet later versions don't say it's mandatory. I've = yet to own or use a system without it... such systems exist but they are = quite new...</div><div dir=3D"auto"><br></div><div = dir=3D"auto">Warner</div><div dir=3D"auto"><br></div><div = dir=3D"auto"><div class=3D"gmail_quote"><blockquote class=3D"gmail_quote" = style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid = rgb(204,204,204);padding-left:1ex"><div class=3D"gmail_quote"><div = dir=3D"ltr" class=3D"gmail_attr">On Fri, May 12, 2023 at 7:55=E2=80=AFPM = Oleg Lelchuk <<a href=3D"mailto:oleglelchuk@gmail.com" = rel=3D"noreferrer noreferrer" = target=3D"_blank">oleglelchuk@gmail.com</a>> = wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px = 0px 0px 0.8ex;border-left:1px solid = rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr">I got it. = Thanks.</div><br><div class=3D"gmail_quote"><div dir=3D"ltr" = class=3D"gmail_attr">On Fri, May 12, 2023 at 7:45=E2=80=AFPM Ed Maste = <<a href=3D"mailto:emaste@freebsd.org" rel=3D"noreferrer noreferrer" = target=3D"_blank">emaste@freebsd.org</a>> wrote:<br></div><blockquote = class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px = solid rgb(204,204,204);padding-left:1ex">On Fri, 12 May 2023 at 09:26, = Oleg Lelchuk <<a href=3D"mailto:oleglelchuk@gmail.com" = rel=3D"noreferrer noreferrer" = target=3D"_blank">oleglelchuk@gmail.com</a>> wrote:<br> ><br> > I don't want to go through the hassle of filling a bug with my = vendor. I will just wait for you, guys, to update the stand = implementation. Thank you for explaining to me what causes this = issue.<br> <br> This issue is tracked in PR 265980 if you want to follow it.<br> <a href=3D"https://bugs.freebsd.org/265980" rel=3D"noreferrer noreferrer = noreferrer" target=3D"_blank">https://bugs.freebsd.org/265980</a><br> </blockquote></div> </blockquote></div> </blockquote></div></div></div> </blockquote></div> </blockquote></div> </div></blockquote></div><br></body></html>= --Apple-Mail=_014146C7-A0D4-479C-B6D4-F3C1327B5374--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4AC4F6EE-CE18-4D67-A7F7-9328DAB3E1AB>