ENUM IWL_PPAG_FLAGS(9)
π NAME π
enum iwl_ppag_flags β the PPAG enable masks, bestie! This is from the kernel API manual, and it's literally just a little enum that tells you which regions and which power modes are allowed to turn PPAG on. That's it, that's the whole vibe. π
β¨ SYNOPSIS β¨
enum iwl_ppag_flags {
IWL_PPAG_ETSI_MASK ,
IWL_PPAG_CHINA_MASK ,
IWL_PPAG_ETSI_LPI_UHB_MASK ,
IWL_PPAG_ETSI_VLP_UHB_MASK ,
IWL_PPAG_ETSI_SP_UHB_MASK ,
IWL_PPAG_USA_LPI_UHB_MASK ,
IWL_PPAG_USA_VLP_UHB_MASK ,
IWL_PPAG_USA_SP_UHB_MASK ,
IWL_PPAG_CANADA_LPI_UHB_MASK ,
IWL_PPAG_CANADA_VLP_UHB_MASK ,
IWL_PPAG_CANADA_SP_UHB_MASK
};
Ok so like, eleven masks, and each one is a lil permission slip. Read on, iykyk. π¦
πΈ Constants πΈ
So the way this works is: two of these are just "enable PPAG in region", and the other nine are the fancy ones β they're per-region AND per-power-mode AND specifically for UHB. Slay. Let's go down the list one by one, no skips, no cap:
IWL_PPAG_ETSI_MASKβ enable PPAG in ETSI π§IWL_PPAG_CHINA_MASKβ enable PPAG in China π§
Now the UHB trio, three power levels per region. LPI, VLP, SP β the whole set, for each place:
IWL_PPAG_ETSI_LPI_UHB_MASKβ enable LPI in ETSI for UHB πIWL_PPAG_ETSI_VLP_UHB_MASKβ enable VLP in ETSI for UHB πIWL_PPAG_ETSI_SP_UHB_MASKβ enable SP in ETSI for UHB πIWL_PPAG_USA_LPI_UHB_MASKβ enable LPI in USA for UHB πIWL_PPAG_USA_VLP_UHB_MASKβ enable VLP in USA for UHB πIWL_PPAG_USA_SP_UHB_MASKβ enable SP in USA for UHB πIWL_PPAG_CANADA_LPI_UHB_MASKβ enable LPI in CANADA for UHB πIWL_PPAG_CANADA_VLP_UHB_MASKβ enable VLP in CANADA for UHB πIWL_PPAG_CANADA_SP_UHB_MASKβ enable SP in CANADA for UHB π
Notice how ETSI and China get the plain masks too, but only ETSI, USA and CANADA get the LPI/VLP/SP UHB combo masks? Yeah. That's just how the enum is built. Not me making the rules, I'm just reporting them. π
π₯ SEE ALSO π₯
Okay this list is long long, so buckle up. First off, the source file itself lives at ./drivers/net/wireless/intel/iwlwifi/fw/api/power.h β that's where you'll find enum iwl_ppag_flags hanging out with all its friends. And the friends are:
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)union iwl_ppag_table_cmd(9)struct iwl_sar_offset_mapping_cmd(9)struct iwl_beacon_filter_cmd(9)struct iwl_txpower_constraints_cmd(9)
All thirty of them, bestie, every single one, in the exact order the page gave them. Go read them if you want the full lore. π
And that's the whole page! π It's source ./drivers/net/wireless/intel/i... (yeah, the manpage really does truncate the path like that β iconic honestly) and it's dated October 2026, so likeβ¦ future vibes. β¨ Bye bestie, go enable some masks responsibly! π«Άπ
π¦ 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