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