1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ 2 /* 3 * Copyright (C) 2013-2015 Intel Mobile Communications GmbH 4 * Copyright (C) 2016-2017 Intel Deutschland GmbH 5 * Copyright (C) 2018-2022, 2024 Intel Corporation 6 */ 7 #ifndef __iwl_fw_api_commands_h__ 8 #define __iwl_fw_api_commands_h__ 9 10 /** 11 * enum iwl_mvm_command_groups - command groups for the firmware 12 * @LEGACY_GROUP: legacy group, uses command IDs from &enum iwl_legacy_cmds 13 * @LONG_GROUP: legacy group with long header, also uses command IDs 14 * from &enum iwl_legacy_cmds 15 * @SYSTEM_GROUP: system group, uses command IDs from 16 * &enum iwl_system_subcmd_ids 17 * @MAC_CONF_GROUP: MAC configuration group, uses command IDs from 18 * &enum iwl_mac_conf_subcmd_ids 19 * @PHY_OPS_GROUP: PHY operations group, uses command IDs from 20 * &enum iwl_phy_ops_subcmd_ids 21 * @DATA_PATH_GROUP: data path group, uses command IDs from 22 * &enum iwl_data_path_subcmd_ids 23 * @SCAN_GROUP: scan group, uses command IDs from 24 * &enum iwl_scan_subcmd_ids 25 * @NAN_GROUP: NAN group, uses command IDs from &enum iwl_nan_subcmd_ids 26 * @LOCATION_GROUP: location group, uses command IDs from 27 * &enum iwl_location_subcmd_ids 28 * @BT_COEX_GROUP: bt coex group, uses command IDs from 29 * &enum iwl_bt_coex_subcmd_ids 30 * @PROT_OFFLOAD_GROUP: protocol offload group, uses command IDs from 31 * &enum iwl_prot_offload_subcmd_ids 32 * @REGULATORY_AND_NVM_GROUP: regulatory/NVM group, uses command IDs from 33 * &enum iwl_regulatory_and_nvm_subcmd_ids 34 * @DEBUG_GROUP: Debug group, uses command IDs from &enum iwl_debug_cmds 35 * @STATISTICS_GROUP: Statistics group, uses command IDs from 36 * &enum iwl_statistics_subcmd_ids 37 */ 38 enum iwl_mvm_command_groups { 39 LEGACY_GROUP = 0x0, 40 LONG_GROUP = 0x1, 41 SYSTEM_GROUP = 0x2, 42 MAC_CONF_GROUP = 0x3, 43 PHY_OPS_GROUP = 0x4, 44 DATA_PATH_GROUP = 0x5, 45 SCAN_GROUP = 0x6, 46 NAN_GROUP = 0x7, 47 LOCATION_GROUP = 0x8, 48 BT_COEX_GROUP = 0x9, 49 PROT_OFFLOAD_GROUP = 0xb, 50 REGULATORY_AND_NVM_GROUP = 0xc, 51 DEBUG_GROUP = 0xf, 52 STATISTICS_GROUP = 0x10, 53 }; 54 55 /** 56 * enum iwl_legacy_cmds - legacy group command IDs 57 */ 58 enum iwl_legacy_cmds { 59 /** 60 * @UCODE_ALIVE_NTFY: 61 * Alive data from the firmware, as described in 62 * &struct iwl_alive_ntf_v3 or &struct iwl_alive_ntf_v4 or 63 * &struct iwl_alive_ntf_v5 or &struct iwl_alive_ntf_v6. 64 */ 65 UCODE_ALIVE_NTFY = 0x1, 66 67 /** 68 * @REPLY_ERROR: Cause an error in the firmware, for testing purposes. 69 */ 70 REPLY_ERROR = 0x2, 71 72 /** 73 * @ECHO_CMD: Send data to the device to have it returned immediately. 74 */ 75 ECHO_CMD = 0x3, 76 77 /** 78 * @INIT_COMPLETE_NOTIF: Notification that initialization is complete. 79 */ 80 INIT_COMPLETE_NOTIF = 0x4, 81 82 /** 83 * @PHY_CONTEXT_CMD: 84 * Add/modify/remove a PHY context, using &struct iwl_phy_context_cmd 85 * or &struct iwl_phy_context_cmd_v1. 86 */ 87 PHY_CONTEXT_CMD = 0x8, 88 89 /** 90 * @DBG_CFG: Debug configuration command. 91 */ 92 DBG_CFG = 0x9, 93 94 /** 95 * @SCAN_ITERATION_COMPLETE_UMAC: 96 * Firmware indicates a scan iteration completed, using 97 * &struct iwl_umac_scan_iter_complete_notif. 98 */ 99 SCAN_ITERATION_COMPLETE_UMAC = 0xb5, 100 101 /** 102 * @SCAN_CFG_CMD: 103 * uses &struct iwl_scan_config_v1, &struct iwl_scan_config_v2 104 * or &struct iwl_scan_config 105 */ 106 SCAN_CFG_CMD = 0xc, 107 108 /** 109 * @SCAN_REQ_UMAC: uses &struct iwl_scan_req_umac 110 */ 111 SCAN_REQ_UMAC = 0xd, 112 113 /** 114 * @SCAN_ABORT_UMAC: uses &struct iwl_umac_scan_abort 115 */ 116 SCAN_ABORT_UMAC = 0xe, 117 118 /** 119 * @SCAN_COMPLETE_UMAC: uses &struct iwl_umac_scan_complete 120 */ 121 SCAN_COMPLETE_UMAC = 0xf, 122 123 /** 124 * @BA_WINDOW_STATUS_NOTIFICATION_ID: 125 * uses &struct iwl_ba_window_status_notif 126 */ 127 BA_WINDOW_STATUS_NOTIFICATION_ID = 0x13, 128 129 /** 130 * @ADD_STA_KEY: 131 * &struct iwl_mvm_add_sta_key_cmd_v1 or 132 * &struct iwl_mvm_add_sta_key_cmd. 133 */ 134 ADD_STA_KEY = 0x17, 135 136 /** 137 * @ADD_STA: 138 * &struct iwl_mvm_add_sta_cmd or &struct iwl_mvm_add_sta_cmd_v7. 139 */ 140 ADD_STA = 0x18, 141 142 /** 143 * @REMOVE_STA: &struct iwl_mvm_rm_sta_cmd 144 */ 145 REMOVE_STA = 0x19, 146 147 /** 148 * @TX_CMD: uses &struct iwl_tx_cmd or &struct iwl_tx_cmd_gen2 or 149 * &struct iwl_tx_cmd_gen3, 150 * response in &struct iwl_tx_resp or 151 * &struct iwl_tx_resp_v3 152 */ 153 TX_CMD = 0x1c, 154 155 /** 156 * @TXPATH_FLUSH: &struct iwl_tx_path_flush_cmd 157 * response in &struct iwl_tx_path_flush_cmd_rsp 158 */ 159 TXPATH_FLUSH = 0x1e, 160 161 /** 162 * @MGMT_MCAST_KEY: 163 * &struct iwl_mvm_mgmt_mcast_key_cmd or 164 * &struct iwl_mvm_mgmt_mcast_key_cmd_v1 165 */ 166 MGMT_MCAST_KEY = 0x1f, 167 168 /* scheduler config */ 169 /** 170 * @SCD_QUEUE_CFG: &struct iwl_scd_txq_cfg_cmd for older hardware, 171 * &struct iwl_tx_queue_cfg_cmd with &struct iwl_tx_queue_cfg_rsp 172 * for newer (22000) hardware. 173 */ 174 SCD_QUEUE_CFG = 0x1d, 175 176 /** 177 * @WEP_KEY: uses &struct iwl_mvm_wep_key_cmd 178 */ 179 WEP_KEY = 0x20, 180 181 /** 182 * @SHARED_MEM_CFG: 183 * retrieve shared memory configuration - response in 184 * &struct iwl_shared_mem_cfg 185 */ 186 SHARED_MEM_CFG = 0x25, 187 188 /** 189 * @TDLS_CHANNEL_SWITCH_CMD: uses &struct iwl_tdls_channel_switch_cmd 190 */ 191 TDLS_CHANNEL_SWITCH_CMD = 0x27, 192 193 /** 194 * @TDLS_CHANNEL_SWITCH_NOTIFICATION: 195 * uses &struct iwl_tdls_channel_switch_notif 196 */ 197 TDLS_CHANNEL_SWITCH_NOTIFICATION = 0xaa, 198 199 /** 200 * @TDLS_CONFIG_CMD: 201 * &struct iwl_tdls_config_cmd, response in &struct iwl_tdls_config_res 202 */ 203 TDLS_CONFIG_CMD = 0xa7, 204 205 /** 206 * @MAC_CONTEXT_CMD: &struct iwl_mac_ctx_cmd 207 */ 208 MAC_CONTEXT_CMD = 0x28, 209 210 /** 211 * @TIME_EVENT_CMD: 212 * &struct iwl_time_event_cmd, response in &struct iwl_time_event_resp 213 */ 214 TIME_EVENT_CMD = 0x29, /* both CMD and response */ 215 216 /** 217 * @TIME_EVENT_NOTIFICATION: &struct iwl_time_event_notif 218 */ 219 TIME_EVENT_NOTIFICATION = 0x2a, 220 221 /** 222 * @BINDING_CONTEXT_CMD: 223 * &struct iwl_binding_cmd or &struct iwl_binding_cmd_v1 224 */ 225 BINDING_CONTEXT_CMD = 0x2b, 226 227 /** 228 * @TIME_QUOTA_CMD: &struct iwl_time_quota_cmd 229 */ 230 TIME_QUOTA_CMD = 0x2c, 231 232 /** 233 * @NON_QOS_TX_COUNTER_CMD: 234 * command is &struct iwl_nonqos_seq_query_cmd 235 */ 236 NON_QOS_TX_COUNTER_CMD = 0x2d, 237 238 /** 239 * @LEDS_CMD: command is &struct iwl_led_cmd 240 */ 241 LEDS_CMD = 0x48, 242 243 /** 244 * @LQ_CMD: using &struct iwl_lq_cmd 245 */ 246 LQ_CMD = 0x4e, 247 248 /** 249 * @FW_PAGING_BLOCK_CMD: 250 * &struct iwl_fw_paging_cmd 251 */ 252 FW_PAGING_BLOCK_CMD = 0x4f, 253 254 /** 255 * @SCAN_OFFLOAD_REQUEST_CMD: uses &struct iwl_scan_req_lmac 256 */ 257 SCAN_OFFLOAD_REQUEST_CMD = 0x51, 258 259 /** 260 * @SCAN_OFFLOAD_ABORT_CMD: abort the scan - no further contents 261 */ 262 SCAN_OFFLOAD_ABORT_CMD = 0x52, 263 264 /** 265 * @HOT_SPOT_CMD: uses &struct iwl_hs20_roc_req 266 */ 267 HOT_SPOT_CMD = 0x53, 268 269 /** 270 * @WNM_80211V_TIMING_MEASUREMENT_NOTIFICATION: Time Sync 271 * measurement notification for TM/FTM. Sent on receipt of 272 * respective WNM action frame for TM protocol or public action 273 * frame for FTM protocol from peer device along with additional 274 * meta data specified in &struct iwl_time_msmt_notify 275 */ 276 WNM_80211V_TIMING_MEASUREMENT_NOTIFICATION = 0x67, 277 278 /** 279 * @WNM_80211V_TIMING_MEASUREMENT_CONFIRM_NOTIFICATION: Time Sync 280 * measurement confirmation notification for TM/FTM. Sent on 281 * receipt of Ack from peer for previously Tx'ed TM/FTM 282 * action frame along with additional meta data specified in 283 * &struct iwl_time_msmt_cfm_notify 284 */ 285 WNM_80211V_TIMING_MEASUREMENT_CONFIRM_NOTIFICATION = 0x68, 286 287 /** 288 * @SCAN_OFFLOAD_COMPLETE: 289 * notification, &struct iwl_periodic_scan_complete 290 */ 291 SCAN_OFFLOAD_COMPLETE = 0x6D, 292 293 /** 294 * @SCAN_OFFLOAD_UPDATE_PROFILES_CMD: 295 * update scan offload (scheduled scan) profiles/blocklist/etc. 296 */ 297 SCAN_OFFLOAD_UPDATE_PROFILES_CMD = 0x6E, 298 299 /** 300 * @MATCH_FOUND_NOTIFICATION: scan match found 301 */ 302 MATCH_FOUND_NOTIFICATION = 0xd9, 303 304 /** 305 * @SCAN_ITERATION_COMPLETE: 306 * uses &struct iwl_lmac_scan_complete_notif 307 */ 308 SCAN_ITERATION_COMPLETE = 0xe7, 309 310 /* Phy */ 311 /** 312 * @PHY_CONFIGURATION_CMD: &struct iwl_phy_cfg_cmd_v1 or &struct iwl_phy_cfg_cmd_v3 313 */ 314 PHY_CONFIGURATION_CMD = 0x6a, 315 316 /** 317 * @CALIB_RES_NOTIF_PHY_DB: &struct iwl_calib_res_notif_phy_db 318 */ 319 CALIB_RES_NOTIF_PHY_DB = 0x6b, 320 321 /** 322 * @PHY_DB_CMD: &struct iwl_phy_db_cmd 323 */ 324 PHY_DB_CMD = 0x6c, 325 326 /** 327 * @POWER_TABLE_CMD: &struct iwl_device_power_cmd 328 */ 329 POWER_TABLE_CMD = 0x77, 330 331 /** 332 * @PSM_UAPSD_AP_MISBEHAVING_NOTIFICATION: 333 * &struct iwl_uapsd_misbehaving_ap_notif 334 */ 335 PSM_UAPSD_AP_MISBEHAVING_NOTIFICATION = 0x78, 336 337 /** 338 * @LTR_CONFIG: &struct iwl_ltr_config_cmd 339 */ 340 LTR_CONFIG = 0xee, 341 342 /** 343 * @REPLY_THERMAL_MNG_BACKOFF: 344 * Thermal throttling command 345 */ 346 REPLY_THERMAL_MNG_BACKOFF = 0x7e, 347 348 /** 349 * @NVM_ACCESS_CMD: using &struct iwl_nvm_access_cmd 350 */ 351 NVM_ACCESS_CMD = 0x88, 352 353 /** 354 * @BEACON_NOTIFICATION: &struct iwl_extended_beacon_notif 355 */ 356 BEACON_NOTIFICATION = 0x90, 357 358 /** 359 * @BEACON_TEMPLATE_CMD: 360 * Uses one of &struct iwl_mac_beacon_cmd_v6, 361 * &struct iwl_mac_beacon_cmd_v7 or &struct iwl_mac_beacon_cmd 362 * depending on the device version. 363 */ 364 BEACON_TEMPLATE_CMD = 0x91, 365 /** 366 * @TX_ANT_CONFIGURATION_CMD: &struct iwl_tx_ant_cfg_cmd 367 */ 368 TX_ANT_CONFIGURATION_CMD = 0x98, 369 370 /** 371 * @STATISTICS_CMD: 372 * one of &struct iwl_statistics_cmd, 373 * &struct iwl_notif_statistics_v11, 374 * &struct iwl_notif_statistics_v10, 375 * &struct iwl_notif_statistics, 376 * &struct iwl_statistics_operational_ntfy_ver_14 377 */ 378 STATISTICS_CMD = 0x9c, 379 380 /** 381 * @STATISTICS_NOTIFICATION: 382 * one of &struct iwl_notif_statistics_v10, 383 * &struct iwl_notif_statistics_v11, 384 * &struct iwl_notif_statistic, 385 * &struct iwl_statistics_operational_ntfy_ver_14 386 * &struct iwl_statistics_operational_ntfy 387 */ 388 STATISTICS_NOTIFICATION = 0x9d, 389 390 /** 391 * @EOSP_NOTIFICATION: 392 * Notify that a service period ended, 393 * &struct iwl_mvm_eosp_notification 394 */ 395 EOSP_NOTIFICATION = 0x9e, 396 397 /** 398 * @REDUCE_TX_POWER_CMD: 399 * &struct iwl_dev_tx_power_cmd 400 */ 401 REDUCE_TX_POWER_CMD = 0x9f, 402 403 /** 404 * @MISSED_BEACONS_NOTIFICATION: &struct iwl_missed_beacons_notif_v4 405 */ 406 MISSED_BEACONS_NOTIFICATION = 0xa2, 407 408 /** 409 * @MAC_PM_POWER_TABLE: using &struct iwl_mac_power_cmd 410 */ 411 MAC_PM_POWER_TABLE = 0xa9, 412 413 /** 414 * @MFUART_LOAD_NOTIFICATION: &struct iwl_mfuart_load_notif 415 */ 416 MFUART_LOAD_NOTIFICATION = 0xb1, 417 418 /** 419 * @RSS_CONFIG_CMD: &struct iwl_rss_config_cmd 420 */ 421 RSS_CONFIG_CMD = 0xb3, 422 423 /** 424 * @REPLY_RX_PHY_CMD: &struct iwl_rx_phy_info 425 */ 426 REPLY_RX_PHY_CMD = 0xc0, 427 428 /** 429 * @REPLY_RX_MPDU_CMD: 430 * &struct iwl_rx_mpdu_res_start or &struct iwl_rx_mpdu_desc 431 */ 432 REPLY_RX_MPDU_CMD = 0xc1, 433 434 /** 435 * @BAR_FRAME_RELEASE: Frame release from BAR notification, used for 436 * multi-TID BAR (previously, the BAR frame itself was reported 437 * instead). Uses &struct iwl_bar_frame_release. 438 */ 439 BAR_FRAME_RELEASE = 0xc2, 440 441 /** 442 * @FRAME_RELEASE: 443 * Frame release (reorder helper) notification, uses 444 * &struct iwl_frame_release 445 */ 446 FRAME_RELEASE = 0xc3, 447 448 /** 449 * @BA_NOTIF: 450 * BlockAck notification, uses &struct iwl_mvm_compressed_ba_notif 451 * or &struct iwl_mvm_ba_notif depending on the HW 452 */ 453 BA_NOTIF = 0xc5, 454 455 /* Location Aware Regulatory */ 456 /** 457 * @MCC_UPDATE_CMD: using &struct iwl_mcc_update_cmd 458 */ 459 MCC_UPDATE_CMD = 0xc8, 460 461 /** 462 * @MCC_CHUB_UPDATE_CMD: using &struct iwl_mcc_chub_notif 463 */ 464 MCC_CHUB_UPDATE_CMD = 0xc9, 465 466 /** 467 * @MARKER_CMD: trace marker command, uses &struct iwl_mvm_marker 468 * with &struct iwl_mvm_marker_rsp 469 */ 470 MARKER_CMD = 0xcb, 471 472 /** 473 * @BT_PROFILE_NOTIFICATION: &struct iwl_bt_coex_prof_old_notif 474 */ 475 BT_PROFILE_NOTIFICATION = 0xce, 476 477 /** 478 * @BT_CONFIG: &struct iwl_bt_coex_cmd 479 */ 480 BT_CONFIG = 0x9b, 481 482 /** 483 * @BT_COEX_UPDATE_REDUCED_TXP: 484 * &struct iwl_bt_coex_reduced_txp_update_cmd 485 */ 486 BT_COEX_UPDATE_REDUCED_TXP = 0x5c, 487 488 /** 489 * @BT_COEX_CI: &struct iwl_bt_coex_ci_cmd 490 */ 491 BT_COEX_CI = 0x5d, 492 493 /** 494 * @REPLY_SF_CFG_CMD: &struct iwl_sf_cfg_cmd 495 */ 496 REPLY_SF_CFG_CMD = 0xd1, 497 /** 498 * @REPLY_BEACON_FILTERING_CMD: &struct iwl_beacon_filter_cmd 499 */ 500 REPLY_BEACON_FILTERING_CMD = 0xd2, 501 502 /** 503 * @DTS_MEASUREMENT_NOTIFICATION: 504 * &struct iwl_dts_measurement_notif_v1 or 505 * &struct iwl_dts_measurement_notif_v2 506 */ 507 DTS_MEASUREMENT_NOTIFICATION = 0xdd, 508 509 /** 510 * @LDBG_CONFIG_CMD: configure continuous trace recording 511 */ 512 LDBG_CONFIG_CMD = 0xf6, 513 514 /** 515 * @DEBUG_LOG_MSG: Debugging log data from firmware 516 */ 517 DEBUG_LOG_MSG = 0xf7, 518 519 /** 520 * @MCAST_FILTER_CMD: &struct iwl_mcast_filter_cmd 521 */ 522 MCAST_FILTER_CMD = 0xd0, 523 524 /** 525 * @D3_CONFIG_CMD: &struct iwl_d3_manager_config 526 */ 527 D3_CONFIG_CMD = 0xd3, 528 529 /** 530 * @PROT_OFFLOAD_CONFIG_CMD: Depending on firmware, uses one of 531 * &struct iwl_proto_offload_cmd_v1, &struct iwl_proto_offload_cmd_v2, 532 * &struct iwl_proto_offload_cmd_v3_small, 533 * &struct iwl_proto_offload_cmd_v3_large 534 */ 535 PROT_OFFLOAD_CONFIG_CMD = 0xd4, 536 537 /** 538 * @D0I3_END_CMD: End D0i3/D3 state, no command data 539 */ 540 D0I3_END_CMD = 0xed, 541 542 /** 543 * @WOWLAN_PATTERNS: &struct iwl_wowlan_patterns_cmd 544 */ 545 WOWLAN_PATTERNS = 0xe0, 546 547 /** 548 * @WOWLAN_CONFIGURATION: &struct iwl_wowlan_config_cmd 549 */ 550 WOWLAN_CONFIGURATION = 0xe1, 551 552 /** 553 * @WOWLAN_TSC_RSC_PARAM: &struct iwl_wowlan_rsc_tsc_params_cmd_v4, 554 * &struct iwl_wowlan_rsc_tsc_params_cmd 555 */ 556 WOWLAN_TSC_RSC_PARAM = 0xe2, 557 558 /** 559 * @WOWLAN_TKIP_PARAM: &struct iwl_wowlan_tkip_params_cmd 560 */ 561 WOWLAN_TKIP_PARAM = 0xe3, 562 563 /** 564 * @WOWLAN_KEK_KCK_MATERIAL: &struct iwl_wowlan_kek_kck_material_cmd_v2, 565 * &struct iwl_wowlan_kek_kck_material_cmd_v3 or 566 * &struct iwl_wowlan_kek_kck_material_cmd_v4 567 */ 568 WOWLAN_KEK_KCK_MATERIAL = 0xe4, 569 570 /** 571 * @WOWLAN_GET_STATUSES: response in &struct iwl_wowlan_status_v6, 572 * &struct iwl_wowlan_status_v7, &struct iwl_wowlan_status_v9 or 573 * &struct iwl_wowlan_status_v12 574 */ 575 WOWLAN_GET_STATUSES = 0xe5, 576 577 /** 578 * @SCAN_OFFLOAD_PROFILES_QUERY_CMD: No command data, response is 579 * &struct iwl_scan_offload_profiles_query_v1 580 */ 581 SCAN_OFFLOAD_PROFILES_QUERY_CMD = 0x56, 582 }; 583 584 /** 585 * enum iwl_system_subcmd_ids - system group command IDs 586 */ 587 enum iwl_system_subcmd_ids { 588 /** 589 * @SHARED_MEM_CFG_CMD: 590 * response in &struct iwl_shared_mem_cfg or 591 * &struct iwl_shared_mem_cfg_v2 592 */ 593 SHARED_MEM_CFG_CMD = 0x0, 594 595 /** 596 * @SOC_CONFIGURATION_CMD: &struct iwl_soc_configuration_cmd 597 */ 598 SOC_CONFIGURATION_CMD = 0x01, 599 600 /** 601 * @INIT_EXTENDED_CFG_CMD: &struct iwl_init_extended_cfg_cmd 602 */ 603 INIT_EXTENDED_CFG_CMD = 0x03, 604 605 /** 606 * @FW_ERROR_RECOVERY_CMD: &struct iwl_fw_error_recovery_cmd 607 */ 608 FW_ERROR_RECOVERY_CMD = 0x7, 609 610 /** 611 * @RFI_CONFIG_CMD: &struct iwl_rfi_config_cmd 612 */ 613 RFI_CONFIG_CMD = 0xb, 614 615 /** 616 * @RFI_GET_FREQ_TABLE_CMD: &struct iwl_rfi_config_cmd 617 */ 618 RFI_GET_FREQ_TABLE_CMD = 0xc, 619 620 /** 621 * @SYSTEM_FEATURES_CONTROL_CMD: &struct iwl_system_features_control_cmd 622 */ 623 SYSTEM_FEATURES_CONTROL_CMD = 0xd, 624 625 /** 626 * @SYSTEM_STATISTICS_CMD: &struct iwl_system_statistics_cmd 627 */ 628 SYSTEM_STATISTICS_CMD = 0xf, 629 630 /** 631 * @SYSTEM_STATISTICS_END_NOTIF: &struct iwl_system_statistics_end_notif 632 */ 633 SYSTEM_STATISTICS_END_NOTIF = 0xfd, 634 635 /** 636 * @RFI_DEACTIVATE_NOTIF: &struct iwl_rfi_deactivate_notif 637 */ 638 RFI_DEACTIVATE_NOTIF = 0xff, 639 }; 640 641 /** 642 * enum iwl_statistics_subcmd_ids - Statistics group command IDs 643 */ 644 enum iwl_statistics_subcmd_ids { 645 /** 646 * @STATISTICS_OPER_NOTIF: Notification about operational 647 * statistics &struct iwl_system_statistics_notif_oper 648 */ 649 STATISTICS_OPER_NOTIF = 0x0, 650 651 /** 652 * @STATISTICS_OPER_PART1_NOTIF: Notification about operational part1 653 * statistics &struct iwl_system_statistics_part1_notif_oper 654 */ 655 STATISTICS_OPER_PART1_NOTIF = 0x1, 656 }; 657 658 #endif /* __iwl_fw_api_commands_h__ */ 659