dwc2_hsotg_ep0_mps(9)
β¨ NAME β¨
okay so bestie, welcome to dwc2_hsotg_ep0_mps(9) β this is a page straight out of the Kernel API Manual, and it's basically a tiny little translator: it takes a max packet size and turns it into a register setting. that's the whole vibe. π
β¨ SYNOPSIS β¨
like, here's the signature, no cap, copy it exactly:
u32 dwc2_hsotg_ep0_mps (unsigned int mps );
it hands you back a u32 (the register setting, obvs) and it takes exactly one lil argument. that's it. that's the function. π
β¨ ARGUMENTS β¨
mpsβ the maximum packet size, measured in bytes. that's the number you're feeding in so it can get translated into the register setting. π¦
β¨ SEE ALSO β¨
okay so this is the part where the page name-drops literally everyone in the friend group. the kernel file doing the work here is ./drivers/usb/dwc2/gadget.c, and honestly the whole squad shows up β iykyk:
using_dma(9),dwc2_gadget_incr_frame_num(9),dwc2_gadget_dec_frame_num_by_one(9),dwc2_hsotg_en_gsint(9),dwc2_hsotg_disable_gsint(9)dwc2_hsotg_ctrl_epint(9),dwc2_hsotg_tx_fifo_count(9),dwc2_hsotg_tx_fifo_total_depth(9),dwc2_gadget_wkup_alert_handler(9),dwc2_hsotg_tx_fifo_average_depth(9)dwc2_hsotg_init_fifo(9),dwc2_hsotg_ep_alloc_request(9),is_ep_periodic(9),dwc2_hsotg_unmap_dma(9),dwc2_hsotg_write_fifo(9)get_ep_limit(9),dwc2_hsotg_read_frameno(9),dwc2_gadget_get_chain_limit(9),dwc2_hsotg_start_req(9),dwc2_hsotg_map_dma(9)dwc2_gadget_target_frame_elapsed(9),dwc2_hsotg_complete_oursetup(9),ep_from_windex(9),dwc2_hsotg_set_test_mode(9),dwc2_hsotg_send_reply(9)dwc2_hsotg_process_req_status(9),get_ep_head(9),dwc2_gadget_start_next_request(9),dwc2_hsotg_process_req_feature(9),dwc2_hsotg_stall_ep0(9)dwc2_hsotg_process_control(9),dwc2_hsotg_complete_setup(9),dwc2_hsotg_enqueue_setup(9),dwc2_hsotg_complete_request(9),dwc2_hsotg_rx_data(9)dwc2_hsotg_ep0_zlp(9),dwc2_hsotg_handle_outdone(9),dwc2_hsotg_handle_rx(9),dwc2_hsotg_set_ep_maxpacket(9),dwc2_hsotg_txfifo_flush(9)dwc2_hsotg_trytx(9),dwc2_hsotg_complete_in(9),dwc2_gadget_read_ep_interrupts(9),dwc2_gadget_handle_ep_disabled(9),dwc2_gadget_handle_out_token_ep_disabled(9)dwc2_gadget_handle_nak(9),dwc2_hsotg_epint(9),dwc2_hsotg_irq_enumdone(9),kill_all_requests(9),dwc2_hsotg_disconnect(9)dwc2_hsotg_irq_fifoempty(9),dwc2_hsotg_core_init_disconnected(9),dwc2_gadget_handle_incomplete_isoc_in(9),dwc2_gadget_handle_incomplete_isoc_out(9),dwc2_hsotg_irq(9)dwc2_hsotg_ep_enable(9),dwc2_hsotg_ep_disable(9),on_list(9),dwc2_hsotg_ep_dequeue(9),dwc2_gadget_ep_set_wedge(9)dwc2_hsotg_ep_sethalt(9),dwc2_hsotg_ep_sethalt_lock(9),dwc2_hsotg_init(9),dwc2_hsotg_udc_start(9),dwc2_hsotg_udc_stop(9)dwc2_hsotg_gadget_getframe(9),dwc2_hsotg_set_selfpowered(9),dwc2_hsotg_pullup(9),dwc2_hsotg_vbus_draw(9),dwc2_hsotg_initep(9)dwc2_hsotg_hw_cfg(9),dwc2_hsotg_dump(9),dwc2_gadget_init(9),dwc2_hsotg_remove(9),dwc2_backup_device_registers(9)dwc2_restore_device_registers(9),dwc2_gadget_init_lpm(9),dwc2_gadget_program_ref_clk(9),dwc2_gadget_enter_hibernation(9),dwc2_gadget_exit_hibernation(9)dwc2_gadget_enter_partial_power_down(9),dwc2_gadget_enter_clock_gating(9)
and that's the whole page, bestie, you ate that π«Ά this one's from the kernel source tree at ./drivers/usb/dwc2, dated October 2026 β manifesting good vibes and no oopses for you, mwah ππΈ
π¦ 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