qcacmn: Cache ARP/NS offload request at wma layer

qcacld-2.0 to qcacmn propagation

As Current WMI interface need both the ARP/NS configuration
in single command. To support active offload host need to
cache the ARP/NS at wma layer so host can fill the other
request and configure down to firmware complete request
(ARP+NS).

Change-Id: Ie0a57d216379817ff0ae48f4f582c9108e8ecca1
CRs-Fixed: 1067683
This commit is contained in:
Mukul Sharma
2016-09-07 20:31:47 +05:30
committed by qcabuildsw
parent 9da7e04134
commit ac755cd673
3 changed files with 18 additions and 3 deletions

View File

@@ -796,7 +796,9 @@ QDF_STATUS wmi_unified_pdev_set_dual_mac_config_cmd(void *wmi_hdl,
struct wmi_dual_mac_config *msg); struct wmi_dual_mac_config *msg);
QDF_STATUS wmi_unified_enable_arp_ns_offload_cmd(void *wmi_hdl, QDF_STATUS wmi_unified_enable_arp_ns_offload_cmd(void *wmi_hdl,
struct host_offload_req_param *param, bool arp_only, struct host_offload_req_param *arp_offload_req,
struct host_offload_req_param *ns_offload_req,
bool arp_only,
uint8_t vdev_id); uint8_t vdev_id);
QDF_STATUS wmi_unified_set_led_flashing_cmd(void *wmi_hdl, QDF_STATUS wmi_unified_set_led_flashing_cmd(void *wmi_hdl,

View File

@@ -660,7 +660,9 @@ QDF_STATUS (*send_pdev_set_dual_mac_config_cmd)(wmi_unified_t wmi_handle,
struct wmi_dual_mac_config *msg); struct wmi_dual_mac_config *msg);
QDF_STATUS (*send_enable_arp_ns_offload_cmd)(wmi_unified_t wmi_handle, QDF_STATUS (*send_enable_arp_ns_offload_cmd)(wmi_unified_t wmi_handle,
struct host_offload_req_param *param, bool arp_only, struct host_offload_req_param *arp_offload_req,
struct host_offload_req_param *ns_offload_req,
bool arp_only,
uint8_t vdev_id); uint8_t vdev_id);
QDF_STATUS (*send_set_led_flashing_cmd)(wmi_unified_t wmi_handle, QDF_STATUS (*send_set_led_flashing_cmd)(wmi_unified_t wmi_handle,

View File

@@ -511,8 +511,19 @@ QDF_STATUS send_pdev_set_hw_mode_cmd_tlv(wmi_unified_t wmi_handle,
QDF_STATUS send_soc_set_dual_mac_config_cmd_tlv(wmi_unified_t wmi_handle, QDF_STATUS send_soc_set_dual_mac_config_cmd_tlv(wmi_unified_t wmi_handle,
struct wmi_dual_mac_config *msg); struct wmi_dual_mac_config *msg);
static void fill_arp_offload_params_tlv(wmi_unified_t wmi_handle,
struct host_offload_req_param *offload_req, uint8_t **buf_ptr);
static void fill_ns_offload_params_tlv(wmi_unified_t wmi_handle,
struct host_offload_req_param *offload_req, uint8_t **buf_ptr);
static void fill_nsoffload_ext_tlv(wmi_unified_t wmi_handle,
struct host_offload_req_param *offload_req, uint8_t **buf_ptr);
QDF_STATUS send_enable_arp_ns_offload_cmd_tlv(wmi_unified_t wmi_handle, QDF_STATUS send_enable_arp_ns_offload_cmd_tlv(wmi_unified_t wmi_handle,
struct host_offload_req_param *param, bool arp_only, struct host_offload_req_param *arp_offload_req,
struct host_offload_req_param *ns_offload_req,
bool arp_only,
uint8_t vdev_id); uint8_t vdev_id);
QDF_STATUS send_set_led_flashing_cmd_tlv(wmi_unified_t wmi_handle, QDF_STATUS send_set_led_flashing_cmd_tlv(wmi_unified_t wmi_handle,