Commit Graph

3190 Commits

Author SHA1 Message Date
Shashikala Prabhu
385c7c0eb0 qcacmn: Initialize zero cac dfs lock
Initialize zero cac dfs precac lock.

Change-Id: I0b12c765d0476a78cddcaca2b0153f7510e56c6c
CRs-Fixed: 2080572
2017-08-04 15:35:42 -07:00
Srinivas Pitla
4a3f486e6e qcacmn: Add max peer count and peer count support to pdev
Max peer count includes self peer/bss peer as well
Fixed issue in max peer check

Change-Id: I72fd7af1b99760631467ee6bcf92af6a63ee38e1
CRs-Fixed: 2078904
2017-08-04 06:04:56 -07:00
Manjunathappa Prakash
8804f978eb qcacmn: Do not LRO aggregate if peer is not connected
We have race condition between lro flush of hif_napi_poll and MC thread
lro flush while flushing the ol_txrx_cached_bufq packets for peer. Avoid
the situation by simply marking the all the Rx packets as LRO ineligible
while enqueuing packets to ol_rx_cached_buf.

Change-Id: Ief0d7dd6c25cf45912820f0e237fd1179a57a5c7
CRs-Fixed: 2032674
2017-08-03 19:48:40 -07:00
Srinivas Girigowda
43fa6527d4 qcacmn: Enable FATAL/ERROR/WARN/INFO log levels to console
Enable FATAL/ERROR/WARN/INFO log levels to console.

Change-Id: I54ea83ded49fcb2f1e8e1c13973ee8035dc9ce5d
CRs-Fixed: 2017427
2017-08-03 19:48:38 -07:00
Srinivas Girigowda
ee8f5dbf4b qcacmn: Utils: Reduce the log spam in kmsg
Move the logs to appropriate log levels to reduce
the log spam in kmsg.

Change-Id: I27ca212113513b15f159aa26da67e03bd3a73a9a
CRs-Fixed: 2017427
2017-08-03 19:48:36 -07:00
Srinivas Girigowda
2cde14e687 qcacmn: Fix clang warnings enum qdf_nbuf_l4_rx_cksum_result_t
warning: implicit conversion from enumeration type
'qdf_nbuf_l4_rx_cksum_result_t' to different enumeration
type 'qdf_nbuf_l4_rx_cksum_type_t

Change-Id: Ib6d9e863d6355746138c4b087a0cb19f12404f75
CRs-Fixed: 2055513
2017-08-03 19:48:35 -07:00
Srinivas Girigowda
3188f98125 qcacmn: Fix recursive memory allocation failure
On low memory conditions, qdf_mem_malloc_debug() fails and
on failure it triggers a host diag event to user space
which again tries to allocate memory using qdf_mem_malloc_debug()
which fails and this loop continues and might have caused
workqueue to get stuck.

Fix this by not sending the host diag event to user space on
low memory conditions.

Change-Id: I5bd302dfa372d40c570eaa830ed82a0bbaddc51f
CRs-Fixed: 2026975
2017-08-03 19:48:33 -07:00
Srinivas Girigowda
bc4a19290d qcacmn: Fix clang warning: redefinition of typedef 'qdf_mutex_t'
drivers/staging/qcacld-3.0/../qca-wifi-host-cmn/qdf/linux/src/qdf_lock.c:42:23:
warning: redefinition of typedef 'qdf_mutex_t' is a C11 feature [-Wtypedef-redefinition]
typedef __qdf_mutex_t qdf_mutex_t;
                      ^
drivers/staging/qcacld-3.0/../qca-wifi-host-cmn/qdf/inc/qdf_lock.h:240:23:
note: previous definition is here
typedef __qdf_mutex_t qdf_mutex_t;

Change-Id: Ib8a66843e22595d5ba07a38606032679c3c1b46d
CRs-Fixed: 2055513
2017-08-03 19:48:31 -07:00
Srinivas Girigowda
f6b3aacb2e qcacmn: Add qdf_driver_type
Add qdf_driver_type.

Change-Id: Ib5c1d71ed43ea09cea8d65ed9aef0937391b6d09
CRs-Fixed: 2055513
2017-08-03 19:48:29 -07:00
Tushnim Bhattacharyya
3607be72ac qcacmn: policy_mgr_mode_specific_modification_on_pcl to be called per mode
policy_mgr_mode_specific_modification_on_pcl to be called for the
connection type for which get_pcl is called.

Change-Id: I78010ebf877130eca9eaa0074a833fb5b7faa4a1
CRs-Fixed: 2079986
2017-08-03 18:04:24 -07:00
Linux Build Service Account
a291845373 Merge "qcacmn: Fix build errors generated by gcc 6" 2017-08-02 06:04:17 -07:00
Linux Build Service Account
3d51966f11 Merge "qcacmn: copy peer meta data from reo descriptor to RX TLV" 2017-08-02 06:04:15 -07:00
wadesong
6edf0b6d1b qcacmn: Fix build errors generated by gcc 6
Gcc 6 introduces some stricter checking for indentation,
causing warnings of misleading-indentation, which are
treated as build errors when CLD3.x drivers are compiled.

Fix all the identation warnings under qcacmn branch.

Change-Id: I50b5eb093f08be118a29ff58e1bc3d7f2518e0bf
CRs-Fixed: 2058147
2017-08-01 22:11:24 -07:00
Tallapragada Kalyan
bb3bbcd90d qcacmn: copy peer meta data from reo descriptor to RX TLV
Change-Id: Iecb573d457914a53753604487e89e399bb814c36
2017-08-01 20:39:38 -07:00
Dustin Brown
bac753d968 qcacmn: Avoid WD panic during scheduler shutdown
Avoid scheduler watchdog panic during scheduler shutdown to avoid
interfering with recovery mechanisms.

Change-Id: If32cc77a9725fdb61fc09c4065fc2603f2e8e00b
CRs-Fixed: 2069429
2017-08-01 12:46:21 -07:00
Kai Chen
634d53f81b qcacmn: Fix the ppdu id and buffer reading issue
Read the ppdu id from MPDU start TLV instead of
ATTENTION TLV. The MPDU could extend to multiple
SKB buffer. The ATTENTION TLV will be in the TLV
of last SKB buffer. MPDU start will be in the
first SKB buffer in MPDU. Read ppdu id from MPDU
start TLV guarentee the correct reading
The msdu count in MPDU from REO entrance ring is for
msdu count for decap frame or MPDU count for not decap
frame. msdu length in msdu desc info is for msdu
length for decap frame or MPDU length for not decap
frame. The MPDU could extend to multiple SKB.
The continous bit in msdu desc info indicate if
the MPDU/MSDU extend to next SKB. code is modified
accordingly.

Change-Id: If9aeb278f84a57d64651e1f877b5185f6db63cd2
2017-08-01 11:42:44 -07:00
Chaithanya Garrepalli
cdc307f70b qcacmn: Replace SKB CB vdev_ctx member with vdev_id
Removed submit_ts and replaced vdev_ctx with vdev_id
in qdf_nbuf_cb

Change-Id: Ib478aa69ee8069d1c5ff5de29ee0431c238f4b7d
CRs-Fixed: 2065367
2017-08-01 10:02:46 -07:00
CNSS_WLAN Service
7c55c7ed56 Merge "qcacmn: Fix NULL dereference of peer from DP_STATS macros" into wlan-cmn.driver.lnx.2.0-dev 2017-07-31 23:05:51 -07:00
Yun Park
22b406cc13 qcacmn: Fix NULL dereference of peer from DP_STATS macros
Fix NULL dereference of peer from DP_STATS macros

Change-Id: I25b6269fe8e9b1deccaa38a7499167a156db6f37
CRs-Fixed: 2058483
2017-07-31 17:52:43 -07:00
Linux Build Service Account
594c179476 Merge "qcacmn: Allocate additional 8 bytes for MIC in PMF case" 2017-07-30 19:05:55 -07:00
Gurumoorthi Gnanasambandhan
2373e37ffa qcacmn: Allocate additional 8 bytes for MIC in PMF case
Last 8 bytes for MIC are allocated in host for Hawkeye.

Change-Id: Iab375fdf3115334dba6e1f0b18c31356b8f4ed09
2017-07-30 00:39:57 -07:00
Linux Build Service Account
653d3cab07 Merge "qcacmn: Fix the page mask used for Tx Descriptor" 2017-07-27 23:07:49 -07:00
Pamidipati, Vijay
776310a80e qcacmn: Fix the page mask used for Tx Descriptor
Increase the number of bits allocated for page mask to
accomodate upto 16K descriptors needed in Tx path

Change-Id: I9a1a2757be353c3bd9f78773b87cca7c86041b9c
CRs-Fixed: 2004658
2017-07-27 20:17:18 -07:00
Pamidipati, Vijay
fc08fb352a qcacmn: Disable intrabss forwarding for NAWDS nodes
IntraBSS forwarding creates a packet loop when NAWDS mode is enabled.
Disable the feature for NAWDS

Change-Id: I4d4f5616645b435e1e78c45f9347fa04c91e74ae
CRs-Fixed: 2004658
2017-07-27 20:17:16 -07:00
CNSS_WLAN Service
6eacdbca8c Merge "qcacmn: Correct OEM signature string for POS utils" into wlan-cmn.driver.lnx.2.0-dev 2017-07-27 15:47:46 -07:00
Kapil Gupta
09b574f3d4 qcacmn: Correct OEM signature string for POS utils
Add changes to correct string names as par guidelines.

Change-Id: If6f58d7e122b5f3f3c46f68738a16b98c8122563
CRs-Fixed: 2078300
2017-07-27 12:52:04 -07:00
Linux Build Service Account
8237571825 Merge "qcacmn: WMI changes to Send OCE rssi reject BSSID list to firmware" 2017-07-27 12:38:03 -07:00
Abhishek Singh
7a84fe0bba qcacmn: WMI changes to Send OCE rssi reject BSSID list to firmware
Add support for rssi based assoc rejection from a bssid and
Try to connect to this bssid only after time interval indicated in
Assoc reject or when rssi has improved by margin indicated in Assoc
reject.

On connection send OCE rssi reject BSSID list to firmware so that
firmware will avoid connecting to these BSSID until RSSI improve or
delta interval has elapsed.

Change-Id: Ic14f85894a4a2f47bcdde9ce977c7b92aeaf8fce
CRs-Fixed: 2076654
2017-07-27 07:21:18 -07:00
Linux Build Service Account
66859b73f2 Merge "qcacmn: SmartMesh Extract status for radiotap headers" 2017-07-26 11:40:30 -07:00
Pratik Gandhi
4fbe3fe1c7 qcacmn: SmartMesh Extract status for radiotap headers
Extract rx status to add correct values in radiotap header
before sending to stack.

Change-Id: If7adf523dc61cd52c984ad0a97da82fccc608bbc
CRs-Fixed: 2017269
2017-07-26 09:24:34 -07:00
Govind Singh
3dda60e173 qcacmn: Remove redundant header file inclusion from wmi layer
Remove redundant header file inclusion from wmi layer by abstracting
the dependency with in WMI layer.

Change-Id: Ie113b69006a960b70d781134775bc44c7508fc4c
CRs-Fixed: 2023825
2017-07-26 08:14:52 -07:00
yeshwanth sriram guntuka
8bdb0697af qcacmn: Add vendor features to indicate OCE support
Vendor features are used to indicate OCE support
from driver to user space which are set based on ini
params for STA and SAP.

Change-Id: I7ef572443c8a7ed313917e4dfab5f4fab73fe245
CRs-Fixed: 2031980
2017-07-26 08:14:50 -07:00
Linux Build Service Account
dcc4bb25d8 Merge "qcacmn: Check NAN iface with same name before creating another one" 2017-07-25 21:59:25 -07:00
Naveen Rawat
b948a1f9ad qcacmn: Check NAN iface with same name before creating another one
There were some corner cases reported in which NDIs are getting
created with same name. Providing fix for the same.

Change-Id: I84ea80580faa44809e257d3b17645808637b5d51
CRs-Fixed: 2072509
2017-07-25 13:33:54 -07:00
Naveen Rawat
2171e391a8 qcacmn: Enable support for multiple NAN Data Interfaces
Enable support for multiple nan data interfaces. The usespace
may need to create multiple NDIs depending on whether it
requires IP isolation or not.

Change-Id: I4391f2efdc6bdede52a73915531d39dd7798c39d
CRs-Fixed: 2072501
2017-07-25 13:33:53 -07:00
Linux Build Service Account
fcb66972c2 Merge "qcacmn: Add GET_STATION_REMOTE vendor subcmd" 2017-07-25 06:49:01 -07:00
Will Huang
7c17db65c7 qcacmn: Add GET_STATION_REMOTE vendor subcmd
qcacld-2.0 to qcacld-3.0 propagation

Add QCA_WLAN_VENDOR_ATTR_GET_STATION_REMOTE sub command for peer
station of SoftAP information stats feature, and add related
attributions of this command.

Change-Id: I516d459be2e6556a7e33d285c3ffeacc1ab0f9a5
CRs-Fixed: 2075888
2017-07-25 05:43:11 -07:00
Linux Build Service Account
cc203fd391 Merge "qcacmn: For STA mode, set ucast key for bsspeer macaddr in crypto setkey" 2017-07-24 12:07:41 -07:00
Nandha Kishore Easwaran
e9f8070cee qcacmn: For STA mode, set ucast key for bsspeer macaddr in crypto
setkey

Change-Id: Idffa8bce38bb73d35c23678267a08f3b20be0e56
2017-07-24 07:52:44 -07:00
Yingying Tang
96b8cea9be qcacmn: Fix "__aeabi_uldivmod" symbol error
There is an unknown symbol error "__aeabi_uldivmod" due to
a division operation between uint64 value in wlan driver.
Add qdf API to use do_div to avoid "__aeabi_uldivmod" symbol
error.

Change-Id: I24e51990ff9e0ecea327ad9c71266fd768d62a6c
CRs-Fixed: 2013952
2017-07-24 07:52:42 -07:00
Ashish Kumar Dhanotiya
1c5d902876 qcacmn: Add proper api for ktime_get_boot_ns for kernel 3.10
Kernel api ktime_get_boot_ns is not supported in kernel version 3.10
so add correct api for kernel 3.10.

Change-Id: Id78d50d759db90a9c6edf4114f8af1a925dfb9bb
CRs-Fixed: 2076538
2017-07-24 02:37:31 -07:00
Linux Build Service Account
04649c8576 Merge "qcacmn: Fix crash caused by sdio ramdump allocation" 2017-07-24 00:25:21 -07:00
bings
60da5a87c4 qcacmn: Fix crash caused by sdio ramdump allocation
For TF sdio chip with platform driver, ramdump is
configured in platform driver. Driver can get the
virtual memory, but it can't call ioremap again.

If there is a platform driver, ramdump should be
allocated in platform driver, and if there is no
platform driver, ramdump should be allocated in
driver.

CRs-Fixed: 2060381
Change-Id: Ia2a32a4895f354e365522a30bbfac949ccb7a391
2017-07-23 20:14:47 -07:00
CNSS_WLAN Service
2908bdf2a3 Merge "qcacmn: Add API to get current regdomain" into wlan-cmn.driver.lnx.2.0-dev 2017-07-23 18:02:31 -07:00
Linux Build Service Account
8b5f5bdeac Merge "qcacmn: Add API to get current dfs domain" 2017-07-23 15:46:31 -07:00
Linux Build Service Account
036d8bc745 Merge "qcacmn: Fix DFS kernel panic" 2017-07-23 15:46:31 -07:00
Shashikala Prabhu
8216667362 qcacmn: Add API to get current regdomain
Add API to get regdomain pair ID, 2GHz/5GHz regdomain,
2GHz/5GHz ctl values and dfs domain. For Partial-offload,
during country code change HOST sends these values to FW.

Change-Id: I718813d7559ea1564e0952221a881589c6f3cd0d
CRs-Fixed: 2058130
2017-07-23 13:57:18 -07:00
Abhijit Pradhan
af06bcbb63 qcacmn: Add API to get current dfs domain
Add API to get current DFS domain from regulatory component

Change-Id: Iabe4abb0966791e68130ff2d1a7305768893bfcc
CRs-Fixed: 2078153
2017-07-23 13:57:17 -07:00
Shashikala Prabhu
8c01b66c0e qcacmn: Fix DFS kernel panic
Due to dfs and 'ic' flag mismatch, ieee80211_find_channel()
was returning channel as NULL.

Change-Id: I2c8a09b5a1018d7daf2a925bcad7063a6b0e2988
CRs-Fixed: 2067959
2017-07-23 13:57:16 -07:00
Linux Build Service Account
2057042a96 Merge "qcacmn: Fix build errors generated by gcc 6" 2017-07-23 13:27:04 -07:00