register_root_hub(9)
β¨ register_root_hub(9) β¨
okay so bestie, welcome to the Kernel API Manual page for register_root_hub(9) π
this one is all about the root hub registration moment, and it's giving βUSB subsystem official paperworkβ in the best way π¦
π NAME π
register_root_hub β called by usb_add_hcd() to register a root hub π
π«Ά SYNOPSIS π«Ά
int register_root_hub (struct usb_hcd *hcd );
πΈ ARGUMENTS πΈ
hcdβ host controller for this root hub. that's the main-character struct this whole function is working with π¦
π« DESCRIPTION π«
so this function registers the root hub with the USB subsystem. literally its whole job π
it sets up the device properly in the device tree, and then calls usb_new_device to register the usb device. it also assigns the root hub's USB address, and that address is always 1 π like no cap, always one.
π₯ RETURN π₯
0if successful β¨- a negative error code otherwise π so nonzero means it did not go off, check the error
π SEE ALSO π
first up, the kernel file: ./drivers/usb/core/hcd.c π
and these other pages are in the group chat too, iykyk:
ascii2desc(9)rh_string(9)usb_bus_init(9)usb_register_bus(9)usb_deregister_bus(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)
okay that's the page bestie π«Ά it comes from source/version ./drivers/usb/core, dated October 2026, and the footer title is register_root_hub(9) β periodt π
β¨
π¦ 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