qcacld-2.0 to qcacld-3.0 propagation
Add changes to support session and BSS creation in NDI mode.
CRs-Fixed: 962367
Change-Id: I585cd89702a2c412783ae93fb1558ed5bfe31fd9
Add interface changes to enable NAN data path feature
Propagation from qcacld-2.0 to qcacld-3.0
CRs-Fixed: 962367
Change-Id: I12a1d0cf37db22ff0bcb8165cb3f6b3847f8bf5b
qcacld-2.0 to qcacld-3.0 propagation
Add messaging interface to support NAN datapath.
"NAN" terminology is used for referencing NAN discovery.
"NDI" and "NDP" are for NAN datapath.
CRs-Fixed: 962367
Change-Id: I1f42c8dab17b3a300db61756c29fc02d3d3bc504
qcacld-2.0 to qcacld3.0 propagation
Configure NAN datapath capability of the driver based on
the target device capability.
CRs-Fixed: 962367
Change-Id: I99eac7ae3ae495347208e3849e2383e999dcc125
Propagation from qcacld-2.0 to qcacld-3.0.
Add .ini items to enable NAN datapath feature. It will be disabled
by default.
Name: genable_nan_datapath
Minimum: 0 (disable)
Maximum: 1 (enable)
Default: 0 (disable)
CRs-Fixed: 962367
Change-Id: I304fcc70c0e83d890ae95d2d4ff1b7ce691374e2
qcacld-2.0 to qcacld-3.0 propagation
We do not support TDLS on DSRC AND DFS channels so skip
these channels in the TDLS frames.
Change-Id: I3ad523ab21d1383df189d3856f6e0759b1a2bb6a
CRs-Fixed: 975657
qcacld-2.0 to qcacld-3.0 propagation
When TDLS antenna switch is in progress, only TDLS teardown frame
is allowed to go to firmware and all other TDLS management frames
need to be blocked to avoid unpredictable behavior in the system.
This change allow TDLS teardown frame and reject all
other management frames.
Change-Id: I5775776af376db0d4502df631ccb92e802354c11
CRs-Fixed: 968225
qcacld-2.0 to qcacld-3.0 propagation
In antenna sharing platform, if TDLS operates in the 5G band base
channel with NSS 2x2, it cannot accommodate 2G off channels in
TDLS operation. So in that scenario, 2G channels should be
skipped from TDLS off channels list.
Update driver to remove 2G band channels from supported off
channel list, when TDLS operates in 5G band base channel
with NSS 2x2.
Change-Id: I04aa00e1cecfae86570aa89d1743b54d55b2dc84
CRs-Fixed: 968206
qcacld-2.0 to qcacld-3.0 propagation
TDLS NSS can be changed dynamically by the user, if that happens
the newer NSS value needs to be recorded in the MAC context and
should be used to form TDLS management frames.
Update driver to keep the user configured NSS value in the MAC
context and uses the NSS value in the tdls protocol engine
to construct management frames.
Change-Id: I4098e3c5e3a03c4de6ae40c837a5616613623979
CRs-Fixed: 968106
qcacld-2.0 to qcacld-3.0 propagation
Remove TDLS teardown wait event for antenna switch 1x1 -> 2x2 and
avoid band specific validation.
Change-Id: If29c102e59ba0f9df528e988e9d5e517a9849c55
CRs-Fixed: 961949
Currently the HDD code uses a variety of logging APIs. In
qcacld-3.0 HDD should converge on a unified set of logging APIs.
Update wlan_hdd_wext.c to use the unified set of APIs.
Change-Id: I4fff38875f9591a6782d0d898b653a56ff7d7946
CRs-Fixed: 937690
Currently the HDD code uses a variety of logging APIs. In qcacld-3.0
HDD should converge on a unified set of logging APIs. Update
wlan_hdd_lpass.c to use the unified set of APIs.
Change-Id: I34c145c43507ff882e371d05cb59c7ec73f366e5
CRs-Fixed: 1018555
Currently wlan_hdd_lpass uses camelCase for some variables in
violation of kernel coding guidelines. Rename such variables to align
with the kernel coding style.
Change-Id: I2ec2c37c48442653619a1e5a2a6c47de944bd9dc
CRs-Fixed: 1018553
Refactor WMA data commands to remove dependency of WMA header files
in common wmi layer.
Change-Id: Ic16020d9e4fce4db71b265b88703f7cef7b8a275
CRs-Fixed: 1008872
UMAC maintains CFG item for each individual field of the HT
capability IE along with the global CFG item for HT cap IE.
This leads to update two global CFG items whenever there
is a change in HT capability IE field.
Remove the duplicate configuration items.
Update LIM code to read the capablities from the session
not from the globals.
Change-Id: Idf5c4358ab67983778a56e2fe3a2f21d1adc19e1
CRs-Fixed: 1029145
Currently in HDD the WLAN_FEATURE_LPSS code is distributed amongst
multiple source files. In order to be more aligned with established
practices refactor most of the feature code into a feature-specific
file .
Change-Id: I7c743f32fd1455fc253a00d69bfc9abb7f6743da
CRs-Fixed: 1018553
VHT operation IE parameters values are changed in latest draft,
update the set_channel_params to set the new values as per latest
draft.
Change-Id: I2b8f78adb608bf942dff28eda44138044ba93e59
CRs-Fixed: 1022680
Currently the HDD code uses a variety of logging APIs. In
qcacld-3.0 HDD should converge on a unified set of logging APIs.
Update wlan_hdd_oemdata.c to use the unified set of APIs.
Change-Id: I314879dec6ff7559bded13c158101f41dd4915e9
CRs-Fixed: 937677
Update the usage of INI entry 'gWlanMccToSccSwitchMode' to reflect
the new options available to avoid MCC condition.
Change-Id: I866393f9df8b266eaeb7e027eb30aa5759b9d832
CRs-Fixed: 1034298
Ensure that the SAP operations make use of the mandatory
channel list during SAP channel selection with INI option
'gWlanMccToSccSwitchMode' set to the value of '4' which
will make use of this channel list while trying to avoid
MCC scenarios.
Change-Id: Ia43ee1d2c598c81a5ef0add9246c400577f6f694
CRs-Fixed: 1014128
VHT channel width definition is changed in latest draft. Add
support to parse the new definition of VHT channel width in
VHT operation IE.
Change-Id: I1b9ece6ad490cc158df87d86035a0a338008c539
CRs-Fixed: 1022680
qcacld-2.0 to qcacld-3.0 propagation
Populate the per band vdev nss values of IBSS in add bss
parameters since the IBSS vdev is created as part of IBSS
add bss
Update the INI with per band chain mask and Nss parameters
Change-Id: Ie87f11aaa7166940296af0dcee3d7a32942e3779
CRs-Fixed: 882283
qcacld-2.0 to qcacld-3.0 propagation
Advertise the HT and VHT MCS in TDLS setup action frames based
on TDLS per band Nss configuration.
Populate the VHT and HT MCS based on vdev Nss value of that
session and send the correct Nss values to FW to use
appropriate rates in Tx.
Change-Id: I94991df3af575f1ffa61a7adabfe0e7586e95cef
CRs-Fixed: 886415
qcacld-2.0 to qcacld-3.0 propagation
lim_get_ie_ptr_new will return NULL if the IE parameters
are not valid, so add NULL check for ie_ptr to avoid
NULL dereference
Change-Id: I1ecc8c4ed6456ebcfd85fe62534b9913ba31dcd9
CRs-Fixed: 869026
Add new files for supporting NAN data path feature.
Propagation from qcacld-2.0 to qcacld-3.0
CRs-Fixed: 962367
Change-Id: If12d15789659d04559a9d65d6b7016d4cc595fcf
Use unified tx queue and carrier control API instead
of using independent APIs.
Change-Id: Id559b585383a24900cead5d28262b692714b95cd
CRs-fixed: 1027816
Check the HDD context for null before retrieving the handle since
the HDD context is dereferenced to retrieve the handle. This
prevents a possible NULL point dereference.
Change-Id: I4837f0ce8c3d995be25c08951534e5cfa189b0bb
CRs-Fixed: 1033673
Check the return value during SAP global initialization to
gracefully clean up the re-initialization in case of any error.
Change-Id: I216146b4501606a536dffb5a859b43dd2d6989ff
CRs-Fixed: 1031855
Connection tracker should not run, when the events TDLS UAPSD
and btcoex happens in the system.
Add changes in the host driver to stop connection tracker
for the aforementioned events.
Change-Id: Ib631dc986826339a4c191328f187e46f4e0392d9
CRs-Fixed: 1025613
qcacld-2.0 to qcacld-3.0 propagation
There is no support for cfg80211 abort scan API,
so implement the cfg80211 abort scan API.
Change-Id: I4632c1b4770e6b2f301d67f37005585aef401ab6
CRs-Fixed: 930870
qcacld-2.0 to qcacld-3.0 propagation
Add support for NSS configurability per vdev type
- Configure the 2g and 5g NSS with the INI value of
each vdev type
- Program the HT and VHT IE to FW for 1x1 and 2x2 mode,
FW will include them in scan probe request frames
Change-Id: I5cbf17a14ab6becad6cf5765ae5039fc284dc309
CRs-Fixed: 869026
Ensure that the SAP context is sanitized before extracting
the global handle. The context passed in the callback could
be freed by the time it is accessed.
Change-Id: I4a08717abce2a0ecbe4055360fd8d31c3e50a701
CRs-Fixed: 1031855
Ensure that the SAP context is validated before access in
its callback. The global SAP context is now an array of
contexts rather than a single global context to help
validate the session. Increasing the SAP open session
timeout helps to configure all the commands to the FW and
helps to further avoid any crashes.
Change-Id: I6f722dcc4ab671fef010c816a7c7d38fc1bdebe4
CRs-Fixed: 1031855
Indicate disconnect event to nl80211 and thereby to the supplicant
by invoking cfg80211_disconnect upon disconnect as kernel 3.11 onward
releases will not indicate the same to upper layers.
Call to cfg80211_disconnect also signifies whether disconnect is
triggered by the supplicant or received from the AP by setting the
"from_ap" flag accordingly.
qcacld-2.0 to qcacld-3.0 propagation
Change-Id: I55028533ebbf03910755da1b35c2fa57d97ce43b
CRs-Fixed: 1016872
As part of WMI convergence wow wake event bitmap is sent wrongly
as enable/disable flag to fw. Fix WMA API to send wake event bitmap
properly.
Change-Id: I3b752c365e09f08104fa871c29e2629c1873b3fc
CRs-Fixed: 1033129
TDLS implicit trigger mode works based on data traffic without
user intervention. When the traffic meets setup threshold,
TDLS connection is initiated and when the traffic
reaches a teardown threshold/rssi TDLS connection
is torn down.
Add TDLS connection tracker in the host driver to determine,
when to initiate and teardown the TDLS connection based
on data traffic.
Change-Id: I995ea9c391372515faabe5086b638f254b6b93d7
CRs-Fixed: 996988
helium project has limitation of not supporting LDPC on PHY-B,
but PHY-A does support this feature. Software design is in process
to handle this gracefully but till software design is ready, this
feature needs to be disabled from INI to avoid any confusion.
CRs-Fixed: 1029145
Change-Id: I8a3659f20414851cb394395225c301a90cd94f64
Read TLVs for each PHY per each HW MODE coming as part of service
ready extension event and decode them and store them in wma_handle for
later use.
CRs-Fixed: 1029145
Change-Id: I302ad442f660feb795d7a8f1353b5d820d26aac8
loop through each mac's cap per hw mode and derive final
ht cap and vht cap by either taking MIN or MAX value based
on the engineering requirement.
For backward compatibility reasons, if firmware doesn't
give any TLV for extended caps then use legay HT and VHT cap
values.
CRs-Fixed: 1029145
Change-Id: I3ad9b474c281f3dd371eb2b88b71e8af59fcd66d
Vendor cmd(QCA_NL80211_VENDOR_SUBCMD_SET_PROBABLE_OPER_CHANNEL) in supplicant
has been designed to notify the driver about operating channel right after go
negotiation is completed, so that driver can get going with HW mode
change little ahead of time before the change iface/add iface req comes
down from supplicant for the CLI role. But it looks like the cmd is
coming even before RoC cancellation is done for the completed
negotiation. So, this delays the HW mode change req in FW as FW thinks
the scan (on going RoC) is not complete yet. As a result it waits for the RoC to
finish before entertaining the HW mode change req.
To fix this situation, don't set probable operating channel till RoC
gets finished.
CRs-Fixed: 1025390
Change-Id: I8b3df2259f71cf51b8ffc8b9a50edad7fea81d13
In case of CCKM, the host is not passing specifics as to whether
it is WPA or RSN proto type which would be needed for the
firmware to do a proper LFR3 roaming. So, pass the necessary
information to the firmware and also ensure the backward
compatibility is still maintained with LFR2.0.
CRs-Fixed: 1020291
Change-Id: I220d2c1909a44fd7edb46127daec1165fca71ebe
epping_disable needed to check that contexts were
not null before trying to perform the disable opperations.
Change-Id: Ia8182b1deed1a6a1d2643f91660880fb52450e3d
CRs-Fixed: 1027691