Commit Graph

20852 Commits

Author SHA1 Message Date
snandini
aaa3a692ce Release 5.2.0.203Q
Release 5.2.0.203Q

Change-Id: I6022c43865c23d638d8d89f392dd9e34f9ba2319
CRs-Fixed: 774533
2020-09-22 12:15:40 -07:00
Manjunathappa Prakash
b1aade6f75 qcacld-3.0: Flush only NAPI listified_rx_normal in low TPUT
Enable low_tput GRO skip logic in 5.4 kernel based GRO.
It is required to always flush listified normal Rx frames at end of
context. Skip flush for GRO rx at low TPUT.
So it requires flush to be aware of low TPUT, hence pass the flush code
to DP GRO flush.

Change-Id: I20c1efcc7bbe0aa50f350ebc31eaefbbefd69616
CRs-Fixed: 2745763
2020-09-22 12:15:40 -07:00
Arun Kumar Khandavalli
563c987d44 qcacld-3.0: Drain mgmt tx completion only during SSR
To send the vdev delete to firmware, all the references needs to
be released, so on receiving the iff_down from the userspace,driver
is currently draining the peer management frames which are queued
to the firmware, if the firmware is active it can access these
drained frames resulting in system instability.

Drain the management frames only when the driver is recovering.

Change-Id: Ia7a83088cde857c7111f8dff9e18422257fc8cb8
CRs-Fixed: 2778328
2020-09-22 12:15:36 -07:00
snandini
01c90a667c Release 5.2.0.203P
Release 5.2.0.203P

Change-Id: I823add8d09de11e588b36ea5de7ec6f015267f34
CRs-Fixed: 774533
2020-09-21 22:01:48 -07:00
Abhinav Kumar
5a5ab2c344 qcacld-3.0: Sae single pmk entry gets updated while roaming
While initial connection with SPMK AP1 supplicant generates
PMK1, and DUT updates global mlme single pmk entry and
csr session pmk.

Now DUT roam to non-SPMK AP2 and generates PMK2, Global mlme
single pmk has SPMK AP1 PMK1 and csr_roam_session has non-SPMK
AP2 since FULL SAE happen.

Now Roam back to SPMK AP1, since the Full SAE does not happen
and due to check roam_synch_data->authStatus ==
CSR_ROAM_AUTH_STATUS_AUTHENTICATED in
csr_process_roam_synch_callback(). The lookup and update
csr_roam_session code is not hit and driver don’t update
csr session pmk after roaming to SPMK AP. So after roam sync complete,
csr_check_and_set_sae_single_pmk_cap() updates the global mlme
single pmk with session->psk_pmk. This results DUT uses PMK generated
from a Non-Single PMK supported AP in the ReAssoc Request frame
while Roaming to Single PMK supported AP.

Fix is to allow driver to update session->psk_pmk even in case
Full SAE does not happen.

Change-Id: Ie4f06cfcb066ae245de024b62da586aade783aec
CRs-Fixed: 2761771
2020-09-21 22:01:48 -07:00
Gururaj Pandurangi
23bd10364d qcacld-3.0: Enable beaconing for non-dfs 160 MHz BW
Enable beaconing for 160 MHz BW when all the channels
are non-DFS. Addition of new 5.9 GHz channels 169, 173,
and 177 has created a new 160 MHz BW channel bonding
pair (149-177) and beacons can be sent out from SAP
for this pair.

Change-Id: Ifd222a01a5058cf02d6e1d819da9d213eb0fd9ca
CRs-Fixed: 2778707
2020-09-21 22:01:43 -07:00
snandini
c3c112d980 Release 5.2.0.203O
Release 5.2.0.203O

Change-Id: I3e7133ffc943fffede90910b4a083caa6d374404
CRs-Fixed: 774533
2020-09-21 19:30:19 -07:00
Arun Kumar Khandavalli
5cc1416178 qcacld-3.0: check for IPCI target before triggering recovery
Check for the Moselle bus type whether the selfrecovery ini is enabled,
if the ini is disabled let the system enter to bad state and debug
the issue.

Change-Id: Ib6e720bbc8d1421706a5631ecc7d11989538e2d5
CRs-Fixed: 2780882
2020-09-21 19:30:18 -07:00
snandini
e10145a94c Release 5.2.0.203N
Release 5.2.0.203N

Change-Id: Ic4ee3ae7ed9e04af6807301caeb5fbd598190102
CRs-Fixed: 774533
2020-09-21 16:55:43 -07:00
Naman Padhiar
1ba18d2523 qcacld-3.0: Enable Host Wake Up over QMI feature for WCN6750
Enable feature to send EXIT_POWER_SAVE QMI from host instead of
HOST_WAKEUP_FROM_SLEEP WMI. When FW receive EXIT_POWER_SAVE QMI,
it will implicitly consider that it also received HOST_WAKEUP_FROM_SLEEP
and send ACK for it through CE2.

Change-Id: I14515b62ff3ff1b4ed66397039ce180a99d49d43
CRs-Fixed: 2779383
2020-09-21 16:55:42 -07:00
Naman Padhiar
001338b360 qcacld-3.0: Send HOST wake up to FW over QMI
As part of WOW feature in WCN6750, send HOST wake up
to FW over QMI instead of WMI. To send HOST wake, add
PLD layer and call platform driver API to send QMI
EXIT_POWER_SAVE to FW.
When FW receive EXIT_POWER_SAVE QMI, it will implicitly
consider that it also received HOST_WAKEUP_FROM_SLEEP
and send ACK for it through CE2.

Change-Id: Ia0a3f4c15662f9ee58649f5c6de965f65aeafe32
CRs-Fixed: 2779370
2020-09-21 16:55:38 -07:00
gaurank kathpalia
b81c0ae7d2 qcacld-3.0: Replace tSirMacReasonCodes with enum wlan_reason_code
Replace all enums of tSirMacReasonCodes with common
enum wlan_reason_code.

Change-Id: Ida950a08ac4ceea2911344a8d919b2d93ac7d1fe
CRs-Fixed: 2781197
2020-09-21 16:55:34 -07:00
snandini
156a93905f Release 5.2.0.203M
Release 5.2.0.203M

Change-Id: I16c6c5e0dac05c675f3c9ce31c912b4d58692f65
CRs-Fixed: 774533
2020-09-21 10:01:28 -07:00
Rajasekaran Kalidoss
f7f6741e9f qcacld-3.0: Move TWT test config code to wlan_hdd_twt file
Move TWT test config interface code to wlan_hdd_twt.c file

CRs-Fixed: 2745940
Change-Id: If77f40de36677029b4e06592f5ccfa95ace7871f
2020-09-21 10:01:28 -07:00
snandini
83164d354e Release 5.2.0.203L
Release 5.2.0.203L

Change-Id: I6c129165a486f0a2255d3878c3125c3aaa71b538
CRs-Fixed: 774533
2020-09-21 06:13:43 -07:00
wadesong
de4dafaf52 qcacld-3.0: Remove some meaningless debug prints
The 11ax cap and oper IE presence debug printing in the following
functions are not bringing any useful info for debugging:

  sir_convert_probe_req_frame2_struct
  sir_convert_probe_frame2_struct
  sir_convert_assoc_resp_frame2_struct

so remove them to reduce driver log verbosity.

Change-Id: I2afc96e39dbf5ae30ca1c6a3d803064ee018a8aa
CRs-Fixed: 2781096
2020-09-21 12:26:57 +08:00
snandini
2b76c76204 Release 5.2.0.203K
Release 5.2.0.203K

Change-Id: I258a620087fdaa70f85a2bc3de170b5bd0f60ec5
CRs-Fixed: 774533
2020-09-20 01:05:50 -07:00
Nisha Menon
417b7e3c6f qcacld-3.0: IPA SMMU enable check to be moved to IPA ready cb
During probe IPA SMMU S1 enable check will pass only if IPA
registration for ready callback is successful and IPA ready
callback is invoked.
This ensures that IPA APIs are not invoked unless IPA ready
callback is invoked and ipa ready flag is set in the host
driver.

Change-Id: Ie157a2f851bb1e914a098b62ede1280aa0243d19
CRs-Fixed: 2778504
2020-09-20 01:05:50 -07:00
snandini
06f1c1c21b Release 5.2.0.203J
Release 5.2.0.203J

Change-Id: I9bee741c694797358a5d6bc1c237442f847fac9f
CRs-Fixed: 774533
2020-09-19 13:33:20 -07:00
Lincoln Tran
d3f63c4fe8 qcacld-3.0: Fix potential NULL ptr dereference in if_mgr
The peer objmgr pointer in the if_mgr_roam module may be NULL if
there is no peer connected. Add check to see if pointer is NULL
before dereferencing it. Also modify logic to only check if the
vdev is in STA or P2P_CLI mode.

Change-Id: I7370ca5b9c74bd81f6e958cf740b6ee426f4faad
CRs-fixed: 2779831
2020-09-19 13:33:20 -07:00
snandini
a97e9e502d Release 5.2.0.203I
Release 5.2.0.203I

Change-Id: I3ffdce1d9d0e24dc4d75661a6f5315e3dcec8c97
CRs-Fixed: 774533
2020-09-18 22:31:12 -07:00
Kiran Kumar Lokere
5258674757 qcacld-3.0: Fix issue with broadcast TWT enable
Broadcast TWT is disabled by overwriting the user
configuration. Remove the overwrite to enable the
broadcast TWT.

Change-Id: I79742eaaa61236f92526435ec4a59e75829cf0fb
CRs-Fixed: 2780168
2020-09-18 22:31:12 -07:00
snandini
a191f4dc1e Release 5.2.0.203H
Release 5.2.0.203H

Change-Id: I7093475bf7e1a9366a093b5456656c78600a3937
CRs-Fixed: 774533
2020-09-18 10:38:02 -07:00
Pragaspathi Thilagaraj
55e19140ea qcacld-3.0: Fix null pointer dereference of profile
In csr_issue_set_context_req_helper() profile is dereferenced
to get the encryption type.

Add null check before accessing the profile pointer.

Change-Id: I40c148648130918f9da0194ff6e132d55b113008
CRs-Fixed: 2777778
2020-09-18 10:38:01 -07:00
Karthik Kantamneni
a8603fc937 qcacld-3.0: Add P2P UDP/TCP checksum offload DP cfg entry
Recently P2P UDP/TCP checksum offload INI is added
but corresponding DP cfg entry is missing. 
Add P2P UDP/TCP checksum offload DP cfg entry.

Change-Id: If1c4a898f23541ca9d1c674b7650d1f9998e59c6
CRs-Fixed: 2779963
2020-09-18 10:37:58 -07:00
snandini
9d1bee29e9 Release 5.2.0.203G
Release 5.2.0.203G

Change-Id: Ie118764c507a7c5c1b97e337a0c8c0a2ee5e7dcb
CRs-Fixed: 774533
2020-09-18 07:29:58 -07:00
Abhishek Singh
5cdd743c84 qcacld-3.0: Move rso tx ops to psoc from vdev
Move rso tx ops to psoc from vdev.

Change-Id: Icd0a8aef8ecc7ef097b2239d05c6e21ea36b8216
CRs-Fixed: 2779294
2020-09-18 07:29:57 -07:00
Arun Kumar Khandavalli
600758fada qcacld-3.0: sent the correct nss to the firmware
The current contract between the host and the firmware is that
0 means 1x1 nss
1 means 2x2 nss

with the new nl80211 interface the driver is sending 1 for 1x1
and 2 for 2x2 nss, so the command is failing for the 2x2 nss.

Send the nss value as per the current expectation so that rate
setting would take place.

Change-Id: I3cb376704e7e3430fbce0015183812484127cbb8
CRs-Fixed: 2772297
2020-09-18 07:29:52 -07:00
Yu Wang
491f6bc603 qcacld-3.0: free keys for vdev when disconnect from AP
Free keys for vdev when disconnect from AP in STA mode,
otherwise, the keys may be used in the next connection, which will
result in connection failure.

CRs-Fixed: 2773040
Change-Id: I6d3e858cdc5b38b25a4431b9aaf5f2fc3e1019c7
2020-09-18 07:29:47 -07:00
snandini
5511f2645b Release 5.2.0.203F
Release 5.2.0.203F

Change-Id: I54d9e42d974f131af685762f003a8416eeb3b3b3
CRs-Fixed: 774533
2020-09-18 04:59:11 -07:00
Srinivas Girigowda
49f542e8a7 qcacld-3.0: Replace WMI_LOGD() with wmi_debug()
Replace WMI_LOGD() with wmi_debug().

Change-Id: Ie08879d4c75685d8d0691c7db0a402ec36cdd772
CRs-Fixed: 2776619
2020-09-18 04:59:10 -07:00
Srinivas Girigowda
ef64ab26b9 qcacld-3.0: Replace WMI_LOGI() with appropriate log level
Replace WMI_LOGI() with appropriate log level.

Change-Id: I46323dcf0adf0f132c375955c162ddf9560f2d82
CRs-Fixed: 2776619
2020-09-18 04:59:06 -07:00
Srinivas Girigowda
8006e2ce39 qcacld-3.0: Replace WMI_LOGE() with wmi_err()
Replace WMI_LOGE() with wmi_err().

Change-Id: Ica675893cb651fd9ba895666a4cd441c3a97f0f7
CRs-Fixed: 2776619
2020-09-18 04:59:02 -07:00
Srinivas Girigowda
97500653e2 qcacld-3.0: Replace WMI_LOGP() with appropriate log level
Replace WMI_LOGP() with appropriate log level.

Change-Id: Ie484e7be902e0d47652347c2c6728d81fe793410
CRs-Fixed: 2776619
2020-09-18 04:58:58 -07:00
snandini
ba54894176 Release 5.2.0.203E
Release 5.2.0.203E

Change-Id: I15472de08b9e6cc32f179470c5eb14297e2031da
CRs-Fixed: 774533
2020-09-18 02:06:54 -07:00
Liangwei Dong
7cc3eecb25 qcacld-3.0: Check channel bw valid in pre vdev start
wlan_reg_set_channel_params_for_freq API will check the bonded
channels are valid or not. If invalid ch width is returned, that
means no suitable channel bonding in current regdomain for
requested channel frequency, then abort the vdev start request.

Change-Id: Ibca5ef7af72f1fd45855d64f380abaa49c0f54c4
CRs-Fixed: 2777637
2020-09-18 02:06:54 -07:00
sheenam monga
bc64b790ba qcacld-3.0: Consider he caps from beacon if missing in assoc resp
Issue: Currently, host calculates he_caps based on assoc resp
he caps. In case assoc resp doesn't have he_caps host will
set peer mode vht and vdev mode he which may cause issue due
to different peer and vdev modes.

Fix: Consider beacon he caps if he caps not present in
assoc resp to keep vdev and he param same.

Change-Id: Ia47b3d9c30b5ebc59a398a5ece2263ea65b03550
CRs-Fixed: 2777916
2020-09-18 02:06:50 -07:00
Pragaspathi Thilagaraj
f175b03bea qcacld-3.0: Fix invalid pcl weight for 2G channels in 6G sta connection
When band mask for connected STA is 7(connected in 6GHz), the weight
of 2.4Ghz channels is sent as 1(weight of non-pcl channels). This
allows firmware to roam to 2.4Ghz AP with dual sta roaming enabled.

For 6Ghz connection, set 2.4Ghz channels weight to 0 to disallow fw
roaming.

Change-Id: I9581c51a827e6fa6ac186b531639ce4835ba0faa
CRs-Fixed: 2775276
2020-09-18 02:06:47 -07:00
snandini
6daff2f35f Release 5.2.0.203D
Release 5.2.0.203D

Change-Id: I301042a4ca4711dc799252960e9e24d645ec3fdc
CRs-Fixed: 774533
2020-09-17 23:43:05 -07:00
Jinwei Chen
2c0ab424d7 qcacld-3.0: Fix incorrect head_skb IP/UDP header in fisa flow
Host received mixed vlan header frames and non-vlan header frames,
and these frames is belong to same UDP flow. currently wlan host
will assume same UDP flow frames with same L2 header length which
then get incorrect IP/UDP header for non-vlan frames.
Determine FISA continuation by RX frame self L2/L3 header length,
update head skb L2/L3 header length in fisa flow when head skb
changed.

Change-Id: Id61b856773b8dd7f0199055b1e0bf9a2bd98e401
CRs-Fixed: 2778403
2020-09-17 23:43:05 -07:00
Jyoti Kumari
d9121815a2 qcacld-3.0: Avoid 0 bytes mem alloc in csr_get_cfg_max_tx_power
In some cases, max_2_4_g_power.len/max_5_g_power.len value
could be 0 and driver tries to allocate 0 bytes through
qdf_mem_alloc. qdf_mem_alloc has a check for 0 size which
logs the failure and returns an error code. But this error
log could cause some delay in the roaming process
unnecessarily  as this is not an error case from roaming
perspective. It's better to avoid calling qdf_mem_alloc if
the length is 0.

Add validation for cfg_length in csr_get_cfg_max_tx_power,
if cfg_length is 0 return default maxTxPwr.

Change-Id: Ifd5d90186605e141ed2c107b4170a1d2c82bee0e
CRs-Fixed: 2768190
2020-09-17 23:43:01 -07:00
snandini
60cef4febb Release 5.2.0.203C
Release 5.2.0.203C

Change-Id: I3122c8f784ae797e73fe94e06b356c1ecde9924b
CRs-Fixed: 774533
2020-09-17 21:09:00 -07:00
Paul Zhang
67c55db07a qcacld-3.0: Fix compiler issue about cnss_set_pcie_gen_speed
Since some platform driver does not support for PCIE gen switch,
Using macro PCIE_GEN_SWITCH to control whether function
cnss_set_pcie_gen_speed is invoke or not.

Change-Id: I478cd6426b005014e85c0b3c1c31963045d7322b
CRs-Fixed: 2767110
2020-09-17 21:09:00 -07:00
snandini
2e61669297 Release 5.2.0.203B
Release 5.2.0.203B

Change-Id: I85316542b0b52ccabec81bb697008fe6fa9bde7d
CRs-Fixed: 774533
2020-09-17 10:18:06 -07:00
Alan Chen
53d838dcb3 qcacld-3.0: Add check for OPM power save enabled
Qpower config should not be allowed if Qpower config/OPM power save config
is disabled in ini file.

Change-Id: Iff21159f30731f7188506ab5e5e3133d02203b6b
CRs-Fixed: 2778632
2020-09-17 10:18:06 -07:00
Abhishek Ambure
af97342e5a qcacld-3.0: Update proper RCPI value in beacon report
In beacon report's RCPI, host updates current RSSI which is incorrect
according to "2008 11k spec reference: 18.4.8.5 RCPI Measurement".
Hence fill RCPI value in beacon report as per "2008 11k spec reference:
18.4.8.5 RCPI Measurement".

Change-Id: I2ce88ad9f5d0db252d96f9e25db336b081cdd9bb
CRs-Fixed: 2776844
2020-09-17 10:18:02 -07:00
Manikanta Pubbisetty
90194f2a71 qcacld-3.0: add logic to configure FST in CMEM
Unlike QCA6490, where flow search table(FST) is maintained in DDR;
in QCA6750, the flow search table which is used for RX FISA will be
placed in CMEM. CMEM is an on-chip memory, accessing this memory
would be faster when compared to DDR.

Placing FST in CMEM will bring down the latencies for the HW to access the
flow search table and this latency is critical when FISA is enabled in
QCA6750 to avoid packet drops.

Adding the logic to add/delete FST entries placed in CMEM.

Change-Id: Icbfbb7e00cec813ed3de07a640d203db556da444
CRs-Fixed: 2771183
2020-09-17 10:17:58 -07:00
Manikanta Pubbisetty
6b37d83e23 qcacld-3.0: fetch CMEM detils from CMEM HTT response
Firmware sends the base address and the size of the FST in the
FSE CMEM HTT response message; all CMEM transactions from the driver
will be with respect to this base address.

Firmware allocates memory in CMEM and sends FSE CMEM HTT message in
response to the FSE setup HTT request(when the base address of the
FST in the FSE setup message is set to '0').

Change-Id: Ie6d4fa03a09a429024e660443a3501a3bc660c35
CRs-Fixed: 2771175
2020-09-17 10:17:54 -07:00
Manikanta Pubbisetty
3f3176d0c2 qcacld-3.0: place FST in CMEM if FW supports
Firmware advertizes it's support for placing FST in CMEM.
Check for FW's support before sending FSE setup HTT message.
If CMEM allocations are supported, flow search table will
be placed in CMEM, else it will be placed in DDR.

Change-Id: I3f473248a11f9556e36cf8f12930b9993796cc10
CRs-Fixed: 2771172
2020-09-17 10:17:50 -07:00
Manikanta Pubbisetty
0cc7771e12 qcacld-3.0: add and initialize data structures for FST in CMEM
Adding init/deinit logic for the data structures required to place
flow search table in CMEM.

Change-Id: I315dbeb0f17fd8d3e37be61b6ef77e2bfc2b08ce
CRs-Fixed: 2771169
2020-09-17 10:17:46 -07:00