STRUCT PLX_DMA_DESC(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct plx_dma_desc(9) πŸ’–

okay so bestie, welcome to the plx_dma_desc glow-up ✨ this is a page from the Kernel API Manual, and honestly? it's giving "small struct, big responsibilities" πŸ‘‘


🌸 NAME 🌸

struct plx_dma_desc β€” the DMA descriptor format for the PLX PCI 9080, no cap πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

struct plx_dma_desc {
    __le32 pci_start_addr;
    __le32 local_start_addr;
    __le32 transfer_size;
    __le32 next;
 };

like, that's the whole struct and it's literally iconic πŸ’…


✨ Members ✨

  • pci_start_addr β€” the PCI Bus address for the transfer (that's DMAPADR for you register girlies) πŸ’–
  • local_start_addr β€” the Local Bus address for the transfer (aka DMALADR) 🌟
  • transfer_size β€” the transfer size in bytes, and heads up: the max is 8 MiB (this one's DMASIZ) πŸ”₯
  • next β€” the address of the next descriptor plus the flags (yep, DMADPR) πŸŽ€

πŸ’œ Description πŸ’œ

so this bad boy describes the format of a scatter-gather DMA descriptor for the PLX PCI 9080 🫢 all of its members are raw, little-endian register values β€” and the DMA engine literally transfers them from local or PCI memory into the corresponding registers for the DMA channel. main character energy fr fr ✨

also!! the DMA descriptors must be aligned on a 16-byte boundary 🌈 don't skip that, it's not a vibe to mess up πŸ™ˆ

and bits 3:0 of next are where the flags live β€” they describe the address space of the next descriptor (local or PCI), an "end of chain" marker, an "interrupt on terminal count" bit, and a data transfer direction πŸ’« that's four whole moods packed into four little bits, iykyk 😭


🌟 SEE ALSO 🌟


πŸ’€ real talk: all those members are raw little-endian register values and the 16-byte alignment is mandatory β€” treat it like the group chat rules, bestie, no exceptions πŸŽ€

and that's the page!! found in ./drivers/comedi/drivers, this cutie is dated October 2026 and it's page struct plx_dma_desc(9) of the Kernel API Manual πŸ“šπŸ’– slay, you're now educated, go forth and DMA responsibly πŸ§šβ€β™€οΈβœ¨

πŸ“¦ where this page comes from