Console redirection for UEFI and IPMI-SOL
Josh Paetzel
jpaetzel at FreeBSD.org
Tue Jan 14 02:40:07 UTC 2020
On Fri, Jan 10, 2020, at 12:30 PM, Ravi Pokala wrote:
> Hi folks,
>
> I'm trying to bring 12.1-RELEASE up on a new hardware platform. The
> system will boot from an NVMe device, so it must boot using UEFI.
>
> I've installed UEFI-based systems several times before, without any
> trouble. But for those previous platforms, the VGA console was all I
> needed; on this new platform, I need a serial console, using IPMI
> Serial-Over-LAN. I've set up SOL plenty of times before too... but only
> on BIOS-based systems. It's the combination of UEFI+SOL which seems to
> be causing me problems.
>
> When I boot, I see output from loader.efi on both the VGA and the SOL
> consoles; they report the console type as "efi". When the kernel starts
> running, I only see the output on the VGA console, not the SOL console.
> My ideal configuration -- which is what I have on my BIOS-based systems
> -- is:
>
> - bootloader on both VGA console and SOL console
> - kernel output on both VGA console and SOL console
> - single-user prompt on whichever I selected as the primary (first in
> the 'console' list in /boot/loader.conf)
> - login prompts on both consoles after `getty' has started.
>
> On the aforementioned previous BIOS+SOL systems, /boot/loader.conf
> contains the following:
>
> | boot_serial="YES"
> | console="comconsole vidconsole"
> | kern.vty="vt" # 10.x; different on 12.1?
> | hw.vga.textmode="1"
>
> When I used those same settings on the UEFI systems, loader.efi
> complains about "vidconsole" not being valid, and I got no more output
> anywhere. Changing that to "efi" let me get the kernel messages on the
> VGA console, but still nothing on the SOL.
>
> I'm happy to provide more info about the platform; just tell me what
> commands to run to gather it.
>
> Thanks,
>
> Ravi (rpokala@)
>
>
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
>
So in EFI land you're going to want console="comconsole efi"
You'll probably also want boot_multicons="YES"
Almost certainly the loader needs to be told over what serial port the IPMI serial port really is. It's probably very helpfully sending all the output to a header on the motherboard somewhere.
dmesg is your friend there.
comconsole_port and possibly comconsole_speed may need to be set.
ipmitool sol info 1 to see what the volatile and non-volatile bit rates are set to.
--
Thanks,
Josh Paetzel
More information about the freebsd-hackers
mailing list