|
@@ -540,16 +540,13 @@ rrm_process_beacon_report_req(struct mac_context *mac,
|
|
|
qdf_snprintf(req_ssid, WLAN_SSID_MAX_LEN, "%s",
|
|
|
pBeaconReq->measurement_request.Beacon.SSID.ssid);
|
|
|
|
|
|
- pe_nofl_info("RX: [802.11 BCN_RPT] SSID:%s BSSID:%pM Token:%d op_class:%d ch:%d meas_mode:%d meas_duration:%d",
|
|
|
+ pe_nofl_info("RX: [802.11 BCN_RPT] SSID:%s BSSID:%pM Token:%d op_class:%d ch:%d meas_mode:%d meas_duration:%d max_dur: %d sign: %d max_meas_dur: %d",
|
|
|
req_ssid, pBeaconReq->measurement_request.Beacon.BSSID,
|
|
|
pBeaconReq->measurement_token,
|
|
|
pBeaconReq->measurement_request.Beacon.regClass,
|
|
|
pBeaconReq->measurement_request.Beacon.channel,
|
|
|
pBeaconReq->measurement_request.Beacon.meas_mode,
|
|
|
- measDuration);
|
|
|
-
|
|
|
- pe_debug("RX: [802.11 BCN_RPT] max_dur: %d sign: %d max_meas_dur: %d",
|
|
|
- maxDuration, sign, maxMeasduration);
|
|
|
+ measDuration, maxDuration, sign, maxMeasduration);
|
|
|
|
|
|
if (measDuration == 0 &&
|
|
|
pBeaconReq->measurement_request.Beacon.meas_mode !=
|
|
@@ -603,11 +600,6 @@ rrm_process_beacon_report_req(struct mac_context *mac,
|
|
|
pBeaconReq->measurement_request.Beacon.
|
|
|
RequestedInfo.requested_eids,
|
|
|
pCurrentReq->request.Beacon.reqIes.num);
|
|
|
- pe_debug("RX: [802.11 BCN_RPT] Requested EIDs:[%d]",
|
|
|
- pCurrentReq->request.Beacon.reqIes.num);
|
|
|
- QDF_TRACE_HEX_DUMP(QDF_MODULE_ID_PE, QDF_TRACE_LEVEL_DEBUG,
|
|
|
- pCurrentReq->request.Beacon.reqIes.pElementIds,
|
|
|
- pCurrentReq->request.Beacon.reqIes.num);
|
|
|
}
|
|
|
|
|
|
/* Prepare the request to send to SME. */
|
|
@@ -778,24 +770,16 @@ rrm_fill_beacon_ies(struct mac_context *mac, uint8_t *pIes,
|
|
|
pe_debug("EID = %d, len = %d total = %d",
|
|
|
*pBcnIes, *(pBcnIes + 1), len);
|
|
|
|
|
|
- if (BcnNumIes < len) {
|
|
|
+ if (BcnNumIes < len || len <= 2) {
|
|
|
pe_err("RRM: Invalid IE len:%d exp_len:%d",
|
|
|
len, BcnNumIes);
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
- if (len <= 2) {
|
|
|
- pe_err("RRM: Invalid IE");
|
|
|
- break;
|
|
|
- }
|
|
|
-
|
|
|
i = 0;
|
|
|
do {
|
|
|
if ((!eids) || (*pBcnIes == eids[i])) {
|
|
|
if (((*pNumIes) + len) < pIesMaxSize) {
|
|
|
- pe_debug("Adding Eid %d, len=%d",
|
|
|
- *pBcnIes, len);
|
|
|
-
|
|
|
qdf_mem_copy(pIes, pBcnIes, len);
|
|
|
pIes += len;
|
|
|
*pNumIes += len;
|
|
@@ -938,15 +922,14 @@ rrm_process_beacon_report_xmit(struct mac_context *mac_ctx,
|
|
|
bss_desc->bssId, sizeof(tSirMacAddr));
|
|
|
}
|
|
|
|
|
|
+ pe_debug("TX: [802.11 BCN_RPT] reporting detail requested %d",
|
|
|
+ curr_req->request.Beacon.reportingDetail);
|
|
|
switch (curr_req->request.Beacon.reportingDetail) {
|
|
|
case BEACON_REPORTING_DETAIL_NO_FF_IE:
|
|
|
/* 0: No need to include any elements. */
|
|
|
- pe_debug("TX: [802.11 BCN_RPT] No reporting detail requested");
|
|
|
break;
|
|
|
case BEACON_REPORTING_DETAIL_ALL_FF_REQ_IE:
|
|
|
/* 1: Include all FFs and Requested Ies. */
|
|
|
- pe_debug("TX: [802.11 BCN_RPT] Only requested IEs in reporting detail requested");
|
|
|
-
|
|
|
if (!bss_desc)
|
|
|
break;
|
|
|
|
|
@@ -962,7 +945,6 @@ rrm_process_beacon_report_xmit(struct mac_context *mac_ctx,
|
|
|
case BEACON_REPORTING_DETAIL_ALL_FF_IE:
|
|
|
/* 2: default - Include all FFs and all Ies. */
|
|
|
default:
|
|
|
- pe_debug("TX: [802.11 BCN_RPT] Default all IEs and FFs");
|
|
|
if (!bss_desc)
|
|
|
break;
|
|
|
|
|
@@ -1020,9 +1002,6 @@ rrm_process_beacon_report_xmit(struct mac_context *mac_ctx,
|
|
|
for (j = 0; j < num_frames; j++) {
|
|
|
num_reports_in_frame = QDF_MIN((i - report_index),
|
|
|
RADIO_REPORTS_MAX_IN_A_FRAME);
|
|
|
-
|
|
|
- pe_debug("TX: [802.11 BCN_RPT] Sending Action frame number %d",
|
|
|
- num_reports_in_frame);
|
|
|
lim_send_radio_measure_report_action_frame(mac_ctx,
|
|
|
curr_req->dialog_token, num_reports_in_frame,
|
|
|
(j == num_frames - 1) ? true : false,
|
|
@@ -1038,7 +1017,7 @@ end:
|
|
|
qdf_mem_free(beacon_xmit_ind->pBssDescription[counter]);
|
|
|
|
|
|
if (beacon_xmit_ind->fMeasureDone) {
|
|
|
- pe_debug("Measurement done....cleanup the context");
|
|
|
+ pe_debug("Measurement done.");
|
|
|
rrm_cleanup(mac_ctx);
|
|
|
}
|
|
|
|
|
@@ -1072,8 +1051,7 @@ static void rrm_process_beacon_request_failure(struct mac_context *mac,
|
|
|
pReport->incapable = 1;
|
|
|
break;
|
|
|
default:
|
|
|
- pe_err("RX [802.11 BCN_RPT] Beacon request processing failed no report sent with status %d",
|
|
|
- status);
|
|
|
+ pe_err("RX [802.11 BCN_RPT] Beacon request processing failed no report sent");
|
|
|
qdf_mem_free(pReport);
|
|
|
return;
|
|
|
}
|
|
@@ -1154,6 +1132,7 @@ QDF_STATUS rrm_process_beacon_req(struct mac_context *mac_ctx, tSirMacAddr peer,
|
|
|
rrm_cleanup(mac_ctx);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
return QDF_STATUS_SUCCESS;
|
|
|
}
|
|
|
|