hw_ep_set_halt(9)
π hw_ep_set_halt(9) β a Kernel API Manual moment π
okay bestie, so this is a page from the Kernel API Manual (like, the 9 section, kernel devs only, iykyk) and honestly it's giving "short but vital" energy. Let's get into it β¨
πΈ NAME πΈ
hw_ep_set_halt β configures ep halt & resets data toggle after clear (execute without interruption)
no fr, that parenthetical is doing heavy lifting: you gotta run this one without interruption, periodt. don't be out here getting preempted mid-toggle π
π¦ SYNOPSIS π¦
int hw_ep_set_halt (struct ci_hdrc *ci , int num , int dir , int value
);
yup that's the whole signature, returns an int, four args, slay π
β¨ ARGUMENTS β¨
ciβ the controller ποΈ like, the whole chipidea controller struct, the main characternumβ endpoint number π’ which ep we're talking aboutdirβ endpoint direction π§ yeah, direction matters bestievalueβtrue=> stall,false=> unstall πβ¨ sotruehalts it,falseun-halts it, no cap
π DESCRIPTION π
This function returns an error code. that's it. that's the whole description. lowkey iconic how brief it is π«Ά
so like β check the return value, bestie, don't just ignore it π it's literally telling you if something went wrong.
π₯ SEE ALSO π₯
okay this list is LONG, like, absolutely unhinged length, but every single one is here because we don't skip references in this house π
Kernel file ./drivers/usb/chipidea/udc.c:
hw_ep_bit(9)hw_device_state(9)hw_ep_flush(9)hw_ep_disable(9)hw_ep_enable(9)hw_ep_get_halt(9)hw_ep_prime(9)hw_port_is_high_speed(9)hw_test_and_clear_complete(9)hw_test_and_clear_intr_active(9)hw_test_and_clear_setup_guard(9)hw_test_and_set_setup_guard(9)hw_usb_set_address(9)hw_usb_reset(9)_usb_addr(9)_hardware_enqueue(9)free_pending_td(9)_hardware_dequeue(9)_ep_nuke(9)_gadget_stop_activity(9)isr_reset_handler(9)isr_get_status_complete(9)_ep_queue(9)isr_get_status_response(9)isr_setup_status_complete(9)isr_setup_status_phase(9)isr_tr_complete_low(9)isr_setup_packet_handler(9)isr_tr_complete_handler(9)ci_udc_start(9)udc_start(9)udc_stop(9)ci_hdrc_gadget_init(9)
like, go read all of them, I'll wait π§π
β οΈ reminder bestie: the NAME section says execute without interruption β that's not a vibe, that's a requirement π
and that's the page!! π this lil beauty lives in ./drivers/usb/chipidea, dated October 2026, and it's hw_ep_set_halt(9) forever and always ππ mwah, go forth and halt those endpoints responsibly π«Άβ¨
π¦ 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