Commit graph

3,296 commits

Author SHA1 Message Date
Vishwajith Upendra
e098ebd3e0 qcacmn: FILS changes for scan path
Add changes to match FILS realm info present in FILS indication IE
with the connection info.

Change-Id: I1ed6081f3320ecee8f86f7d87597b343230923b3
CRs-Fixed: 2093637
2017-08-29 20:54:08 -07:00
Venkateswara Swamy Bandaru
4b0ee101ca qcacmn: Fix napi polling issue
Do not enable interrupts and continue polling when there is pending work
group napi poll function.

Change-Id: I51184bc5b97f44a65e0883eb614bc47b2b5ca428
CRs-Fixed: 2094313
2017-08-28 14:47:04 -07:00
Dustin Brown
c50a659932 qcacmn: Update calls to cds_trigger_recovery
cds_trigger_recovery no longer takes any arguments. Update calls to
cds_trigger_recovery accordingly.

Change-Id: I2d2f36c73baa2133496559bd8213aec8091e51b5
CRs-Fixed: 2073933
2017-08-28 14:47:01 -07:00
Vikram Kandukuri
6915956d4c qcacmn: Update WMM params per VAP for lithium onwards
Update WMM params per VAP for lithium onwards

Change-Id: I025d8f314b255f4fa2da5c83916a122733b36c27
CRs-Fixed: 2064780
2017-08-28 08:12:03 -07:00
Tallapragada Kalyan
85a1455795 qcacmn: Do WDS source port learning if it is a 4-addr pkt
Added one more check for wds source port learning only
if it is a 4-address pkt.

Change-Id: I85c7859008fd6e5c060c7bf444e49e86c96e32c4
2017-08-28 08:11:56 -07:00
Chaitanya Kiran Godavarthi
6228e3be66 qcacmn: Add CDP API for HK DP to get security type from peer handler
Add CDP API for HK to get security type for ucast and mcast from
peer handler. Add additional peer handler argument for raw mode
rx decap functions. The peer handler is needed in the raw mode
functions for getting the security type of the frame and process
it accordingly.

Change-Id: I3c2688f33ca36a5bd2a747699d5acaab3ba14cfe
2017-08-27 21:51:34 -07:00
Varun Reddy Yeturu
1d25d6d7fc qcacmn: Add sanity check to avoid len overflow issue in WMI event data
In WMI/WMA, data from event buffer from FW is used without
sanity checks for upper limit in multiple places. This might
lead to a potential integer overflow further leading to buffer
corruption

Add upper bound checks for max limit of event buffer (1536)
in all affected places to prevent the potential integer
overflow

Change-Id: Ic9194a27c4a4c63fc68ff7fc61165a53e66ca4f4
CRs-Fixed: 2095545
2017-08-26 02:17:06 -07:00
Om Prakash Tripathi
6af738bb71 qcacmn: Init average rssi with frames rssi on receipt
Initialize average rssi with instantaneous rssi in
util_scan_unpack_beacon_frame intead of marking it as
DUMMY.

Change-Id: Ie2fd577feeb46d61915c6974d8c627acb31e8b81
CRs-Fixed: 2096979
2017-08-25 23:27:37 -07:00
Kiran Venkatappa
fe1abe8c70 qcacmn: Add hw_mode_id for SBS_OR_DBS mode
Update hw_mode_id enum to add an entry for SBS_OR_DBS mode.

Change-Id: I642682dabc4b04e8d292a54995be17488e026093
CRs-Fixed: 2097571
2017-08-25 21:27:06 -07:00
Keyur Parekh
5e32fdec2b qcacmn: Add support for wmi pktlog disable
Add API to send WMI command to FW when pktlog disable
by user.

CRs-Fixed: 2095489
Change-Id: Id5960aa9447fbee534a3c1e8a21085bc6f12dc50
2017-08-25 20:06:29 -07:00
Varun Reddy Yeturu
34a374603c qcacmn: Configure MAWC NLO parameters to the firmware
Get the MAWC based NLO parameters from HDD/WMA and pass them
to firmware

Change-Id: I16ce12d36df7f3ccab4db32b4d7f72a0f9762795
CRs-Fixed: 2064837
2017-08-25 18:46:30 -07:00
Varun Reddy Yeturu
f0d90c7f28 qcacmn: Configure MAWC roaming parameters to firmware
Get the MAWC based roaming parameters from CSR/WMA and pass them
to firmware

Change-Id: I78a287a39715dbabcceb2cb5c4270726ba265d61
CRs-Fixed: 2064837
2017-08-25 18:46:28 -07:00
Gyanranjan Hazarika
b5d426d683 qcacmn: D1.3 support - Code changes for Ie-Id, Length and IE-Id Ext
D1.3 defines the IE Id, Length and IE ID Extension for HE CAP and HE OP.
Host changes to accommodate them.

Change-Id: Idc3848b5486d05807cdc2ca3fb45ac493243558e
CRs-fixed: 2095550
2017-08-25 16:46:27 -07:00
Pratik Gandhi
7613908cb9 qcacmn: SmartMesh add support for multi radio
Add support for multi-radio  to smart mesh feature

Change-Id: I21f1a59be419cf68b3c038a08c58f17c82df33bb
CRs-Fixed: 2017269
2017-08-24 17:07:24 -07:00
Linux Build Service Account
8b300c08c1 Merge "qcacmn: Fix race condition that Tx is paused by flow control forever" 2017-08-24 08:11:07 -07:00
Linux Build Service Account
a75fdd8b0c Merge "qcacmn: Fix the use of uninitialized variable in policy manager" 2017-08-24 08:11:07 -07:00
Linux Build Service Account
e18cb77f4e Merge "qcacmn: Reduce log spam from policy manager" 2017-08-24 08:11:06 -07:00
Linux Build Service Account
9472baa04e Merge "qcacmn: Add support for back to back htt stats" 2017-08-24 08:11:05 -07:00
Linux Build Service Account
39017b6b93 Merge "qcacmn: Fix DSCP to TID map table" 2017-08-24 08:11:04 -07:00
bings
4dcaf8b239 qcacmn: Fix race condition that Tx is paused by flow control forever
When hdd_get_tx_resource is called, if free Tx desc is lower than low water
mark, vdev->os_q_paused will be set as 1 and WLAN_STOP_ALL_NETIF_QUEUE will
be triggered after a while. Before WLAN_STOP_ALL_NETIF_QUEUE is triggered,
if ol_tx_flow_ct_unpause_os_q is called, WLAN_WAKE_ALL_NETIF_QUEUE will be
triggered and vdev->os_q_paused will be set as 0. In such case there will
be no flow control unpaused forever.

Tx should be paused by flow control when Tx desc is lower than low water
mark, and unpaused when Tx desc is bigger than high water mark or Tx is
already paused by flow control.

Change-Id: Ib60139fd94a4fb88c92a7f8aaf886ae9d3ca4c75
CRs-Fixed: 2090475
2017-08-23 22:07:26 -07:00
CNSS_WLAN Service
36aea6f563 Merge "qcacmn: Fix key index extraction for mesh rx stats" into wlan-cmn.driver.lnx.2.0-dev 2017-08-22 19:59:52 -07:00
Linux Build Service Account
418996a5ef Merge "qcacmn: Expand the use of gDualMacFeatureDisable INI" into wlan-cmn.driver.lnx.2.0-dev 2017-08-22 19:56:38 -07:00
Linux Build Service Account
51f59338d3 Merge "qcacmn: Fill rssi value in the mgmt rx event structure" 2017-08-22 13:11:59 -07:00
Tushnim Bhattacharyya
7c535ebbfa qcacmn: Reduce log spam from policy manager
Reduce log spam from policy manager by converting non essential & periodic
logs to debug level.

Change-Id: I3cb01b47dd56edcf141479b14ea1e51e89b0473a
CRs-Fixed: 2094743
2017-08-22 10:56:00 -07:00
Venkateswara Swamy Bandaru
348e125905 qcacmn: Fix key index extraction for mesh rx stats
Fixed key index extraction in hal api to get correct key index from
key id octet.

Change-Id: I342c05260b17c5baba868223e1b6e75d995823aa
CRs-Fixed: 2073737
2017-08-22 09:29:23 -07:00
Tushnim Bhattacharyya
3441a08f56 qcacmn: Expand the use of gDualMacFeatureDisable INI
Few OEMs want DBS to be disabled for connections while
keeping DBS scan enabled.
Few OEMs want advance DBS scan features to be disabled.
Provide different value to gDualMacFeatureDisable INI item
to achive the goal.

Change-Id: Iddf5df23575a2f907bb8dbd0c37e03ff4ebbdea8
CRs-Fixed: 2068779
2017-08-22 08:40:53 -07:00
Linux Build Service Account
5e29e77a44 Merge "qcacmn: Fix for kernel panic in wifi up path" 2017-08-22 08:06:12 -07:00
Linux Build Service Account
afcbbb23b3 Merge "qcacmn: Fix Key derivation for mesh rx stats" 2017-08-22 08:06:11 -07:00
Venkateswara Swamy Bandaru
6d840bcb94 qcacmn: Fix for kernel panic in wifi up path
Same nbuf pointer is getting used after skb_unshare. This is fixed now.

Change-Id: I98cdbf5929553f20e78b04b32874beea03208cce
CRs-Fixed: 2094334
2017-08-22 07:26:04 -07:00
Venkateswara Swamy Bandaru
3f4e1c48cc qcacmn: Fix Key derivation for mesh rx stats
Fixed key derivation for mesh rx stats for received packet. Added cdp api
to get the key by passing key index and peer mac address.

Change-Id: I6a4c342b614ae85a5ad2fb047f2d8686aa068196
CRs-fixed: 2094335
2017-08-22 07:26:02 -07:00
Om Prakash Tripathi
121268292f qcacmn: Add support for back to back htt stats
In existing implementation when previous stats handling is under process
and a new stats event is received, new stats event is dropped.
Add support to queue any received stats message and process it
later in work queue context.

Change-Id: I7895a2f7ac49456c49374ce209da97c2148f43a2
CRs-Fixed: 2076552
2017-08-22 16:15:14 +05:30
Debasis Das
03bcfb0479 qcacmn: Fill rssi value in the mgmt rx event structure
The rssi field in the mgmt rx_event structure needs to be
filled.

Change-Id: I41b61c48f08ea70d749eee8f5a8987f4a6f3d32e
CRs-Fixed: 2096685
2017-08-22 01:38:56 -07:00
Yun Park
e56aa7b89a qcacmn: Markings updated
Markings updated

Change-Id: I8f031513a2adf5005be26965f73d2e9e1f52a15f
CRs-Fixed: 2093948
2017-08-21 16:50:13 -07:00
Tushnim Bhattacharyya
0b1a7ffdc0 qcacmn: Fix the use of uninitialized variable in policy manager
Initialize the uninitialized variable in
policy_mgr_get_channel_from_scan_result().

Change-Id: I435e6021b989562b69b3bccaa9a90d9cfd3ae560
CRs-Fixed: 2091884
2017-08-21 13:16:35 -07:00
Om Prakash Tripathi
5425c52aa0 qcacmn: Fix DSCP to TID map table
Add below fixes:
1. wifi3.0 only supports 2 HW DSCP to TID map tables.
   Check for supported number of tables before
   updating registers.
2. Do not overwrite previous DSCP TID config for
   different DSCP values while updating TID map
   for new DSCP value.

Change-Id: Icd8af1053fa48d3f1e2db317290f806cd41cd797
CRs-Fixed: 2091195
2017-08-21 01:35:11 -07:00
Aniruddha Paul
fbeb4bb9fa qcacmn: API for upating astentry active flag
API added to update the astentry active flag

Change-Id: I749960135d645cdf736fef01200c200147700f91
2017-08-20 05:16:17 -07:00
Rajeev Kumar Sirasanagandla
a3f4a29130 qcacmn: Add support to include selective scan IEs only
qcacld-2.0 to qcacmn propagation

Add support to include only selective IEs in probe requests in
order to improve user's privacy.

Change-Id: I59cf4181f60f5b4cd87a32fbcf29160d87ca59c8
CRs-Fixed: 1105495
2017-08-19 01:27:07 -07:00
Liangwei Dong
7a3433459f qcacmn: add FW self recovery for SDIO
add hif_check_fw_reg implementation for SDIO
solution.

Change-Id: Ic6948cfc7400d93a53e27074a17d5ceac45b558b
CRs-Fixed: 2071352
2017-08-18 21:27:08 -07:00
Mukul Sharma
a17d5ecbf4 qcacmn: Add support of GCMP (128/256) support
Add support of GCMP (128/256) security ciper support.

Change-Id: I3c9cb3dc72cce0a2cae3e468d3c1f3c004e11adf
CRs-fixed: 2071087
2017-08-18 18:27:37 -07:00
Rajeev Kumar
7f679457e1 qcacmn: Add QDF rate limit logging API
Add QDF rate limit logging API such that logs are rate limited
on need basis.

Change-Id: I40949155a1938998bc73830929db5c2a07bc380d
CRs-Fixed: 2083921
2017-08-18 17:46:44 -07:00
Kiran Venkatappa
22046183ed qcacmn: Update chaninfo extract API for TLV target
FW implementation is updated to add more fields in chan info event.
Update host implementation to extract these fields.

Change-Id: I4935f3aa1c2e87d27a13a29651db8d8835cb4f91
CRs-Fixed: 2090787
2017-08-18 17:46:43 -07:00
Poddar, Siddarth
725e9f5a0d qcacmn: Add missing qdf_spinlock_destroy() to free debug cookie
Add missing qdf_spinlock_destroy() to destroy spin lock debug cookie
for SLUB build. For normal builds, qdf_spinlock_destroy() is a NO-OP
function.

Change-Id: If5a3843a468e460952dc64f0e6b5b1fba05ebbb3
CRs-Fixed: 2078940
2017-08-18 05:37:30 -07:00
Radha krishna Simha Jiguru
f70f991f45 qcacmn: Send peer create to NSS only for connected peers
Send peer create to NSS only when peer map comes for connected peers.
When peer map comes for WDS peers only update WDS peer specific entries.

Change-Id: I32d785180bcd1dae2703d40b55f4536685f10439
2017-08-17 20:51:16 -07:00
Tushnim Bhattacharyya
f80cf0eccb qcacmn: Relax the check on nss field during HW mode table lookup
Relax the check on nss field during FW advertised HW mode table lookup.
Instead of looking for exact match look for less than or equal to the FW
advertised nss value.

Change-Id: I360d14282f03aad25f4338546cbcbfb3cbd3a76b
CRs-Fixed: 2090863
2017-08-17 17:25:19 -07:00
Tallapragada Kalyan
1c14d5d8e9 qcacmn: MEC loopback check even when sa_is_valid not set
There is a case when the multicast/broadcast frame gets loop backed
even before a MEC WDS entry gets added, in this case
the MEC check based on sa_is_valid will fail, hence added
another ast lookup check.

Also fix the ast entry iterator to use _safe option, since
we are deleting ast entries in the same iterations

Change-Id: I0567893783649d991c3623a61c60fbc63d1a24ef
2017-08-17 14:55:13 -07:00
Tallapragada Kalyan
fb72b637f7 qcacmn: AST based MEC support for HAWKEYE
Implemented MEC support using AST entries rather than
using a separate MEC table.

Change-Id: Ifaafb4be1f8a981ad28609ea9740e8bbccec9046
2017-08-17 14:55:11 -07:00
tfyu
6c7625b2ca qcacmn: Add macro protection for HIF CE
Add macro protection for HIF CE, it shouldn't include the ce head file
when the module is usb or sdio.

Change-Id: Icc38ffaa24581141f86d41afe2db7c5aa944a1cd
CRs-Fixed: 2090621
2017-08-17 03:26:53 -07:00
Ashok Ponnaiah
b696221fd3 qcacmn: Fix wep-shared in sta mode
Add selfpeer setting in obj manager
moved handling peer wep keys during peer obj creation
addressed wep encap issue, added trailer bits.
Wep key length check fixed

CRs-Fixed: 2090497
Change-Id: I0a409e12941270dd65fcffabcbee2d5d06cc1f06
2017-08-16 22:46:20 -07:00
Varun Reddy Yeturu
947606fe4a qcacmn: Fill rssi_thresh_offset_5g in WMI
Fill rssi_thresh_offset_5g in WMI to configure this
value into the target

Change-Id: I0e5dde987fcc9fbb1f0556ec6f195d0a5ada4ffe
CRs-Fixed: 2093335
2017-08-16 17:36:53 -07:00
Kabilan Kannan
7419feb01e qcacmn: Fix the invalid MAC address config issue in TDLS
When an invalid mac address(all zeros 00:00:00:00:00:00) sent
to the host via user configuration, it triggers the crash in
the system.
Add checks to reject the invalid mac address configuration
in TDLS.

Change-Id: I340f581e7011f78faf5f58c10f7b6eec15ea2940
CRs-Fixed: 2068026
2017-08-16 09:56:10 -07:00