ENUM RING_DESC_FLAGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum ring_desc_flags(9) β€” the Kernel API Manual, but make it cute πŸ¦‹

okay bestie, so this one is literally from the Kernel API Manual (the enum ring_desc_flags(9) page, iykyk) and it's all about the flags you slap on a DMA ring descriptor. tiny enum, big main character energy. let's get into it ✨


🌸 NAME 🌸

enum ring_desc_flags β€” the flags for a DMA ring descriptor, periodt πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

enum ring_desc_flags {
    RING_DESC_ISOCH ,
    RING_DESC_CRC_ERROR ,
    RING_DESC_COMPLETED ,
    RING_DESC_POSTED ,
    RING_DESC_BUFFER_OVERRUN ,
    RING_DESC_INTERRUPT

};

like, that's the whole enum. six little icons, one slay πŸ”₯


✨ CONSTANTS ✨

okay so here's the vibe check on each one, fr fr:

  • RING_DESC_ISOCH β€” turns on isonchronous DMA (and yes, that's exactly how it's spelled here, no cap). Tx only bestie, don't try it on Rx πŸ™ˆ
  • RING_DESC_CRC_ERROR β€” in frame mode, the CRC check for the frame failed. Rx only it's giving "something went wrong" πŸ’€
  • RING_DESC_COMPLETED β€” the descriptor is done. this one gets set by NHI, so not your job, okay? πŸ‘‘
  • RING_DESC_POSTED β€” always set this. literally always. it's the "just do it" of flags 🫢
  • RING_DESC_BUFFER_OVERRUN β€” RX buffer overrun. yeah. that happened 😭
  • RING_DESC_INTERRUPT β€” request an interrupt on completion, if you're into that ⭐

🌈 SEE ALSO 🌈

all the lore lives in the Kernel file ./include/linux/thunderbolt.h, and the whole friend group is here: enum tb_security_level(9), struct tb(9), struct tb_property_dir(9), struct tb_property(9), enum tb_link_width(9), struct tb_xdomain(9), struct tb_protocol_handler(9), struct tb_service(9), struct tb_service_driver(9), struct tb_nhi(9), struct tb_ring(9), struct ring_frame(9), tb_ring_rx(9), tb_ring_tx(9), tb_ring_dma_device(9). go read them, they're iconic πŸ’œ


that's the whole page bestie, mwah πŸŽ€ this lil gem came out of ./include/linux and it's dated October 2026, part of the Kernel API Manual β€” see you in the next manpage, love u, bye πŸ’–

πŸ“¦ where this page comes from