Hi, I have a 5 year old DEC-850 that I would like to repurpose. This box has no VGA, only serial. The serial console works great on FreeBSD and OPNsense, but I am looking to deploy Proxmox and Debian on it. We think the controller is a Synopsis DesignWare, that OPNsense dmesg calls out as having a broken FCR... not sure if this is real, or indicating an emulated controller?
OPNsense detects the serial like so:
uart2: console (115384,n,8,1)IFO> iomem 0xfedc9000-0xfedc9fff,0xfedc7000-0xfedc7fff irq 3 on acpi0
root@OPNsense:~ # dmesg | grep acpi
acpi0: <INSYDE WALLABY>
acpi0: Power Button (fixed)
cpu0: <ACPI CPU> on acpi0
hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff irq 0,8 on acpi0
atrtc0: <AT realtime clock> port 0x70-0x71 on acpi0
attimer0: <AT timer> port 0x40-0x43 on acpi0
apei0: <ACPI Platform Error Interface> on acpi0
acpi_timer0: <32-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
acpi_button0: <Power Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
uart2: <16x50 with 256 byte FIFO> iomem 0xfedc9000-0xfedc9fff,0xfedc7000-0xfedc7fff irq 3 on acpi0
ig4iic0: <Designware I2C Controller> iomem 0xfedc2000-0xfedc2fff irq 10 on acpi0
ig4iic1: <Designware I2C Controller> iomem 0xfedc3000-0xfedc3fff irq 11 on acpi0
ig4iic2: <Designware I2C Controller> iomem 0xfedc4000-0xfedc4fff irq 12 on acpi0
ig4iic3: <Designware I2C Controller> iomem 0xfedc5000-0xfedc5fff irq 6 on acpi0
ig4iic4: <Designware I2C Controller> iomem 0xfedc6000-0xfedc6fff irq 14 on acpi0
ig4iic5: <Designware I2C Controller> iomem 0xfedcb000-0xfedcbfff irq 15 on acpi0
root@OPNsense:~ #
My struggle has been that I can't get any Linux kernel to properly register the serial console. I've tried 50 kernel option in the grub menu, but no joy. Grub menus all work fine, then serial console output stops once it gets passed to the kernel.
Anyone have any clue what I should be doing here? I'm stumped, and I've stumped Google Gemini and Claude. Thanks in advance.
On the Proxmox host, stop the VM and add a virtual serial port:
bash
qm stop <VMID>
qm set <VMID> -serial0 socket
qm start <VMID>
In the FreeBSD VM, configure the serial console:
bash
sudo sysrc console="comconsole,vidconsole"
sudo sysrc boot_multicons="YES"
sudo sysrc boot_serial="YES"
sudo sysrc comconsole_speed="115200"
Not sure you're understanding. I'm unable to get a serial console on this box working with anything other than OPNsense. I need it to work with Linux.
I run all my Linux virtual machines with serial consoles, because VGA over VNC or Spice sucks. Maybe my configuration can help a bit. Assuming the detected uart2 device "just works" as it is supposed to.
/etc/defaults/grub
GRUB_CMDLINE_LINUX="console=ttyS0"
GRUB_TERMINAL=serial
You will have to adjust the device if uart2 is not mapped to ttyS0 but to e.g. ttyS2.
systemd
ln -s /usr/lib/systemd/system/serial-getty@.service /etc/systemd/system/getty.target.wants/serial-getty@ttyS0.service
Again adjust the device name if necessary.
Last do:
systemctl daemon-reload
That should (!) be all.
If your distribution is not using systemd this is from some older notes I kept in our internal wiki:
Create the file /etc/init/ttyS0.conf
# ttyS0 - getty
#
# This service maintains a getty on ttyS0 from the point the system is
# started until it is shut down again.
start on stopped rc RUNLEVEL=[12345]
stop on runlevel [!12345]
respawn
exec /sbin/getty -L 9600 ttyS0 vt102
Again adjusting parameters might be necessary.
HTH,
Patrick
Thanks Patrick, but we've tried ttyS0, ttyS2, mapping to the memory block, earlycon, etc etc. The bots don't know what else to try. I thought there might have been some OPNsense magic to work around the broken FCR, but no joy over here.
The ig4iic0 device is IMHO not related to the serial device. ig4iic0/Designware is an SMBus/I2C controller. There must be a way to force that uart2 to behave. Did you go into the BIOS/firmware setup and check the "legacy serial console" or some such setting?
Quote from: Patrick M. Hausen on September 25, 2026, 08:46:12 PMbecause VGA over VNC or Spice sucks.
I get the VNC part, but SPICE is
AWESOME!!! in my experience : It even works PERFECTLY with my 3 x 1920x1200 setup and the videocard of the Kubuntu VM set to 64 or 128 MB IIRC :)
What kind of issues were you having ?
Quote from: Patrick M. Hausen on September 25, 2026, 08:46:12 PMsystemd
Code Select Expand
ln -s /usr/lib/systemd/system/serial-getty@.service /etc/systemd/system/getty.target.wants/serial-getty@ttyS0.service
Again adjust the device name if necessary.
Last do:
Code Select Expand
systemctl daemon-reload
That should (!) be all.
My last attempt to get a Serial Console working under SystemD based Linux went basically like :
- Attached the USB Serial Console Device : https://www.aten.com/pt/pt/products/usb-solutions/converters/uc232a/
- Do this : https://mattray.github.io/2022/02/27/enabling-usb-serial-console.html
And DONE! :)
Quote from: nero355 on September 25, 2026, 10:01:47 PMWhat kind of issues were you having ?
A serial console supports copy & paste. And it keeps all output. Clearly superior.