qcacmn: Add OEM DATA vendor command support

This command is used to send OEM data binary blobs
from application/service to firmware.

Change-Id: Id806638bf8c53c65b32177969d965290da5701b9
CRs-Fixed: 2477337
This commit is contained in:
Paul Zhang 2019-06-23 20:14:54 +08:00 • committed by nshrivas
commit 5e9e4549d9
6 changed files with 126 additions and 11 deletions

View file

@ -1233,10 +1233,13 @@ wmi_unified_oem_dma_ring_cfg(wmi_unified_t wmi_handle,
#endif
/**
* wmi_unified_start_oem_data_cmd() - start OEM data request to target
* wmi_unified_start_oem_data_cmd() - start oem data request to target
* @wmi_handle: wmi handle
* @data_len: length of OEM data
* @data: OEM data
* @data_len: the length of @data
* @data: the pointer to data buf
*
* This is legacy api for oem data request, using wmi command
* WMI_OEM_REQ_CMDID.
*
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
*/
@ -1244,6 +1247,20 @@ QDF_STATUS wmi_unified_start_oem_data_cmd(wmi_unified_t wmi_handle,
uint32_t data_len,
uint8_t *data);
#ifdef FEATURE_OEM_DATA
/**
* wmi_unified_start_oemv2_data_cmd() - start oem data cmd to target
* @wmi_handle: wmi handle
* @params: oem data params
*
* This is common api for oem data, using wmi command WMI_OEM_DATA_CMDID.
*
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
*/
QDF_STATUS wmi_unified_start_oemv2_data_cmd(wmi_unified_t wmi_handle,
struct oem_data *params);
#endif
/**
* wmi_unified_dfs_phyerr_filter_offload_en_cmd() - enable dfs phyerr filter
* @wmi_handle: wmi handle

View file

@ -656,6 +656,20 @@ struct channel_param {
uint8_t reg_class_id;
};
#ifdef FEATURE_OEM_DATA
/**
* struct oem_data - oem data to be sent to firmware
* @vdev_id: Unique identifier assigned to the vdev
* @data_len: len of data
* @data: the pointer to the buffer containing data
*/
struct oem_data {
uint8_t vdev_id;
size_t data_len;
uint8_t *data;
};
#endif
/**
* struct mac_ssid - mac ssid structure
* @length:

View file

@ -805,8 +805,13 @@ QDF_STATUS (*send_oem_dma_cfg_cmd)(wmi_unified_t wmi_handle,
#endif
QDF_STATUS (*send_start_oem_data_cmd)(wmi_unified_t wmi_handle,
uint32_t data_len,
uint8_t *data);
uint32_t data_len,
uint8_t *data);
#ifdef FEATURE_OEM_DATA
QDF_STATUS (*send_start_oemv2_data_cmd)(wmi_unified_t wmi_handle,
struct oem_data *params);
#endif
QDF_STATUS
(*send_dfs_phyerr_filter_offload_en_cmd)(wmi_unified_t wmi_handle,