UNION IWL_PPAG_TABLE_CMD(9)
π union iwl_ppag_table_cmd(9) β a Kernel API Manual moment
Okay bestie, gather round, because we're about to get into union iwl_ppag_table_cmd β the union for all versions of the PPAG command. Yes, all of them. It's giving "one union to hold them all" and honestly? Iconic. π
β¨ NAME β¨
union iwl_ppag_table_cmd β the union that carries every single version of the PPAG command, no cap. π¦
πΈ SYNOPSIS πΈ
union iwl_ppag_table_cmd {
struct {
__le32 flags;
s8 gain[IWL_NUM_CHAIN_LIMITS][IWL_NUM_SUB_BANDS_V1];
s8 reserved[2];
} v1;
struct {
__le32 flags;
s8 gain[IWL_NUM_CHAIN_LIMITS][IWL_NUM_SUB_BANDS_V2];
s8 reserved[2];
} v5;
struct {
struct bios_value_u32 ppag_config_info;
s8 gain[IWL_NUM_CHAIN_LIMITS][IWL_NUM_SUB_BANDS_V2];
s8 reserved[2];
} v7;
struct {
struct bios_value_u32 ppag_config_info;
s8 gain[IWL_NUM_CHAIN_LIMITS][IWL_NUM_SUB_BANDS_V3];
} v8;
};
Look at her. Four whole version structs living in one union. Main character energy fr fr. π
π MEMBERS π
v1β the command version 1 structure. The OG.v1.flagsβ values come fromenum iwl_ppag_flags.v1.gainβ the table of antenna gain values, per chain and sub-band. She's organized.v1.reservedβ reserved. That's it. That's the whole vibe. π
v5β the command version 5 structure.v5.flagsβ values come fromenum iwl_ppag_flags.v5.gainβ the table of antenna gain values, per chain and sub-band.
v7β the command version 7 structure.v7.ppag_config_infoβ seestruct bios_value_u32.v7.gainβ the table of antenna gain values, per chain and sub-band.v7.reservedβ reserved.
v8β the command version 8 structure. The newest girlie on the block. β¨v8.ppag_config_infoβ seestruct bios_value_u32.v8.gainβ the table of antenna gain values, per chain and sub-band.
π₯ SEE ALSO π₯
Kernel file ./drivers/net/wireless/intel/iwlwifi/fw/api/power.h β plus the whole extended universe, bestie:
enum iwl_ltr_config_flags(9)struct iwl_ltr_config_cmd_v1(9)struct iwl_ltr_config_cmd(9)enum iwl_power_flags(9)struct iwl_powertable_cmd(9)enum iwl_device_power_flags(9)struct iwl_device_power_cmd(9)struct iwl_mac_power_cmd_v2(9)struct iwl_mac_power_cmd(9)struct iwl_dev_tx_power_common(9)struct iwl_dev_tx_power_cmd_v3(9)struct iwl_dev_tx_power_cmd_v4(9)struct iwl_dev_tx_power_cmd_v5(9)struct iwl_dev_tx_power_cmd_v8(9)struct iwl_dev_tx_power_cmd_v3_v8(9)struct iwl_dev_tx_power_cmd_v9(9)struct iwl_dev_tx_power_cmd_v10(9)enum iwl_geo_per_chain_offset_operation(9)struct iwl_per_chain_offset(9)struct iwl_geo_tx_power_profiles_cmd_v1(9)struct iwl_geo_tx_power_profiles_cmd_v2(9)struct iwl_geo_tx_power_profiles_cmd_v3(9)struct iwl_geo_tx_power_profiles_cmd_v4(9)struct iwl_geo_tx_power_profiles_cmd_v5(9)struct iwl_geo_tx_power_profiles_cmd_v6(9)struct iwl_geo_tx_power_profiles_resp(9)enum iwl_ppag_flags(9)struct iwl_sar_offset_mapping_cmd(9)struct iwl_beacon_filter_cmd(9)struct iwl_txpower_constraints_cmd(9)
Love that for you: go read the source file too, it's right there in power.h. π«Ά
Kernel API Manual, page union iwl_ppag_table_cmd(9), sourced from ./drivers/net/wireless/intel/i..., dated October 2026. That's the whole page, bestie β slay, you read it, periodt. ππβ
π¦ 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