Score:3

PCIE USB card not working. What's the missing "... resource 0 [io ...]" line in dmesg meaning?

mm flag

Problem with 4x USB controller PCIE cards seems to be not correctly installed.

Situation: We want to use USB Vision cameras with USB adapter cards, providing as much bandwidth as possible. So we tried two different card types: ASMedia xy and Renesas uPD720202, where market is dominated by ASMedia and it was really hard to get a few of the Renesas cards.

The problem: The ASMedia Card is partly working. Usb devices like external SSD drives are usable (with high transferrates), but when using a camera, it stops after a few frames with some DMA error. The camera uses a BULK mode. Googeling for some hours shows, that ASMedia chip seems to have some firmware bugs or whatever, so we dropped the idea of using that card. The ASMedia did work on no tested PC in combination with the camera). Trying the Card with Renesas chips, it is working perfectly on a ThinkCentre pc but not on the target hardware, a Supermicro Server. Both are using the same OS (Ubuntu 18.04, Kernel 5.4.0-97-generic). The Server has much more RAM, GPUs, etc.

Here's the link to the ThinkCentre where it's working: https://linux-hardware.org/?probe=c945332cad

Here's the link to the Server (not working): https://linux-hardware.org/?probe=f0c1c16098

We tried a lot of stuff in the wild (from random google hits where problems with the renesas card were solved), like autosuspend off, kernel updates, different Ubuntu versions etc.. Nothing helped, so I compared the dmesg of both systems.

The only real difference I could spot a missing line during initialization (?) of the card. Please ignore the fact, that the ThinkCentre is showing 4x the uPD720202 controller but the server only 3x. My colleague says it showed 4x in each other run, but unfortunately I now only have the 3x log.

Here's the difference I could spot: In the ThinkCentre dmesg there is this block:

[ 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]

while on the server I see this block:

[ 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]

You can see that there is an io line for each of the resources, which is missing in the server dmesg.

What is this line for? What are likely reasons for those lines missing? How to debug? Is this even the right hint to solve the problem?

Btw: The cameras are working perfectly on any of the internal/native USB controllers of that server.

Thanks for any help/idea. This is a duplicate post of:

ru flag
Crossposting is **generally** discouraged, since Unix and Linux and us tend to have overlap in users. Pick one site, post it there, delete the other one. Crossposting otherwise tends to lead to 'noise' and there's no benefit to it.
Micka avatar
mm flag
Thank you @ThomasWard can you help me with the decision, whether it is more likely a Ubuntu or a Unix problem? I can't decide that.
David avatar
cn flag
Sounds like the card need Ubuntu drivers.
Micka avatar
mm flag
@David so on the ThinkCentre those drivers are available, but not on the server? How can I see the used driver in the hw-probe or somewhere else?
WinEunuuchs2Unix avatar
in flag
@ThomasWard If it's any consolation, OP gave 100 point bounty on each cross-posted site. Kind of extraordinary...
WinEunuuchs2Unix avatar
in flag
@Micka Did you try to contact manufacturer for support? Did they say anything? Once thing I do before buying hardware is check for Linux compatibility paying special note to the Kernel versions if they are stated.
Score:0
in flag

Looking at your logs it appears you will have to wait a few weeks / months for Intel to provide a driver.

From:

Name Description
ID PCI 8086:a1bb:1043:871e
Class 07-80 »
Type communication controller »
Vendor Intel »
Name C620 Series Chipset Family MEI Controller #2
Subsystem ASUSTek Computer

Kernel Drivers

We have not found a driver for the device in any Linux kernel versions up to 5.16 according to the LKDDb.

Other Drivers

We have not found a driver for the device in known additional packages. Status (10)

The device is a part of the following computers:

Intel PCIe failed drivers

Micka avatar
mm flag
Does this mean this supermicro server isnt compatible to any current Linux/Ubuntu version because of missing chipset drivers?
WinEunuuchs2Unix avatar
in flag
@Micka It's not incompatible. There are some features like Active Management Technology (AMT) built into the hardware that Linux isn't taking advantage of yet. I'm not really up to speed on this technology because I'm running an older Intel Chipset. I found these [drivers for Windows](https://www.intel.com/content/www/us/en/developer/tools/active-management-technology-sdk/overview.html) that Linux Kernel documentation references. However no actual drivers for Linux yet that I've seen.
Micka avatar
mm flag
how is the MEI related to PCI(E)?
WinEunuuchs2Unix avatar
in flag
@Micka You can google it for a better representation than this comment will format but, What kind of features does Intel® Management Engine have? Features include (but are not limited to): Low-power, out-of-band (OOB) management services Capability Licensing Service (CLS) Anti-Theft Protection Protected Audio Video Path (PAVP)
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.