update_pxa_ep_matches(9)
π update_pxa_ep_matches(9)
okay bestie, welcome to the Kernel API Manual β¨ β yes, the actual Kernel API Manual, we're in the big leagues now. this one's about update_pxa_ep_matches, and it's short but lowkey important, so let's get into it π«Ά
πΈ NAME
update_pxa_ep_matches β updates the cached pxa_ep values inside all the udc_usb_eps, no cap π
β¨ SYNOPSIS
void update_pxa_ep_matches (struct pxa_udc *udc );
that's it. one argument. one function. very demure, very mindful π
π¦ ARGUMENTS
udcβ the pxa udc. that's the whole deal, she's your context object and you hand her over π
π CONTEXT
interrupt handler β‘
like, you're in interrupt context. be normal about it, don't go blocking on stuff. iykyk.
π DESCRIPTION
so here's the vibe: this function updates all the pxa_ep fields inside the udc_usb_ep structures β but only if that field was previously set up and is not NULL. no field, no touch. we respect boundaries in this house π
and the update is literally necessary when a configuration change or an altsetting change was issued by the USB host. host said "new config bestie" and now everything cached is a little stale, so we refresh it. periodt. π₯
π SEE ALSO
okay this list is long and honestly iconic, she knows everybody. friends of update_pxa_ep_matches, in the order the manpage says so π β and yes, they all live in the kernel file ./drivers/usb/gadget/udc/pxa27x_udc.c:
is_match_usb_pxa(9)find_pxa_ep(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)ep_end_in_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 whole page, bestie π§π this lil beauty ships from ./drivers/usb/gadget/udc and it's stamped October 2026 β go forth, refresh those cached pxa_ep fields, and slay π
π
π¦ 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