Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Passthrough Serial PCIe to VM

Featured Replies

I would like to passthrough serial port to my CentOS VM, but have no clue how to do that. I would appreciate any help.

Please find below relevant information from my Unraid:

Unraid version: 6.6.5

lspci -v

09:00.0 Serial controller: Device 1c00:3253 (rev 10) (prog-if 05 [16850])
	Subsystem: Device 1c00:3253
	Flags: fast devsel, IRQ 16, NUMA node 0
	I/O ports at 2000 [size=256]
	Memory at 92b00000 (32-bit, prefetchable) [size=32K]
	I/O ports at 2100 [size=4]
	[virtual] Expansion ROM at 92e00000 [disabled] [size=32K]
	Capabilities: [60] Power Management version 3
	Capabilities: [68] MSI: Enable- Count=1/32 Maskable+ 64bit+
	Capabilities: [80] Express Legacy Endpoint, MSI 00
	Capabilities: [100] Advanced Error Reporting
	Kernel driver in use: serial

setserial -g /dev/ttyS[0123]

/dev/ttyS0, UART: 16550A, Port: 0x02f8, IRQ: 3

Thank you.

  • Author
3 hours ago, Squid said:

You'd have to stub it in the syslinux.cfg file

@Squid Thanks for the hint.

 

Is below text in the append line sufficient/correct?

vfio-pci.ids=1c00:3253

  • Author
15 hours ago, Squid said:

I usually use pci-stub.ids=xxxx.xxxx

Interesting results. I put pci-stub.ids=1c00:3253 in the append line and rebooted. Stopped CentOS VM and wanted to add serial port in the edit window. It says at the bottom: 

Other PCI Devices: None available

Started VM and SSHed into it and received below results:

[root@centos ~]# setserial -g /dev/ttyS[0123]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
[root@centos ~]# dmesg | grep tty
[    0.000000] console [tty0] enabled
[    1.359365] 00:03: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

So far so good. But, just for a learning experience, I removed pci-stub.ids=1c00:3253 in the append line and rebooted again. Then, I SSHed into CentOS again and received exactly the same results as above.

 

It looks like Unraid host and CentOS VM can both reach the serial interface irrespective of passthrough. How come is it possible? I am stumped.

 

Could you please shed some light here?

 

Thank you.

  • Author

I think that ttyS0 is nothing to do with the ports on PCIe card. PCIe card has 2 serial ports. It should not come up as 1 port, I believe. So, my card is recognized by Unraid as pci device but drivers not loaded. Is it possible?

 

If so, what should I do to properly load drivers for PCIe serial ports?

I know that on my Windows VM, a virtual serial port is automatically created by KVM

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.