summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNaveen Rawat <nrawat@qca.qualcomm.com>2016-04-14 16:21:41 -0700
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2016-04-29 15:12:00 +0530
commite1ff8880169cb5e428634f29500b76a37581aed0 (patch)
tree936d5158d4f925e2ec8d4ff8f9d14827b2984868
parent0915b202268c73bb524077d0b180dbb73eb7ed10 (diff)
qcacld-2.0: Update NAN HDD APIs as per vendor definitions changes
Remove usage of following attributes from NAN HDD APIs: 1) QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO_LEN 2) QCA_WLAN_VENDOR_ATTR_NDP_NUM_INSTANCE_ID 3) QCA_WLAN_VENDOR_ATTR_NDP_SCHEDULE_STATUS_CODE 4) ndp_cfg from NDP_CONFRIM 5) Remove mandatory check for ndp_app_info in data initiator Change-Id: I17fe580661f836d45a518a330a63d2c6de8bcf28 CRs-Fixed: CRs-Fixed: 962367
-rw-r--r--CORE/HDD/src/wlan_hdd_nan_datapath.c44
-rw-r--r--CORE/HDD/src/wlan_hdd_nan_datapath.h6
-rw-r--r--CORE/MAC/inc/sirApi.h2
-rw-r--r--CORE/SERVICES/WMA/wma_nan_datapath.c20
4 files changed, 8 insertions, 64 deletions
diff --git a/CORE/HDD/src/wlan_hdd_nan_datapath.c b/CORE/HDD/src/wlan_hdd_nan_datapath.c
index 68374125de09..8635bfbd65cb 100644
--- a/CORE/HDD/src/wlan_hdd_nan_datapath.c
+++ b/CORE/HDD/src/wlan_hdd_nan_datapath.c
@@ -50,12 +50,10 @@ qca_wlan_vendor_ndp_policy[QCA_WLAN_VENDOR_ATTR_NDP_PARAMS_MAX + 1] = {
[QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_SECURITY] = { .type = NLA_U16 },
[QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_QOS] = { .type = NLA_BINARY,
.len = NDP_QOS_INFO_LEN },
- [QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO_LEN] = { .type = NLA_U16 },
[QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO] = { .type = NLA_BINARY,
.len = NDP_APP_INFO_LEN },
[QCA_WLAN_VENDOR_ATTR_NDP_INSTANCE_ID] = { .type = NLA_U32 },
[QCA_WLAN_VENDOR_ATTR_NDP_RESPONSE_CODE] = { .type = NLA_U16 },
- [QCA_WLAN_VENDOR_ATTR_NDP_SCHEDULE_STATUS_CODE] = { .type = NLA_U16 },
[QCA_WLAN_VENDOR_ATTR_NDP_NDI_MAC_ADDR] = { .type = NLA_BINARY,
.len = VOS_MAC_ADDR_SIZE },
[QCA_WLAN_VENDOR_ATTR_NDP_INSTANCE_ID_ARRAY] = { .type = NLA_BINARY,
@@ -531,19 +529,12 @@ static int hdd_ndp_initiator_req_handler(hdd_context_t *hdd_ctx,
nla_data(tb[QCA_WLAN_VENDOR_ATTR_NDP_PEER_DISCOVERY_MAC_ADDR]),
VOS_MAC_ADDR_SIZE);
- if (!tb[QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO_LEN]) {
- hddLog(LOGE, FL("NDP app info len is unavailable"));
- return -EINVAL;
- }
- req.ndp_info.ndp_app_info_len =
- nla_get_u16(tb[QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO_LEN]);
-
- if (!tb[QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO]) {
- hddLog(LOGE, FL("NDP app info is unavailable"));
- return -EINVAL;
+ if (tb[QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO]) {
+ req.ndp_info.ndp_app_info_len =
+ nla_len(tb[QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO]);
+ req.ndp_info.ndp_app_info =
+ nla_data(tb[QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO]);
}
- req.ndp_info.ndp_app_info =
- nla_data(tb[QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO]);
if (tb[QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_QOS]) {
/* at present ndp config stores 4 bytes QOS info only */
@@ -1210,8 +1201,8 @@ static void hdd_ndp_confirm_ind_handler(hdd_adapter_t *adapter,
else
ndp_ctx->active_ndp_sessions[idx]++;
- data_len = (4 * sizeof(uint32_t)) + VOS_MAC_ADDR_SIZE + IFNAMSIZ +
- sizeof(uint16_t) + NLMSG_HDRLEN + (8 * NLA_HDRLEN) +
+ data_len = (3 * sizeof(uint32_t)) + VOS_MAC_ADDR_SIZE + IFNAMSIZ +
+ sizeof(uint16_t) + NLMSG_HDRLEN + (7 * NLA_HDRLEN) +
ndp_confirm->ndp_info.ndp_app_info_len;
vendor_event = cfg80211_vendor_event_alloc(hdd_ctx->wiphy, NULL,
@@ -1238,25 +1229,12 @@ static void hdd_ndp_confirm_ind_handler(hdd_adapter_t *adapter,
IFNAMSIZ, adapter->dev->name))
goto ndp_confirm_nla_failed;
- if (nla_put_u16(vendor_event, QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO_LEN,
- ndp_confirm->ndp_info.ndp_app_info_len))
- goto ndp_confirm_nla_failed;
-
if (ndp_confirm->ndp_info.ndp_app_info_len && nla_put(vendor_event,
QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO,
ndp_confirm->ndp_info.ndp_app_info_len,
ndp_confirm->ndp_info.ndp_app_info))
goto ndp_confirm_nla_failed;
- if (ndp_confirm->ndp_config.ndp_cfg_len) {
- ndp_qos_config = *((uint32_t *)ndp_confirm->ndp_config.ndp_cfg);
- /* at present ndp config stores 4 bytes QOS info only */
- if (nla_put_u32(vendor_event,
- QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_QOS,
- ndp_qos_config))
- goto ndp_confirm_nla_failed;
- }
-
if (nla_put_u32(vendor_event,
QCA_WLAN_VENDOR_ATTR_NDP_RESPONSE_CODE,
ndp_confirm->rsp_code))
@@ -1595,7 +1573,6 @@ ndp_end_rsp_nla_failed:
*
* Following vendor event is sent to cfg80211:
* QCA_WLAN_VENDOR_ATTR_NDP_SUBCMD = QCA_WLAN_VENDOR_ATTR_NDP_END_IND (4 bytes)
- * QCA_WLAN_VENDOR_ATTR_NDP_NUM_INSTANCE_ID (1 byte)
* QCA_WLAN_VENDOR_ATTR_NDP_INSTANCE_ID_ARRAY (4 * NUM_INSTANCE_ID bytes)
*
* Return: none
@@ -1647,8 +1624,7 @@ static void hdd_ndp_end_ind_handler(hdd_adapter_t *adapter,
end_ind->ndp_map[i].num_active_ndp_sessions;
}
- data_len = (sizeof(uint32_t)) +
- sizeof(uint8_t) + NLMSG_HDRLEN + (2 * NLA_HDRLEN) +
+ data_len = (sizeof(uint32_t)) + NLMSG_HDRLEN + (2 * NLA_HDRLEN) +
end_ind->num_ndp_ids * sizeof(*ndp_instance_array);
vendor_event = cfg80211_vendor_event_alloc(hdd_ctx->wiphy, NULL,
@@ -1663,10 +1639,6 @@ static void hdd_ndp_end_ind_handler(hdd_adapter_t *adapter,
QCA_WLAN_VENDOR_ATTR_NDP_END_IND))
goto ndp_end_ind_nla_failed;
- if (nla_put_u8(vendor_event, QCA_WLAN_VENDOR_ATTR_NDP_NUM_INSTANCE_ID,
- end_ind->num_ndp_ids))
- goto ndp_end_ind_nla_failed;
-
if (nla_put(vendor_event, QCA_WLAN_VENDOR_ATTR_NDP_INSTANCE_ID_ARRAY,
end_ind->num_ndp_ids * sizeof(*ndp_instance_array),
ndp_instance_array))
diff --git a/CORE/HDD/src/wlan_hdd_nan_datapath.h b/CORE/HDD/src/wlan_hdd_nan_datapath.h
index 2170d1222af8..cf72826f0599 100644
--- a/CORE/HDD/src/wlan_hdd_nan_datapath.h
+++ b/CORE/HDD/src/wlan_hdd_nan_datapath.h
@@ -67,13 +67,10 @@ struct wireless_dev;
* @QCA_WLAN_VENDOR_ATTR_NDP_IFACE_STR: Iface name
* @QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_SECURITY: Security configuration
* @QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_QOS: Qos configuration
- * @QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO_LEN: Application info length
* @QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO: Application info
* @QCA_WLAN_VENDOR_ATTR_NDP_INSTANCE_ID: NDP instance id
- * @QCA_WLAN_VENDOR_ATTR_NDP_NUM_INSTANCE_ID: Number of NDP instance ids
* @QCA_WLAN_VENDOR_ATTR_NDP_INSTANCE_ID_ARRAY: NDP instance id array
* @QCA_WLAN_VENDOR_ATTR_NDP_RESPONSE_CODE: Schedule response
- * @QCA_WLAN_VENDOR_ATTR_NDP_SCHEDULE_STATUS_CODE: schedule status
* @QCA_WLAN_VENDOR_ATTR_NDP_NDI_MAC_ADDR: NDI mac address
* @QCA_WLAN_VENDOR_ATTR_NDP_DRV_RETURN_TYPE: Driver return status
* @QCA_WLAN_VENDOR_ATTR_NDP_DRV_RETURN_VALUE: Driver return value
@@ -88,13 +85,10 @@ enum qca_wlan_vendor_attr_ndp_params {
QCA_WLAN_VENDOR_ATTR_NDP_IFACE_STR,
QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_SECURITY,
QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_QOS,
- QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO_LEN,
QCA_WLAN_VENDOR_ATTR_NDP_APP_INFO,
QCA_WLAN_VENDOR_ATTR_NDP_INSTANCE_ID,
- QCA_WLAN_VENDOR_ATTR_NDP_NUM_INSTANCE_ID,
QCA_WLAN_VENDOR_ATTR_NDP_INSTANCE_ID_ARRAY,
QCA_WLAN_VENDOR_ATTR_NDP_RESPONSE_CODE,
- QCA_WLAN_VENDOR_ATTR_NDP_SCHEDULE_STATUS_CODE,
QCA_WLAN_VENDOR_ATTR_NDP_NDI_MAC_ADDR,
QCA_WLAN_VENDOR_ATTR_NDP_DRV_RETURN_TYPE,
QCA_WLAN_VENDOR_ATTR_NDP_DRV_RETURN_VALUE,
diff --git a/CORE/MAC/inc/sirApi.h b/CORE/MAC/inc/sirApi.h
index acf99ee728d8..be2d1fbf71f4 100644
--- a/CORE/MAC/inc/sirApi.h
+++ b/CORE/MAC/inc/sirApi.h
@@ -7218,7 +7218,6 @@ struct ndp_responder_rsp_event {
* @ndp_instance_id: ndp instance id for which confirm is being generated
* @peer_ndi_mac_addr: peer NDI mac address
* @rsp_code: ndp response code
- * @ndp_config: ndp configuration
* @ndp_info: ndp application info
*
*/
@@ -7227,7 +7226,6 @@ struct ndp_confirm_event {
uint32_t ndp_instance_id;
v_MACADDR_t peer_ndi_mac_addr;
enum ndp_response_code rsp_code;
- struct ndp_cfg ndp_config;
struct ndp_app_info ndp_info;
};
diff --git a/CORE/SERVICES/WMA/wma_nan_datapath.c b/CORE/SERVICES/WMA/wma_nan_datapath.c
index abbfdf054e7d..a9d32137d2ca 100644
--- a/CORE/SERVICES/WMA/wma_nan_datapath.c
+++ b/CORE/SERVICES/WMA/wma_nan_datapath.c
@@ -602,31 +602,12 @@ static int wma_ndp_confirm_event_handler(void *handle, uint8_t *event_info,
WMI_MAC_ADDR_TO_CHAR_ARRAY(&fixed_params->peer_ndi_mac_addr,
ndp_confirm->peer_ndi_mac_addr.bytes);
- vos_mem_copy(&ndp_confirm->ndp_config, event->ndp_cfg,
- fixed_params->ndp_cfg_len);
-
- ndp_confirm->ndp_config.ndp_cfg_len = fixed_params->ndp_cfg_len;
ndp_confirm->ndp_info.ndp_app_info_len = fixed_params->ndp_app_info_len;
-
- if (ndp_confirm->ndp_config.ndp_cfg_len) {
- ndp_confirm->ndp_config.ndp_cfg =
- vos_mem_malloc(ndp_confirm->ndp_config.ndp_cfg_len);
- if (NULL == ndp_confirm->ndp_config.ndp_cfg) {
- WMA_LOGE(FL("malloc failed"));
- vos_mem_free(ndp_confirm);
- return VOS_STATUS_E_NOMEM;
- }
- vos_mem_copy(ndp_confirm->ndp_config.ndp_cfg,
- event->ndp_cfg,
- ndp_confirm->ndp_config.ndp_cfg_len);
- }
-
if (ndp_confirm->ndp_info.ndp_app_info_len) {
ndp_confirm->ndp_info.ndp_app_info =
vos_mem_malloc(fixed_params->ndp_app_info_len);
if (NULL == ndp_confirm->ndp_info.ndp_app_info) {
WMA_LOGE(FL("malloc failed"));
- vos_mem_free(ndp_confirm->ndp_config.ndp_cfg);
vos_mem_free(ndp_confirm);
return VOS_STATUS_E_NOMEM;
}
@@ -641,7 +622,6 @@ static int wma_ndp_confirm_event_handler(void *handle, uint8_t *event_info,
status = vos_mq_post_message(VOS_MODULE_ID_PE, &msg);
if (!VOS_IS_STATUS_SUCCESS(status)) {
WMA_LOGE(FL("fail to post SIR_HAL_NDP_CONFIRM msg to PE"));
- vos_mem_free(ndp_confirm->ndp_config.ndp_cfg);
vos_mem_free(ndp_confirm->ndp_info.ndp_app_info);
vos_mem_free(ndp_confirm);
}