STRUCT DPSECI_CONGESTION_NOTIFICATION_CFG(9)
π 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 ofthreshold_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
- 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