STRUCT IL3945_TX_POWER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct il3945_tx_power(9)

okay bestie, welcome to the Kernel API Manual β€” this one's a little struct from the wireless side of kernel town and honestly it's giving "small but mighty" 🫢

✨ NAME ✨

struct il3945_tx_power β€” bestie... the manpage literally gives us nothing else here 😭 no description, no blurb, just the name and a vibe. iconic of it, honestly.

✨ SYNOPSIS ✨

the whole thing, exactly as it lives in the header:

struct il3945_tx_power {
    u8 tx_gain;
    u8 dsp_atten;
 };

two u8s. that's it. that's the struct. lowkey obsessed with how minimal this is πŸ’…

✨ Members ✨

so this section is just... a heading with nothing under it πŸ™ˆ the manpage does not list a per-member breakdown here, so no cap, we're not inventing one. the actual lore lives in Description below πŸ‘‡

🌸 DESCRIPTION 🌸

this struct gets used in C_TX_PWR_TBL, C_SCAN, and C_CHANNEL_SWITCH β€” those are the three places it shows up, fr fr.

each entry contains two values, and here's the tea on both of them:

  1. DSP gain (or sometimes called DSP attenuation). This is a fine-grained linear value that multiplies the output of the digital signal processor, before being sent to the analog radio. ✨ digital-side precision, yk?
  2. Radio gain. This sets the analog gain of the radio Tx path. It's a coarser setting, and behaves in a logarithmic (dB) fashion. πŸ“Ά so it's the chunky dial, not the fine one.

and where do the actual numbers come from? the driver obtains values from struct il3945_tx_power power_gain_table[][] β€” that's the table it's pulling from, periodt.

quick vibe check: value 1 is applied before the analog radio sees the signal, value 2 sets the analog Tx path gain itself β€” don't mix them up, bestie πŸŽ€

πŸ¦‹ SEE ALSO πŸ¦‹

go read these next, i prommy they're worth it:

  • Kernel file ./drivers/net/wireless/intel/iwlegacy/commands.h
  • struct il_cmd_header(9)
  • struct il3945_power_per_rate(9)
  • union il4965_tx_power_dual_stream(9)
  • struct tx_power_dual_stream(9)
  • struct il4965_tx_power_db(9)
  • struct il_ac_qos(9)
  • struct sta_id_modify(9)
  • struct il_link_qual_general_params(9)
  • struct il_link_qual_agg_params(9)
  • struct il_ssid_ie(9)
  • struct stats_tx_power(9)
  • struct il_sensitivity_cmd(9)

and that's the whole page, bestie πŸ’– this came from ./drivers/net/wireless/intel/i... (that's how the footer truncates it, don't come for me 😭), dated October 2026, and it's all about struct il3945_tx_power(9). slay, go read your power tables 🧚✨

πŸ“¦ where this page comes from