Linux 找不到串口

Linux 找不到串口

我的机器上安装了debian6.0。它有 4 个comport,其中 2 个无法找到。通过查看系统 BIOS,我可以看到端口地址是:

PORT      ADDRESS      IRQ
1         3F8          4
2         2F8          3
3         3E8          10
4         2E8          11

debian 可以找到端口 1 和 2,但不能找到端口 3 和 4。据我了解,我可以使用此信息设置端口setserial。我试过:

setserial /dev/ttyS2 port 0x03e8 irq 10 baud_base 115200

但我收到:

/dev/ttyS2: No such file or directory

/dev在命名中创建文件安全吗ttyS2?并尝试再次运行相同的命令?

编辑:

根据乔丹的要求:

# cat /proc/devices
Character devices:
  1 mem
  2 pty
  3 ttyp
  4 /dev/vc/0
  4 tty
  4 ttyS
  5 /dev/tty
  5 /dev/console
  5 /dev/ptmx
  7 vcs
 10 misc
 13 input
 29 fb
128 ptm
136 pts
180 usb
189 usb_device
253 rtc
254 hidraw

Block devices:
259 blkext
  7 loop
  8 sd
 65 sd
 66 sd
 67 sd
 68 sd
 69 sd
 70 sd
 71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd

编辑:

所以我用以下方法制作了设备文件:

mknod -m 666 /dev/ttyS2 c 4 66

比我尝试设置 com 端口:

setserial /dev/ttyS2 port 0x03e8 irq 10 autoconfig

但收到:

/dev/ttyS2: No such device or address

事实上,有两个附加串行端口的硬件。

答案1

在 grub 引导加载程序中,我有8250.nr_uarts = 4引导行的参数。之后,我可以使用设置串行端口setserial

https://www.tldp.org/HOWTO/Serial-HOWTO-15.html#ss15.3

答案2

我刚刚在 ARCHMI PC 上遇到了未定义的 UART 串​​行端口和 Linux 的类似问题。 dmesg | grep 序列号没有显示任何结果。经过多次尝试,我发现这是BIOS的问题。禁用“快速启动”选项后,一切运行顺利,串行端口已正确加载 UART,dmesg 显示结果。以防万一它偶然有帮助。

相关内容