usb_bus_init(9)
π usb_bus_init(9) β Kernel API Manual
okay so bestie, welcome to the usb_bus_init page β it's a section 9 (kernel API) moment, so grab your iced coffee and let's get into it β¨
πΈ NAME πΈ
usb_bus_init β the shared initialization code, aka the glow-up routine every bus goes through π«Ά
π SYNOPSIS π
void usb_bus_init (struct usb_bus *bus );
like, that's it. that's the whole signature. no cap π
π¦ ARGUMENTS π¦
busβ the bus structure being initialized β¨ this is the one, the main character of this function, the struct that's about to get its whole life together
π DESCRIPTION π
so this code is literally there to initialize a usb_bus structure β and here's the tea π: the memory for that structure is separately managed. meaning this function is not out here allocating anything for you, it's just doing the shared setup part. think of it as the getting-ready-with-your-bestie portion of the process, not the "buying the outfit" part. iykyk π§
π SEE ALSO π
the whole friend group, in order, no one left out π:
- Kernel file
./drivers/usb/core/hcd.c ascii2desc(9)rh_string(9)usb_register_bus(9)usb_deregister_bus(9)register_root_hub(9)usb_calc_bus_time(9)usb_hcd_link_urb_to_ep(9)usb_hcd_check_unlink_urb(9)usb_hcd_unlink_urb_from_ep(9)usb_hcd_giveback_urb(9)usb_hcd_alloc_bandwidth(9)usb_hcd_reset_endpoint(9)usb_alloc_streams(9)usb_free_streams(9)usb_hcd_resume_root_hub(9)usb_bus_start_enum(9)usb_hcd_irq(9)usb_hc_died(9)usb_create_shared_hcd(9)usb_create_hcd(9)usb_stop_hcd(9)usb_add_hcd(9)usb_remove_hcd(9)
and that's the page!! π this one lives in ./drivers/usb/core, dated October 2026, under the Kernel API Manual umbrella β slay, go init some buses, mwah ππ₯
π¦ 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