diff options
author | Shahar S Matityahu <shahar.s.matityahu@intel.com> | 2019-07-04 17:53:52 +0300 |
---|---|---|
committer | Luca Coelho <luciano.coelho@intel.com> | 2019-09-06 15:52:06 +0300 |
commit | 4d3f5e8e7e3c5783676fbf1c61436e47a4b6b4bd (patch) | |
tree | 4ff87b8717f601b710adb873bef985fc4ceac2c9 /drivers/net/wireless/intel/iwlwifi/fw/api | |
parent | b108d8c782cc21ed22825c72167a9e84c614a3ac (diff) | |
download | linux-4d3f5e8e7e3c5783676fbf1c61436e47a4b6b4bd.tar.bz2 |
iwlwifi: fw api: add DRAM buffer allocation command
Add support code to be able to use the DRAM buffer allocation command,
which allows us to send information about a buffer to the firmware
to use it with the DBGC hardware.
Signed-off-by: Shahar S Matityahu <shahar.s.matityahu@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/fw/api')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/fw/api/debug.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/fw/api/debug.h b/drivers/net/wireless/intel/iwlwifi/fw/api/debug.h index c67a6ab6491c..98e957ecbeed 100644 --- a/drivers/net/wireless/intel/iwlwifi/fw/api/debug.h +++ b/drivers/net/wireless/intel/iwlwifi/fw/api/debug.h @@ -88,6 +88,12 @@ enum iwl_debug_cmds { */ DBGC_SUSPEND_RESUME = 0x7, /** + * @BUFFER_ALLOCATION: + * passes DRAM buffers to a DBGC + * &struct iwl_buf_alloc_cmd + */ + BUFFER_ALLOCATION = 0x8, + /** * @MFU_ASSERT_DUMP_NTF: * &struct iwl_mfu_assert_dump_notif */ @@ -361,4 +367,30 @@ struct iwl_dbg_suspend_resume_cmd { __le32 operation; } __packed; +#define BUF_ALLOC_MAX_NUM_FRAGS 16 + +/** + * struct iwl_buf_alloc_frag - a DBGC fragment + * @addr: base address of the fragment + * @size: size of the fragment + */ +struct iwl_buf_alloc_frag { + __le64 addr; + __le32 size; +} __packed; /* FRAGMENT_STRUCTURE_API_S_VER_1 */ + +/** + * struct iwl_buf_alloc_cmd - buffer allocation command + * @alloc_id: &enum iwl_fw_ini_allocation_id + * @buf_location: &enum iwl_fw_ini_buffer_location + * @num_frags: number of fragments + * @frags: fragments array + */ +struct iwl_buf_alloc_cmd { + __le32 alloc_id; + __le32 buf_location; + __le32 num_frags; + struct iwl_buf_alloc_frag frags[BUF_ALLOC_MAX_NUM_FRAGS]; +} __packed; /* BUFFER_ALLOCATION_CMD_API_S_VER_2 */ + #endif /* __iwl_fw_api_debug_h__ */ |