Commit Graph

1236 次程式碼提交

作者 SHA1 備註 提交日期
Deepak Dhamdhere
e2dd5440bf qcacld-3.0: Implement NAN datapath interface create
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
2016-06-29 19:42:05 -07:00
Ravi Joshi
412f23deb2 qcacld-3.0: Add interface changes for supporting NAN data path
Add interface changes to enable NAN data path feature

Propagation from qcacld-2.0 to qcacld-3.0

CRs-Fixed: 962367
Change-Id: I12a1d0cf37db22ff0bcb8165cb3f6b3847f8bf5b
2016-06-29 19:42:04 -07:00
Deepak Dhamdhere
c9acc447ea qcacld-3.0: Add messaging interface to support NAN datapath
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
2016-06-29 19:42:02 -07:00
Deepak Dhamdhere
13230d329b qcacld-3.0: Enable NAN datapath based on target capability
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
2016-06-29 19:42:01 -07:00
Deepak Dhamdhere
3385d7595e qcacld-3.0: Add INI items to enable NAN datapath feature
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
2016-06-29 19:42:00 -07:00
Archana Ramachandran
63f64ddbaf qcacld-3.0: Skip DSRC channels in TDLS operation
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
2016-06-29 18:41:31 -07:00
Archana Ramachandran
7ba24ffc9e qcacld-3.0: Reject TDLS management frames during nss switch
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
2016-06-29 18:41:29 -07:00
Archana Ramachandran
080404c945 qcacld-3.0: Skip 2GHz off channels when TDLS base channel is in 5GHz
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
2016-06-29 18:41:27 -07:00
Archana Ramachandran
5041b2579e qcacld-3.0: Support NSS configuration for TDLS from user space
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
2016-06-29 18:41:25 -07:00
Archana Ramachandran
2ad7de2b2d qcacld-3.0: Enhance TDLS antenna switch operation
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
2016-06-29 18:41:24 -07:00
Archana Ramachandran
d5d2e926c8 qcacld-3.0: Dynamic antenna switch in TDLS operation
qcacld-2.0 to qcacld-3.0 propagation

Add dynamic antenna mode change capability for TDLS
operation.

CRs-Fixed: 951596
Change-Id: Ie0b141fbebe0bfa8a173503fc0ec375095240237
2016-06-29 18:41:22 -07:00
Jeff Johnson
99bac319a8 qcacld-3.0: Convert wlan_hdd_wext.c to unified logging
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
2016-06-29 15:50:08 -07:00
Vishwajith Upendra
495d7a323d Release 5.1.0.15
Release 5.1.0.15

Change-Id: Ic28705b8d3f8cce1cd18a55ddcf873f86291ff2f
CRs-Fixed: 688141
2016-06-29 12:11:46 -07:00
Jeff Johnson
731f3a1f88 qcacld-3.0: Convert wlan_hdd_lpass.c to unified logging
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
2016-06-29 12:11:46 -07:00
Jeff Johnson
f96ef73c7c qcacld-3.0: Add kernel-doc to wlan_hdd_lpass.c
wlan_hdd_lpass.c is missing documentation, so add it.

Change-Id: Ie12e11b09a143eeca0a0a2d332506d14322217fe
CRs-Fixed: 1018553
2016-06-29 12:11:46 -07:00
Jeff Johnson
d9dd484ab7 qcacld-3.0: Fix camelCase in wlan_hdd_lpass
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
2016-06-29 12:11:46 -07:00
Govind Singh
fe9ab254ad qcacld-3.0: Refactor WMA data commands to fix WIN compilation
Refactor WMA data commands to remove dependency of WMA header files
in common wmi layer.

Change-Id: Ic16020d9e4fce4db71b265b88703f7cef7b8a275
CRs-Fixed: 1008872
2016-06-29 12:11:46 -07:00
Sandeep Puligilla
607f34a72e qcacld-3.0: Cleanup HT capability global configurations
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
2016-06-29 12:11:46 -07:00
Jeff Johnson
2b0a7b818b qcacld-3.0: Refactor WLAN_FEATURE_LPSS
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
2016-06-29 12:11:31 -07:00
Vishwajith Upendra
735275240d Release 5.1.0.14
Release 5.1.0.14

Change-Id: Ie4694d6a417241ddc194ba2cdf0957dbed4c2d95
CRs-Fixed: 688141
2016-06-27 18:29:55 -07:00
Arif Hussain
eee043c5bf qcacld-3.0: SAP DFS: Reduce DFS event parameters size
Reduce DFS event parameters size to avoid prealloc failure.

Change-Id: Ide57b3215440aaeebbfa579b858ac1de93938ceb
CRs-Fixed: 1024434
2016-06-27 18:27:20 -07:00
Kiran Kumar Lokere
f1f5e99a70 qcacld-3.0: Update the VHT operation IE as per latest draft
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
2016-06-27 18:25:42 -07:00
Jeff Johnson
bfa0206843 qcacld-3.0: Convert wlan_hdd_oemdata.c to unified logging
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
2016-06-27 18:21:52 -07:00
Manishekar Chandrasekaran
e32a84812b qcacld-3.0: Update the usage of INI entry 'gWlanMccToSccSwitchMode'
Update the usage of INI entry 'gWlanMccToSccSwitchMode' to reflect
the new options available to avoid MCC condition.

Change-Id: I866393f9df8b266eaeb7e027eb30aa5759b9d832
CRs-Fixed: 1034298
2016-06-27 18:20:37 -07:00
Manishekar Chandrasekaran
1db3abe6cc qcacld-3.0: Use mandatory channel list during SAP operation
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
2016-06-27 18:19:59 -07:00
Kiran Kumar Lokere
02b9aa4bba qcacld-3.0: Add support to parse new vht op IE definition
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
2016-06-27 18:19:25 -07:00
Kiran Kumar Lokere
6a7d1eb99a qcacld-3.0: Fix issue in IBSS Nss configuration
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
2016-06-27 18:18:54 -07:00
Kiran Kumar Lokere
6671abdf19 qcacld-3.0: Fix the Nss config issues in IBSS and TDLS mode
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
2016-06-27 18:18:26 -07:00
Kiran Kumar Lokere
53981334da qcacld-3.0: Fix the possible NULL dereference
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
2016-06-27 18:17:57 -07:00
Ravi Joshi
a063dd9f69 qcacld-3.0: Create new files for supporting NAN data path feature
Add new files for supporting NAN data path feature.

Propagation from qcacld-2.0 to qcacld-3.0

CRs-Fixed: 962367
Change-Id: If12d15789659d04559a9d65d6b7016d4cc595fcf
2016-06-27 18:17:22 -07:00
Ravi Joshi
c3f5c8a6bf qcacld-3.0: Use unified tx queue and carrier control API
Use unified tx queue and carrier control API instead
of using independent APIs.

Change-Id: Id559b585383a24900cead5d28262b692714b95cd
CRs-fixed: 1027816
2016-06-27 18:16:50 -07:00
Manishekar Chandrasekaran
79746acb37 qcacld-3.0: Check HDD context for null before retrieving the handle
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
2016-06-27 18:16:07 -07:00
Manishekar Chandrasekaran
2e71e93707 qcacld-3.0: Check return value during SAP global initialization
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
2016-06-27 18:11:24 -07:00
Kabilan Kannan
14ec97f448 qcacld-3.0: Stop connection tracker during TDLS UAPSD and btcoex
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
2016-06-27 18:10:17 -07:00
Vishwajith Upendra
ef65cf4adc Release 5.1.0.13
Release 5.1.0.13

Change-Id: Ib5358ac9729a133e413d2f86d11a09b1e86c7416
CRs-Fixed: 688141
2016-06-24 14:30:50 -07:00
Vidyullatha, Kanchanapally
528789e7ac qcacld-3.0: Implement cfg80211 abort scan API
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
2016-06-24 14:30:50 -07:00
Kiran Kumar Lokere
666bf8591b qcacld-3.0: Add support for NSS configurability
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
2016-06-24 14:30:50 -07:00
Manishekar Chandrasekaran
d79c4e6cfa qcacld-3.0: Sanitize SAP context before extracting the handle
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
2016-06-24 14:30:50 -07:00
Manishekar Chandrasekaran
f7a1dad7e0 qcacld-3.0: Validate SAP context before access in callback
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
2016-06-24 14:30:50 -07:00
Mahesh A Saptasagar
c35e8bf4a2 qcacld-3.0: Send disconnect event to upper layers upon disconnect
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
2016-06-24 14:30:49 -07:00
Nirav Shah
da008344a6 qcacld-3.0: Enhance data path related statistics
Enhance data path related statistics
- Add per reason pause time
- Enahnce TSO stats
- clear DPTRACE buffer

Change-Id: Ia59fa5ba326504eb54e14d44f42a335c6b835ee4
CRs-Fixed: 1017437
2016-06-24 14:30:49 -07:00
Rajeev Kumar
4002e5b1c4 qcacld-3.0: Send wow wake event bitmap properly to fw
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
2016-06-24 14:30:49 -07:00
Kabilan Kannan
36090ce8b4 qcacld-3.0: Add TDLS connection tracker in WLAN host
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
2016-06-24 14:30:49 -07:00
Krunal Soni
805cfb5863 qcacld-3.0: Reset gEnableRXLDPC to mitigate hardware limitation
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
2016-06-24 14:30:49 -07:00
Krunal Soni
2e48d01f44 qcacld-3.0: Populate extended caps coming for each phy to UMAC
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
2016-06-24 14:30:49 -07:00
Krunal Soni
aa664da4af qcacld-3.0: Derive HT and VHT caps from given per PHY cap
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
2016-06-24 14:30:49 -07:00
Krunal Soni
09e5503fe7 qcacld-3.0: Don't set operating channel before ROC gets finished
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
2016-06-24 14:30:49 -07:00
Varun Reddy Yeturu
101f954b16 qcacld-3.0: Include appropriate auth info for roaming
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
2016-06-24 14:30:34 -07:00
Vishwajith Upendra
5a3b9b6299 Release 5.1.0.12
Release 5.1.0.12

Change-Id: I84c2045bca3ae8775e6afbc1abeb6eec73488be7
CRs-Fixed: 688141
2016-06-23 12:28:29 -07:00
Houston Hoffman
e248264ce4 qcacld-3.0: Add context checking in epping_disable
epping_disable needed to check that contexts were
not null before trying to perform the disable opperations.

Change-Id: Ia8182b1deed1a6a1d2643f91660880fb52450e3d
CRs-Fixed: 1027691
2016-06-23 12:28:26 -07:00