diff options
| author | Service qcabuildsw <qcabuildsw@localhost> | 2016-07-26 11:31:03 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-07-26 11:31:03 -0700 |
| commit | f66bf6ef0687d8cb936c9996eba99ae9275f1c2d (patch) | |
| tree | e36a844a48709efcb28488a52ac941bd831367cc | |
| parent | 43491abdd8c64bde5bee4d257b8969a63caaa050 (diff) | |
| parent | 4225c15300cfe8b2f7f8ce22a42ceb2d2348b62d (diff) | |
Merge "qcacld-3.0: Add vendor ID and fix WMI command parameters" into wlan-cld3.driver.lnx.1.1-dev
| -rw-r--r-- | core/hdd/src/wlan_hdd_cfg80211.c | 1 | ||||
| -rw-r--r-- | core/wma/src/wma_features.c | 20 |
2 files changed, 14 insertions, 7 deletions
diff --git a/core/hdd/src/wlan_hdd_cfg80211.c b/core/hdd/src/wlan_hdd_cfg80211.c index 9a4665f98d48..a26d14894d0e 100644 --- a/core/hdd/src/wlan_hdd_cfg80211.c +++ b/core/hdd/src/wlan_hdd_cfg80211.c @@ -6759,6 +6759,7 @@ const struct wiphy_vendor_command hdd_wiphy_vendor_commands[] = { .doit = wlan_hdd_cfg80211_sap_configuration_set }, { + .info.vendor_id = QCA_NL80211_VENDOR_ID, .info.subcmd = QCA_NL80211_VENDOR_SUBCMD_P2P_LISTEN_OFFLOAD_START, .flags = WIPHY_VENDOR_CMD_NEED_WDEV | diff --git a/core/wma/src/wma_features.c b/core/wma/src/wma_features.c index c0bb0ff209c9..c0c8c233826d 100644 --- a/core/wma/src/wma_features.c +++ b/core/wma/src/wma_features.c @@ -7493,15 +7493,20 @@ QDF_STATUS wma_p2p_lo_start(struct sir_p2p_lo_start *params) tp_wma_handle wma = cds_get_context(QDF_MODULE_ID_WMA); uint8_t *buf_ptr; int ret; + int device_types_len_aligned, probe_resp_len_aligned; if (NULL == wma) { WMA_LOGE("%s: wma context is NULL", __func__); return QDF_STATUS_E_INVAL; } - len += 2 * WMI_TLV_HDR_SIZE + - qdf_roundup(params->dev_types_len, sizeof(A_UINT32)) + - qdf_roundup(params->probe_resp_len, sizeof(A_UINT32)); + device_types_len_aligned = qdf_roundup(params->dev_types_len, + sizeof(A_UINT32)); + probe_resp_len_aligned = qdf_roundup(params->probe_resp_len, + sizeof(A_UINT32)); + + len += 2 * WMI_TLV_HDR_SIZE + device_types_len_aligned + + probe_resp_len_aligned; buf = wmi_buf_alloc(wma->wmi_handle, len); if (!buf) { @@ -7524,16 +7529,17 @@ QDF_STATUS wma_p2p_lo_start(struct sir_p2p_lo_start *params) cmd->period = params->period; cmd->interval = params->interval; cmd->count = params->count; + cmd->device_types_len = params->dev_types_len; + cmd->prob_resp_len = params->probe_resp_len; buf_ptr += sizeof(wmi_p2p_lo_start_cmd_fixed_param); WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_BYTE, - qdf_roundup(params->dev_types_len, sizeof(A_UINT32))); + device_types_len_aligned); buf_ptr += WMI_TLV_HDR_SIZE; qdf_mem_copy(buf_ptr, params->device_types, params->dev_types_len); - buf_ptr += qdf_roundup(params->dev_types_len, sizeof(A_UINT32)); - WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_BYTE, - qdf_roundup(params->probe_resp_len, sizeof(A_UINT32))); + buf_ptr += device_types_len_aligned; + WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_BYTE, probe_resp_len_aligned); buf_ptr += WMI_TLV_HDR_SIZE; qdf_mem_copy(buf_ptr, params->probe_resp_tmplt, params->probe_resp_len); |
