usb_check_int_endpoints(9)
π usb_check_int_endpoints(9) β the kernel API manual, but make it make sense
okay bestie, so this is a page from the Kernel API Manual, and the star of the show is usb_check_int_endpoints β a whole function whose entire personality is "does this interface's current altsetting actually have the interrupt endpoints you're looking for, with these exact addresses?" iconic honestly β¨
β¨ NAME β¨
usb_check_int_endpoints β checks whether an interface's current altsetting contains a set of interrupt endpoints with the given addresses. that's it, that's the whole job π
π¦ SYNOPSIS π¦
bool usb_check_int_endpoints (const struct usb_interface *intf , const
u8 *ep_addrs );
yes it returns a bool, yes it takes const pointers, yes we respect the const in this house π
πΈ ARGUMENTS πΈ
intfβ the interface whose current altsetting should be searched. like, this one, the current one, not some other altsetting lurking in the back πep_addrsβ a0-terminated array of the endpoint addresses (number and direction) to look for. so it's number + direction per endpoint, and the whole thing is capped off with a0to say "that's everyone, stop looking" π«Ά
π₯ DESCRIPTION π₯
Search for endpoints with the specified addresses and check their types.
that's literally the whole thing, no cap. you hand it a list of addresses, it goes looking, and it also vibe-checks the type of what it finds. so it's not just "are you there" β it's "are you there AND are you the right kind of endpoint." main character energy fr fr π
π RETURN π
true if all the endpoints are found and are interrupt, false otherwise.
and yes β all of them. one missing or one wrong type and it's false, sorry babe π
π§ SEE ALSO π§
bestie the friend group is huge, buckle up:
Kernel file ./drivers/usb/core/usb.c plus usb_find_common_endpoints(9), usb_find_common_endpoints_reverse(9), usb_find_endpoint(9), usb_check_bulk_endpoints(9), usb_find_alt_setting(9), usb_ifnum_to_if(9), usb_altnum_to_altsetting(9), usb_find_interface(9), usb_for_each_dev(9), usb_release_dev(9), usb_alloc_dev(9), usb_get_dev(9), usb_put_dev(9), usb_get_intf(9), usb_put_intf(9), usb_intf_get_dma_device(9), usb_lock_device_for_reset(9), usb_get_current_frame_number(9), usb_alloc_coherent(9), usb_free_coherent(9), usb_alloc_noncoherent(9), usb_free_noncoherent(9), usb_endpoint_max_periodic_payload(9), usb_endpoint_is_hs_isoc_double(9)
like I said. a whole squad π
reminder bestie: keep every one of those names exactly as written β the kernel does not accept vibes in place of correct identifiers π
anyway that's the page!! brought to you by ./drivers/usb/core, dated October 2026, and living under the very official title usb_check_int_endpoints(9). mwah, go check those interrupt endpoints, love u π«Άπ
π¦ 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