| .. | .. |
|---|
| 5 | 5 | * |
|---|
| 6 | 6 | * GPL LICENSE SUMMARY |
|---|
| 7 | 7 | * |
|---|
| 8 | | - * Copyright(c) 2007 - 2014 Intel Corporation. All rights reserved. |
|---|
| 9 | 8 | * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH |
|---|
| 10 | 9 | * Copyright(c) 2016 - 2017 Intel Deutschland GmbH |
|---|
| 10 | + * Copyright(c) 2007 - 2014, 2018 - 2020 Intel Corporation |
|---|
| 11 | 11 | * |
|---|
| 12 | 12 | * This program is free software; you can redistribute it and/or modify |
|---|
| 13 | 13 | * it under the terms of version 2 of the GNU General Public License as |
|---|
| .. | .. |
|---|
| 27 | 27 | * |
|---|
| 28 | 28 | * BSD LICENSE |
|---|
| 29 | 29 | * |
|---|
| 30 | | - * Copyright(c) 2005 - 2014 Intel Corporation. All rights reserved. |
|---|
| 31 | 30 | * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH |
|---|
| 32 | 31 | * Copyright(c) 2016 - 2017 Intel Deutschland GmbH |
|---|
| 32 | + * Copyright(c) 2005 - 2014, 2018 - 2020 Intel Corporation |
|---|
| 33 | 33 | * All rights reserved. |
|---|
| 34 | 34 | * |
|---|
| 35 | 35 | * Redistribution and use in source and binary forms, with or without |
|---|
| .. | .. |
|---|
| 79 | 79 | */ |
|---|
| 80 | 80 | UMAC_RD_WR = 0x1, |
|---|
| 81 | 81 | /** |
|---|
| 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 | + /** |
|---|
| 82 | 95 | * @MFU_ASSERT_DUMP_NTF: |
|---|
| 83 | 96 | * &struct iwl_mfu_assert_dump_notif |
|---|
| 84 | 97 | */ |
|---|
| .. | .. |
|---|
| 98 | 111 | FW_ERR_OBSOLETE_FUNC = 0x12, |
|---|
| 99 | 112 | FW_ERR_UNEXPECTED = 0xFE, |
|---|
| 100 | 113 | 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, |
|---|
| 101 | 124 | }; |
|---|
| 102 | 125 | |
|---|
| 103 | 126 | /** |
|---|
| .. | .. |
|---|
| 193 | 216 | * @page_buff_size: size of %page_buff_addr |
|---|
| 194 | 217 | * @lmac_num: number of LMACs (1 or 2) |
|---|
| 195 | 218 | * @lmac_smem: per - LMAC smem data |
|---|
| 219 | + * @rxfifo2_control_addr: start addr of RXF2C |
|---|
| 220 | + * @rxfifo2_control_size: size of RXF2C |
|---|
| 196 | 221 | */ |
|---|
| 197 | 222 | struct iwl_shared_mem_cfg { |
|---|
| 198 | 223 | __le32 shared_mem_addr; |
|---|
| .. | .. |
|---|
| 204 | 229 | __le32 page_buff_addr; |
|---|
| 205 | 230 | __le32 page_buff_size; |
|---|
| 206 | 231 | __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 */ |
|---|
| 209 | 236 | |
|---|
| 210 | 237 | /** |
|---|
| 211 | 238 | * struct iwl_mfuart_load_notif - mfuart image version & status |
|---|
| .. | .. |
|---|
| 333 | 360 | __le32 data[]; |
|---|
| 334 | 361 | } __packed; /* DEBUG_(U|L)MAC_RD_WR_RSP_API_S_VER_1 */ |
|---|
| 335 | 362 | |
|---|
| 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 |
|---|
| 342 | 367 | */ |
|---|
| 343 | | -struct iwl_continuous_record_mode { |
|---|
| 344 | | - __le16 enable_recording; |
|---|
| 368 | +struct iwl_dbg_suspend_resume_cmd { |
|---|
| 369 | + __le32 operation; |
|---|
| 345 | 370 | } __packed; |
|---|
| 346 | 371 | |
|---|
| 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 |
|---|
| 349 | 378 | */ |
|---|
| 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 */ |
|---|
| 355 | 397 | |
|---|
| 356 | 398 | #endif /* __iwl_fw_api_debug_h__ */ |
|---|