ath5k_hw_set...word_tx_desc(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ath5k_hw_setup_4word_tx_desc β€” Kernel API Manual moment ✨

okay so bestie, welcome to the ath5k_hw_set...word_tx_desc(9) page β€” that's the truncated header name fr, the actual star of the show is ath5k_hw_setup_4word_tx_desc and she's giving kernel-API-manual energy πŸ‘‘


🌸 NAME 🌸

ath5k_hw_setup_4word_tx_desc β€” Initialize a 4-word tx control descriptor. that's it, that's the whole vibe πŸŽ€


✨ SYNOPSIS ✨

int ath5k_hw_setup_4word_tx_desc (struct ath5k_hw *ah , struct
ath5k_desc *desc , unsigned int pkt_len , unsigned int hdr_len , int
padsize , enum ath5k_pkt_type type , unsigned int tx_power , unsigned
int tx_rate0 , unsigned int tx_tries0 , unsigned int key_index ,
unsigned int antenna_mode , unsigned int flags , unsigned int
rtscts_rate , unsigned int rtscts_duration );

look at all those parameters, she's highkey thorough πŸ’€ but like, iconic of her


πŸ¦‹ ARGUMENTS πŸ¦‹

  • ah β€” The struct ath5k_hw. the main character struct, the hardware herself 🫢
  • desc β€” The struct ath5k_desc. the descriptor we're about to make cute and functional ✨
  • pkt_len β€” Frame length in bytes. yeah, in bytes, not vibes πŸ“
  • hdr_len β€” Header length in bytes (only used on AR5210). bestie note: this one's AR5210-only, everywhere else she's just sitting there πŸ™ˆ
  • padsize β€” Any padding we've added to the frame length. we padded her, no cap πŸŽ€
  • type β€” One of enum ath5k_pkt_type. pick your fighter πŸ’…
  • tx_power β€” Tx power in 0.5dB steps. half-dB steps fr, precision queen πŸ”₯
  • tx_rate0 β€” HW idx for transmission rate. hardware index, not a vibe index 🌈
  • tx_tries0 β€” Max number of retransmissions. how many times we're willing to try again 😭
  • key_index β€” Index on key table to use for encryption. the key table is literally right there πŸ”‘
  • antenna_mode β€” Which antenna to use (0 for auto). 0 means auto, let the hardware decide, main character energy πŸ’«
  • flags β€” One of AR5K_TXDESC_* flags (desc.h). go read desc.h, iykyk πŸ‘€
  • rtscts_rate β€” HW idx for RTS/CTS transmission rate. another hardware idx, she's consistent ⭐
  • rtscts_duration β€” What to put on duration field on the header of RTS/CTS. duration field, header, RTS/CTS β€” all of it goes in there πŸ•

πŸ’œ DESCRIPTION πŸ’œ

So this is an internal function, okay, not like a public-facing slay, and what she does is initialize a 4-Word TX control descriptor β€” the kind that's found on AR5212 and later MACs chips 🧚

Returns 0 on success or -EINVAL on false input.

ngl bestie, if you feed her false input she WILL return -EINVAL, that's the vibe check and you did not pass it πŸ’€

🌟 SEE ALSO 🌟


and that's the page!! 🫢 shoutout to ./drivers/net/wireless/ath/ath5k for being the source, and October 2026 for the date β€” she's from the future bestie, we love a time traveler πŸ‘‘βœ¨πŸ’–

πŸ“¦ where this page comes from