My motherboard provides 4x USB 3.2 Gen1 ports for rear I/O and another 2x USB 3.2 Gen1 ports for front I/O (through the header), but my chipset only supports 2x USB 3.2 Gen1 ports. Where is the support for the other ports coming from?

Motherboard Wikipedia
Motherboard rear I/O: 2x USB 2.0 ports, 4x USB 3.2 Gen1 ports, 2x USB 3.2 Gen2 portsMotherboard headers: 4x USB 2.0 ports, 2x USB 3.2 Gen1 ports Wikipedia B450 chipset: 6x USB 2.0 ports, 2x USB 3.2 Gen1 ports, 2x USB 3.2 Gen2 ports

The motherboard is an ASRock B450M Steel Legend

  • SteveTech@programming.dev
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    1 year ago

    Nah SATA is built into the chipset. That second x16 is actually only electrically x4 in an x16 form factor, and there’s that x1 slot, adding up to 5 lanes in total. The first x16 and first nvme slot (x4) are connected to the CPU directly (which IIRC most have 20 lanes on AM4, but not always).

    • glibg10bOP
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      1 year ago

      Oh, that makes sense, thanks

      My CPU (1600 AF) only has 16 lanes, but I have a graphics card and an NVMe SSD and both seem to be getting all the lanes. I wonder what’s going on here

      07:00.0 VGA compatible controller: NVIDIA Corporation TU116 [GeForce GTX 1650 SUPER] (rev a1) (prog-if 00 [VGA controller])
             Subsystem: Micro-Star International Co., Ltd. [MSI] TU116 [GeForce GTX 1650 SUPER]
                     [...]
                     LnkCap: Port #0, Speed 8GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <1us, L1 <4us
                             ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
                     LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
                             ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
                     LnkSta: Speed 8GT/s (ok), Width x16 (ok)
                             TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
      
      01:00.0 Non-Volatile memory controller: Silicon Motion, Inc. SM2262/SM2262EN SSD Controller (rev 03) (prog-if 02 [NVM Express])
             Subsystem: Silicon Motion, Inc. SM2262/SM2262EN SSD Controller
                     [...]
                     LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L1 <8us
                             ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
                     LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
                             ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                     LnkSta: Speed 8GT/s (ok), Width x4 (ok)
      

      Full output

      Edit:

      $ sudo dmidecode --type 9 | grep -E 'Usage|Type|Designation'
      	Designation: PCIE1
      	Type: x1 PCI Express
      	Current Usage: In Use
      	Designation: PCIE2
      	Type: x16 PCI Express
      	Current Usage: In Use
      	Designation: PCIE3
      	Type: x1 PCI Express
      	Current Usage: In Use
      	Designation: PCIE4_M2_1
      	Type: x4 PCI Express
      	Current Usage: In Use
      
      • SteveTech@programming.dev
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        Huh that’s interesting, I believe that GPU should’ve been running at x8 with that CPU, but if it works then whatever I suppose.

        I believe there are PCIe bandwidth benchmarks, if you really want to confirm, but I wouldn’t worry.

        Also it isn’t uncommon for the device to just report the wrong speed, for example my Intel Arc reports running at x1, but benchmarks show otherwise.