Hi! Thanks for your respond. Unfortunately, no. I'm running on ThinkPad P52, which has no com connector installed. No USB serial interface connected.
`efi-show -g global -v ConOut` on loader prompt shows global NV,BS,RS ConOut = PciRoot(0,0)/Pci((0x1,oxo)/Pci(0x0,0x0)/AcpiAdr(0x80010100) Moreover, my previous idea didn't help. Neither console="vidconsole" console="eficonsole" console="efi_console" nor console="efi" in /boot/loader.conf works. Defining / undefining TERM_EMU on build are untested. Is there any setting for /boot/loader.conf to control the behavior? Regards. On Mon, 16 Mar 2020 08:26:56 +0200 Toomas Soome <tso...@me.com> wrote: > Hi! > > This means, your system has UART serial device 〓 you can check this from > loader prompt: efi-show -g global -v ConOut or with efivar from running > system. This w ould trigger efi console driver to use > TERM_EMU, which can be turned off by user and doing that would cause ESC > sequences to be passed directly to console. Might that be true in your case? > > rgds, > toomas > > > On 15. Mar 2020, at 17:17, Tomoaki AOKI <junch...@dec.sakura.ne.jp> wrote: > > > > Hi. > > > > This broke loader menu display on efifb. At least on amd64. > > ESC sequences without ESC character are shown. > > Key input (at least 1, 2 and enter) works OK. > > I suspect outputs for SIO is sent to efifb and ESC codes are ignored. > > > > Reverting this fixes the issue. > > > > Not tried (not enough time for now as I'm mainly using stable/12), > > but possibly calling efi_cons_probe() from efi_cons_init() would be > > needed, as ome codes are moved from the latter to the former. > > > > > >> Author: tsoome > >> Date: Sat Mar 14 06:36:03 2020 > >> New Revision: 358989 > >> URL: https://svnweb.freebsd.org/changeset/base/358989 > >> > >> Log: > >> loader: add comconsole implementation on top of SIO protocol > >> > >> Provide comconsole on top of SIO for arm platforms (x86 does use bios > > version). > >> > >> Added: > >> head/stand/efi/loader/efiserialio.c (contents, props changed) > >> Modified: > >> head/stand/efi/libefi/efi_console.c > >> head/stand/efi/loader/arch/arm/Makefile.inc > >> head/stand/efi/loader/arch/arm64/Makefile.inc > >> head/stand/efi/loader/conf.c > >> head/stand/efi/loader/main.c > >> > >> Modified: head/stand/efi/libefi/efi_console.c > >> ============================================================================== > >> --- head/stand/efi/libefi/efi_console.c Sat Mar 14 05:57:22 > > 2020 (r358988) > >> +++ head/stand/efi/libefi/efi_console.c > > Sat Mar 14 06:36:03 2020 (r358989) > >> @@ -377,9 +377,22 @@ efi_cons_respond(void *s __unused, const void *buf __u > >> { > >> } > >> > >> +/* > >> + * Set up conin/conout/coninex to make sure we have input ready. > >> + */ > >> static void > >> efi_cons_probe(struct console *cp) > >> { > >> + EFI_STATUS status; > >> + > >> + conout = ST->ConOut; > >> + conin = ST->ConIn; > >> + > >> + status = BS->OpenProtocol(ST->ConsoleInHandle, > > &simple_input_ex_guid, > >> + (void **)&coninex, IH, NULL, > > EFI_OPEN_PROTOCOL_GET_PROTOCOL); > >> + if (status != EFI_SUCCESS) > >> + coninex = NULL; > >> + > >> cp->c_flags |= C_PRESENTIN | C_PRESENTOUT; > >> } > >> > >> @@ -889,15 +902,7 @@ efi_cons_init(int arg) > >> if (conin != NULL) > >> return (0); > >> > >> - conout = ST->ConOut; > >> - conin = ST->ConIn; > >> - > >> conout->EnableCursor(conout, TRUE); > >> - status = BS->OpenProtocol(ST->ConsoleInHandle, > > &simple_input_ex_guid, > >> - (void **)&coninex, IH, NULL, > > EFI_OPEN_PROTOCOL_GET_PROTOCOL); > >> - if (status != EFI_SUCCESS) > >> - coninex = NULL; > >> - > >> if (efi_cons_update_mode()) > >> return (0); > >> > >> > >> Modified: head/stand/efi/loader/arch/arm/Makefile.inc > >> ============================================================================== > >> --- head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 > > 05:57:22 2020 (r358988) > >> +++ head/stand/efi/loader/arch/arm/Makefile.inc Sat Mar 14 06:36:03 > > 2020 (r358989) > >> @@ -1,6 +1,7 @@ > >> # $FreeBSD$ > >> > >> SRCS+= exec.c \ > >> + efiserialio.c \ > >> start.S > >> > >> HAVE_FDT=yes > > > > (Snip) > > > >> @@ -930,7 +936,6 @@ main(int argc, CHAR16 *argv[]) > >> if (!has_kbd && (howto & RB_PROBE)) > >> howto |= RB_SERIAL | RB_MULTIPLE; > >> howto &= ~RB_PROBE; > >> - uhowto = parse_uefi_con_out(); > >> > >> /* > >> * Read additional environment variables from the boot device's > > > > -- > > Tomoaki AOKI <junch...@dec.sakura.ne.jp> > > -- Tomoaki AOKI <junch...@dec.sakura.ne.jp> _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"