Commit Graph

20531 Commits

Author SHA1 Message Date
Srinivas Girigowda
40567b94a1 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirResetAPCapsChange
Replace tSirMacAddr with cdf_mac_addr in sSirResetAPCapsChange.

Change-Id: Ife3e49f1902baafaddf5f304dd423451319f2783
CRs-Fixed: 898864
2015-12-02 12:55:29 -08:00
Srinivas Girigowda
26ebb19c31 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirSmeApNewCaps
Replace tSirMacAddr with cdf_mac_addr in sSirSmeApNewCaps.

Change-Id: I785b2631e149e44835e2cf53d997673b9c5515c0
CRs-Fixed: 898864
2015-12-02 12:55:29 -08:00
Srinivas Girigowda
065e777947 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirSmeNewBssInfo
Replace tSirMacAddr with cdf_mac_addr in sSirSmeNewBssInfo.

Change-Id: I5c27589009ee2f517c8a99ed0909c8cb5620293e
CRs-Fixed: 898864
2015-12-02 12:55:28 -08:00
Srinivas Girigowda
0ee6686841 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sLimMlmOemDataReq
Replace tSirMacAddr with cdf_mac_addr in sLimMlmOemDataReq.

Change-Id: I4589769f9d875347a4a5c10cd755c931b98fa8f7
CRs-Fixed: 898864
2015-12-02 12:55:28 -08:00
Srinivas Girigowda
fd06152abe qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirNewIbssPeerInfo
Replace tSirMacAddr with cdf_mac_addr in sSirNewIbssPeerInfo.

Change-Id: I16cf3439fba77755429627baa26b5f87988cd81e
CRs-Fixed: 898864
2015-12-02 12:55:28 -08:00
Srinivas Girigowda
9721523f8e qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sMaxTxPowerParams
Replace tSirMacAddr with cdf_mac_addr in sMaxTxPowerParams.

Change-Id: Ia9f66cfd3a520019a83d671b7869d49558856698
CRs-Fixed: 898864
2015-12-02 12:55:28 -08:00
Srinivas Girigowda
2c6bf00570 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirSmeScanReq
Replace tSirMacAddr with cdf_mac_addr in sSirSmeScanReq.

Change-Id: I805e32462c89d72bd8a038eaef0379f7b58b33c3
CRs-Fixed: 898864
2015-12-02 12:55:28 -08:00
Srinivas Girigowda
a5bf543104 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirScanOffloadReq
Replace tSirMacAddr with cdf_mac_addr in sSirScanOffloadReq.

Change-Id: Ia42f230491b0500f612c983c5769401249b6d961
CRs-Fixed: 898864
2015-12-02 12:55:28 -08:00
Srinivas Girigowda
450f716e48 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirRemainOnChnReq
Replace tSirMacAddr with cdf_mac_addr in sSirRemainOnChnReq.

Change-Id: I75594fc51ae1a82ef08b3e0b43c2a8733387b9af
CRs-Fixed: 898864
2015-12-02 12:55:28 -08:00
Rajeev Kumar
1a65e5801e qcacld-3.0: Fix agc registers dump logic to avoid fw assert
Propagation from qcacld-2.0 to qcacld-3.0

- Current AGC registers dump logic is not correct and its not
  reading correct target registers
- Add correct AGC register read recipe to read correct AGC data
- Wake up SoC before reading any target register

Change-Id: I38016f91bf3d124e93e304522058e97daa711f4a
CRs-Fixed: 911554
2015-12-02 12:55:28 -08:00
Rajeev Kumar
274034cd12 qcacld-3.0: Do not allow NoA setting in non P2P GO mode
Propagation from qcacld-2.0 to qcacld-3.0

- FW asserts after receiving P2P NOA parameter in non P2P GO mode
- Add P2P GO mode check in set NOA IOCTL and do not allow this command
  in non P2P GO modes

Change-Id: Ie786dcf33fc50eacadb407d74ae5638da68cf0d2
CRs-Fixed: 919889
2015-12-02 12:55:28 -08:00
Chandrasekaran, Manishekar
c841692ae4 qcacld-3.0: Restore service ready extended event
Restore the support for service ready extended
event since the required FW support is in place.
Without the service ready extended event, the
FW mode configuration and scan mode
configuration in the driver would be initialized
to zero i.e., all the dual mac features would
be disabled. Otherwise, the default values of
these two params would be set based on the
default values present in this extended event,
which is set by the FW.

CRs-Fixed: 923182
Change-Id: I31aa6420f3076f61008a809fe134b99f9b0dbc08
2015-12-02 12:55:28 -08:00
Sandeep Puligilla
4f1ae707e7 qcacld-3.0: unlock the sme scan active list
Sme is stuck due to scan active list mutex lock.

Release the sme scan active list lock if the
active list is empty.

Change-Id: Id05c642fe6fad30e40efa18a213158c331b5a502
CRs-Fixed: 943583
2015-12-02 12:55:28 -08:00
Edhar, Mahesh Kumar
5cd1e0eb17 qcacld-3.0: Changes to add supported operating class IE
qcacld-2.0 to qcacld-3.0 propagation

Add supported class IE in beacon and probe response frames.

Change-Id: Ife4cb1b3db0119a9472cad0f861887c487b147d3
CRs-Fixed: 941466
2015-12-02 12:55:28 -08:00
Edhar, Mahesh Kumar
695468e069 qcacld-3.0: Protect dfs_radar_found global variable using lock
qcacld-2.0 to qcacld-3.0 propagation

dfs_radar_found variable will be accessed in different context
so protect the same with mutex lock and synchronize the channel
switch triggered by application and dfs module.

Change-Id: I724d22cde9a77c187a17dffef13a9b4c9b2c27da
CRs-Fixed: 809527
2015-12-02 12:55:27 -08:00
Edhar, Mahesh Kumar
df2ec12f48 qcacld-3.0: Properly handle channel switch through ioctl
qcacld-2.0 to qcacld-3.0 propagation.

1)Validate channel switch w.r.t concurrency rules set and switch
  channel only if there is no channel interference.
2)Disable channel bonding in 2.4Ghz on switching channel to 2.4Ghz band
  to avoid violating OBSS feature.

Change-Id: I81992b2c2876a32eba52010e72c4300608067e58
CRs-Fixed: 809527
2015-12-02 12:55:27 -08:00
DARAM SUDHA
6d0ea36ace qcacld-3.0: debug check for l_rx_defrag_waitlist_remove(2)
qcacld-2.0 to qcacld-3.0 propagation

Add extra check for tqe->next!= NULL, to assert in only error scenario

Change-Id: I12e8ca5d5133ee0480d9c7c7c208854630272c89
CRs-Fixed: 839312
2015-12-02 12:55:27 -08:00
Leo Chang
376398b24d qcacld-3.0: optimize data path memory allocation
When allocate HTT descriptor, instead of allocating
large single chunk of memory, allocate small sized multiple
chunk of memory. Then not need to allocate order 5 memory.
Will have less chance to have memory alloc fail problem.
HTT descriptor. Frag descriptor. OL descriptor. TSO descriptor

Change-Id: Ib9d4a3f10adbc0656e1418cf3a67429322bb7164
CRs-fixed: 845666
2015-12-02 12:55:27 -08:00
Leo Chang
0cda893fd6 qcacld-3.0: qcacld-2.0: replace semaphore to completion
qcacld-2.0 to qcacld-3.0 propagation

HTC RX event wait semaphore waiting event infinte.
Infinte waiting will hang device and cannot getting out from
system hang. To collect FW RAM dump and make correct panic,
semaphore should be replaced with time limitted compeletion

Change-Id: Idabfc7916676c9e986e953b50108653a5b394278
CRs-fixed: 924387
2015-12-02 12:55:27 -08:00
Satish Singh
fbb9b37358 qcacld-3.0: Add compilation flag for qcacld3.0
Add compilation flag for qcacld3.0

Change-Id: Ic779d6d133c6bb7ca51f7806e1c2694ff537bbae
CRs-Fixed: 894947
2015-12-02 12:55:27 -08:00
Satish Singh
884eaee246 Release 5.0.0.146
Release 5.0.0.146

Change-Id: Iaf2bfeee2b5ca2b66165808d9a69ecd2472a09cd
CRs-Fixed: 688141
2015-11-25 17:28:47 -08:00
Sachin Ahuja
a557a00a74 qcacld-3.0: Increase the rate array for extended rate set.
qcacld-2.0 to qcacld-3.0 propagation

Currently while populating ext rate set, local rate array
has size as 8.But max 12 ext rates can be copied in this
local rate array.If it is greater than 8, then it leads
to crash.
To resolve this issue, increase the local rate array from
8 to 12.

Change-Id: I2097cc4feb7fa669a970de5463130bb4bbf6401c
CRs-Fixed: 903816
2015-11-25 17:26:48 -08:00
Sachin Ahuja
bef8c10a92 qcacld-3.0: Avoid sending positive RSSI value to framework.
qcacld-2.0 to qcacld-3.0 propagation

Currently if STA is very near to connected AP, it sends the
positive value of RSSI to framework. Framework checks this RSSI
and if positive(greater than 0) then it consider RSSI as -127dbm
which may lead to disconnection.
So changes are done to avoid sending the positive RSSI value
greater than 0.

Change-Id: Ib417f48345e3f78dba54d68969fa15d294f313b9
CRs-Fixed: 842243
2015-11-25 17:26:48 -08:00
Sushant Kaushik
90ed9e3bb9 qcacld-3.0: Allow addTspec in 11b mode.
qcacld-2.0 to qcacld-3.0 propagation

Currently if sta is connected to an AP
which only supports 11b, lim doesn't send
addTspec request to that AP. Specs doesn't
restrict Tspec in 11b. As a part of fix,
allow addTspec in 11b.

CRs-Fixed: 847755
Change-Id: I57c2d5139f9861140ab3bbe8314a1a3fe3e80e19
2015-11-25 17:26:48 -08:00
Orhan K AKYILDIZ
c409461034 cld-3.0: Remove warnings issued by static analysis
Some of these are very remote scenarios (like HIF not being
initialized at the time of the calls, which could then
dereference a NULL pointer). There are a few cases of looping
beyond boundaries.

The scope of this update is limited to NAPI related code.

Change-Id: I60229406d5ab514d5465ef2569324d3d4eb430d4
CRs-Fixed: 938253
2015-11-25 17:26:48 -08:00
Chandrasekaran, Manishekar
96c9096523 qcacld-3.0: Fix channel width assignment to improper enum value
Fix the channel width of type 'enum hw_mode_bandwidth' getting
wrongly assigned to enum of type 'tSirWifiChannelWidth'. The
tag values of each of these enums are different.

CRs-Fixed: 942090
Change-Id: Ic3610e6fcb7c89f0aeed829b83869169f4596ce8
2015-11-25 17:26:48 -08:00
mukul sharma
72c8b22a2d qcacld-3.0: Add support for 11w offload feature
This change Adds 11w offload feature, This change includes:

1. SA Query time out Kickout reason handling
2. Add a new service bit map for 11w offload and cache it to pMAc
3. Error logging in following unexpected case
   a) Unprotected deauth / diasssoc from peer AP,
   b) reception of SA query action frame in SAP / STA vde mode
4. Configure sta sa query related parameters as a part of
   sta vdev attach
5. Trim mmie for pmf bcast/mcast mgmt frames

Change-Id: If119e9a79185552e163834f7c6c3a14288fe2761
CRs-Fixed: 931630
2015-11-25 17:26:48 -08:00
Rajeev Kumar
e0fd9dda71 qcacld-3.0: Enable full rx reorder offload for adrastea
- In current qcacld-3.0 driver full rx reorder offload is dependent
  on HIF_PCI feature flag.
- HIF_PCI feature flag is compiled out for SNOC devices like adrastea.
- Because of RX reorder dependency on HIF_PCI host data path is broken
  on adrastea.
- Enable rx reorder offload for SNOC devices(adrastea).

Change-Id: I445afa57fb5fc45363ca644a35ae15e4af5bf94a
CRs-Fixed: 939890
2015-11-25 17:26:48 -08:00
Sanjay Devnani
a64b512a9e qcacld-3.0: Check if unload is in progress during suspend
If unload in progress, abort suspend. causes null pointer ref otherwise

Change-Id: I7028b6f0efc9da62352b561e9def90ff9bffd5e6
CRs-Fixed: 878755
2015-11-25 17:26:47 -08:00
Sreelakshmi Konamki
6bd8a2e02b qcacld-3.0: Remove redundant code in __wlan_hdd_cfg80211_connect()
qcacld-2.0 to qcacld-3.0 propagation

Make changes to invoke wlan_hdd_cfg80211_connect_start() one time instead
of two instances of invoking the same function using local variables.

Change-Id: I2aba87645296414f340c89b6bd2f556b05f05115
CRs-Fixed: 898565
2015-11-25 17:26:47 -08:00
Hanumantha Reddy Pothula
2db50edd69 qcacld-3.0: wlan: Cleanup North-Bound load/unload logs
qcacld-2.0 to qcacld-3.0 propagation

If IOCTLs or CFG callbacks are issued continuously during driver
load/unload or during SSR, observing stability issues because of
excessive logging.
Hence move log level to INFO from ERROR in wlan_hdd_validate_context
function and don't print return status in its caller functions.

Change-Id: I8fd9b25e0c774e1e12b01128eb86783c9dec2ab7
CRs-Fixed: 800631
2015-11-25 17:26:47 -08:00
Sreelakshmi Konamki
75deb33157 qcacld-3.0: Add DS param IE in probe req frame
qcacld-2.0 to qcacld-3.0 propagation

Currently DS param IE is not present in probe req frames.
Set bit11 in scan_ctrl_flags to add DS param IE in probe req.

Change-Id: I57f79bd6dc5bd452987cb7d09cafa425ea2bbff4
CRs-Fixed: 905421
2015-11-25 17:26:47 -08:00
Sreelakshmi Konamki
6744cffe00 qcacld-3.0: Add MTRACE logs for missing cfg80211_ops callbacks
qcacld-2.0 to qcacld-3.0 propagation

Currently, MTRACE logs are not captured for few cfg80211_ops callbacks
and SME functions. Add missing MTRACE logs in cfg80211_ops callbacks
before calling SME function and also in few SME functions.

Change-Id: Iced4b80de60f9640cad0342afac57f9a17c2a3e2
CRs-Fixed: 859961
2015-11-25 17:26:47 -08:00
Sreelakshmi Konamki
6f3a865a2b qcacld-3.0: wlan: Remove redundant validation of pAdapter
qcacld-2.0 to qcacld-3.0 propagation

Validation of pAdapter done in starting of hdd_smeRoamCallback().
Remove redundant pAdapter validation under flag eCSR_ROAM_SESSION_OPENED.

Change-Id: I1619bc929e484a60a930779a2acae071a710453a
CRs-Fixed: 898391
2015-11-25 17:26:47 -08:00
Sreelakshmi Konamki
32eadb109e qcacld-3.0: wlan: Deregister all the peers from TL during IBSS leave
qcacld-2.0 to qcacld-3.0 propagation

If user change the BSSID/SSID and restart the IBSS network, during
IBSS leave the driver deletes only the 1st peer and all other
entries are not deleted. Now when the IBSS restarts and try to
register a sta with the staID which is already present in the
stale entries, the registeration fails and thus the BSSID values
in TL are not updated for all these stale peers. Due to this the
data to these peers uses the old BSSID.
This change take care of Deregistering all the active IBSS peers
during IBSS leave.

Change-Id: Id1ce0ffd880b8c2c8afd46414a59ba7bb87d5b6f
CRs-Fixed: 841565
2015-11-25 17:26:47 -08:00
Sreelakshmi Konamki
945541391b qcacld-3.0: remove misprint in ol_txrx_peer_find_add_id()
qcacld-2.0 to qcacld-3.0 propagation

During create peer, 'delete peer' print is coming from
ol_txrx_peer_find_add_id(). Peer deletion is not happened when
ol_txrx_peer_find_add_id() calls ol_txrx_peer_unref_delete().
Actual peer deletion is happening in ol_rx_peer_unmap_handler().
So, remove 'delete peer' print in ol_txrx_peer_find_add_id().

Change-Id: If37a573f6ff734743c3901b96c7134c81b35e4c7
CRs-Fixed: 902463
2015-11-25 17:26:47 -08:00
Nirav Shah
47062ff40e qcacld-3.0: CL 1409457 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Add WMI_PDEV_PARAM_TXPOWER_DECR_DB, WMI_VDEV_PARAM_TXPOWER_SCALE,
and WMI_VDEV_PARAM_TXPOWER_SCALE_DECR_DB

CRs-Fixed: 934137
Change-Id: I0468afc4cb89d21bda82a6a8b14eac66ed7cc6cb
2015-11-25 17:26:47 -08:00
Nirav Shah
e1e4a81700 qcacld-3.0: CL 1408339 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Adding PDEV Param to Enable/Disable CTS2Self for
P2P GO when Non-P2P Client is connected.

CRs-Fixed: 934124
Change-Id: Ib85e7e5f076db54203b170d34992c439d52983a2
2015-11-25 17:26:47 -08:00
Nirav Shah
3650780ece qcacld-3.0: Do not lock to free all packets to avoid watchdog bark
Propagation from qcacld-2.0 to qcacld-3.0

Do not take single lock to free all TLSHIM packets
to avoid watchdog bark during driver unload.

CRs-Fixed: 934555
Change-Id: Iebfb449bd8174bc27207d33073c84a8f11d6e490
2015-11-25 17:26:47 -08:00
Nirav Shah
439e626abf qcacld-3.0: CL 1407588 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

WMI_ROAM_SYNCH_EVENT cleanup

CRs-Fixed: 932665
Change-Id: Iaf25497b2f511e03823894084b6920be79ca2dba
2015-11-25 17:26:47 -08:00
Hanumantha Reddy Pothula
616dfbe6fc qcacld-3.0: Update MCS index appropriately
qcacld-2.0 to qcacld-3.0 propagation

When AP is configured with MCS index less than 4(43Mbps) then Host
reports invalid MCS Index to upper-layer, leading to display invalid
link speed on GUI.
Updating MCS index with valid value and thereby updating correct MCS
index to upper-layer

Change-Id: Ibd1503be3825c879b7fa52bdfb6ff07423c39023
CRs-Fixed: 855022
2015-11-25 17:26:46 -08:00
Hanumantha Reddy Pothula
5090805f15 qcacld-3.0: Return NULL if zero is passed as argument to allocate memory
qcacld-2.0 to qcacld-3.0 propagation

While allocating memory if zero is passed as argument then kernel will
return address ZERO_SIZE_PTR(0x10) leading to pass NULL check, which is
usually done after every memory allocation. Hence when zero is passed to
allocate memory then return NULL without calling kmalloc.
While initializing neighbor roam data structure, don't allocate memory
if neighbor roam channel list is empty.

Change-Id: I50bdb99a0cd8ccbc2d764b8ac21f66bba8a8fdc4
CRs-Fixed: 815664
2015-11-25 17:26:46 -08:00
Hanumantha Reddy Pothula
3b8c0a5ba8 qcacld-3.0: Check priviledge permission for SET_CHANNEL_RANGE
qcacld-2.0 to qcacld-3.0 propagation

Kernel assumes all SET IOCTL commands are assigned with even
numbers. But in our WLAN driver, some SET IOCTLS are assigned with
odd numbers. This leads kernel fail to check, for some SET IOCTLs,
whether user has the right permission to do SET operation.
Hence, in driver, before processing SET_CHANNEL_RANGE IOCTL,
making sure user task has right permission to process the command.

Change-Id: I48bcd55bee45203667bcc679db4ad96aa9e04b7c
CRs-Fixed: 930555
2015-11-25 17:26:46 -08:00
Govind Singh
e55e699ade qcacld-3.0: Fix static code analysis errors
qcacld-2.0 to qcacld-3.0 propagation

Updated the wma, htt modules to address the
issues reported by static code analysis.

CRs-Fixed: 933728
Change-Id: I3437f7d9a12475f4a854412d9f34f48ed7553848
2015-11-25 17:26:46 -08:00
Govind Singh
f139e83f8e qcacld-3.0: clean up of ERROR logs
qcacld-2.0 to qcacld-3.0 propagation

Misleading error logs are removed
as part of this fix

CRs-Fixed: 929840
Change-Id: Ifdc10b79359863a4f3c2009403ee5f6c7ab18110
2015-11-25 17:26:46 -08:00
Xun Luo
a858a47ead qcacld-3.0: clear WMI work queue before bus context destruction
qcacld-2.0 to qcacld-3.0 propagation

All WMI work queue should be cleared and processing stopped before
bus context destruction. This change enforces this rule.

Change-Id: I2e12f3f08424f718ec66fe257060ce13de17ee4e
CRs-Fixed: 840422
2015-11-25 17:26:46 -08:00
Houston Hoffman
4c9607b607 qcacld-3.0: Bypass hif_completion_thread in fw event
We want to process the completions in parallel.
Upper layer should take care of its own thread safety.
hif_completion_thread is a legacy function that does in
context serialization of hif completions. Bypass it.

Change-Id: I73b8518d87645d827814cd1345eb68370de30d1f
CRs-Fixed: 941358
2015-11-25 17:26:46 -08:00
Houston Hoffman
bada641804 qcacld-3.0: Bypass hif_completion_thread in send
We want to process the completions in parallel.
Upper layer should take care of its own thread safety.
hif_completion_thread is a legacy function that does in
context serialization of hif completions. Bypass it.

Change-Id: I19660327ebb4a3cbb9908ce562ab6c72a6282e95
CRs-Fixed: 941358
2015-11-25 17:26:46 -08:00
Himanshu Agarwal
94045e429d qcacld-3.0: Fix static code analysis errors
Propagation from qcacld-2.0 to qcacld-3.0

Updated the wma, pe module to address the issues reported by static code
analysis.

Change-Id: I8666adf161225014108c189cbcffced9450ae0c4
CRs-Fixed: 889019
2015-11-25 17:26:46 -08:00
Karthick S
7a17a71bb0 qcacld-3.0: Free protection_fields_reset_timer
qcacld-2.0 to qcacld-3.0 propagation

Free protection_fields_reset_timer in the beginning of peDeleteSession
function to avoid the null defreference caused due to the race condition
between peDeleteSession and pe_reset_protection_callback.

Change-Id: I1b83977bb3683d6dd87ec94a992ac51f39cd97db
CRs-Fixed: 815796
2015-11-25 17:26:46 -08:00