hc
2024-05-10 23fa18eaa71266feff7ba8d83022d9e1cc83c65a
kernel/drivers/net/wireless/intel/iwlwifi/fw/api/debug.h
....@@ -5,9 +5,9 @@
55 *
66 * GPL LICENSE SUMMARY
77 *
8
- * Copyright(c) 2007 - 2014 Intel Corporation. All rights reserved.
98 * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH
109 * Copyright(c) 2016 - 2017 Intel Deutschland GmbH
10
+ * Copyright(c) 2007 - 2014, 2018 - 2020 Intel Corporation
1111 *
1212 * This program is free software; you can redistribute it and/or modify
1313 * it under the terms of version 2 of the GNU General Public License as
....@@ -27,9 +27,9 @@
2727 *
2828 * BSD LICENSE
2929 *
30
- * Copyright(c) 2005 - 2014 Intel Corporation. All rights reserved.
3130 * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH
3231 * Copyright(c) 2016 - 2017 Intel Deutschland GmbH
32
+ * Copyright(c) 2005 - 2014, 2018 - 2020 Intel Corporation
3333 * All rights reserved.
3434 *
3535 * Redistribution and use in source and binary forms, with or without
....@@ -79,6 +79,19 @@
7979 */
8080 UMAC_RD_WR = 0x1,
8181 /**
82
+ * @DBGC_SUSPEND_RESUME:
83
+ * DBGC suspend/resume commad. Uses a single dword as data:
84
+ * 0 - resume DBGC recording
85
+ * 1 - suspend DBGC recording
86
+ */
87
+ DBGC_SUSPEND_RESUME = 0x7,
88
+ /**
89
+ * @BUFFER_ALLOCATION:
90
+ * passes DRAM buffers to a DBGC
91
+ * &struct iwl_buf_alloc_cmd
92
+ */
93
+ BUFFER_ALLOCATION = 0x8,
94
+ /**
8295 * @MFU_ASSERT_DUMP_NTF:
8396 * &struct iwl_mfu_assert_dump_notif
8497 */
....@@ -98,6 +111,16 @@
98111 FW_ERR_OBSOLETE_FUNC = 0x12,
99112 FW_ERR_UNEXPECTED = 0xFE,
100113 FW_ERR_FATAL = 0xFF
114
+};
115
+
116
+/** enum iwl_dbg_suspend_resume_cmds - dbgc suspend resume operations
117
+ * dbgc suspend resume command operations
118
+ * @DBGC_RESUME_CMD: resume dbgc recording
119
+ * @DBGC_SUSPEND_CMD: stop dbgc recording
120
+ */
121
+enum iwl_dbg_suspend_resume_cmds {
122
+ DBGC_RESUME_CMD,
123
+ DBGC_SUSPEND_CMD,
101124 };
102125
103126 /**
....@@ -193,6 +216,8 @@
193216 * @page_buff_size: size of %page_buff_addr
194217 * @lmac_num: number of LMACs (1 or 2)
195218 * @lmac_smem: per - LMAC smem data
219
+ * @rxfifo2_control_addr: start addr of RXF2C
220
+ * @rxfifo2_control_size: size of RXF2C
196221 */
197222 struct iwl_shared_mem_cfg {
198223 __le32 shared_mem_addr;
....@@ -204,8 +229,10 @@
204229 __le32 page_buff_addr;
205230 __le32 page_buff_size;
206231 __le32 lmac_num;
207
- struct iwl_shared_mem_lmac_cfg lmac_smem[2];
208
-} __packed; /* SHARED_MEM_ALLOC_API_S_VER_3 */
232
+ struct iwl_shared_mem_lmac_cfg lmac_smem[3];
233
+ __le32 rxfifo2_control_addr;
234
+ __le32 rxfifo2_control_size;
235
+} __packed; /* SHARED_MEM_ALLOC_API_S_VER_4 */
209236
210237 /**
211238 * struct iwl_mfuart_load_notif - mfuart image version & status
....@@ -333,24 +360,39 @@
333360 __le32 data[];
334361 } __packed; /* DEBUG_(U|L)MAC_RD_WR_RSP_API_S_VER_1 */
335362
336
-#define CONT_REC_COMMAND_SIZE 80
337
-#define ENABLE_CONT_RECORDING 0x15
338
-#define DISABLE_CONT_RECORDING 0x16
339
-
340
-/*
341
- * struct iwl_continuous_record_mode - recording mode
363
+/**
364
+ * struct iwl_dbg_suspend_resume_cmd - dbgc suspend resume command
365
+ * @operation: suspend or resume operation, uses
366
+ * &enum iwl_dbg_suspend_resume_cmds
342367 */
343
-struct iwl_continuous_record_mode {
344
- __le16 enable_recording;
368
+struct iwl_dbg_suspend_resume_cmd {
369
+ __le32 operation;
345370 } __packed;
346371
347
-/*
348
- * struct iwl_continuous_record_cmd - enable/disable continuous recording
372
+#define BUF_ALLOC_MAX_NUM_FRAGS 16
373
+
374
+/**
375
+ * struct iwl_buf_alloc_frag - a DBGC fragment
376
+ * @addr: base address of the fragment
377
+ * @size: size of the fragment
349378 */
350
-struct iwl_continuous_record_cmd {
351
- struct iwl_continuous_record_mode record_mode;
352
- u8 pad[CONT_REC_COMMAND_SIZE -
353
- sizeof(struct iwl_continuous_record_mode)];
354
-} __packed;
379
+struct iwl_buf_alloc_frag {
380
+ __le64 addr;
381
+ __le32 size;
382
+} __packed; /* FRAGMENT_STRUCTURE_API_S_VER_1 */
383
+
384
+/**
385
+ * struct iwl_buf_alloc_cmd - buffer allocation command
386
+ * @alloc_id: &enum iwl_fw_ini_allocation_id
387
+ * @buf_location: &enum iwl_fw_ini_buffer_location
388
+ * @num_frags: number of fragments
389
+ * @frags: fragments array
390
+ */
391
+struct iwl_buf_alloc_cmd {
392
+ __le32 alloc_id;
393
+ __le32 buf_location;
394
+ __le32 num_frags;
395
+ struct iwl_buf_alloc_frag frags[BUF_ALLOC_MAX_NUM_FRAGS];
396
+} __packed; /* BUFFER_ALLOCATION_CMD_API_S_VER_2 */
355397
356398 #endif /* __iwl_fw_api_debug_h__ */