hc
2024-05-10 23fa18eaa71266feff7ba8d83022d9e1cc83c65a
kernel/drivers/net/wireless/intel/iwlwifi/fw/api/alive.h
....@@ -5,10 +5,9 @@
55 *
66 * GPL LICENSE SUMMARY
77 *
8
- * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
98 * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH
109 * Copyright(c) 2016 - 2017 Intel Deutschland GmbH
11
- * Copyright (C) 2018 Intel Corporation
10
+ * Copyright(c) 2012 - 2014, 2018, 2020 Intel Corporation
1211 *
1312 * This program is free software; you can redistribute it and/or modify
1413 * it under the terms of version 2 of the GNU General Public License as
....@@ -31,7 +30,7 @@
3130 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
3231 * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH
3332 * Copyright(c) 2016 - 2017 Intel Deutschland GmbH
34
- * Copyright (C) 2018 Intel Corporation
33
+ * Copyright(c) 2012 - 2014, 2018, 2020 Intel Corporation
3534 * All rights reserved.
3635 *
3736 * Redistribution and use in source and binary forms, with or without
....@@ -96,14 +95,7 @@
9695
9796 #define IWL_ALIVE_FLG_RFKILL BIT(0)
9897
99
-struct iwl_lmac_alive {
100
- __le32 ucode_major;
101
- __le32 ucode_minor;
102
- u8 ver_subtype;
103
- u8 ver_type;
104
- u8 mac;
105
- u8 opt;
106
- __le32 timestamp;
98
+struct iwl_lmac_debug_addrs {
10799 __le32 error_event_table_ptr; /* SRAM address for error log */
108100 __le32 log_event_table_ptr; /* SRAM address for LMAC event log */
109101 __le32 cpu_register_ptr;
....@@ -112,28 +104,55 @@
112104 __le32 scd_base_ptr; /* SRAM address for SCD */
113105 __le32 st_fwrd_addr; /* pointer to Store and forward */
114106 __le32 st_fwrd_size;
107
+} __packed; /* UCODE_DEBUG_ADDRS_API_S_VER_2 */
108
+
109
+struct iwl_lmac_alive {
110
+ __le32 ucode_major;
111
+ __le32 ucode_minor;
112
+ u8 ver_subtype;
113
+ u8 ver_type;
114
+ u8 mac;
115
+ u8 opt;
116
+ __le32 timestamp;
117
+ struct iwl_lmac_debug_addrs dbg_ptrs;
115118 } __packed; /* UCODE_ALIVE_NTFY_API_S_VER_3 */
119
+
120
+struct iwl_umac_debug_addrs {
121
+ __le32 error_info_addr; /* SRAM address for UMAC error log */
122
+ __le32 dbg_print_buff_addr;
123
+} __packed; /* UMAC_DEBUG_ADDRS_API_S_VER_1 */
116124
117125 struct iwl_umac_alive {
118126 __le32 umac_major; /* UMAC version: major */
119127 __le32 umac_minor; /* UMAC version: minor */
120
- __le32 error_info_addr; /* SRAM address for UMAC error log */
121
- __le32 dbg_print_buff_addr;
128
+ struct iwl_umac_debug_addrs dbg_ptrs;
122129 } __packed; /* UMAC_ALIVE_DATA_API_S_VER_2 */
123130
124
-struct mvm_alive_resp_v3 {
131
+struct iwl_sku_id {
132
+ __le32 data[3];
133
+} __packed; /* SKU_ID_API_S_VER_1 */
134
+
135
+struct iwl_alive_ntf_v3 {
125136 __le16 status;
126137 __le16 flags;
127138 struct iwl_lmac_alive lmac_data;
128139 struct iwl_umac_alive umac_data;
129
-} __packed; /* ALIVE_RES_API_S_VER_3 */
140
+} __packed; /* UCODE_ALIVE_NTFY_API_S_VER_3 */
130141
131
-struct mvm_alive_resp {
142
+struct iwl_alive_ntf_v4 {
132143 __le16 status;
133144 __le16 flags;
134145 struct iwl_lmac_alive lmac_data[2];
135146 struct iwl_umac_alive umac_data;
136
-} __packed; /* ALIVE_RES_API_S_VER_4 */
147
+} __packed; /* UCODE_ALIVE_NTFY_API_S_VER_4 */
148
+
149
+struct iwl_alive_ntf_v5 {
150
+ __le16 status;
151
+ __le16 flags;
152
+ struct iwl_lmac_alive lmac_data[2];
153
+ struct iwl_umac_alive umac_data;
154
+ struct iwl_sku_id sku_id;
155
+} __packed; /* UCODE_ALIVE_NTFY_API_S_VER_5 */
137156
138157 /**
139158 * enum iwl_extended_cfg_flag - commands driver may send before
....@@ -189,4 +208,24 @@
189208 __le32 flags;
190209 } __packed; /* CARD_STATE_NTFY_API_S_VER_1 */
191210
211
+/**
212
+ * enum iwl_error_recovery_flags - flags for error recovery cmd
213
+ * @ERROR_RECOVERY_UPDATE_DB: update db from blob sent
214
+ * @ERROR_RECOVERY_END_OF_RECOVERY: end of recovery
215
+ */
216
+enum iwl_error_recovery_flags {
217
+ ERROR_RECOVERY_UPDATE_DB = BIT(0),
218
+ ERROR_RECOVERY_END_OF_RECOVERY = BIT(1),
219
+};
220
+
221
+/**
222
+ * struct iwl_fw_error_recovery_cmd - recovery cmd sent upon assert
223
+ * @flags: &enum iwl_error_recovery_flags
224
+ * @buf_size: db buffer size in bytes
225
+ */
226
+struct iwl_fw_error_recovery_cmd {
227
+ __le32 flags;
228
+ __le32 buf_size;
229
+} __packed; /* ERROR_RECOVERY_CMD_HDR_API_S_VER_1 */
230
+
192231 #endif /* __iwl_fw_api_alive_h__ */