PCIE USB 카드가 작동하지 않습니다. dmesg에서 누락된 "...resource 0 [io...]" 줄은 무엇을 의미합니까?

PCIE USB 카드가 작동하지 않습니다. dmesg에서 누락된 "...resource 0 [io...]" 줄은 무엇을 의미합니까?

4x USB 컨트롤러 PCIE 카드에 문제가 있는데 올바르게 설치되지 않은 것 같습니다.

상황: 우리는 가능한 한 많은 대역폭을 제공하기 위해 USB 어댑터 카드와 함께 USB Vision 카메라를 사용하고 싶습니다. 그래서 우리는 ASMedia xy와 Renesas uPD720202라는 두 가지 다른 카드 유형을 시도했습니다. 이 중 ASMedia가 시장을 장악하고 있어 Renesas 카드 몇 개를 구하기가 어렵습니다.

문제: ASMedia 카드가 부분적으로 작동합니다. 외부 SSD 드라이브와 같은 USB 장치는 작동하지만(높은 전송 속도) 카메라를 사용할 때 일부 DMA 오류와 함께 몇 프레임 후에 중지됩니다. 카메라는 BULK 모드를 사용합니다. 몇 시간 동안 구글링을 해보니 ASMedia 칩에 펌웨어 버그나 다른 문제가 있는 것 같아 카드 사용을 포기했습니다. ASMedia는 테스트되지 않은 PC의 카메라와 작동합니다. Renesas 칩을 사용하여 카드를 시험해 보니 ThinkCentre PC에서는 완벽하게 작동했지만 대상 하드웨어(Supermicro 서버)에서는 작동하지 않았습니다. 둘 다 동일한 운영 체제(Ubuntu 18.04, 커널 5.4.0-97-generic)를 사용합니다. 서버에는 더 많은 RAM, GPU 등이 있습니다.

다음은 ThinkCentre가 작동하는 링크입니다:https://linux-hardware.org/?probe=c945332cad

다음은 서버에 대한 링크입니다(작동하지 않음).https://linux-hardware.org/?probe=f0c1c16098

우리는 자동 중단 종료, 커널 업데이트, 다른 Ubuntu 버전 등과 같은 다양한 작업(무작위 Google 히트, Resas 카드 문제 수정 등)을 실제로 시도했습니다. 아무것도 도움이 되지 않았기 때문에 두 시스템의 dmesg를 비교했습니다.

진짜 차이점은 카드 초기화(?) 과정에서 누락된 줄을 발견했다는 점 뿐입니다. ThinkCentre에서는 uPD720202 컨트롤러를 4x로 표시하지만 서버에서는 3x만 표시한다는 사실을 무시하십시오. 내 동료는 모든 실행이 4x로 표시된다고 말했지만 안타깝게도 지금은 로그가 3x만 있습니다.

제가 발견한 차이점은 다음과 같습니다. 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]

각 리소스에는 dmesg 서버에서 누락된 io 라인이 있는 것을 볼 수 있습니다.

이 줄은 무엇에 사용되나요? 이러한 행이 누락된 이유는 무엇입니까? 디버깅하는 방법? 이것이 문제를 해결하는 올바른 팁입니까?

참고: 이 카메라는 이 서버의 모든 내부/기본 USB 컨트롤러와 완벽하게 작동합니다.

도움/아이디어를 제공해 주셔서 감사합니다.

편집하다:

USB 어댑터 카드는 DELOCK 89008입니다.

https://www.reichelt.de/de/de/pcie-x4-4-x-extern-usb-3-0-typ-a-delock-89008-p288774.html?r=1

Renesas Technologies 4x uPD720202 USB 3.0 호스트 컨트롤러

내가 올바르게 이해했다면 드라이버는 커널의 xhci_hcd입니다.

Device: 83:00.0
Class:  USB controller [0c03]
Vendor: Renesas Technology Corp. [1912]
Device: uPD720202 USB 3.0 Host Controller [0015]
PhySlot:    0-1
Rev:    02
ProgIf: 30
Driver: xhci_hcd
NUMANode:   1

드라이버 정보(hw-probe와 이번 사이에 시스템이 여러 번 재설치되었습니다.):

lspci -nk

60:00.0 0c03: 1912:0015 (rev 02)
Kernel driver in use: xhci_hcd
61:00.0 0c03: 1912:0015 (rev 02)
Kernel driver in use: xhci_hcd
62:00.0 0c03: 1912:0015 (rev 02)
Kernel driver in use: xhci_hcd
63:00.0 0c03: 1912:0015 (rev 02)
Kernel driver in use: xhci_hcd
lspci -v (only one port)


60:00.0 USB controller: Renesas Technology Corp. uPD720202 USB 3.0 Host Controller (rev 02) (prog-if 30 [XHCI])
    Physical Slot: 0-1
    Flags: bus master, fast devsel, latency 0, IRQ 25, NUMA node 0
    Memory at c5e00000 (64-bit, non-prefetchable) [size=8K]
    Capabilities: [50] Power Management version 3
    Capabilities: [70] MSI: Enable- Count=1/8 Maskable- 64bit+
    Capabilities: [90] MSI-X: Enable+ Count=8 Masked-
    Capabilities: [a0] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [150] Latency Tolerance Reporting
    Kernel driver in use: xhci_hcd

서버(작동하지 않음)와 ThinkCentre(작동 함 ) 사이에는 NUMA node 0(서버에서만) 차이점이 없습니다.

03:00.0 USB controller: Renesas Technology Corp. uPD720202 USB 3.0 Host Controller (rev 02) (prog-if 30 [XHCI])
    Physical Slot: 0
    Flags: bus master, fast devsel, latency 0, IRQ 17
    Memory at df300000 (64-bit, non-prefetchable) [size=8K]
    Capabilities: [50] Power Management version 3
    Capabilities: [70] MSI: Enable- Count=1/8 Maskable- 64bit+
    Capabilities: [90] MSI-X: Enable+ Count=8 Masked-
    Capabilities: [a0] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [150] Latency Tolerance Reporting
    Kernel driver in use: xhci_hcd

관련 정보