Skip to content

os image: load the USB4 v2 / Thunderbolt stack (no thunderbolt or typec module was shipped) - #514

Merged
bong-water-water-bong merged 1 commit into
mainfrom
1bit/os-image-usb4
Oct 22, 2026
Merged

bong-water-water-bong merged 1 commit into
mainfrom
1bit/os-image-usb4

Conversation

@bong-water-water-bong

Copy link
Copy Markdown
Collaborator

The image loaded no Thunderbolt or Type-C modules, so the machine's USB4 ports were dead in 1bit OS.

strixhalo has an AMD Strix Halo USB4 Host Router (1022:158d) behind two USB4 PCIe bridges (1022:150a), and the host already runs thunderbolt — but the image's module list (amdgpu amdxdna r8169 mt7925e xhci_pci usb_storage uas sd_mod vfat ext4 …) never included any of it. On this hardware USB4 v2 is Thunderbolt-compatible, so without thunderbolt.ko nothing binds to the router: no tunnels, no dock, and no USB4 lane for a stick on one of those ports.

Added

thunderbolt thunderbolt_net typec ucsi_acpi typec_displayport

  • thunderbolt.ko — the USB4 router driver (USB4 v2 lives in it in 6.8+)
  • typec + typec_ucsi + ucsi_acpi — the Type-C connectors and their alt modes
  • typec_displayport — DisplayPort over USB-C
  • thunderbolt_net — USB4 networking

modprobe --show-depends still resolves the dependency tree, so nothing else needs naming.

Verified

Rebuilt the signed v2026.43 image and inspected the tree for 7.3.0-rc4-1bit-perfopt:

thunderbolt.ko  thunderbolt_net.ko  typec.ko  typec_ucsi.ko  typec_displayport.ko  ucsi_acpi.ko

Unchanged and still correct in the same tree: 30 sealed NPU kernels beside the engine, 5 amdnpu/17f0_11 firmware files, and the UKI still verifies against the enrolled MOK (sbverify → Signature verification OK, checked as a file and as EFI/BOOT/BOOTX64.EFI inside 1bit-os-v2026.43.img.zst).

The refreshed set in ~/wt/npupkg-wrun/out verifies clean (sha256sum -c SHA256SUMS: all four OK).

Not verified: actual USB4 enumeration and tunnelling on hardware — that needs the boot, which is still waiting on a USB stick.

The image loaded no Thunderbolt or Type-C modules at all, so the machine's USB4
ports were dead in 1bit OS: strixhalo has an AMD Strix Halo USB4 Host Router
(1022:158d) behind two USB4 PCIe bridges, and nothing in the image bound to it.

Added to the module list: thunderbolt, thunderbolt_net, typec, ucsi_acpi and
typec_displayport. thunderbolt.ko is the USB4 router driver (USB4 v2 is its
domain in 6.8+), typec + typec_ucsi + ucsi_acpi bring up the Type-C connectors
and their alt modes, and typec_displayport covers DisplayPort over USB-C.
modprobe --show-depends still resolves the tree, so no other module is pulled by
name.

Verified by rebuilding the signed v2026.43 image: the tree now holds
thunderbolt.ko, thunderbolt_net.ko, typec.ko, typec_ucsi.ko,
typec_displayport.ko and ucsi_acpi.ko for 7.3.0-rc4-1bit-perfopt, alongside the
unchanged 30 sealed NPU kernels and the five amdnpu/17f0_11 firmware files, and
the UKI still verifies against the enrolled MOK.
@github-actions

Copy link
Copy Markdown

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Missing USB4 v2 Support

The PR adds USB4 v2 / Thunderbolt support by including thunderbolt, thunderbolt_net, typec, ucsi_acpi, and typec_displayport kernel modules. However, the PR description and commit message do not provide measured performance or correctness data to confirm that these modules function correctly on the target hardware (Strix Halo with AMD Strix Halo USB4 Host Router). Without verification on the actual hardware, there is a risk that the added modules may not properly bind to the hardware or may introduce instability or incorrect behavior in the USB4 port functionality.

# USB4 v2 / Thunderbolt on Strix Halo: the USB4 host router (1022:158d) is driven by thunderbolt.ko and
# its Type-C side by typec + ucsi_acpi (alt modes, display); without them the USB4 ports and any dock
# behind them do nothing, and with them a stick on a USB4 port tunnels like any other.
mods="amdgpu amdxdna r8169 mt7925e xhci_pci usb_storage uas sd_mod vfat ext4 nls_iso8859_1 nls_cp437 virtio_net virtio_blk thunderbolt thunderbolt_net typec ucsi_acpi typec_displayport"

@bong-water-water-bong
bong-water-water-bong enabled auto-merge (squash) October 22, 2026 14:58
@bong-water-water-bong
bong-water-water-bong merged commit cc65151 into main Oct 22, 2026
8 checks passed
@bong-water-water-bong
bong-water-water-bong deleted the 1bit/os-image-usb4 branch October 22, 2026 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant