qcacmn: Add WMI interface support for Direct Buffer Rx module
Direct Buffer Receive provides the driver with a mechanism by which target can transfer information directly into host memory via DMA. Add support for the following service/events/commands - 1. WMI_SERVICE_SUPPORT_DMA 2. WMI_DMA_CAPABILITIES as part of WMI_SERVICE_READY_EXT_EVENTID 3. WMI_PDEV_DMA_RING_CFG_REQ_CMDID 4. WMI_PDEV_DMA_RING_BUF_RELEASE_EVENTID 5. WMI_DMA_BUF_RELEASE_ENTRY Change-Id: I3949026b4542565c49bb538b9545ea607690c793 CRs-Fixed: 2158304
This commit is contained in:
@@ -2347,6 +2347,17 @@ QDF_STATUS wmi_unified_oem_dma_ring_cfg(void *wmi_hdl,
|
||||
}
|
||||
#endif
|
||||
|
||||
QDF_STATUS wmi_unified_dbr_ring_cfg(void *wmi_hdl,
|
||||
struct direct_buf_rx_cfg_req *cfg)
|
||||
{
|
||||
wmi_unified_t wmi_handle = (wmi_unified_t) wmi_hdl;
|
||||
|
||||
if (wmi_handle->ops->send_dbr_cfg_cmd)
|
||||
return wmi_handle->ops->send_dbr_cfg_cmd(wmi_handle, cfg);
|
||||
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
/**
|
||||
* wmi_unified_start_oem_data_cmd() - start OEM data request to target
|
||||
* @wmi_handle: wmi handle
|
||||
@@ -6759,6 +6770,51 @@ QDF_STATUS wmi_extract_reg_cap_service_ready_ext(
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
QDF_STATUS wmi_extract_dbr_ring_cap_service_ready_ext(
|
||||
void *wmi_hdl,
|
||||
uint8_t *evt_buf, uint8_t idx,
|
||||
struct wlan_psoc_host_dbr_ring_caps *param)
|
||||
{
|
||||
wmi_unified_t wmi_handle = (wmi_unified_t) wmi_hdl;
|
||||
|
||||
if (wmi_handle->ops->extract_dbr_ring_cap_service_ready_ext)
|
||||
return wmi_handle->ops->extract_dbr_ring_cap_service_ready_ext(
|
||||
wmi_handle,
|
||||
evt_buf, idx, param);
|
||||
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
QDF_STATUS wmi_extract_dbr_buf_release_fixed(
|
||||
void *wmi_hdl,
|
||||
uint8_t *evt_buf,
|
||||
struct direct_buf_rx_rsp *param)
|
||||
{
|
||||
wmi_unified_t wmi_handle = (wmi_unified_t) wmi_hdl;
|
||||
|
||||
if (wmi_handle->ops->extract_dbr_buf_release_fixed)
|
||||
return wmi_handle->ops->extract_dbr_buf_release_fixed(
|
||||
wmi_handle,
|
||||
evt_buf, param);
|
||||
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
QDF_STATUS wmi_extract_dbr_buf_release_entry(
|
||||
void *wmi_hdl,
|
||||
uint8_t *evt_buf, uint8_t idx,
|
||||
struct direct_buf_rx_entry *param)
|
||||
{
|
||||
wmi_unified_t wmi_handle = (wmi_unified_t) wmi_hdl;
|
||||
|
||||
if (wmi_handle->ops->extract_dbr_buf_release_entry)
|
||||
return wmi_handle->ops->extract_dbr_buf_release_entry(
|
||||
wmi_handle,
|
||||
evt_buf, idx, param);
|
||||
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
/**
|
||||
* wmi_extract_pdev_utf_event() -
|
||||
* extract UTF data from pdev utf event
|
||||
|
Reference in New Issue
Block a user