ep_end_in_req(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 ep_end_in_req(9) β€” like, the Kernel API Manual page bestie 🌸

Okay so welcome to ep_end_in_req(9), straight out of the Kernel API Manual, and no cap this page is short but it matters πŸ’…. It's the little function that says "we're done here" to an endpoint IN request. Iconic. Let's get into it πŸŽ€


✨ SYNOPSIS ✨

void ep_end_in_req (struct pxa_ep *ep , struct pxa27x_request *req ,
                    unsigned long *pflags );

That's the whole signature, bestie β€” copy it exactly, don't be out here renaming stuff πŸ™ˆ


🫢 ARGUMENTS 🫢

  • ep β€” the physical endpoint. like, the actual hardware endpoint itself, the main character πŸ’«
  • req β€” the pxa request. yes, that pxa request, the one you're ending πŸ¦‹
  • pflags β€” flags from a previous spinlock_irq_save, or NULL if no lock is held. so either you got the flags or you don't, there's no in-between πŸ”₯

πŸ’œ CONTEXT πŸ’œ

ep->lock held or released (see req_done). that's it, that's the vibe check β€” the lock situation depends on that, and req_done is where you go look πŸ‘€


⭐ DESCRIPTION ⭐

Ends endpoint IN request (completes usb request). literally that's the whole job πŸŽ€ it wraps up the IN request and completes the usb request. slay, short and sweet, no notes ✨


🌈 SEE ALSO 🌈

the whole friend group, fr fr β€” Kernel file ./drivers/usb/gadget/udc/pxa27x_udc.c is basically the group chat and everyone's in it:

is_match_usb_pxa(9), find_pxa_ep(9), update_pxa_ep_matches(9), pio_irq_enable(9), pio_irq_disable(9), udc_set_mask_UDCCR(9), udc_clear_mask_UDCCR(9), ep_write_UDCCSR(9), ep_count_bytes_remain(9), ep_is_empty(9), ep_is_full(9), epout_has_pkt(9), set_ep0state(9), ep0_idle(9), inc_ep_stats_reqs(9), inc_ep_stats_bytes(9), pxa_ep_setup(9), pxa_eps_setup(9), pxa_ep_alloc_request(9), pxa_ep_free_request(9), ep_add_request(9), ep_del_request(9), req_done(9), ep_end_out_req(9), ep0_end_out_req(9), ep0_end_in_req(9), nuke(9), read_packet(9), write_packet(9), read_fifo(9), write_fifo(9), read_ep0_fifo(9), write_ep0_fifo(9), pxa_ep_queue(9), pxa_ep_dequeue(9), pxa_ep_set_halt(9), pxa_ep_fifo_status(9), pxa_ep_fifo_flush(9), pxa_ep_enable(9), pxa_ep_disable(9), dplus_pullup(9), pxa_udc_get_frame(9), pxa_udc_wakeup(9), should_enable_udc(9), should_disable_udc(9), pxa_udc_pullup(9), pxa_udc_vbus_session(9), pxa_udc_vbus_draw(9), pxa_udc_phy_event(9), udc_disable(9), udc_init_data(9), udc_enable(9), pxa27x_udc_start(9), stop_activity(9), pxa27x_udc_stop(9), handle_ep0_ctrl_req(9), handle_ep0(9), handle_ep(9), pxa27x_change_configuration(9), pxa27x_change_interface(9), irq_udc_suspend(9), irq_udc_resume(9), irq_udc_reconfig(9), irq_udc_reset(9), pxa_udc_irq(9), pxa_udc_probe(9), pxa_udc_remove(9), pxa_udc_suspend(9), pxa_udc_resume(9)


and that's the page!! mwah πŸ’‹ okay so the sign-off β€” this beauty lives under ./drivers/usb/gadget/udc, dated October 2026, and it's filed under the name ep_end_in_req(9) πŸ¦‹ go forth and end those IN requests, you absolute icon πŸ‘‘βœ¨

πŸ“¦ where this page comes from