Commit Graph

9722 Commits

Author SHA1 Message Date
Gururaj Pandurangi
00d6ce30a3 qcacmn: Add action OUI to disable TWT
Add a new action OUI to disable TWT for certain APs.

Change-Id: I10fe6218d03f45c132268a120bdeb19d58696d9d
CRs-Fixed: 2793128
2020-10-28 09:21:49 -07:00
Tiger Yu
eff1069f87 qcacmn: Assertion when detecting rx desc nbuf sanity check failure
Assertion when detecting rx desc nbuf sanity check failure to get more
info in the RX refill buffer ring for default version.

Change-Id: I8d0255e2f13e2b993f5651b788f895ea06187bf9
CRs-Fixed: 2800602
2020-10-28 09:21:45 -07:00
Ananya Gupta
c8a732e132 qcacmn: Check tx completions pending before disabling pipes
wlan Tx completions doorbell is rung after IPA pipes are disabled
To fix this, Check if tx completions are pending before disable IPA
pipes.

Change-Id: I1903e593cd6a546a277979073f0a9ba62b681644
CRs-Fixed: 2796989
2020-10-28 09:21:42 -07:00
Debasis Das
a420fc8730 qcacmn: Dont unmap cloned ME buf's before freeing
For ME, cloned nbuf's are not mapped.Hence,these
should not be unmapped before freeing.

Change-Id: I998cd4924781944754a81df7d3675c0a34dc10a0
2020-10-28 05:05:35 -07:00
Ashish Kumar Dhanotiya
047a93da86 qcacmn: Use correct api to get the country info
currently connection manager is using incorrect api to
get the country info which gives compilation error for WIN.

Use correct api to get the country to avoid any compilation
issue.

Change-Id: I647b171ad2ee4a2b70f6803869435074643aa677
CRs-Fixed: 2801991
2020-10-27 13:02:33 -07:00
Abhishek Ambure
749c39466e qcacmn: Add test config attr to start/stop transmitting FD frames
Define QCA vendor attribute
QCA_WLAN_VENDOR_ATTR_WIFI_TEST_CONFIG_FILS_DISCOVERY_FRAMES_TX to
dynamically start/stop transmitting FILS discovery frames.

Change-Id: If0b07567c8b9c1278b9a6fd7b2f2d574d7f233bc
CRs-fixed: 2800970
2020-10-27 10:53:24 -07:00
Abhishek Ambure
4bf92518ab qcacmn: Add reason codes to report various connect fail
The connection process fails for several reasons and the status codes
defined in IEEE802.11 specification doesn't cover the locally generated
reason codes. Add an attribute to QCA_NL80211_VENDOR_SUBCMD_GET_STA_INFO
vendor sub command which can be used by driver/firmware to report various
additional reason codes for connection failures.

Change-Id: Ibab4696fba34f7a18fb8b5f8601e90c5dfcba89e
CRs-Fixed: 2799153
2020-10-27 06:56:04 -07:00
Naga
8701ff62fd qcacmn: Avoid peer free notification for self peer
Change logic to identify self peer from pointer
comparison to mac comparison, as there is a chance
self peer can be null and peer free notification
will be issued to self peer.

CRs-Fixed: 2790058
Change-Id: Id0615bbfbe871a47477db7474027216619ca34f0
2020-10-27 06:56:01 -07:00
Kai Chen
f71662bc1a qcacmn: Not able to enable pktlog when monitor mode is enabled
This change enables pktlog when monitor mode is enabled.

Change-Id: Ia471c2a5ff92ad590c8c61bc1527b2760d4ba51c
CRs-Fixed: 2799509
2020-10-27 04:56:55 -07:00
Rakshith Suresh Patkar
4b8e53fb7a qcacmn: Remove QCN9100 from application of fft bin size adjust
fft bin size adjust parameter is no longer applicable for
QCN9100. Remove QCN9100 in the check for setting this paramenter.

Change-Id: Ibff3d2d618e20563add79e65e31a442d8d36ba61
CRs-Fixed: 2804120
2020-10-26 23:37:55 -07:00
Pavankumar Nandeshwar
403a1b89cd qcacmn: Add target type checks in spectral for QCN9100
Add target type checks in spectral for QCN9100
at required places

Change-Id: I21c6c2f3e33245540e754e018098dca9c1fc353f
2020-10-26 23:37:51 -07:00
Christopher Chopp
36627ac5e9 qcacmn: Add WMI Handler for TSF Event
Add handling for WMI TSF Event, including registration,
sending event and extracting response.

Change-Id: Icccf9b5eb7e46bd87caf7a644be903747eac025c
2020-10-26 18:56:43 -07:00
Jingxiang Ge
d03233cb19 qcacmn: Support link rate for mcs12/13
This is part of feature which enables link rate
he mcs12/13 for 4k QAM.

Change-Id: Ifade156afca0bf9498383455843b9a7020b53298
CRs-Fixed: 2803008
2020-10-26 16:55:27 -07:00
Vignesh U
b32ef7cdb0 qcacmn: Add ADFS compile-time macros
For a 16-MB profile, while insmoding "umac.ko" unknown symbol error for
function "dfs_translate_radar_params_for_agile_chan" is seen.

The actual definition of function
"dfs_translate_radar_params_for_agile_chan" is present in the
dfs_zero_cac.c which is not compiled for a 16-MB profile. Therefore,
the unknown symbol error is seen.

Add ADFS compile-time macros
QCA_SUPPORT_AGILE_DFS and QCA_SUPPORT_ADFS_RCAC to the declaration of the
ADFS specific function dfs_translate_radar_params_for_agile_chan().
As the macros are not present in 16-MB profile, the function becomes an
empty function in the zero_cac.h and definition of
dfs_translate_radar_params_for_agile_chan() is present (though empty)
in the umac.ko.

Change-Id: I2e28090ef99a76dad9f814f739c207f5bf0f2320
CRs-Fixed: 2802734
2020-10-25 03:36:20 -07:00
Yeshwanth Sriram Guntuka
7e9e7e4bcd qcacmn: Use the appropriate desc pool for mon status ring
In dp_mon_status_srng_drop_for_mac, the rx_desc pool
used for status ring is dest ring desc pool which is
not the appropriate one.

Fix is to use the appropriate desc pool for mon status
ring.

Change-Id: I6f178354789212b375a7a541366bef590a925568
CRs-Fixed: 2800658
2020-10-24 15:45:50 -07:00
Ashish Kumar Dhanotiya
6a2457fc27 qcacmn: Add conversion of all auth type for big data
Currently host does not convert all internal auth types
to qca auth types which results in invalid auth type
indication for big data logging even for some of the
valid auth types.
For example in current scenario connection hapens in SAE
auth type but driver indicates invalid AKM type.
To address above issue add missing auth type and send
proper auth type to user space as part of the big data
logging.

Change-Id: I2612a081385c2bc888afb032cf6fd2a44d886e40
CRs-Fixed: 2803348
2020-10-23 14:50:22 -07:00
Linux Build Service Account
eb9b6ee897 Merge "qcacmn: Add support for peer create response event" 2020-10-23 12:36:44 -07:00
Naga
457c3d62e8 qcacmn: Add support for peer create response event
Add host data structure and api declarations
corresponding to peer response event and register
WMI_PEER_CREATE_CONF_EVENTID in global wmi event_ids.

Change-Id: I143a4a85d079cc113397348512b0d86f500cae5b
CRs-Fixed: 2797197
2020-10-23 12:13:02 -07:00
Linux Build Service Account
1aefd7647b Merge "qcacmn: Add feature flag for peer create response" 2020-10-23 10:06:34 -07:00
Linux Build Service Account
d86057f866 Merge "qcacmn: Increment skb users for TSO pkt before enqueue of first segment" 2020-10-23 10:06:34 -07:00
Kiran Venkatappa
85df5350c6 qcacmn: Add thermal throttling header path
Thermal throttling(TT) defines are added in new TT specific header files
Add this path in include path of dependent build files.

Change-Id: I4590d9a782071dd5975246274cf7e7489544efc9
CRs-Fixed: 2800393
2020-10-23 10:03:29 -07:00
Liangwei Dong
bf189853b7 qcacmn: Add host definition for target thermal throttle level
Convert target thermal throttle level to host definition -
enum thermal_throttle_level.

Change-Id: I9914aaf56b781533565cd6a3f8b279ee67215c23
CRs-Fixed: 2786660
2020-10-23 10:03:25 -07:00
Abhishek Singh
7fd4d073bc qcacmn: Unlink BSS on connect timeout and peer/southbound disconnect
Unlink BSS on connect timeouts like AUTH/JOIN/ASSOC timeout and
in case of no candidate found. This is to avoid reconnect without
a scan.

Also remove entry if diconnect from peer or south bound disconnect
due to heartbeat failure, sta kickout etc.

Change-Id: Ie78c7e764e8c009a5d19ed5dda9c6b9bbf75196f
CRs-Fixed: 2798188
2020-10-23 10:03:21 -07:00
Gerrit - the friendly Code Review server
55151025f0 Merge changes into wlan-cmn.driver.lnx.2.0 2020-10-23 09:37:28 -07:00
Min Liu
3019e439e8 qcacmn: Filter out beacon with invalid RSN IE
Filter out beacon / probe response which has RSN IE with
truncated fields.

Change-Id: I747fe83d35fbd9986770c499465e89c14947933f
CRs-Fixed: 2757951
2020-10-23 05:48:14 -07:00
Abhishek Ambure
06ac6b2604 qcacmn: Add support to send FILS DISC TX enable/disable to FW
Add support to send WFA test config FILS DISC frames TX
enable/disable to FW.

Change-Id: I5b0abed1b6fe517b12c29269da6456c48b21725c
CRs-Fixed: 2801138
2020-10-23 05:48:10 -07:00
Karthik Kantamneni
2c94590699 qcacmn: Fix MIC header calculation for MPDU fragmented packets
While performing MIC header check for MPDU fragmented packets
host is expecting last fragment will hold full 8bytes of MIC header,
but this is not true in case of MPDU level fragmentation since
MIC header is part of payload it can split across last two fragments.
Fix this logic by extracting MIC header from last two fragments in case
last fragment doesn't have full 8 bytes of MIC header.

Change-Id: I41aaa35d9a18ac0222ab55be6822f9c9d7f15982
CRs-Fixed: 2790661
2020-10-23 03:52:56 -07:00
Rakesh Pillai
b91fda62d9 qcacmn: Increment skb users for TSO pkt before enqueue of first segment
TSO packet segments are enqueued to the HW individually.
The skb users count is incremented for each additional
segment, so that it is freed only when the TX completion
for the last segment is received.

Currently the skb users is incremented for the additional
TSO segments after the previous segment has been enqueued
to the HW. Due to this, there is a chance for the tx
completion for the first TSO segment to be received even
before the skb users is incremented to account for the
remaining TSO segments, thereby leading to use-after-free
scenarios.

Fix this by incrementing the skb users for additional
TSO segment before enqueueing the previous TSO segment
to the HW.

Change-Id: Idebc28719ba6f0223d5454e15c3cde349803816e
CRs-Fixed: 2801777
2020-10-22 22:10:52 -07:00
Naga
c9e9267a06 qcacmn: Add feature flag for peer create response
Add soc feature flag for peer create response
event.

Change-Id: I29058baf9901a2eeedc10144d832c697a81f632a
CRs-Fixed: 2797195
2020-10-22 21:31:43 -07:00
Rakesh Pillai
c5a7832846 qcacmn: Add reo dst indication to FISA flow table
Add the reo destination indication value in
the FISA flow table. The reo destination
indication will be saved for every flow.

Change-Id: I58782cc7be7dd686dc9e0f5837e6bbe406cc1514
CRs-Fixed: 2803079
2020-10-22 18:17:22 -07:00
Himanshu Batra
3ec71fc882 qcacmn: Initialize locally generated disconnect resp
Initialize locally generated disconnect resp with zero to avoid random
values

Change-Id: I88e2a1d85c92b54352c30a8f82940971f721a4a4
CRs-Fixed: 2802683
2020-10-22 04:03:23 -07:00
Manikanta Pubbisetty
b265955389 qcacmn: reap monitor rings before vdev delete
In monitor mode, as part of VDEV delete, monitor mode
poll timer is stopped; it is good to reap the monitor rings
once after timer stop to avoid crashes that arise due to
RXDMA2SW ring backpressure.

Change-Id: Ib15b3398087073ad053616c6aa68e295eaebdd17
CRs-Fixed: 2796608
2020-10-22 01:47:34 -07:00
Abhinav Kumar
85bc644bb6 qcacmn: Resolve compilation error
Resolve compilation error by enabling
CONFIG_WLAN_TRACE_HIDE_MAC_ADDRESS := y

Change-Id: I336cd48db05e2e785ae1234ee5d135b68c532b77
CRs-Fixed: 2797225
2020-10-21 16:54:40 -07:00
Himanshu Batra
8656266cf7 qcacmn: Enable/disable full monitor mode for mcopy mode
mcopy mode uses monitor destination ring to sniff mgmt frames, 
send enable/disbale full monitor mode by sending HTT msg to FW
when configuring mcopy.

Change-Id: Ie9510bda223861c13054abac640b2c879c4d334d
2020-10-21 07:20:55 -07:00
Ashish Kumar Dhanotiya
88efb959a6 qcacmn: Initialize osif and legacy callbacks for connection manager
Initialize osif callbacks to connection manager and add
legacy callbacks to osif and initialize these legacy callbacks
for connection manager.

Change-Id: Ic3e8bd6f55b6cdbbc8cdd5c9c3a6631e8d3bd83e
CRs-Fixed: 2797472
2020-10-21 07:20:51 -07:00
Yeshwanth Sriram Guntuka
f2c65a9b4c qcacmn: Increase ring size for REO exception ring
Increase ring size of REO exception ring to 512
entries.

Change-Id: Ifd1395578e1f80741208ea2cbb0a82b9b661c01b
CRs-Fixed: 2796249
2020-10-20 19:27:02 -07:00
Nisha Menon
a377301c78 qcacmn: Add support to map generic shadow regs
Add apis to map generic registers to shadow region. Existing
logic includes mapping only srng based regs to the shadow
region.
Add support to map REO control regs and WBM2SW2 rel
ring HP reg address to the shadow region in case the direct
reg writes in IPA enable/disable autonomy fail due to UMAC
block being in a power collapsed state.
Shadow reg mapping for these regs is provided to FW during
init. Add stat shadow_reg_write_fail to track shadow reg
write failure and shadow_reg_write_succ to track successful
shadow writes.

Change-Id: I04790765a3de80047689657e2cad0b73123440b9
CRs-Fixed: 2790321
2020-10-20 15:05:51 -07:00
gaurank kathpalia
43757caf1b qcacmn: Add pending scan filters in connection manager
Add pending scan filters for fils, rsn override, OSEN/WPS etc
in connection manager.

Change-Id: I9906817f2c6693bf37f56b963869768a8321656c
CRs-Fixed: 2795833
2020-10-20 10:56:45 -07:00
gaurank kathpalia
341f2d3643 qcacmn: Fix compilation issues in connection manager
Fix compilation issues in connection manager.

Change-Id: I5cde57a97fedca06c5f953e550ccbce7890d61f1
CRs-Fixed: 2801018
2020-10-20 08:55:57 -07:00
gaurank kathpalia
72bd1e30c9 qcacmn: Fix typo REAM_HASH_LEN and rename it to REALM_HASH_LEN
Fix typo REAM_HASH_LEN and rename it to REALM_HASH_LEN.

Change-Id: I788897dc0ee0b5f42ef1b00f6c1868b356df6273
CRs-Fixed: 2800792
2020-10-20 04:50:54 -07:00
Shashikala Prabhu
31f750cb6f qcacmn: Use FW macro to set BCAST_TWT flag in TWT_enable cmd
Add b_twt_enable variable to enable/disable broadcast TWT in
wmi_twt_enable_param structure and use FW macro in WMI layer
to enable/disable BCAST_TWT in TWT_ENABLE cmd.

Change-Id: I892e922dda14d16019f3f433f885d1eb5b7169fc
CRs-Fixed: 2793360
2020-10-20 00:53:14 -07:00
Aakanksha Doda
f01c97ca5b qcacmn: Remove DA/unused code which is a part of ATF
As part of removal of DA code, remove all redundant code which is a
part of ATF.

Change-Id: I0bee32b1627f032a432a23f5eb36b243911fc928
2020-10-20 00:53:11 -07:00
Abhishek Singh
2f54168c0f qcacmn: On connect success update scan db to avoid ageout issues
On connect success update the scan entry with the beacon/probe rsp
received during connect. With this the scan db in driver and kernel
will remain in sync and avoid ageout. As after connect complete
driver update the scan entry in scan db with mlme info.

Change-Id: Ia9d394035eb295f66fbb2a7dd5966a914fe52e00
CRs-Fixed: 2798279
2020-10-20 00:53:08 -07:00
Amruta Kulkarni
5669d3ffa1 qcacmn: Add support for scan for ssid to connection manager
Currently scan for ssid is not handled in connection manager.
Add support for handling scan for ssid event, sending scan request
and handle scan success and failure cases.

Change-Id: Ie60f2c0da36abfc95531e437d3636299972c588a
CRs-Fixed: 2788058
2020-10-19 19:46:20 -07:00
Tiger Yu
fdd4fdfe46 qcacmn: Log limit to DMA not done when reaping Monitor status ring
Add log limit to error "DMA not done" when reaping Monitor status ring
to avoid flooding other useful driver log.

Change-Id: I251ef8082d49bfdbcc6a234224cbefdba608b5f5
CRs-Fixed: 2798732
2020-10-19 09:05:21 -07:00
Yeshwanth Sriram Guntuka
c5a9883e25 qcacmn: Drop packets from RXDMA2SW ring on the non-monitoring MAC
In monitor mode, if channel is initially configured from 5G
band and then moved to channel from 2G band, packets are still
received on MAC-0 RXDMA2SW ring since IMPS is disabled for both
MACs. Since driver reaps only MAC-1 RXDMA2SW ring, ring full
condition is hit for the MAC-0 ring causing ring backpressure.

Fix is to drop packets received on the non-monitoring MAC
ring.

Change-Id: I49cb276827f4a06791183ee3fe8c88ba84df085d
CRs-Fixed: 2791341
2020-10-19 07:08:01 -07:00
Gururaj Pandurangi
1d687546c2 qcacmn: Rate limit log in reg_get_chan_enum_for_freq
Rate limit log in reg_get_chan_enum_for_freq() API
to prevent excessive logging.

Change-Id: I52248877b5741f1f6a459b3f5240cabafbf1af05
CRs-Fixed: 2798752
2020-10-19 07:07:58 -07:00
Aniruddha Paul
1719814f01 qcacmn: Change miscellaneous control register val
In IPQ501x/QCN9100, the REO fragement destination ring
has moved from the REO GENERAL register to REO MISCELLANEOUS
register. Changes are added int HAL_REO_R0_CONFIG to set
the fragmentaion destination value for IPQ501x/QCN9100.

Change-Id: I868dd0ac5c24217f9778ab9da5c2a3d98d3ea302
2020-10-19 07:07:55 -07:00
Govind Singh
183dd69628 qcacmn: Free mem leak in qmi bypass mode
QMI bypass mode uses 2mb of of mem region for
fw uses. Current implementation does not free this
memory region when qmi bypass mode in enabled.
Free mem leak in qmi bypass mode.

Change-Id: Ie11aa9f20f93183e0b999cd6578aea4b231f8d8b
2020-10-19 05:09:32 -07:00
Wu Gao
1e52a027ce qcacmn: Fix compilation issue about decimal constant
There is compilation error about decimal constant on 32 arch. Fix is
to add suffix "UL" and to mark as unsigned.

Change-Id: I68b70fbfca4da244fdd9a82b1e28046c0a3b9a3d
CRs-Fixed: 2798875
2020-10-19 03:17:08 -07:00