我们最近从 Vecow/Plugin 升级到新的工业 PC,从 18.04 升级到 Ubuntu 20.04。从 BIOS(构建日期 BIOS ~17.02.2022)和根据它的 IO 芯片是 SuperIO 8786: https ://github.com/huchanghui123/ITE-SuperIO/blob/master/IT8786E-I_B_V0.2.pdf
此端口似乎被映射为通用(ACPI/BIOS)作为兼容 16550A 的 COM 端口 PNP0501。
我们有一个 PPS 设备连接到我们可用的一个(但尝试了所有)串行/COM/RS232 端口(DCD 引脚,我们还连接了 GND)。我们附加到它ldattach pps /dev/ttyS0
并希望再次与 chrony 集成。
ldttach
作品,也ppstest
。发生的情况是,在很短的时间(30-100 秒)之后,这似乎是相当随机的,它经常无法获取时间戳并且超时并且永远不会恢复。但是在卸载并重新连接 ldisc 之后,它会再次工作(一段时间)。
除了我们的 PPS 设备,我们还尝试了 1 Hz 的函数发生器(脉冲或占空比 50%、1ms、10ms、100 和 200 ms)。我们的设备在以前的 PC 上工作的电压电平是 0 - ~3.7V。我们将函数发生器设置为在 RS-232 范围内以 +/-3.7、5、6.6 和 10V(我们的发生器的上限)运行。问题是一样的。
顺便说一句,我们在 HWE 通用内核上(所以 5.13)。在旧 PC 上它可以工作(甚至通过 Ubuntu 20.04 直播)。我们还尝试了 Ubuntu 22.04 实时映像(内核 5.15)和 Fedora 35,但也失败了。同样在我们的第二台相同的 PC 上。
任何人都经历过类似的事情或知道如何进一步调试它?特别是要排除驱动程序错误(或任何其他硬件错误)。
谢谢!
在我们的案例中,BIOS 中存在问题。我们供应商的更新修复了它。