I have a Board which uses a High-speed UART instead of some legacy hardware thats compiled into the kernel. The serial device only gets detected after loading the kernel module intel_lpss_pci
.
I am on debian "buster" which uses systemd to manage everything-
This means that enabling output and a getty login is not working as expected.
console=ttyS0,115200n8 console=tty0
will not cause systemd to open a getty login- kernel messages are delayed as well (and incomplete)
- systemd will open the getty prompt if I manually add the target
- That target does not work for rescue mode
- That target does nothing for the init-ramdisk
Workaround for the normal System
I found that manually telling systemd to open a login via getty works: systemctl enable serial-getty@ttyS0.service
This still adds some notable delay to displaying the first kernel messages, but I can atleast login.
Adding the module to initramfs (did not help)
I added the intel_lpss_pci module to /etc/initramfs-tools/modules
, rebuilt the init-ramfs and verified the module was copied there.
This did not make a difference
Required behaviour I want the serial console to work (as I don't have a screen), straight from the Ramdisk - without recompiling a kernel. Is there anyone knowledgeable what I am missing? Do I need to add a script to init-ramfs to load this module as early as possible, and if so - how does this work with the initramfs-tools?