STRUCT DPSECI_CONGESTION_NOTIFICATION_CFG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ struct dpseci_congestion_notification_cfg β€” congestion notification configuration πŸŽ€

okay bestie so we're in the Kernel API Manual and today's main character is struct dpseci_congestion_notification_cfg β€” literally the glow-up config for congestion notifications πŸ’… no cap, this struct is what tells the hardware when to start freaking out about congestion and when to chill. iconic behavior fr fr.


✨ SYNOPSIS ✨

struct dpseci_congestion_notification_cfg {
    enum dpseci_congestion_unit units;
    u32 threshold_entry;
    u32 threshold_exit;
    u64 message_ctx;
    u64 message_iova;
    struct dpseci_dest_cfg dest_cfg;
    u16 notification_mode;
 };

like, that's the whole vibe right there 🫢 every single field is doing its little job and honestly? obsessed.


🌸 Members 🌸

  • units β€” the units type, i.e. what unit system we're measuring these thresholds in 🧚 it's giving "please be specific about your numbers."
  • threshold_entry β€” above this threshold we enter a congestion state πŸ‘‘ so yes, once you cross this line the congestion era begins. set it to '0' to disable it β€” zero means off, no drama, nothing happens πŸ’€
  • threshold_exit β€” below this threshold we exit the congestion state πŸ¦‹ so it's the opposite direction of threshold_entry: drop under this and we're free, we're healed, we're out of the congestion situation.
  • message_ctx β€” the context that will be part of the CSCN message πŸ“¨ lowkey the little tag that comes along for the ride so you know what it's about.
  • message_iova β€” the I/O virtual address of the message, and important caveat bestie: it must be in DMA-able memory, and it must be 16B aligned ⚠️ like do not skip the alignment, that's not a suggestion.
  • dest_cfg β€” CSCN can be send to either DPIO or DPCON WQ channel 🎯 two destinations, pick your fave.
  • notification_mode β€” a mask of the available options; use the 'DPSECI_CGN_MODE_<X>' values ✨ that's where you select which mode bits you actually want.
ngl the alignment + DMA-able memory thing on message_iova is the one that will bite you if you get cute with it 😭 double-check it before you ship, i'm begging.

πŸ’œ SEE ALSO πŸ’œ

  • Kernel file ./drivers/crypto/caam/dpseci.h
  • struct dpseci_cfg(9)
  • struct dpseci_attr(9)
  • enum dpseci_dest(9)
  • struct dpseci_dest_cfg(9)
  • struct dpseci_rx_queue_cfg(9)
  • struct dpseci_rx_queue_attr(9)
  • struct dpseci_tx_queue_attr(9)
  • struct dpseci_sec_attr(9)
  • enum dpseci_congestion_unit(9)

like go read all of them, they're all in the lore πŸ“šβœ¨


that's the whole page bestie!! mwah πŸ’– this cutie lives in ./drivers/crypto/caam and this version is dated October 2026 β€” go forth and configure your congestion notifications responsibly, love u, bye!! πŸŽ€πŸ¦‹πŸ’…

πŸ“¦ where this page comes from