Commit Graph

20916 Commits

Author SHA1 Message Date
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
snandini
c00ae96b8c Release 5.2.0.203A
Release 5.2.0.203A

Change-Id: Ib07cfb15b324cac6b5c96955461d316af98a480e
CRs-Fixed: 774533
2020-09-17 07:35:53 -07:00
Pragaspathi Thilagaraj
efae9d0fd6 qcacld-3.0: Fix roam scan mode tlv formation for secure connection
Fix roam scan mode tlv formation for secure connection.
11i tlv is not filled due to wrong akm check in
wmi_fill_rso_tlvs().

Fix the akm check in wmi_fill_rso_tlvs to fill the roam scan mode
tlv properly.

Change-Id: I59ec0e34139ac4a6d6e2bcc03e84ac695292b1f2
CRs-Fixed: 2778658
2020-09-17 07:35:53 -07:00
Deeksha Gupta
1c88796c77 qcacld-3.0: Remove roaming_in_progress in hdd_context
Remove roaming_in_progress in hdd_context and
use API hdd_is_roaming_in_progress in
hdd_send_roam_triggers_to_sme()

Change-Id: Icb6022f26e8e3b17782d5c59f2d523635ffc151a
CRs-Fixed: 2771210
2020-09-17 07:35:49 -07:00
snandini
9acd1808f1 Release 5.2.0.203
Release 5.2.0.203

Change-Id: I1a1dc63a17cfb2bfb5944f6b56dbbd7b54f27968
CRs-Fixed: 774533
2020-09-17 00:21:46 -07:00
Kiran Kumar Lokere
046e173276 qcacld-3.0: Update HE MCS12/13 support for 6GHz connection
Update HE MCS12/13 support for 6GHz connection.

Change-Id: I6382e9c61f8a4b785845d3348f12deffa02acc00
CRs-Fixed: 2775281
2020-09-17 00:21:46 -07:00
snandini
2e15b3d19a Release 5.2.0.202Z
Release 5.2.0.202Z

Change-Id: Id0acf53bda0640e85270e2b714da0e9d5302ef38
CRs-Fixed: 774533
2020-09-16 21:04:42 -07:00
Yeshwanth Sriram Guntuka
232b5c6b0b qcacld-3.0: Enable SMMU S1 unmap config flag for Lahaina
IOVA address returned as part of pld_smmu_map for IPA
rx ready doorbell register exceeds the IOVA range
configured in FW by Host. This is because smmu unmap
support is not enabled and due to IOVA range validation
issue in cnss SMMU map API.

Fix is to enable SMMU S1 unmap config flag to enable
SMMU unmap as part of IPA cleanup.

Change-Id: I751044003d1cd91f6520fdbc15585b7bb0f63256
CRs-Fixed: 2775487
2020-09-16 21:04:42 -07:00
Jia Ding
26981ec085 qcacld-3.0: Enable SMMU S1 unmap config for SDXPRAIRIE
Enable SMMU S1 unmap config flag to do SMMU unmap of
IPA TX/RX doorbell registers as part of IPA cleanup.

Change-Id: I056a82592928aa1dde0e9c1ed43c1135424750a8
CRs-Fixed: 2777804
2020-09-16 21:04:38 -07:00
Rajasekaran Kalidoss
3e35bdbafe qcacld-3.0: Serialize TWT commands to allow one command for TWT operation
Post message to the scheduler to send twt wmi command and receive the
response event. check twt callback in sme_context to allow only one
twt command for a particular twt operation at any time. Return EBUSY
if a TWT operation is already in progress.

CRs-Fixed: 2769378
Change-Id: I7d3bce413e12c2775a7b2e8e2c5259a8b8e55131
2020-09-16 21:04:33 -07:00
Chaoli Zhou
320e37d20b qcacld-3.0: Export get driver mode interface
Since PCIE Genoa has separate wlan fw patch for
mission mode(amss.bin) and ftm mode(genoaftm.bin),
but cnss2 platform driver always try to load amss.bin,
which is not feasible. So add this new interface for
cnss2 to get correct driver mode and update the fw
patch name before it start downloading wlan fw

Change-Id: I44565c5f50aa03bbc407ee135ef5b02a040b0df6
2020-09-16 21:04:29 -07:00
Gururaj Pandurangi
ed26554eea qcacld-3.0: Validate pProfile before dereferencing it
Add sanity check for pProfile pointer before
dereferencing it in csr api.

Change-Id: I7290a46aea92f0c77c1123143c994cc684e26744
CRs-Fixed: 2775360
2020-09-16 21:04:25 -07:00
snandini
a91c6c1f4b Release 5.2.0.202Y
Release 5.2.0.202Y

Change-Id: Ifd233e4a5e60f56946cb09cc4041a117bc46c336
CRs-Fixed: 774533
2020-09-16 13:40:14 -07:00
Will Huang
01c4ce799f qcacld-3.0: Check bssid number before access bssid array
If trigger reassociate to same AP with LFR2.0 enabled,
csrNeighborRoamProfile.BSSIDs will not be updated like roaming to
different AP. So we will hit null pointer access when calling
csr_roam_issue_disassociate() in this scenario if reassociate failed.

Check numOfBSSIDs before access array pointer BSSIDs.bssid, if it is
0 means we are doing reassociate to same AP, so must send disassociate
to connected bssid.

Change-Id: I06bac328a164432d6cc425b907a4ca29a78ca306
CRs-Fixed: 2765251
2020-09-16 13:40:14 -07:00
CNSS_WLAN Service
722cf8a001 Merge "Release 5.2.0.202X" into wlan-cld3.driver.lnx.2.0 2020-09-16 12:14:04 -07:00
CNSS_WLAN Service
78300e133a Merge "qcacld-3.0: Enable interface manager logging" into wlan-cld3.driver.lnx.2.0 2020-09-16 12:14:02 -07:00
CNSS_WLAN Service
3375d2346d Merge "qcacld-3.0: Remove logs for hdd_validate_adapter() checks" into wlan-cld3.driver.lnx.2.0 2020-09-16 12:14:01 -07:00
CNSS_WLAN Service
feef7ce078 Merge "Release 5.2.0.202W" into wlan-cld3.driver.lnx.2.0 2020-09-16 10:02:30 -07:00
CNSS_WLAN Service
47cf0ba8c5 Merge "qcacld-3.0: Send WLAN_IF_MGR_EV_CONNECT_START event" into wlan-cld3.driver.lnx.2.0 2020-09-16 10:02:29 -07:00
CNSS_WLAN Service
cba5cf6c74 Merge "qcacld-3.0: Remove logs for wlan_hdd_validate_vdev_id() checks" into wlan-cld3.driver.lnx.2.0 2020-09-16 10:02:28 -07:00
CNSS_WLAN Service
c9144404c7 Merge "qcacld-3.0: Rate limit NAN error log messages" into wlan-cld3.driver.lnx.2.0 2020-09-16 10:02:27 -07:00
snandini
60b5349e72 Release 5.2.0.202X
Release 5.2.0.202X

Change-Id: I23498e75ea8e5c91a7fb4d42392702af30aea9a3
CRs-Fixed: 774533
2020-09-16 09:30:21 -07:00
Sandeep Puligilla
1f187534d4 qcacld-3.0: Enable interface manager logging
Enable interface manager logging.

Change-Id: Ic5b689f952f678546ff8976a0ccd1fad84c5b9ff
CRs-Fixed: 2777037
2020-09-16 09:30:20 -07:00
Srinivas Girigowda
6e3a682e18 qcacld-3.0: Remove logs for hdd_validate_adapter() checks
hdd_validate_adapter() function already takes care of logging
the caller function name in case of any error. Hence there is no need to
add the error log again.

Getting rid of these unnecessary logs reduces driver memory footprint.

Change-Id: I8e3b3c8c5c83c84c862c501b7c8650f55886bb7f
CRs-Fixed: 2770359
2020-09-16 09:30:16 -07:00
snandini
0c96f7db08 Release 5.2.0.202W
Release 5.2.0.202W

Change-Id: I4da720fe713efa8a118a8834397648227e05a3b5
CRs-Fixed: 774533
2020-09-16 07:11:04 -07:00
Sandeep Puligilla
e3165a6d74 qcacld-3.0: Send WLAN_IF_MGR_EV_CONNECT_START event
Add support for WLAN_IF_MGR_EV_CONNECT_START
event.

Change-Id: I09c98f60a0ab4a190d35c7c1a0e73b605216aae1
CRs-Fixed: 2774321
2020-09-16 07:11:03 -07:00
Srinivas Girigowda
a3e792efe9 qcacld-3.0: Remove logs for wlan_hdd_validate_vdev_id() checks
wlan_hdd_validate_vdev_id() function already takes care of logging
the caller function name in case of any error. Hence there is no need to
add the error log again.

Getting rid of these unnecessary logs reduces driver memory footprint.

Change-Id: Ic42aeacb4ed55cece038fe8cef8cde0df2ae6c4d
CRs-Fixed: 2769596
2020-09-16 07:11:00 -07:00
Visweswara Tanuku
773d597688 qcacld-3.0: Rate limit NAN error log messages
Rate limit NAN error log messages, to avoid flooding
the host log when NAN is not enabled

Change-Id: I091c9dff9115b77afa8c59e4d3fab748b30c0ee6
CRs-Fixed: 2777027
2020-09-16 07:10:56 -07:00
snandini
82ee11e4af Release 5.2.0.202W
Release 5.2.0.202W

Change-Id: I0fafdd752ef220d0c93bf3af870307ac9e5064b9
CRs-Fixed: 774533
2020-09-16 04:51:30 -07:00
Karthik Kantamneni
a077a93f29 qcacld-3.0: Enable qdf frag API's support
Currently qdf frag API's are not compiled, enabled those
API's compilation since they are used in DP TX frag path.

Change-Id: Iadd0710beb2220fb560b8873a3a8736b6a66b7ca
CRs-Fixed: 2777139
2020-09-16 04:51:30 -07:00
Abhinav Kumar
33fdd1fac0 qcacld-3.0: Remove unused roam ini gRoamBeaconRssiWeight
Currently, gRoamBeaconRssiWeight is not used in HOST or
FW.

Remove unused roam ini param gRoamBeaconRssiWeight.

Change-Id: Ida6ddb8ca5805f819c4d3f7e6ed96c705fa6594f
CRs-Fixed: 2767533
2020-09-16 04:51:26 -07:00
Abhishek Ambure
23ec077ed4 qcacld-3.0: Update user PS config after STA connection
For the user power save enable/disable request, host doesn't send power
config to FW if STA is not in connected state. Host remembers users power
save config in MAC context's "usr_cfg_ps_enable" member. So use this
"usr_cfg_ps_enable" to send power save config to FW after STA associates
to AP.
Problem scenario:
1) User brings STA interface up and sends power save enable to host.
2) As kernel expects power save config command success even in the STA is
   in disconnected state, host doesn't send power save config to FW and
   returns success to kernel.
3) If user doesn't send power save enable command to host after STA
   connects to AP. STA remains in full power mode.
Fix:
1) Use "usr_cfg_ps_enable" to send power save config to FW after STA
   connects to AP.

Change-Id: I412567e2bb40a7b2d9566106e50a422f173a86d1
CRs-Fixed: 2767543
2020-09-16 04:51:22 -07:00
snandini
d0fef5e891 Release 5.2.0.202V
Release 5.2.0.202V

Change-Id: I02a1be692c6f7d869fbdecc8d3972db2d630fe09
CRs-Fixed: 774533
2020-09-15 23:03:46 -07:00
Will Huang
3930c36458 qcacld-3.0: Put install key after associate complete for FT roam
If FT roam with LFR2.0 enabled, pre-auth/reassociate happen in host,
PTK will be installed early after pre-auth negotiation, so need put it
after association complete, but currently we only save PTK key material
and don't install it.

Because crypto was converged and original eWNI_SME_FT_UPDATE_KEY has
been removed, move delayed installing key after association complete
notified at hdd layer, rather than in function wma_add_sta_req_sta_mode
at wma layer. And remove useless code related with original FT key
installing.

Change-Id: I3bc52b65d17342edab755f7904d743c3433f99ce
CRs-Fixed: 2768307
2020-09-15 23:03:46 -07:00
Ashish Kumar Dhanotiya
4218ed940a qcacld-3.0: Update rate flags correctly
Currently driver does not update the rate flags correctly
in wma as rate flags should include all the subsets of the
lower rate sets, which is not the case today and driver only
updates the higher rate flag. Because of which it leads to
invalid computation of txrate at the kernel.

To address this issue, update the rate flags correctly in
wma.

Change-Id: I5529532b3d41b68693b5b4b8952ee0f1414354db
CRs-Fixed: 2776370
2020-09-15 23:03:42 -07:00
Jianmin Zhu
ab5f515803 qcacld-3.0: Pass rx data rssi triggers to F/W
Pass rx data rssi triggers and rx time to firmware.
Add log in wmi to narrow down host and firmware issue.

Change-Id: I255e02ab8f2c88a29619a49d9c2055bdaa75642a
CRs-Fixed: 2768053
2020-09-15 23:03:37 -07:00
snandini
2716b661eb Release 5.2.0.202U
Release 5.2.0.202U

Change-Id: I8649851aead9296fcc5e189f82de9a3ea9cf21ed
CRs-Fixed: 774533
2020-09-15 18:24:19 -07:00