STRUCT IWL_LARI_CONFIG_CHANGE_CMD(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay so bestie, welcome to the Kernel API Manual ✨ β€” this page is all about struct iwl_lari_config_change_cmd, and its whole job is: change LARI configuration. that's it, that's the vibe πŸŽ€


✨ SYNOPSIS ✨

no cap, here's the literal struct, exactly as it lives:

struct iwl_lari_config_change_cmd {
    __le32 config_bitmap;
    __le32 oem_uhb_allow_bitmap;
    __le32 oem_11ax_allow_bitmap;
    __le32 oem_unii4_allow_bitmap;
    __le32 chan_state_active_bitmap;
    __le32 force_disable_channels_bitmap;
    __le32 edt_bitmap;
    __le32 oem_320mhz_allow_bitmap;
    __le32 oem_11be_allow_bitmap;
    __le32 oem_11bn_allow_bitmap;
    __le32 oem_unii9_enable;
    struct iwl_bios_config_hdr bios_hdr;
    __le32 oem_uhb_allow_extension_bitmap;
    struct iwl_bios_config_hdr bios_wcpe_hdr;
    __le32 wcpe_bitmap;
    struct iwl_bios_config_hdr bios_wbem_hdr;
    __le32 reserved[10];
    __le32 oem_supported_dsm_bitmap;
};

πŸ¦‹ MEMBERS πŸ¦‹

okay this is the part where we meet the whole cast, main character energy only πŸ’…

  • config_bitmap β€” the bitmap of the config commands. every single bit triggers a different predefined FW config operation πŸ‘‘
  • oem_uhb_allow_bitmap β€” bitmap of UHB enabled MCC sets 🫢
  • oem_11ax_allow_bitmap β€” bitmap of 11ax allowed MCCs. there are two bits per country: one of them says whether to override, and the other one says the value to use. two-for-one deal, we love that for us ✨
  • oem_unii4_allow_bitmap β€” bitmap of unii4 allowed MCCs. same energy: two bits per country, one says whether to override, the other says allow/disallow unii4 channels 🌸
  • chan_state_active_bitmap β€” bitmap to enable different bands per country or region. each bit = a country or region, plus a band to activate, all according to the BIOS definitions. bit 0 - 6: supported 🌈
  • force_disable_channels_bitmap β€” bitmap of disabled bands/channels. each bit represents a set of channels in a specific band that should be disabled. yes this one is literally the "nope, off" list πŸ™ˆ
  • edt_bitmap β€” bitmap of the energy detection threshold table. it disables/enables the EDT optimization method for different band πŸ’€
  • oem_320mhz_allow_bitmap β€” 320Mhz bandwidth enablement bitmap per MCC. bit0: enable 320Mhz in Japan πŸ‡―πŸ‡΅ Β· bit1: enable 320Mhz in South Korea πŸ‡°πŸ‡· Β· bit 2 - 31: reserved πŸ”₯
  • oem_11be_allow_bitmap β€” bitmap of 11be allowed MCCs. no need to mask out the unsupported bits (iykyk). bit0: enable 11be in China(CB/CN) Β· bit1: enable 11be in South Korea Β· bit 2 - 31: reserved ⭐
  • oem_11bn_allow_bitmap β€” bitmap of 11bn allowed MCCs. the firmware expects to get the data from the BIOS πŸ‘€
  • oem_unii9_enable β€” UNII-9 enablement as read from the BIOS πŸ’œ
  • bios_hdr β€” bios config header πŸŽ€
  • oem_uhb_allow_extension_bitmap β€” DSM Function 4 data, as an extension of the UHB enabled MCC sets 🧚
  • bios_wcpe_hdr β€” puncturing config header πŸ“
  • wcpe_bitmap β€” bitmap of puncturing enablement per MCC πŸ’«
  • bios_wbem_hdr β€” 320 MHz per-MCC WBEM config header 🌸
  • reserved β€” reserved. it's giving "nothing to see here" πŸ«₯
  • oem_supported_dsm_bitmap β€” DSM function 0 bitmap, describing the supported DSM function indices πŸ‘‘

πŸ’… SEE ALSO πŸ’…

the whole extended friend group, fr fr β€” kernel file ./drivers/net/wireless/intel/iwlwifi/fw/api/nvm-reg.h enum iwl_regulatory_and_nvm_subcmd_ids(9), enum iwl_nvm_access_op(9), enum iwl_nvm_access_target(9), enum iwl_nvm_section_type(9), struct iwl_nvm_access_cmd(9), struct iwl_nvm_access_resp(9), enum iwl_nvm_info_general_flags(9), struct iwl_nvm_get_info_general(9), enum iwl_nvm_mac_sku_flags(9), struct iwl_nvm_get_info_sku(9), struct iwl_nvm_get_info_phy(9), struct iwl_nvm_get_info_regulatory_v1(9), struct iwl_nvm_get_info_regulatory_v2(9), struct iwl_nvm_get_info_rsp_v3(9), struct iwl_nvm_get_info_rsp_v4(9), struct iwl_nvm_get_info_regulatory(9), struct iwl_nvm_get_info_rsp(9), struct iwl_nvm_access_complete_cmd(9), struct iwl_mcc_update_cmd(9), enum iwl_geo_information(9), struct iwl_mcc_update_resp_v3(9), struct iwl_mcc_update_resp_v4(9), struct iwl_mcc_update_resp_v8(9), struct iwl_mcc_chub_notif(9), struct iwl_tas_config_cmd_common(9), struct iwl_tas_config_cmd_v3(9), enum iwl_tas_uhb_allowed_flags(9), struct iwl_tas_config_cmd_v4(9), enum bios_source(9), struct iwl_bios_config_hdr(9), struct iwl_lari_config_extension_cmd(9), struct bios_value_u32(9), struct iwl_tas_config_cmd(9), enum iwl_lari_config_masks(9), struct iwl_lari_config_change_cmd_v1(9), struct iwl_lari_config_change_cmd_v6(9), struct iwl_lari_config_change_cmd_v8(9), struct iwl_pnvm_init_complete_ntfy(9), struct iwl_mcc_allowed_ap_type_cmd_v1(9), struct iwl_mcc_allowed_ap_type_cmd(9) 🌟


okay that's the whole page bestie, you ate that. go read your BIOS bitmaps responsibly 🫢

and for the cute sign-off: this lil beauty comes from the kernel source at ./drivers/net/wireless/intel/i..., dated October 2026, and it's living its best life as struct iwl_...g_change_cmd(9) in the Kernel API Manual πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from