gadget_is_dualspeed(9)
π gadget_is_dualspeed(9) β a page from the Kernel API Manual β¨
okay so bestie, this one is genuinely tiny but it slaps π it's a function from the Kernel API Manual that answers one very specific yes-or-no question for you, and honestly? iconic behaviour.
πΈ NAME πΈ
gadget_is_dualspeed β returns true iff the hardware handles high speed π«
like, "iff" is math-girl speak for "if and only if", so it's not maybe true, it's true exactly when the hardware can do the high-speed thing. no cap.
β¨ SYNOPSIS β¨
int gadget_is_dualspeed (struct usb_gadget *g );
that's it. that's the whole vibe check π¦
π«Ά ARGUMENTS π«Ά
gβ the controller that might support both high and full speeds π literally the little guy you're asking about. "might" is doing a lot of work here, so bestie, that's why we call the function instead of just assuming π
π₯ SEE ALSO π₯
the whole friend group, fr fr β all of these live in the kernel file ./include/linux/usb/gadget.h π and honestly the way this list goes onβ¦ main character energy:
struct usb_request(9)struct usb_ep_caps(9)struct usb_ep(9)free_usb_request(9)struct usb_gadget(9)usb_ep_align(9)usb_ep_align_maybe(9)gadget_is_altset_supported(9)gadget_is_stall_supported(9)gadget_is_zlp_supported(9)gadget_avoids_skb_reserve(9)gadget_is_superspeed(9)gadget_is_superspeed_plus(9)gadget_is_otg(9)struct usb_gadget_driver(9)usb_gadget_register_driver_owner(9)usb_gadget_unregister_driver(9)struct usb_string(9)struct usb_gadget_strings(9)usb_free_descriptors(9)
like I said. the entire group chat. go read them, iykyk π
π sign-off π
this cutie lives under ./include/linux/usb, dated October 2026, and it's filed as gadget_is_dualspeed(9) in case you need to find it again β slay, go check your gadget's speed, and drink some water ππ¦πΈ
π¦ 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