PCIE USB 卡无法工作。dmesg 中缺少“... resource 0 [io ...]”行是什么意思?

PCIE USB 卡无法工作。dmesg 中缺少“... resource 0 [io ...]”行是什么意思?

问题在于 4x USB 控制器 PCIE 卡似乎未正确安装。

情况:我们希望使用 USB Vision 相机和 USB 适配器卡,以提供尽可能多的带宽。因此,我们尝试了两种不同的卡类型:ASMedia xy 和 Renesas uPD720202,其中 ASMedia 占据市场主导地位,很难获得几张 Renesas 卡。

问题:ASMedia 卡部分工作正常。USB 设备(如外部 SSD 驱动器)可用(传输速率高),但使用相机时,它会在几帧后停止并出现一些 DMA 错误。相机使用 BULK 模式。在 Google 上搜索了几个小时后,我们发现 ASMedia 芯片似乎有一些固件错误或其他问题,所以我们放弃了使用该卡的想法。ASMedia 确实在与相机结合使用的任何测试 PC 上工作正常)。尝试将卡与瑞萨芯片一起使用,它在 ThinkCentre PC 上运行良好,但在目标硬件 Supermicro Server 上却无法运行。两者都使用相同的操作系统(Ubuntu 18.04,内核 5.4.0-97-generic)。服务器拥有更多的 RAM、GPU 等。

这是其运行所在的 ThinkCentre 的链接:https://linux-hardware.org/?probe=c945332cad

这是服务器的链接(不起作用):https://linux-hardware.org/?probe=f0c1c16098

我们尝试了很多方法(从随机的谷歌搜索中,瑞萨卡的问题已经解决),比如关闭自动挂起、内核更新、不同的 Ubuntu 版本等等。都没有什么帮助,所以我比较了两个系统的 dmesg。

唯一真正的区别是,我在初始化卡时发现了一行缺失。请忽略这个事实,ThinkCentre 显示 uPD720202 控制器为 4 倍,但服务器只显示 3 倍。我的同事说每次运行都显示 4 倍,但不幸的是我现在只有 3 倍日志。

这是我能发现的区别:在 ThinkCentre dmesg 中有这个块:

[ 0.268577] pci_bus 0000:03: resource 0 [io 0x2000-0x2fff]
[ 0.268578] pci_bus 0000:03: resource 1 [mem 0xdf300000-0xdf3fffff]
[ 0.268578] pci_bus 0000:03: resource 2 [mem 0xd0000000-0xd01fffff 64bit pref]
[ 0.268579] pci_bus 0000:04: resource 0 [io 0x3000-0x3fff]
[ 0.268580] pci_bus 0000:04: resource 1 [mem 0xdf200000-0xdf2fffff]
[ 0.268580] pci_bus 0000:04: resource 2 [mem 0xd0200000-0xd03fffff 64bit pref]
[ 0.268581] pci_bus 0000:05: resource 0 [io 0x4000-0x4fff]
[ 0.268582] pci_bus 0000:05: resource 1 [mem 0xdf100000-0xdf1fffff]
[ 0.268582] pci_bus 0000:05: resource 2 [mem 0xd0400000-0xd05fffff 64bit pref]
[ 0.268583] pci_bus 0000:06: resource 0 [io 0x5000-0x5fff]
[ 0.268584] pci_bus 0000:06: resource 1 [mem 0xdf000000-0xdf0fffff]
[ 0.268584] pci_bus 0000:06: resource 2 [mem 0xd0600000-0xd07fffff 64bit pref]

在服务器上我看到这个块:

[ 10.247535] pci_bus 0000:83: resource 1 [mem 0xd3600000-0xd36fffff]
[ 10.247538] pci_bus 0000:83: resource 2 [mem 0x390000000000-0x3900001fffff 64bit pref]
[ 10.247540] pci_bus 0000:84: resource 1 [mem 0xd3500000-0xd35fffff]
[ 10.247542] pci_bus 0000:84: resource 2 [mem 0x390000200000-0x3900003fffff 64bit pref]
[ 10.247545] pci_bus 0000:85: resource 1 [mem 0xd3400000-0xd34fffff]
[ 10.247547] pci_bus 0000:85: resource 2 [mem 0x390000400000-0x3900005fffff 64bit pref]
[ 10.247550] pci_bus 0000:86: resource 1 [mem 0xd3300000-0xd33fffff]
[ 10.247552] pci_bus 0000:86: resource 2 [mem 0x390000600000-0x3900007fffff 64bit pref]

您可以看到每个资源都有一条 io 行,而服务器 dmesg 中缺少该行。

这行代码是干什么用的?这行代码缺失的可能原因是什么?如何调试?这是否是解决问题的正确提示?

顺便说一句:摄像头在该服务器的任何内部/本机 USB 控制器上均可完美运行。

感谢您的帮助/想法。这是以下帖子的重复:

答案1

查看您的日志,似乎您必须等待几周/几个月才能让英特尔提供驱动程序。

从:

姓名 描述
ID PCI 8086:a1bb:1043:871e
班级 07-80 »
类型 通信控制器 »
小贩 英特尔 »
姓名 C620 系列芯片组系列 MEI 控制器 #2
子系统 华硕电脑

内核驱动程序

我们尚未在任何 Linux 内核版本中找到适用于该设备的驱动程序5.16根据 LKDDb。

其他驱动因素

我们未在已知的附加软件包中找到该设备的驱动程序。状态 (10)

该设备是以下计算机的一部分:

Intel PCIe 驱动程序失败

相关内容