usb4_switch_set_wake(9)
π
usb4_switch_set_wake (section 9 of the Kernel API Manual)
okay so bestie, gather round π«Ά this is a kernel API man page, section 9, and it's about the one little function that decides whether your USB4 router is allowed to wake the whole system up. yes, that's it. that's the whole gig. and honestly? iconic behaviour.
πΈ NAME πΈ
usb4_switch_set_wake β enabled/disable wake β¨
(yes, it really says "Enabled/disable" in the source. we don't fix it. we respect it. periodt.)
π¦ SYNOPSIS π¦
int usb4_switch_set_wake (struct tb_switch *sw , unsigned int flags ,
bool runtime );
π ARGUMENTS π
swβ the USB4 router in question π the actual main character we're flipping wake on.flagsβ the wakeup flags π« and listen:0disables it. zero means off, no cap.runtimeβ abooltelling us the wake is being programmed during system runtime π like, are we doing this live, right now, mid-flight.
π DESCRIPTION π
Enables/disables the router to wake up from sleep π΄β‘οΈπ³ that's literally it, that's the whole function. one job. does it well. we love a focused queen.
β RETURN β
0 on success π, negative errno otherwise π (so like, if it comes back negative, something went sideways, check your errno fr fr).
π₯ SEE ALSO π₯
this is the part where the page just goes absolutely feral and lists the entire friend group π the kernel file lives at ./drivers/thunderbolt/usb4.c, and here's everyone it wants you to meet:
usb4_switch_check_wakes(9),usb4_switch_setup(9),usb4_switch_configuration_valid(9),usb4_switch_read_uid(9)usb4_switch_drom_read(9),usb4_switch_lane_bonding_possible(9),usb4_switch_set_sleep(9),usb4_switch_nvm_sector_size(9)usb4_switch_nvm_read(9),usb4_switch_nvm_set_offset(9),usb4_switch_nvm_write(9),usb4_switch_nvm_authenticate(9)usb4_switch_nvm_authenticate_status(9),usb4_switch_credits_init(9),usb4_switch_query_dp_resource(9),usb4_switch_alloc_dp_resource(9)usb4_switch_dealloc_dp_resource(9),usb4_port_index(9),usb4_switch_map_pcie_down(9),usb4_switch_map_usb3_down(9)usb4_switch_add_ports(9),usb4_switch_remove_ports(9),usb4_port_unlock(9),usb4_port_hotplug_enable(9)usb4_port_reset(9),usb4_port_configure(9),usb4_port_unconfigure(9),usb4_port_configure_xdomain(9)usb4_port_unconfigure_xdomain(9),usb4_port_sb_read(9),usb4_port_sb_write(9),usb4_port_router_offline(9)usb4_port_router_online(9),usb4_port_enumerate_retimers(9),usb4_port_clx_supported(9),usb4_port_asym_supported(9)usb4_port_asym_set_link_width(9),usb4_port_asym_start(9),usb4_port_margining_caps(9),usb4_port_hw_margin(9)usb4_port_sw_margin(9),usb4_port_sw_margin_errors(9),usb4_port_retimer_set_inbound_sbtx(9),usb4_port_retimer_unset_inbound_sbtx(9)usb4_port_retimer_is_last(9),usb4_port_retimer_is_cable(9),usb4_port_retimer_nvm_sector_size(9),usb4_port_retimer_nvm_set_offset(9)usb4_port_retimer_nvm_write(9),usb4_port_retimer_nvm_authenticate(9),usb4_port_retimer_nvm_authenticate_status(9),usb4_port_retimer_nvm_read(9)usb4_usb3_port_max_link_rate(9),usb4_usb3_port_allocated_bandwidth(9),usb4_usb3_port_allocate_bandwidth(9),usb4_usb3_port_release_bandwidth(9)usb4_dp_port_set_cm_id(9),usb4_dp_port_bandwidth_mode_supported(9),usb4_dp_port_bandwidth_mode_enabled(9),usb4_dp_port_set_cm_bandwidth_mode_supported(9)usb4_dp_port_group_id(9),usb4_dp_port_set_group_id(9),usb4_dp_port_nrd(9),usb4_dp_port_set_nrd(9)usb4_dp_port_granularity(9),usb4_dp_port_set_granularity(9),usb4_dp_port_set_estimated_bandwidth(9),usb4_dp_port_allocated_bandwidth(9)usb4_dp_port_allocate_bandwidth(9),usb4_dp_port_requested_bandwidth(9),usb4_pci_port_set_ext_encapsulation(9),usb4_pci_port_ltssm_state(9)
like I said. the whole friend group. every single one of them made the list, no cuts, no skips π
okay that's the page!! this lil drop was brought to you by the source dir ./drivers/thunderbolt, dated October 2026, and the page itself is usb4_switch_set_wake(9) π§ go forth and wake responsibly, bestie πβ¨π
π¦ 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