mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-13 16:16:15 -04:00
qcacld-3.0: Save Beacon Report Error IE in Beacon Report Response
Currently, If STA doesn't send beacon report response to AP, AP will not be able to know the reason why sta did not send beacon report as no reason code is defined in IEEE802.11-2016 standard. Fix is to add Optional IE in Beacon Report Response which will be populated based on err code and beacon_report_error_vsie ini. Change-Id: I91ab0cdfadbe903bdc3085a94b38938a35b693e0 CRs-Fixed: 2614385
This commit is contained in:
parent
ca2ecc8a2a
commit
906b86fe3d
3 changed files with 336 additions and 160 deletions
|
|
@ -2036,6 +2036,14 @@ IE ESERadMgmtCap (EID_VENDOR_SPECIFIC) OUI (0x00, 0x40, 0x96, 0x01)
|
|||
|
||||
}
|
||||
|
||||
IE BeaconReportStatus (EID_VENDOR_SPECIFIC) OUI (0x00, 0x00, 0x00F, 0x22)
|
||||
{
|
||||
sub_type, 1;
|
||||
version, 1;
|
||||
length, 1;
|
||||
reason_code, 1;
|
||||
}
|
||||
|
||||
IE Vendor1IE (EID_VENDOR_SPECIFIC) OUI (0x00, 0x10, 0x18)
|
||||
{
|
||||
}
|
||||
|
|
@ -3803,6 +3811,7 @@ FRAME ReAssocRequest // 7.2.3.6
|
|||
OPTIE MobilityDomain;
|
||||
OPTIE FTInfo;
|
||||
OPTIE RICDataDesc[2];
|
||||
OPTIE SuppOperatingClasses;
|
||||
OPTIE WPAOpaque;
|
||||
OPTIE HTCaps;
|
||||
OPTIE WMMCaps;
|
||||
|
|
@ -4123,6 +4132,7 @@ FRAME RadioMeasurementReport
|
|||
FF DialogToken;
|
||||
//Measurement Report elements.
|
||||
MANDIE MeasurementReport[1..4];
|
||||
OPTIE BeaconReportStatus;
|
||||
}
|
||||
|
||||
FRAME LinkMeasurementRequest
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2012-2019 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2012-2020 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
*
|
||||
*
|
||||
* This file was automatically generated by 'framesc'
|
||||
* Thu Sep 19 14:00:22 2019 from the following file(s):
|
||||
* Thu Jan 30 16:28:12 2020 from the following file(s):
|
||||
*
|
||||
* dot11f.frms
|
||||
*
|
||||
|
|
@ -4408,6 +4408,48 @@ uint32_t dot11f_get_packed_ie_AID(
|
|||
}; /* End extern "C". */
|
||||
#endif /* C++ */
|
||||
|
||||
/* EID 221 (0xdd) {OUI 0x00, 0x00, 0x0f, 0x22} */
|
||||
typedef struct sDot11fIEBeaconReportStatus {
|
||||
uint8_t present;
|
||||
uint8_t sub_type;
|
||||
uint8_t version;
|
||||
uint8_t length;
|
||||
uint8_t reason_code;
|
||||
} tDot11fIEBeaconReportStatus;
|
||||
|
||||
#define DOT11F_EID_BEACONREPORTSTATUS (221)
|
||||
|
||||
/* N.B. These #defines do *not* include the EID & length */
|
||||
#define DOT11F_IE_BEACONREPORTSTATUS_MIN_LEN (8)
|
||||
|
||||
#define DOT11F_IE_BEACONREPORTSTATUS_MAX_LEN (8)
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* C++ */
|
||||
__must_check uint32_t dot11f_unpack_ie_BeaconReportStatus(
|
||||
tpAniSirGlobal,
|
||||
uint8_t *,
|
||||
uint8_t,
|
||||
tDot11fIEBeaconReportStatus*,
|
||||
bool);
|
||||
|
||||
uint32_t dot11f_pack_ie_BeaconReportStatus(
|
||||
tpAniSirGlobal,
|
||||
tDot11fIEBeaconReportStatus *,
|
||||
uint8_t *,
|
||||
uint32_t,
|
||||
uint32_t*);
|
||||
|
||||
uint32_t dot11f_get_packed_ie_BeaconReportStatus(
|
||||
tpAniSirGlobal,
|
||||
tDot11fIEBeaconReportStatus *,
|
||||
uint32_t*);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}; /* End extern "C". */
|
||||
#endif /* C++ */
|
||||
|
||||
/* EID 4 (0x04) */
|
||||
typedef struct sDot11fIECFParams {
|
||||
uint8_t present;
|
||||
|
|
@ -10502,11 +10544,12 @@ uint32_t dot11f_get_packed_qos_map_configure_size(tpAniSirGlobal pCtx,
|
|||
#endif /* C++ */
|
||||
|
||||
typedef struct sDot11fRadioMeasurementReport{
|
||||
tDot11fFfCategory Category;
|
||||
tDot11fFfAction Action;
|
||||
tDot11fFfDialogToken DialogToken;
|
||||
uint16_t num_MeasurementReport;
|
||||
tDot11fIEMeasurementReport MeasurementReport[4];
|
||||
tDot11fFfCategory Category;
|
||||
tDot11fFfAction Action;
|
||||
tDot11fFfDialogToken DialogToken;
|
||||
uint16_t num_MeasurementReport;
|
||||
tDot11fIEMeasurementReport MeasurementReport[4];
|
||||
tDot11fIEBeaconReportStatus BeaconReportStatus;
|
||||
} tDot11fRadioMeasurementReport;
|
||||
|
||||
#define DOT11F_RADIOMEASUREMENTREPORT (24)
|
||||
|
|
@ -10559,45 +10602,45 @@ uint32_t dot11f_get_packed_radio_measurement_request_size(tpAniSirGlobal pCtx,
|
|||
#endif /* C++ */
|
||||
|
||||
typedef struct sDot11fReAssocRequest{
|
||||
tDot11fFfCapabilities Capabilities;
|
||||
tDot11fFfListenInterval ListenInterval;
|
||||
tDot11fFfCurrentAPAddress CurrentAPAddress;
|
||||
tDot11fIESSID SSID;
|
||||
tDot11fIESuppRates SuppRates;
|
||||
tDot11fIEExtSuppRates ExtSuppRates;
|
||||
tDot11fIEPowerCaps PowerCaps;
|
||||
tDot11fIESuppChannels SuppChannels;
|
||||
tDot11fIERSNOpaque RSNOpaque;
|
||||
tDot11fIEQOSCapsStation QOSCapsStation;
|
||||
tDot11fIERRMEnabledCap RRMEnabledCap;
|
||||
tDot11fIEMobilityDomain MobilityDomain;
|
||||
tDot11fIEFTInfo FTInfo;
|
||||
uint16_t num_RICDataDesc;
|
||||
tDot11fIERICDataDesc RICDataDesc[2];
|
||||
tDot11fIESuppOperatingClasses SuppOperatingClasses;
|
||||
tDot11fIEWPAOpaque WPAOpaque;
|
||||
tDot11fIEHTCaps HTCaps;
|
||||
tDot11fIEWMMCaps WMMCaps;
|
||||
tDot11fIEWMMInfoStation WMMInfoStation;
|
||||
tDot11fIEWscIEOpaque WscIEOpaque;
|
||||
tDot11fIEWAPIOpaque WAPIOpaque;
|
||||
tDot11fIEWAPI WAPI;
|
||||
tDot11fIEESERadMgmtCap ESERadMgmtCap;
|
||||
tDot11fIEESEVersion ESEVersion;
|
||||
tDot11fIEESECckmOpaque ESECckmOpaque;
|
||||
uint16_t num_WMMTSPEC;
|
||||
tDot11fIEWMMTSPEC WMMTSPEC[4];
|
||||
tDot11fIEESETrafStrmRateSet ESETrafStrmRateSet;
|
||||
tDot11fIEP2PIEOpaque P2PIEOpaque;
|
||||
tDot11fIEWFDIEOpaque WFDIEOpaque;
|
||||
tDot11fIEVHTCaps VHTCaps;
|
||||
tDot11fIEExtCap ExtCap;
|
||||
tDot11fIEOperatingMode OperatingMode;
|
||||
tDot11fIEQosMapSet QosMapSet;
|
||||
tDot11fIEvendor_vht_ie vendor_vht_ie;
|
||||
tDot11fIEhs20vendor_ie hs20vendor_ie;
|
||||
tDot11fIEhe_cap he_cap;
|
||||
tDot11fIEhe_6ghz_band_cap he_6ghz_band_cap;
|
||||
tDot11fFfCapabilities Capabilities;
|
||||
tDot11fFfListenInterval ListenInterval;
|
||||
tDot11fFfCurrentAPAddress CurrentAPAddress;
|
||||
tDot11fIESSID SSID;
|
||||
tDot11fIESuppRates SuppRates;
|
||||
tDot11fIEExtSuppRates ExtSuppRates;
|
||||
tDot11fIEPowerCaps PowerCaps;
|
||||
tDot11fIESuppChannels SuppChannels;
|
||||
tDot11fIERSNOpaque RSNOpaque;
|
||||
tDot11fIEQOSCapsStation QOSCapsStation;
|
||||
tDot11fIERRMEnabledCap RRMEnabledCap;
|
||||
tDot11fIEMobilityDomain MobilityDomain;
|
||||
tDot11fIEFTInfo FTInfo;
|
||||
uint16_t num_RICDataDesc;
|
||||
tDot11fIERICDataDesc RICDataDesc[2];
|
||||
tDot11fIESuppOperatingClasses SuppOperatingClasses;
|
||||
tDot11fIEWPAOpaque WPAOpaque;
|
||||
tDot11fIEHTCaps HTCaps;
|
||||
tDot11fIEWMMCaps WMMCaps;
|
||||
tDot11fIEWMMInfoStation WMMInfoStation;
|
||||
tDot11fIEWscIEOpaque WscIEOpaque;
|
||||
tDot11fIEWAPIOpaque WAPIOpaque;
|
||||
tDot11fIEWAPI WAPI;
|
||||
tDot11fIEESERadMgmtCap ESERadMgmtCap;
|
||||
tDot11fIEESEVersion ESEVersion;
|
||||
tDot11fIEESECckmOpaque ESECckmOpaque;
|
||||
uint16_t num_WMMTSPEC;
|
||||
tDot11fIEWMMTSPEC WMMTSPEC[4];
|
||||
tDot11fIEESETrafStrmRateSet ESETrafStrmRateSet;
|
||||
tDot11fIEP2PIEOpaque P2PIEOpaque;
|
||||
tDot11fIEWFDIEOpaque WFDIEOpaque;
|
||||
tDot11fIEVHTCaps VHTCaps;
|
||||
tDot11fIEExtCap ExtCap;
|
||||
tDot11fIEOperatingMode OperatingMode;
|
||||
tDot11fIEQosMapSet QosMapSet;
|
||||
tDot11fIEvendor_vht_ie vendor_vht_ie;
|
||||
tDot11fIEhs20vendor_ie hs20vendor_ie;
|
||||
tDot11fIEhe_cap he_cap;
|
||||
tDot11fIEhe_6ghz_band_cap he_6ghz_band_cap;
|
||||
} tDot11fReAssocRequest;
|
||||
|
||||
#define DOT11F_REASSOCREQUEST (26)
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue