Commit Graph

19405 Commits

Author SHA1 Message Date
Naman Padhiar
c5f417af3d qcacld-3.0: Enable 6GHz Band capability for WCN6750
Enable 6GHz Band capability flag in host driver for WCN6750.

Change-Id: Id17e64a283aeee6c09491c13a0a3aa5cb7d4f6bf
2020-05-10 03:03:00 -07:00
nshrivas
a9f4723a88 Release 5.2.0.185B
Release 5.2.0.185B

Change-Id: I828f3b12574820b40dd3aa1c3f7c67e1e66703ae
CRs-Fixed: 774533
2020-05-09 00:56:51 -07:00
Srinivas Dasari
632c058365 qcacld-3.0: Send NDI del rsp in NAN_DATA_DISCONNECTED_STATE state
NDI delete response is sent to userspace only when NDI is in
NAN_DATA_NDI_DELETING_STATE state. But NDI could be in
NAN_DATA_DISCONNECTED_STATE state if cleanup happens through
NDP_END_ALL path. Driver doesn't send response to userspace in
this case.
Send the response to userspace in NAN_DATA_DISCONNECTED_STATE also
as the application might be waiting for NDI delete status.
Also, use set/get APIs and avoid accessing NDI state directly.

Change-Id: I81a6b19a77144c76dde145f126c45b2ca67ff093
CRs-Fixed: 2679581
2020-05-09 00:56:50 -07:00
nshrivas
50678287db Release 5.2.0.185A
Release 5.2.0.185A

Change-Id: I28dc179488dd839067a837bcfa764919b638e297
CRs-Fixed: 774533
2020-05-08 18:50:54 -07:00
Lincoln Tran
9faaae1bb7 qcacld-3.0: Cleanup instances of CFG_COUNTRY_CODE
Remove instances of CFG_COUNTRY_CODE and country_code from
wlan_mlme_reg struct.
Remove redundant country code APIs.

This change is needed because the country code is no longer
stored in CFG file, and subsequently, there is no need for
CFG_COUNTRY_CODE.

Change-Id: Ia4b3b40d0dccfde696352967f2902dfba344a445
CRs-Fixed: 2634079
2020-05-08 18:50:54 -07:00
nshrivas
08c5502552 Release 5.2.0.185
Release 5.2.0.185

Change-Id: I20541f8ec229a86b524684a182aedad75bf35a49
CRs-Fixed: 774533
2020-05-08 16:10:39 -07:00
Sourav Mohapatra
1de1ca890f qcacld-3.0: Fill header for HANG_EVT_TAG_LEGACY_MAC hang data
Currently while filling in the hang event data for the event
HANG_EVT_TAG_LEGACY_MAC, the header is not getting filled in. This can
cause the data to go out of sync.

Add the header to the data before filling in the values.

Change-Id: Iedcb39623276e5f04ef9ffb5b3284e67f6c89312
CRs-Fixed: 2678949
2020-05-08 16:10:39 -07:00
Manjunathappa Prakash
ecade686b9 qcacld-3.0: Check for NULL dereference before access
Check for NULL dereference before accessing it.

Change-Id: Id2dc5f2c0f54f0c7681d2a26a53e7190ef46aba2
CRs-Fixed: 2668241
2020-05-08 16:10:35 -07:00
Manjunathappa Prakash
b6a71494fe qcacld-3.0: Use %pK format specifier in dp_rx_thread logs
Cleanup logging, usage of %p or %pk will lead to information leak.
Always use %pK instead when ever logging the address.

Change-Id: Id60782855f242175183f88e9f1c2efb9eb578404
CRs-Fixed: 2677373
2020-05-08 16:10:31 -07:00
Manjunathappa Prakash
52c3189299 qcacld-3.0: Use %pK format specifier in dp_rx_fisa logs
Cleanup logging, usage of %p or %pk will lead to information leak.
Always use %pK instead when ever logging the address.

Change-Id: Id11e1b52b394eb10bb2b32fc2ee2e04116f98026
CRs-Fixed: 2677373
2020-05-08 16:10:27 -07:00
nshrivas
96458d210c Release 5.2.0.184Z
Release 5.2.0.184Z

Change-Id: Ia5b52ce95515745e4616035e65d923fb1fa40750
CRs-Fixed: 774533
2020-05-08 14:25:35 -07:00
Ananya Gupta
16c13ea0b8 qcacld-3.0: Initialize peer_timer_bitmask
peer_timer_bitmask of hang_data was uninitialized which may
contain a garbage value.
Initialized the variable with 0.

Change-Id: I5875bb0d121bcbf14a2afc9efec6697cf4b4dba4
CRs-Fixed: 2680955
2020-05-08 14:25:35 -07:00
Ananya Gupta
6dff8e348e qcacld-3.0: Cancel reap timer during driver unload
In case of driver unload, there can be a race condition
since the timer for processing monitor status ring can run
in parallel to the unload time wow ack response handler,
which is also flushing all the monitor status ring entries.
To avoid this race condition, stop the monitor reap timer
as a part of target suspend, and process all the outstanding
entries in the monitor status ring.
This will make sure that the monitor status ring is
processed from only one context at any given time.

Change-Id: Iaff01b2d61ba53eb7ab442b2c1886ba8076a4a8b
CRs-Fixed: 2678973
2020-05-08 14:25:31 -07:00
Manikanta Pubbisetty
174d2ccae5 qcacld-3.0: drop frames in the RX thread queue during peer unmap
Because of a race that happen during vdev delete, RX packets can get
queued to the RX thread after the RX flush (done as part of peer deletion)
and by the time RX thread is woken up for processing, the netdev pointer
would be NULL leading to a crash.

Avoid this by dropping pending frames in the RX thread during peer unmap
as well.

Change-Id: Id79d7d05c487fcabfd104a15dc4038d48703b07c
CRs-Fixed: 2681195
2020-05-08 14:25:27 -07:00
nshrivas
08831e9b98 Release 5.2.0.184Y
Release 5.2.0.184Y

Change-Id: Id67cd941b23c90e237052de9274d8e238f0ee724
CRs-Fixed: 774533
2020-05-08 12:33:22 -07:00
Sourav Mohapatra
00f5651b66 qcacld-3.0: Remove validate context check in LL stats get NB ops
As a part of LL stats get NB operation, the driver sends the LL stats
req to the FW, waits for the response and sends back the stats in a
synchronous reply. All this happens as a part of one single NB
operation.

Within this operation, if an rmmod comes, there can be a possiblity
of a memory leak. In function hdd_link_layer_process_radio_stats, there
is a check to validate the hdd_context and return if the driver is
undergoing load/unload. As a part of the premature return, some memory
are not freed properly.

To resolve this, remove the validity check from the NB operation. The
operation itself comes with DSC synchronization and ensures that the
hdd_context remains valid atleast until the operation is complete. Thus
there is no need for the redundant check of validity of hdd_context,
which resolves the memory leak issue also.

Change-Id: Ieea755e83addac99659dbd6e0e5f160b86e6f9fa
CRs-Fixed: 2679081
2020-05-08 12:33:22 -07:00
Alan Chen
e93ba0f5b1 qcacld-3.0: Add a sysfs replacement for reassoc
As part of WEXT replacement, replace reassoc with a sysfs file.

file path: /sys/class/net/wlanxx/reassoc
	where wlanxx is adapter name

example: echo 0 > reassoc

Change-Id: Ib4f3582bb8c164dd4f3ab739367520b9aeb0f5b9
CRs-Fixed: 2676629
2020-05-08 12:33:18 -07:00
Alan Chen
549fb49793 qcacld-3.0: Add a sysfs replacement for set_fw_mode_cfg
As part of WEXT replacement, replace set_fw_mode_cfg with a sysfs file.

file path: /sys/kernel/wifi/set_fw_mode_cfg

example: echo 1 1 > set_fw_mode_cfg

Change-Id: I851df440f9eb5f73798deaf3b4d0f128f6925f26
CRs-Fixed: 2675570
2020-05-08 12:33:13 -07:00
nshrivas
6932d7009c Release 5.2.0.184X
Release 5.2.0.184X

Change-Id: I00d0acacaa2864c81f39494d028bdc6c1dff0f6f
CRs-Fixed: 774533
2020-05-08 10:47:33 -07:00
Liangwei Dong
06109080e9 qcacld-3.0: Correct 160MHz SAP dfs flag
Use wlan_reg_get_channel_state_for_freq API to get channel
state and identify 6Ghz channel as non-dfs channel.

Change-Id: Ib134a71c62e24324abc12e5a5b11a524e89de810
CRs-Fixed: 2681608
2020-05-08 16:40:04 +08:00
nshrivas
42a98a6677 Release 5.2.0.184W
Release 5.2.0.184W

Change-Id: I7d3ce8ec6438572ef77b1bc0236ed31378ae08b6
CRs-Fixed: 774533
2020-05-07 14:52:26 -07:00
Abhishek Ambure
ab1d6c2996 qcacld-3.0: Fill current oper freq in sw_target_freq
During HT channel width change, host updates secondary channel number
in "sw_target_freq" and not the primary channel frequency. LIM uses
sw_target_freq to update the CSR sessions frequency which become invalid
channel. During SAP start, as host uses this channel to check for SCC
switch, the invalid frequency lead to invalid channel structure getting
accessed.

Hence, during HT channel width change, update sLimChannelSwitchInfo's
sw_target_freq member with current operating frequency stored in
pe_session's curr_op_freq.

Change-Id: Ie7aaa2187d35dba74050263e1ebf6f72d106aa85
CRs-Fixed: 2680035
2020-05-07 14:52:26 -07:00
nshrivas
320b76b90a Release 5.2.0.184V
Release 5.2.0.184V

Change-Id: I5d22ed90a286d1018424b958c80460f6e445db9f
CRs-Fixed: 774533
2020-05-07 13:03:40 -07:00
Jianmin Zhu
25800f4de6 qcacld-3.0: Tx dropped for osif_vdev_sync_op_start failed
osif_psoc_sync_trans_start_wait is wrongly used in
Idceff767d62c1e81046a696cb58f70a897cbd074, which will block any
vdev operation which results in tethering failure and Tx packets
also won't be transmitted whenever ipa event is processed as
we have vdev check in hard transmit too.
Fix:
Don't call osif_psoc_sync_trans_start_wait when handle IPA
event, just check recoverying state.

Change-Id: Ibb5d94e0e22413fdd9dad294fc8da58eba8a700b
CRs-Fixed: 2680423
2020-05-07 13:03:39 -07:00
nshrivas
9de106b0aa Release 5.2.0.184U
Release 5.2.0.184U

Change-Id: I84a5f44c65232917d301a06d4e215074b82c821d
CRs-Fixed: 774533
2020-05-07 11:24:02 -07:00
gaurank kathpalia
e423549d8e qcacld-3.0: Add support for DFS channel weightage in ACS
Add support to provide the channel weightage of
DFS channels so that the weight can be configured
and the user can control whether they are allowed
to be selected for the SAP.

Change-Id: I53a22a0059d56aa8fca66215fed1ed0588db7db5
CRs-Fixed: 2676919
2020-05-07 11:24:02 -07:00
nshrivas
e8e189c308 Release 5.2.0.184T
Release 5.2.0.184T

Change-Id: I9339c8e5e5511a0ac66c712e0a094a385806f2b5
CRs-Fixed: 774533
2020-05-07 08:44:07 -07:00
Utkarsh Bhatnagar
767aabd6e1 qcacld-3.0: Corrected logging in sap_fsm_state_init
The log signifying SAP failure was incorrectly printed.
Changed the logic to print those logs correctly

Change-Id: Ifc26b34f41c60a3ce50d9c7cfc4ecd0739853844
CRs-Fixed: 2680263
2020-05-07 08:44:07 -07:00
nshrivas
2819c16758 Release 5.2.0.184S
Release 5.2.0.184S

Change-Id: I4e6c647bac348fe3834212520f3b3d53d6f8ac46
CRs-Fixed: 774533
2020-05-07 03:44:38 -07:00
Bapiraju Alla
947eeb60b8 qcacld-3.0: Fix return type for hdd_data_stall_process_event
Fix return type for hdd_data_stall_process_event to match with
data_stall_detect_cb callback return type.

Change-Id: I6d81171f32df7a0e6e66d5651739463c422f4a9d
CRs-Fixed: 2674550
2020-05-07 03:44:38 -07:00
Sourav Mohapatra
a777718385 qcacld-3.0: Do SSR cleanup during uevent/shutdown based on context
Currently we have two different cleanup approach for SSR. In case of
Adrastea hardware, cleanup can be done during the receipt of FW_DOWN
uevent while in case of HS/HSP it has to be defered to shutdown.

These two approaches are segregated by different branches and thus did
not need to coexist. But as part of future upgrades, a single component
would be used for both the hardware types.

To enable having both these paths, use the context of execution of the
pld_uevent as the differentiating agent. In case of interrupt context,
go with the deferred cleanup and in case of normal process context,
perform the cleanup in pld_uevent itself.

Change-Id: I554a10cdd99b17a6d3e059ebf7a157b0cddb6226
CRs-Fixed: 2669840
2020-05-07 03:44:34 -07:00
nshrivas
d51eb89859 Release 5.2.0.184R
Release 5.2.0.184R

Change-Id: Id0c12b6f65979ff037a08a8191413bff03882bb7
CRs-Fixed: 774533
2020-05-07 01:55:06 -07:00
Abhinav Kumar
ba7131dd8c qcacld-3.0: Disable BTM offload to fw if peer support MBO/OCE
If DUT connected to a non-PMF AP in MBO/OCE enabled network, STA
should not initiate roaming due to BTM trigger.

Fix is to enable BTM offload to firmware only if a peer support
pmf in case of MBO/OCE connection.

Change-Id: Ifee077fed2630242e7dc93e6d1a3915e592d4285
CRs-Fixed: 2678005
2020-05-07 01:55:06 -07:00
nshrivas
501cfcbf49 Release 5.2.0.184Q
Release 5.2.0.184Q

Change-Id: I3bc094bc15d1dcfe96c03db8a1070624f65413f2
CRs-Fixed: 774533
2020-05-06 21:30:27 -07:00
Li Feng
b38b14e1fb qcacld-3.0: Support gc+sap scc on dfs channel
Once gc connected on dfs channel, allow the scc sap start on the same
dfs channel with dfs master capability disabled in the driver if 
sta_sap_scc_on_dfs_chan ini is set.

Change-Id: Ie1c3ad2850fb0bce3f19f8fbe4750e5a97f2be93
CRs-Fixed: 2666581
2020-05-06 21:30:27 -07:00
Lin Bai
aa65aa169f qcacld-3.0: Strip duplicate HE in beacon template
HE capabilities and HE operation IEs will be populated
in function sch_set_fixed_beacon_fields().
And duplicated one from additional IE need to be
stripped if any.

Change-Id: Ic5f508782ff23b3e99f433a31eee9df58c1c40a6
CRs-Fixed: 2666373
2020-05-06 21:30:23 -07:00
nshrivas
d57b288000 Release 5.2.0.184P
Release 5.2.0.184P

Change-Id: I5674ccddeaf5f585be2a68d85bcbdaf413b27511
CRs-Fixed: 774533
2020-05-06 19:52:28 -07:00
Jingxiang Ge
69a3183113 qcacld-3.0: Checking assoc state for bw timer when resuming
In runtime resuming, there is no necessary to start bw timer
if adapter is in non-assoc state.
If bw timer has been started in idle state, there will be no
match bw timer stop. In hdd_bus_bandwidth_deinit, it will consider
as abnormal.

Change-Id: Id36af395269ebf3a09429b2606dbd438f147f24f
CRs-Fixed: 2678835
2020-05-06 19:52:28 -07:00
nshrivas
cc9d8dbc78 Release 5.2.0.184O
Release 5.2.0.184O

Change-Id: I40429ca1b08c4695f5afa3c38dfcd895192a54cd
CRs-Fixed: 774533
2020-05-06 01:26:39 -07:00
Utkarsh Bhatnagar
83a3de0def qcacld-3.0: Remove unused PMF code
PMF logic is moved to crypto so remove unused PMF code.

Change-Id: I141a7683879da8f1961183db6dd26285c7bf4c4a
CRs-Fixed: 2678890
2020-05-06 01:26:38 -07:00
Bapiraju Alla
03aa3d8d58 qcacld-3.0: Handle peer leak during SSR incase of SAE
Currently, there is a peer leak when SSR is triggered during SAE
authentication.

To avoid this,don't purge serialization commands from hdd_wlan_shutdown.

Change-Id: I05a646f2af9d31bda27bb74b8f58390d3bf09623
CRs-Fixed: 2678294
2020-05-06 01:26:33 -07:00
Vulupala Shashank Reddy
d965a28c1c qcacld-3.0: Update OFDM and CCK flags for packet capture mode
Add support to update OFDM and CCK flags for packet capture
mode.

Change-Id: I1acb6b512360b6236a119070aba97409e316646c
CRs-Fixed: 2676302
2020-05-06 01:26:29 -07:00
nshrivas
82cad63846 Release 5.2.0.184N
Release 5.2.0.184N

Change-Id: I8e5d03749304cc5b298a342d53a88598a693a41a
CRs-Fixed: 774533
2020-05-05 15:05:57 -07:00
Bapiraju Alla
2699855b77 qcacld-3.0: Validate return value of target_psoc_get_mac_phy_cap
Add sanity check for MAC PHY capabilities pointer returned by
target_psoc_get_mac_phy_cap. This avoids illegal memory access when
returned pointer is not valid.

Change-Id: I2ee0cdb5945599a2ccf35db819555d0f7192ef9f
CRs-Fixed: 2668418
2020-05-05 15:05:57 -07:00
Utkarsh Bhatnagar
3997382aba qcacld-3.0: Use self PMF cap only if AP support PMF
In case AP doesn't support PMF, if STA has PMF enabled bit set
in assoc req, some AP may reject the association.

Fix is to consider self PMF cap only if AP support PMF

Change-Id: I6317c653cb7c21beb852d73b8eb541d6582a3a26
CRs-Fixed: 2677988
2020-05-05 15:05:32 -07:00
nshrivas
16fc83d781 Release 5.2.0.184M
Release 5.2.0.184M

Change-Id: I0ab0e952ea5a0ea5611c13410a47c34900051407
CRs-Fixed: 774533
2020-05-05 00:51:41 -07:00
Gururaj Pandurangi
3632d87c9a qcacld-3.0: Modify band checks to account 6GHz freq
Modify band checks in lim APIs to account 6GHz
frequency

Change-Id: Ieb08a14640074267c910a197f0d4d2f9bb467a54
CRs-Fixed: 2653415
2020-05-05 00:51:41 -07:00
nshrivas
9614d8539d Release 5.2.0.184L
Release 5.2.0.184L

Change-Id: I9cf8f4ff5f02a4f03b2b6bad11c0d01243cf2436
CRs-Fixed: 774533
2020-05-04 23:12:06 -07:00
Alan Chen
06551ba572 qcacld-3.0: Rename gEnablePowerSaveOffload to gAdvancedPowerSaveMode
gEnablePowerSaveOffload is confusing, so change it to
gAdvancedPowerSaveMode.

Value 0: Disable advanced power save
Value 1: Enable advanced power save

Change-Id: Ib5593ef31eedacdc232ffbad183974e2cd847e83
CRs-Fixed: 2676664
2020-05-04 23:12:06 -07:00
nshrivas
5e6cdf7b3c Release 5.2.0.184K
Release 5.2.0.184K

Change-Id: Ib6bd9014beda2d7485337dddf1e5a5bf3a0fe0a4
CRs-Fixed: 774533
2020-05-04 21:27:49 -07:00