tb_switch_alloc(9)
π¦ tb_switch_alloc(9) β straight from the Kernel API Manual π¦
okay so bestie, welcome to the page for tb_switch_alloc(9) β it's giving kernel API manual, but make it make sense π
π NAME π
tb_switch_alloc β allocate a switch, periodt β¨
πΈ SYNOPSIS πΈ
struct tb_switch * tb_switch_alloc (struct tb *tb , struct device
*parent , u64 route );
π ARGUMENTS π
tbβ pointer to the owning domain, iykyk πΈparentβ parent device for this switch π«Άrouteβ route string for this switch π¦
β¨ DESCRIPTION β¨
Okay so it allocates and initializes a switch. The tea β: it will not upload configuration to the switch. For that you need to call tb_switch_configure separately. And the returned switch should be released by calling tb_switch_put β that's the whole vibe, bestie π
π RETURN π
Pointer to struct tb_switch, or ERR_PTR in case of failure ππ
π₯ SEE ALSO π₯
Kernel file: ./drivers/thunderbolt/switch.c π
Also the whole friend group, no cap: 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_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_find_port(9), tb_switch_pcie_l1_enable(9), tb_switch_xhci_connect(9), tb_switch_xhci_disconnect(9) β¨
sign-off, bestie: source/version ./drivers/thunderbolt, date October 2026, page tb_switch_alloc(9) πβ¨
π¦ 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