tb_switch_find_port(9)
π tb_switch_find_port β the Kernel API Manual tea β
okay so bestie, welcome to tb_switch_find_port(9), straight out of the Kernel API Manual β¨ this one's a lil function-hunting page and it's honestly so chill. No cap.
πΈ NAME πΈ
tb_switch_find_port β literally returns the first port of @type on @sw, or NULL if there isn't one π«Ά
π SYNOPSIS π
struct tb_port * tb_switch_find_port (struct tb_switch *sw , enum
tb_port_type type );
likeβ¦ that's the whole vibe. one function, two args, zero drama π
β¨ ARGUMENTS β¨
swβ the switch you're digging through to find the port π this is your starting point, your main character switchtypeβ the port type you're looking for π you tell it what kind of port you want and it goes looking
π RETURN π
A pointer to struct tb_port π« β¦or NULL if it's not found π that's it, that's the whole return. no hidden surprises, no secret second return value, we love a straightforward icon π
π¦ SEE ALSO π¦
okay so this is the part where the manpage just. goes off. it's giving "linked list of every thunderbolt function ever" and honestly? iconic π all of these live in the kernel file ./drivers/thunderbolt/switch.c:
tb_switch_nvm_read(9)tb_port_state(9)tb_wait_for_port(9)tb_port_add_nfc_credits(9)tb_port_clear_counter(9)tb_port_unlock(9)tb_port_enable(9)tb_port_disable(9)tb_port_reset(9)tb_port_alloc_in_hopid(9)tb_port_alloc_out_hopid(9)tb_port_release_in_hopid(9)tb_port_release_out_hopid(9)tb_next_port_on_path(9)tb_port_get_link_speed(9)tb_port_get_link_generation(9)tb_port_get_link_width(9)tb_port_width_supported(9)tb_port_set_link_width(9)tb_port_set_lane_bonding(9)tb_port_lane_bonding_enable(9)tb_port_lane_bonding_disable(9)tb_port_wait_for_link_width(9)tb_port_update_credits(9)tb_port_is_enabled(9)tb_usb3_port_is_enabled(9)tb_usb3_port_enable(9)tb_pci_port_is_enabled(9)tb_pci_port_enable(9)tb_dp_port_hpd_is_active(9)tb_dp_port_hpd_clear(9)tb_dp_port_set_hops(9)tb_dp_port_is_enabled(9)tb_dp_port_enable(9)tb_switch_reset(9)tb_switch_wait_for_bit(9)tb_switch_alloc(9)tb_switch_alloc_safe_mode(9)tb_switch_configure(9)tb_switch_configuration_valid(9)tb_switch_lane_bonding_enable(9)tb_switch_lane_bonding_disable(9)tb_switch_set_link_width(9)tb_switch_configure_link(9)tb_switch_unconfigure_link(9)tb_switch_add(9)tb_switch_remove(9)tb_sw_set_unplugged(9)tb_switch_resume(9)tb_switch_suspend(9)tb_switch_query_dp_resource(9)tb_switch_alloc_dp_resource(9)tb_switch_dealloc_dp_resource(9)tb_switch_find_by_link_depth(9)tb_switch_find_by_uuid(9)tb_switch_find_by_route(9)tb_switch_pcie_l1_enable(9)tb_switch_xhci_connect(9)tb_switch_xhci_disconnect(9)
fr fr that's the whole crew π§ go read them if you're obsessed with thunderbolt the way I am π
π quick vibe check: no bugs, no warnings, no exit statuses on this page. it's just a finder function doing finder function things. periodt.
so yeah bestie, that's tb_switch_find_port(9) β she's from ./drivers/thunderbolt, dated October 2026, and she ate π
β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms