Re: nhi0: Cannot find Upstream Facing Port

"Enji Cooper (yaneurabeya)" <[email protected]> Mon, 15 Jun 2026 20:40:19 -0700
Newsgroups gmane.os.freebsd.current
Message-ID <[email protected]>
> On Jun 14, 2026, at 11:19 PM, Chris Torek <[email protected]> wrote:
> 
> Noticed that there's some new thunderbolt code. I get this during boot:
> 
> pci3: <PCI bus> on pcib3
> nhi0: <Generic USB4 NHI> at device 0.0 on pci3
> nhi0: Cannot find Upstream Facing Port
> nhi0: tb_router_attach_root()  error.  The driver should be loaded at boot
> 
> If it helps any, here's some "pciconf -lv" output snippets:
> 
> pcib2@pci0:1:0:0:       class=0x060400 rev=0x02 hdr=0x01 vendor=0x8086 device=0x
> 1136 subvendor=0x8086 subdevice=0x0000
>    vendor     = 'Intel Corporation'
>    device     = 'Thunderbolt 4 Bridge [Maple Ridge 4C 2020]'
>    class      = bridge
>    subclass   = PCI-PCI
> pcib3@pci0:2:0:0:       class=0x060400 rev=0x02 hdr=0x01 vendor=0x8086 device=0x
> 1136 subvendor=0x8086 subdevice=0x0000
>    vendor     = 'Intel Corporation'
>    device     = 'Thunderbolt 4 Bridge [Maple Ridge 4C 2020]'
>    class      = bridge
>    subclass   = PCI-PCI
> pcib4@pci0:2:1:0:       class=0x060400 rev=0x02 hdr=0x01 vendor=0x8086 device=0x
> 1136 subvendor=0x8086 subdevice=0x0000
>    vendor     = 'Intel Corporation'
>    device     = 'Thunderbolt 4 Bridge [Maple Ridge 4C 2020]'
>    class      = bridge
>    subclass   = PCI-PCI
> 
> Can include more if needed. System works fine without whatever it's
> trying to do (of course, since it wasn't even detected before :-) )

Hi Chris,
	I lit up the code in GENERIC in 886164895f — so that’s my fault  :) (any info about the thunderbolt devices would be appreciated!). obiwac@ asked that I back it out, so I’ll take care of that now since it’s on my mind.
Thanks!
-Enji

PS The thunderbolt(4) device implementation is incomplete: it was based on work done by hselasky@ before he passed away back in 2023. I have a TODO item to look at trying and get it working (enough) to have functional Thunderbolt/USB4 stack for storage purposes, but it’s way down my TODO list. tl;dr: I’m trying to get a partially functional Mac x86 port before Apple nukes Intel support from macOS.
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEkHfexGRJ3gYRdA2gGpE5DjPsNJgFAmowxaMACgkQGpE5DjPs
NJiD6xAAn5oEzIiUxwAcWv0uGPD0UlSqTA8p9ZSto62lDUI+2qYG2cGbjuZDH1hU
T1N/iU6FQBJjG04cAj1rsU4AFsV8AaUB5i4WePdutq25dVDMPSWbPyUeQe2Eo9o+
0/+wS7jCCKjA3rqmGsxoRvzoxHQ4o0CofGSVTFdqesLLrJ++Z2M9B2EaAUQa6Pcf
7PPC9mrNELDAi7N+JzR6WpQax7b4ajC1Dq3poyO5MrqyWkyB9J33lsIYzJVNygEf
Ub9APjuN1+SZkGaNAmefk2ZLTz1Dglc2Wht5go3jka/XtV71qkigs6srTqVgq5jm
dmaNpItCopz3IycXvQ/7zo946KHDbOAqxU1V83s0NRoG79QZSRTz7Q1hhRlmgzKM
VZxE7TSw+ipTRpIiHBlVhzYz4Y942g8iEwcYlsxQZgOmjfoGKbSnBZlREhe+ipuK
vtvqTIW9rZfsoZBynxiL2/LgB/FBaDxQpLxFvLkf1I2KllZgak5eoPGaQRVDeont
HK0GWPm74LGglo33ZKEDnKbh/OIwmKzZ0f2o0aOC/SplcdwUg5GLXNOu7fp6HmYk
Tr2Qn8DzltbVkRvg4+zFeQ43MNqXv1FQpFEVpQWmy/LmmHctumM2PDQywOSm3qp0
IWYe6H+4aeYgB59TX0WAHqvQnHPpK5stoO0SQJR3KUgkb1RKyRk=
=OMd5
-----END PGP SIGNATURE-----