xudc_start_dma(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

xudc_start_dma β€” starts DMA transfer. This is xudc_start_dma(9) from the Kernel API Manual, bestie, and it's here to make DMA starts make sense. πŸ’–


✨ SYNOPSIS ✨

The signature is giving:

int xudc_start_dma (struct xusb_ep *ep , dma_addr_t src , dma_addr_t dst
       , u32 length );

πŸŽ€ ARGUMENTS πŸŽ€

  • ep β€” pointer to the usb device endpoint structure.
  • src β€” DMA source address.
  • dst β€” DMA destination address.
  • length β€” number of bytes to transfer.

πŸ¦‹ RETURN πŸ¦‹

0 on success, error code on failure. That's the whole vibe check. ✨


🌸 DESCRIPTION 🌸

This function starts DMA transfer by writing to DMA source, destination and lenth registers. Yes, lenth β€” that's the word on the page, and we are respecting it. πŸ’…


πŸ’œ SEE ALSO πŸ’œ

Kernel file ./drivers/usb/gadget/udc/udc-xilinx.c β€” plus the whole bestie lineup: struct xusb_req(9), struct xusb_ep(9), struct xusb_udc(9), xudc_write32(9), xudc_read32(9), xudc_write32_be(9), xudc_read32_be(9), xudc_wrstatus(9), xudc_epconfig(9), xudc_dma_send(9), xudc_dma_receive(9), xudc_eptxrx(9), xudc_done(9), xudc_read_fifo(9), xudc_write_fifo(9), xudc_nuke(9), xudc_ep_set_halt(9), __xudc_ep_enable(9), xudc_ep_enable(9), xudc_ep_disable(9), xudc_ep_alloc_request(9), xudc_free_request(9), __xudc_ep0_queue(9), xudc_ep0_queue(9), xudc_ep_queue(9), xudc_ep_dequeue(9), xudc_ep0_enable(9), xudc_ep0_disable(9), xudc_get_frame(9), xudc_wakeup(9), xudc_pullup(9), xudc_eps_init(9), xudc_stop_activity(9), xudc_start(9), xudc_stop(9), xudc_clear_stall_all_ep(9), xudc_startup_handler(9), xudc_ep0_stall(9), xudc_setaddress(9), xudc_getstatus(9), xudc_set_clear_feature(9), xudc_handle_setup(9), xudc_ep0_out(9), xudc_ep0_in(9), xudc_ctrl_ep_handler(9), xudc_nonctrl_ep_handler(9), xudc_irq(9), xudc_probe(9), xudc_remove(9).


Signed with love and a little glitter: source/version ./drivers/usb/gadget/udc, date October 2026, page xudc_start_dma(9). πŸ’…πŸ’–

πŸ“¦ where this page comes from