Commit Graph

15947 Commits

Author SHA1 Message Date
gaurank kathpalia
8c943b7df5 qcacld-3.0: Add basic infra, INI, deinit path for BLM
BLM:- Blacklist Manager

Add the basic infrastructure such as target-if, tgt, init,
deinit, ini files, core and main files for the new component
Blacklist Manager.

Change-Id: I624a779ee0dd6be7cb26a911af0aefd426ca9bff
CRs-Fixed: 2460602
2019-05-31 21:55:41 -07:00
nshrivas
c110e2ed45 Release 5.2.0.135C
Release 5.2.0.135C

Change-Id: I955b269c8eac0ca671d62c7eb263a37aa86ec157
CRs-Fixed: 774533
2019-05-31 14:50:36 -07:00
Arun Kumar Khandavalli
32b2af4365 qcacld-3.0: Sanitize the mc address list count
In the target_if layer  based on the mc address list count the
filter params are filled and sent to the firmware. If the mc address
list passed is more than the maximum supported address list there
can be possible buffer overflow.

Sanitize the mc address list count to avoid any overflow.

CRs-Fixed: 2452131
Change-Id: I03208a5487cfd730e933666c47accb2e46fbbc72
2019-05-31 14:50:35 -07:00
Abhinav Kumar
62dcf9883b qcacld-3.0: Enable gChannelBondingMode24GHz by default
In order to ensure that HT40 is enabled by default on 2.4 GHz
remove gChannelBondingMode24GHz entry from INI file and set
the default value of gChannelBondingMode24GHz to 1.

Change-Id: I8b7657e3eef5f4ec19863c8da6a611a63ccecd9c
CRs-Fixed: 2461593
2019-05-31 14:50:31 -07:00
Abhinav Kumar
925a3334ef qcacld-3.0: Update vdev id while de-configuring 11k offload
In case of STA+STA to configure 11k for second STA without
assertion, the driver should de-config 11k for currently
enabled STA. Currently, driver de-configures 11k but not updates
corresponding vdev id results vdev id for which roam disable and
11k disable sent to fw could be different. This leads to assert
in fw.

Fix is to update corresponding vdev id also for which driver
de-configures 11k.

Change-Id: I841a0561124cf110096f5326f2d9ba191518d3f2
CRs-Fixed: 2460097
2019-05-31 14:50:27 -07:00
nshrivas
67628ac49d Release 5.2.0.135B
Release 5.2.0.135B

Change-Id: Id1914d3bbe8561c62dd43ac65f9a5ea32bcc9aa8
CRs-Fixed: 774533
2019-05-31 07:40:09 -07:00
Pragaspathi Thilagaraj
e64714a3b4 qcacld-3.0: Rename pe_session member pePersona
The Linux Coding Style doesn't allow mixed-case names so rename
pePersona to opmode in struct pe_session to be in compliance.

Change-Id: I3434bdba5300fb89c7e78cd16dacfd151ba7c00b
CRs-Fixed: 2459760
2019-05-31 07:40:08 -07:00
nshrivas
bb6d04a2f9 Release 5.2.0.135A
Release 5.2.0.135A

Change-Id: Icec1d9effdbc5558e1e947051e3550ea6e47f1f0
CRs-Fixed: 774533
2019-05-31 05:17:09 -07:00
Yeshwanth Sriram Guntuka
22ed80066a qcacld-3.0: Advertise max NSS capability with few IOT APs
Few IOT APs advertise reduced NSS capabilities on ending
up in bad state. These APs can later recover to support
the actual NSS capabilities. In this scenario, when STA
initiates connection to these APs, which are in bad state,
reduced NSS capabilities is advertised. STA cannot later
upgrade NSS capabilities to the minimum of STA max NSS
capability and APs actual NSS capability, once AP recovers.

Fix is to advertise max NSS capability during connection
with these IOT APs based on vendor OUIs and downgrade if
AP still advertises reduced NSS capability in association
response.

Change-Id: I49ea13534b1a44fd9ffadd1e8fb44e9d782147c4
CRs-Fixed: 2453938
2019-05-31 05:17:09 -07:00
Pragaspathi Thilagaraj
ed78190321 qcacld-3.0: Populate correct default values for BTM ini items
In function mlme_init_btm_cfg(), initializing the
btm_solicited_timeout, btm_max_attempt_cnt and btm_sticky_time
is done using the cfg_default() api, which always returns the
default value irrespective of the ini configured. This results
in failure of ini configuration from the WCNSS_qcom_cfg.ini file.

Use cfg_get() api to get the default value of ini items.

Change-Id: I773676cc67878f233cb6d14e0ad3ec1d79a5518f
CRs-Fixed: 2461612
2019-05-31 05:17:04 -07:00
nshrivas
f3882b0da8 Release 5.2.0.135
Release 5.2.0.135

Change-Id: I4c100c20be914ffbecf8a9faba3b85544252764a
CRs-Fixed: 774533
2019-05-31 02:29:50 -07:00
Vevek Venkatesan
3b6be82e9b qcacld-3.0: abstract Linux identifiers from IPA component
Abstract Linux based OS identifiers from IPA component in
HDD/OSIF layer.

Change-Id: I82a5db8c796d47d552757b1a450df10c72061177
2019-05-31 02:29:49 -07:00
nshrivas
d8679842c8 Release 5.2.0.134Z
Release 5.2.0.134Z

Change-Id: I166c799f729691c9314e206d3d8faa7d8cecef28
CRs-Fixed: 774533
2019-05-30 19:29:35 -07:00
Rajeev Kumar
588a254004 qcacld-3.0: Add idle restart/shutdown support for PCIe in PLD
Provide platform driver interface for idle restart/shutdown for
PCIe bus in PLD. Remove PCIe power off call for discrete PCIe bus
enabled SoC such that platform driver can execute proper SoC power
off sequence.

Change-Id: If08186247e89a4182cadbf83817dce4f02654ecc
CRs-Fixed: 2431419
2019-05-30 19:29:34 -07:00
Yeshwanth Sriram Guntuka
a5af4491d5 qcacld-3.0: Modify default value for switch to 11n action OUI ini
The current default value for gActionOUISwitchTo11nMode ini
leads to forcing 11n connection with vendor APs which don't
require the WAR.

Fix is to update the default value of the ini to restrict
the WAR to appropriate vendor AP.

Change-Id: Ia148da288ee16a62a8b32e54b1801bb9d19031e2
CRs-Fixed: 2461414
2019-05-30 19:29:30 -07:00
nshrivas
71edafacb9 Release 5.2.0.134Y
Release 5.2.0.134Y

Change-Id: I4cf0edbe22fca7363dd3a9f461d3a516ee88fd6e
CRs-Fixed: 774533
2019-05-29 22:12:37 -07:00
Manikandan Mohan
2585d87579 qcacld-3.0: Fix NAN + NDI only concurrency for DBS
Fix an issue where driver downgrades HW to single MAC mode for
NAN + NDI concurrency. DBS must be enabled for since NAN operates
in 2G.

Change-Id: Ie4d76e7a73d40ce663c6f907693954b62add0394
CRs-fixed: 2460830
2019-05-29 22:12:36 -07:00
nshrivas
5b1b7d3177 Release 5.2.0.134X
Release 5.2.0.134X

Change-Id: I94b667cd926c1289222c3412a37b2b65a2641e2c
CRs-Fixed: 774533
2019-05-29 02:53:59 -07:00
tinlin
480cb8e5a2 qcacld-3.0: Correct typo in csr_roam_joined_state_msg_processor
In csr_roam_joined_state_msg_processor, roam_info->tx_stbc is
assigned twice because of a typo.
Assign roam_info->rx_stbc as the value of
pUpperLayerAssocCnf->rx_stbc.

Change-Id: Ic90f6b486a50dcc3aca8cb7171a137a34319914d
CRs-Fixed: 2460716
2019-05-29 02:53:58 -07:00
Srinivas Girigowda
f8e5d2e3ac qcacld-3.0: Replace SIR_MAC_ACTION_* with converged enum ACTION_SPCT_*
Replace SIR_MAC_ACTION_* with converged enum ACTION_SPCT_*.

Change-Id: I76cc3d7ea8e12b9a40f39ba855a73e2779896fea
CRs-Fixed: 2460915
2019-05-29 02:53:53 -07:00
nshrivas
b1620c33dd Release 5.2.0.134W
Release 5.2.0.134W

Change-Id: Ic4b50ccf9c89449610a715e6d6e371cc81dc6ab2
CRs-Fixed: 774533
2019-05-29 00:05:35 -07:00
Sandeep Puligilla
5e647f7f3e qcacld-3.0: LFR3 changes for MBSSID
Changes to support LFR3 roaming with MBSSID feature.

Change-Id: Ie968d23bbd2efc6b33b774d603394eb3df450cc1
CRs-Fixed: 2439989
2019-05-29 00:05:34 -07:00
nshrivas
2c1cb8de22 Release 5.2.0.134V
Release 5.2.0.134V

Change-Id: Iba6781e8bc7a70823730084f73432ca6d9acd2ff
CRs-Fixed: 774533
2019-05-28 08:20:00 -07:00
Vevek Venkatesan
78f7f09a57 qcacld-3.0: fix CFI failure by abstracting the callback
Abstract the callback hdd_softap_ipa_start_xmit by
hdd_softap_ipa_start_xmit, to match the return type of
wlan_ipa_softap_xmit pointer, to fix a CFI failure.

Change-Id: If1cb1a80801558d5c7831ec89ad5281b0bbe36f3
2019-05-28 08:19:59 -07:00
nshrivas
371b0c88e4 Release 5.2.0.134U
Release 5.2.0.134U

Change-Id: I84f191971af2449e26d5b53d0111799b51b19bae
CRs-Fixed: 774533
2019-05-28 05:18:52 -07:00
Guisen Yang
77814d8f02 qcacld-3.0: request firmware without userhelper
The request_firmware() will take too long time(60s) when the
requested fw file do not exist. Replace this API with
request_firmware_direct.

Change-Id: Ie40db69a24dc1e0b86f140ca1aad91bd3b10e95e
CRs-Fixed: 2435125
2019-05-28 05:18:52 -07:00
Pragaspathi Thilagaraj
6fc0a9a120 qcacld-3.0: Fix default value of beamformee STS Capability for SAP
A VHT beamformee shall indicate the maximum number of space-time
streams it can receive in a VHT NDP in the Beamformee STS
Capability subfield of the VHT Capabilities Information field of
the VHT Capabilities element. The SAP is advertising STS value
as 8 in both 2G and 5G band. This may cause IOT issues.

Fix the default value of beamformee STS capability value as
default value 3 for SAP.

Change-Id: I026eabeea941a33f1ffab6e498e6de90e182320e
CRs-Fixed: 2448390
2019-05-28 05:18:48 -07:00
nshrivas
48a887afae Release 5.2.0.134T
Release 5.2.0.134T

Change-Id: I5e964e839fd3cf0269a9201bab61bbdf58af03cc
CRs-Fixed: 774533
2019-05-28 00:53:22 -07:00
bings
616cd434b8 qcacld-3.0: Make AP+AP in DFS channel in DBS mode work for SDXPRAIRIE
WiFi chip in SDXPRAIRIE supports DBS, and it is OK to start AP+AP in
DFS channel in DBS mode.
If CONFIG_FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE is defined, AP+AP in
DFS channel in DBS mode fails to start.

Remove CONFIG_FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE definition to make
AP+AP in DFS channel in DBS mode work for SDXPRAIRIE.

Change-Id: I1947b480aca2acb3245350c73935f6a4f9af964f
CRs-Fixed: 2459215
2019-05-28 00:53:21 -07:00
nshrivas
e9ee88cbe5 Release 5.2.0.134S
Release 5.2.0.134S

Change-Id: I7c8147f94d48392ab55c7f8b8ac875a329ee6837
CRs-Fixed: 774533
2019-05-27 22:04:13 -07:00
Srinivas Girigowda
395adddf8f qcacld-3.0: Replace SIR_MAC_RRM_* with converged macros
Replace SIR_MAC_RRM_* with converged macros.

Change-Id: I2150b5818dee4e35dda51a23fc956876d88b4c5b
CRs-Fixed: 2459572
2019-05-27 22:04:12 -07:00
nshrivas
9fce107497 Release 5.2.0.134R
Release 5.2.0.134R

Change-Id: I40c2116fe291a35d983a76ddfa05559619c5828e
CRs-Fixed: 774533
2019-05-27 20:13:16 -07:00
Jingxiang Ge
37204fd470 qcacld-3.0: Move tdls_osif_init_cb after checking tdls_feature_flags
If tdls feature is disabled, as currently tdls_osif_init_cb is called
before checking flags, tdls_osif_deinit_cb will be missed which causes
memory leak.

Do tdls_osif_init_cb after checking tdls_feature_flags.

Change-Id: I008c69a9b39f5321d1ca79f5193539f5abd32a02
CRs-Fixed: 2459853
2019-05-27 20:13:16 -07:00
nshrivas
d071de06fe Release 5.2.0.134Q
Release 5.2.0.134Q

Change-Id: I01a0cf8ba44c57788a044e6b4aa10fcb8be1125e
CRs-Fixed: 774533
2019-05-27 15:33:37 -07:00
Pragaspathi Thilagaraj
1112c96ef5 qcacld-3.0: Replace typedef tSirBssDescription
The linux coding style forbids use of typedef unless clearly
some rules are met. The tSirBssDescription doesn't match any of
those criteria, so replace it with underlying structure
bss_description.

Change-Id: I36ad517325117cf04d499c7c472ca6ef5921a85d
CRs-Fixed: 2459769
2019-05-27 15:33:37 -07:00
Pragaspathi Thilagaraj
e05162d92b qcacld-3.0: Rename pe_session member bssIdx
The Linux Coding Style doesn't allow mixed-case names so rename
bssIdx in struct pe_session to be in compliance.

Change-Id: Idf2df6cb4ca30e4fdae74b8fb39445bb878003c5
CRs-Fixed: 2459768
2019-05-27 15:33:33 -07:00
nshrivas
49f1803b05 Release 5.2.0.134P
Release 5.2.0.134P

Change-Id: I9c87d1d1a6ea2b8a6013c6dea65b9a4e96def155
CRs-Fixed: 774533
2019-05-27 10:37:32 -07:00
Ajit Vaishya
8515e65ec7 qcacld-3.0: set LOCAL_MODULE_TAGS to optional variant
From Android Q onwards LOCAL_MODULE_TAGS set to debug
variant is deprecated, thus set LOCAL_MODULE_TAGS
to optional variant by removing LOCAL_MODULE_TAGS.
If a module doesn't specify a tag (by LOCAL_MODULE_TAGS),
its tag defaults to optional.

Change-Id: Iecadd3bf07a375e2cfb044b400330c490f2023b0
CRs-Fixed: 2452507
2019-05-27 10:37:31 -07:00
Bala Venkatesh
d576fc5dac qcacld-3.0: Do not update the pkt cnt for connected AP
For implicit and external control the tdls connection is
established based on the tx and rx pkt count. But currently,
pkt count with connected AP also tracked.

Do not track packets for connected AP as TDLS is not possible
with connected AP.

Change-Id: I29d6f4e7858de1ec453d64b6fce548f5132c57d4
CRs-Fixed: 2457524
2019-05-27 10:37:26 -07:00
nshrivas
cb8716747a Release 5.2.0.134O
Release 5.2.0.134O

Change-Id: I4faaa0688940799cab1f7a05d2db29efd3eb9460
CRs-Fixed: 774533
2019-05-27 06:07:10 -07:00
Pragaspathi Thilagaraj
afd0a48d1c qcacld-3.0: Rename pe_session member eSirBssType
The Linux Coding Style doesn't allow mixed-case names so rename
eSirBssType in struct pe_session to be in compliance.

Change-Id: Iafe6649a130c77064180c67fb1385d2d7a763370
CRs-Fixed: 2459767
2019-05-27 06:07:09 -07:00
nshrivas
bf0ad87984 Release 5.2.0.134N
Release 5.2.0.134N

Change-Id: I7029feb10bc703f6bcd590c8bf2a5eaa6a62d35d
CRs-Fixed: 774533
2019-05-27 04:23:22 -07:00
Pragaspathi Thilagaraj
cb58bbc7b6 qcacld-3.0: Replace typedef tSirMacStatusCodes
The Linux Coding Style enumerates a few special cases where
typedefs are useful, but stresses "NEVER EVER use a typedef
unless you can clearly match one of those rules." The
tSirMacStatusCodes typedef does not meet any of those criteria,
so replace it properly named enum.

Change-Id: I4712acc4898a60ce78e7a6e71d2e91f5b1929c97
CRs-Fixed: 2459765
2019-05-26 14:10:28 +05:30
nshrivas
be24d8ccb5 Release 5.2.0.134M
Release 5.2.0.134M

Change-Id: Ie4a23bf4789c82da576cdc94b4962a5a9941210e
CRs-Fixed: 774533
2019-05-24 23:13:18 -07:00
Abhishek Singh
bb9deb4ae0 qcacld-3.0: Release vdev ref and delete pending peers in wma close
In hdd_vdev_destroy, if policy_mgr_check_and_stop_opportunistic_timer
decides to move to single mac mode and while sending the HW mode change
the target goes down, this leads to timeout of the HW mode change req in
WMA layer which is 2 sec and in serialization its 4 sec, but
policy_mgr_check_and_stop_opportunistic_timer timeout in 1 sec and proceed
to sme_close_session and wait for it to complete.

sme_close_session queue WLAN_SER_CMD_DEL_STA_SESSION to serialization but
it remains in pending queue, behind HW mode change req.

Now due to SSR the wait event for sme_close_session is set and thus
hdd_vdev_destroy logically deletes the vdev.

Now on WMA timeout the HW mode change try to remove the request from
serialization which it fails to remove as it fails to get ref for vdev
with vdev being logically deleted.

Thus WLAN_SER_CMD_DEL_STA_SESSION is not processed and is flushed in
hdd_wlan_shutdown.

Thus as SSR WLAN_SER_CMD_DEL_STA_SESSION is flushed from serialization
queue, the wma_vdev_detach() is not called for that vdev and thus the
peer attached to the vdev are not deleted and wma vdev ref is also not
released, this lead vdev/peer ref leak.

To fix this update the wait timeout in
policy_mgr_check_and_stop_opportunistic_timer with proper value higher
than the serialization timeout for the HW mode change request. ALso
set the wait event in policy_mgr_pdev_set_hw_mode_cb in failure cases
as well to avoid timeout in case of hw mode change failures.

Also release pending peer and vdef refs in wma_wmi_service_close.

Change-Id: I5ddf8263b0dbf889be506332a67f5e18c1bfb111
CRs-Fixed: 2458034
2019-05-24 23:13:17 -07:00
nshrivas
587668adc3 Release 5.2.0.134L
Release 5.2.0.134L

Change-Id: Ia771a4fce17584a9079f80fd44ce66b69fff7679
CRs-Fixed: 774533
2019-05-24 16:00:49 -07:00
sheenam monga
fa3cb430b3 qcacld-3.0: CONFIG_MCL cleanup for WLAN_SCHED_REDUCTION_LIMIT
Remove CONFIG_MCL for reduction limit to make code generic.
Initialize value for reduction limit  i.e WLAN_SCHED_REDUCTION_LIMIT
to 0 for MCL. In case WLAN_SCHED_REDUCTION_LIMIT not defined, then
define WLAN_SCHED_REDUCTION_LIMIT to 32 for WIN.

Change-Id: I6f6e4c9b3df71110654d487fcdae0334eeee4091
CRs-Fixed: 2459119
2019-05-24 16:00:48 -07:00
Paul Zhang
3718567245 qcacld-3.0: Implement api for interop issues ap
Implement the interface to transfer the info between
host driver and firmware about the ap which has interop
issues with the DUT. It is detected by firmware and
forwarded to user sapce for persistent storage. And
user space configs these APs to firmware when the DUT
starts up next time.

CRs-Fixed: 2425202
Change-Id: I2e828d521f0e04862a01fa1c90626f51b7f65796
2019-05-24 16:00:44 -07:00
nshrivas
55902294cf Release 5.2.0.134K
Release 5.2.0.134K

Change-Id: If774011b5ba6e7a6a648d09c2c3d7ea0e1d62a5a
CRs-Fixed: 774533
2019-05-24 13:50:01 -07:00
bings
1117283ca4 qcacld-3.0: Don't set WMI_PEER_NEED_PTK_4_WAY for FILS connection
When FILS authentication is performed, the key confirmation is
performed as part of the FILS exchange using association frames.
Hence, no additional 4-way handshake is necessary. But still the
host driver sets the WMI_PEER_NEED_PTK_4_WAY flag as part of
peer_assoc command. So firmware expects setting key command after
4-Way handshake is completed. But host sends the set key command
before M4 in this case, which results in firmware assert.

Don't set WMI_PEER_NEED_PTK_4_WAY for FILS connection.

Change-Id: I13451bd7592d5836c16cd648235f691b11aafb15
CRs-Fixed: 2458097
2019-05-24 13:50:00 -07:00