Commit Graph

59 Commits

Author SHA1 Message Date
Surabhi Vishnoi
492308b08f qcacld-3.0: Add ini for FTM time sync component
Add ini config required for FTM time sync feature.

"enable_time_sync_ftm"- ini to enable/disable the feature.

"time_sync_ftm_mode" - ini to configure the burst/aggregated mode.
In burst mode the offset derived for each RTT frame is sent by
firmware, in aggregated mode only one offset is sent by firmware.

"time_sync_ftm_role" - ini to configure slave(STA)/master(SAP) role.

Change-Id: I6a06d6fdc4c7556c32ab2d28f1cbaa936b98a85b
CRs-Fixed: 2618654
2020-02-21 01:44:59 -08:00
Vulupala Shashank Reddy
4affa222c9 qcacld-3.0: Register tx and rx ops for packet capture component
Register tx and rx ops to send packet capture mode command and
to receive mgmt offload handler for packet capture component.

Change-Id: I70da00feff29399b98c5916eec17e26b62285db3
CRs-Fixed: 2619321
2020-02-20 16:23:28 -08:00
Dundi Raviteja
9465ea0c01 qcacld-3.0: Add WMI EVENT handler for offloaded mgmt data
Register event handler for WMI_VDEV_MGMT_OFFLOAD_DATA_EVENTID
to handle offloaded management data.

Change-Id: I340d79b08f8453425092f4582059f184e0dfb625
CRs-Fixed: 2619319
2020-02-20 04:50:41 -08:00
gaurank kathpalia
f3d64f7ffa qcacld-3.0: Add support for NAN msg in kmsg
Add support for the following NAN messages in kmsg:-
1. NAN enable status
2. NAN, NDP match events
3. NDP channel info.
etc.

Change-Id: Icbf8f4ed05a7bd181a076d526dd2e01d70be6b05
CRs-Fixed: 2618835
2020-02-20 01:08:01 -08:00
Vulupala Shashank Reddy
5a60cebf6d qcacld-3.0: Send vdev param command to set pkt capture mode
Send vdev param command to FW for STA vdev to set the packet
capture mode. Send the command only if packet capture support
is enabled.

Change-Id: Ifed2431882b1f7d2869771e812daa5bcd5dc17e9
CRs-Fixed: 2619314
2020-02-19 06:23:46 -08:00
Surabhi Vishnoi
6ecac484fc qcacld-3.0: Add function to handle the FTM time sync events from target
Add the function to parse the FTM timesync start/stop and offset
events received from target and populate them in ftm timsync
priv vdev structure.

Change-Id: Ibdcf97bb0a04fc6490c6bd2c26701036df92c5d4
CRs-Fixed: 2618646
2020-02-15 12:56:09 -08:00
Surabhi Vishnoi
765dcc910f qcacld-3.0: Add FTM TIME SYNC component in target_if
This patchset adds the FTM TIME SYNC component in
target_if to register the ftm time sync wmi events/cmds.

Change-Id: I4ea14266a912c9d261a67809556774860b5ddab1
CRs-Fixed: 2617055
2020-02-10 06:41:17 -08:00
Vevek Venkatesan
656edfa1f8 qcacld-3.0: add support to customize dscp-to-up map table
Add support to customize DSCP-to-UP map table and send the
customized map values to FW to update its corresponding
map table.

Change-Id: Ibe9704a90468c898dd2e60fdf83a271152f654ce
CRs-Fixed: 2616247
2020-02-06 22:44:57 -08:00
Arun Kumar Khandavalli
a0bb689000 qcacld-3.0: selectively reduce the offload logs
Reduce loglevel of some logs from info to debug.

Change-Id: I7026cd376015de62d71ffd0b4eb2e79e13e2e4f0
CRs-Fixed:  2607973
2020-01-24 05:09:18 -08:00
Min Liu
91de709b1c qcacld-3.0: Fix possible NULL wmi_handle dereference
Add NULL pointer check for wmi_handle

Change-Id: Iea5505379107b036d0cf245e423b6af73963538a
CRs-Fixed: 2531570
2019-09-26 05:52:24 -07:00
Paul Zhang
c9dbaeea18 qcacld-3.0: Add interface to get / set eLNA bypass
Add interface to get / set eLNA bypass from / to firmware

Change-Id: Idf5d6a838d2596767a1fb00040457af721fba69d
CRs-Fixed: 2498525
2019-09-21 02:46:53 -07:00
Bala Venkatesh
221790b07e qcacld-3.0: Do not send UAPSD command after TDLS connection
Currently as part of tdls enable link, If the peer is buff
capable or tdls uapsd is enabled in INI. UAPSD is enabled in
FW. Avoid sending this command to FW as it effects the behavior
with AP.

Change-Id: Idc023cb9de3ab63e7643815d473fe0efa98069b9
CRs-Fixed: 2528208
2019-09-19 02:01:45 -07:00
Abhishek Ambure
7470976006 qcacld-3.0: Refactor vdev create code
Refactor vdev create code to target_if common code. Remove legacy
code for vdev create.

Change-Id: I57caf0c5fa2da7b6ba640a9d2edb72363959c585
CRs-Fixed: 2460786
2019-08-05 10:55:23 -07:00
Abhishek Singh
cf8bedbc4f qcacld-3.0: Send reject ap list to FW
Reject AP list which is maintained by the blacklist manager
has to be sent to the FW for roaming case scenarios, as
the blacklist, and rssi reject APs should not be preferred
in the reassociation.

Change-Id: I58bf90e17653dde2a5042780ba7d57fa3115d63a
CRs-Fixed: 2461230
2019-05-31 21:55:53 -07:00
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
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
Manikandan Mohan
6bd71be66e qcacld-3.0: Call correct PMO API for setting PS params
WMI_STA_PS_PARAM_INACTIVITY_TIME and
WMI_STA_PS_PARAM_MAX_RESET_ITO_COUNT_ON_TIM_NO_TXRX
need to be sent as WMI_STA_POWERSAVE_PARAM_CMDID param IDs.
Thus use pmo_tgt_send_vdev_sta_ps_param instead of
pmo_tgt_vdev_update_param_req in appropriate locations.

Change-Id: Ie9438cd88540a9bbcaf120b3d0a32d355f85002d
CRs-fixed: 2457998
2019-05-23 16:39:55 -07:00
Yue Ma
9f7d35c752 qcacld-3.0: Add comments for a PMO API
Any new param_id added to target_if_pmo_send_vdev_update_param_req
should be added to wmi_tag_vdev_set_cmd to be tagged for runtime PM
feature so that it will not invoke runtime PM get which may result
resume right after suspend (WOW_ENABLE).

Change-Id: Ifa154b38ec91599023e30a37b7fcfef88f5f0491
CRs-fixed: 2451994
2019-05-16 02:28:19 -07:00
Pragaspathi Thilagaraj
aa8320e1c6 qcacld-3.0: Send idle roam trigger monitor command to firmware
Send idle roam trigger monitor command to firmware based on
the SET SUSPEND mode command received from the user space.
The set suspend mode value sent will be used by firmware as
one of the parameters in determining if the device is in
idle state. When set suspend mode is 1, device is not in
idle state else the device is considered idle if idle state
data packet count, idle rssi, inactivity time criteria are met.

Add changes to send the suspend mode value over the wmi
command WMI_IDLE_TRIGGER_MONITOR_CMDID.

Change-Id: Ia4531fdab140334dbb830e0d7486db07bbdfc7e8
CRs-Fixed: 2436221
2019-04-18 17:02:14 -07:00
Ajit Pal Singh
775bf3ae4b qcacld-3.0: pmo: Add API to get target suspend state
In USB devices even if the driver returns an error from bus_suspend,
still the kernel/platform goes into suspend as any error from USB
bus_suspend is ignored.
During suspend, if WoW or suspend was NACked by FW, we should not
send WMI_WOW_HOSTWAKEUP_FROM_SLEEP_CMDID, WMI_PDEV_RESUME_CMDID to disable
WoW or resume device (in the next system resume)
Add new PMO API to get target suspend state and use it to check if
device should be resumed.

Change-Id: Ic6be05f4f2d36ffe174774b6cd55c6da6b1ea1b8
CRs-Fixed: 2421591
2019-04-05 08:37:19 -07:00
Ashish Kumar Dhanotiya
16fd4201f9 qcacld-3.0: Add support to configure ito repeat count
Currently there is no support to configure ito repeat
count when driver enters into wow mode.

Add support to configure ito repeat count with ini
gItoRepeatCount when driver enters into wow mode.

CRs-fixed: 2419137
Change-Id: I62d7e7df12342e9743c26e0147851347214a9ce7
2019-03-22 03:08:52 -07:00
Jeff Johnson
14c15f3e44 qcacld-3.0: target_if: Replace explicit comparison to NULL
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within target_if replace any such comparisons with
logical operations performed on the pointer itself.

Change-Id: Id9b5185713b91b67ddf1d965a6c7e52508558d82
CRs-Fixed: 2418397
2019-03-20 22:09:09 -07:00
Ashish Kumar Dhanotiya
9e0627bfd8 qcacld-3.0: Add support to set inactivity timout for PMO
Currently there is no support to configure the inactivity
timeout when driver goes to wow mode or when driver resumes
from wow mode.

Add support for PMO component to configure the wow mode
inactivity timeout with ini g_wow_data_inactivity_timeout
when driver enters into wow mode and when driver resumes
from wow mode add support to configure the inactivity
timeout for non wow mode with ini gDataInactivityTimeout.

CRs-fixed: 2412866
Change-Id: I0672f22a5dfec870e5e67b23058db2729b9a0848
2019-03-20 08:25:38 -07:00
Nachiket Kukade
9ea5f13a28 qcacld-3.0: Add support for disabling an NDI concurrency
NAN Datapath implementation allows more than one concurrent
NDI's to be active at the same time. But this isn't supported
if there is a higher priority incoming connection such as
STA. Add modules that check for unsupported NDI concurrency
and initiates termination of all NDP's on it.

Add modules that check and disable unsupported NDI concurrency.

Change-Id: I6ad9afbfc41beda1d1c8f31bf58a8ea70027f5ca
CRs-Fixed: 2407215
2019-03-12 13:58:08 -07:00
Dustin Brown
79304efc65 qcacld-3.0: Remove EOK from PMO
There are several instances of incorrectly using EOK with QDF_STATUS.
Address all infractions in PMO.

Change-Id: I105498281ca90ff56465737041d204aeebaa86ec
CRs-Fixed: 2403940
2019-02-23 14:06:25 -08:00
Madhvapathi Sriram
3e6627a9f9 qcacld-3.0: Optimize schedule msg post error logging
Change-Id: Ieaddca5f141c99c42ed4a7c954dea2788e353640
CRs-Fixed: 2373015
2019-01-22 02:37:31 -08:00
Wu Gao
b901f0e704 qcacld-3.0: Use enum wmi_tdls_state as type of tdls state
Define tdls state as enum wmi_tdls_state, and pass it to
wmi_unified_update_fw_tdls_state_cmd.

Change-Id: I77defc28f78bf3152241f6fb75a7235e06c39c14
CRs-Fixed: 2372455
2018-12-27 01:05:11 -08:00
Nachiket Kukade
6003bd2adf qcacld-3.0: Route the legacy NAN commands through NAN component
NAN component has been moved to CLD. It includes implementation
of the new NAN command QCA_NL80211_VENDOR_SUBCMD_NAN_EXT.
Change the legacy NAN implementation of vendor cmd
QCA_NL80211_VENDOR_SUBCMD_NAN so that the requests go
through the NAN component. Clean up the legacy path.
Functionality remains unchanged for legacy command.

Route the legacy NAN commands through the NAN component.

Change-Id: I542e5afe832619f8c088220cc4456aa7fe4416fd
CRs-Fixed: 2356772
2018-12-18 14:29:19 -08:00
Nachiket Kukade
4f89e9e161 qcacld-3.0: Add support for handling the NAN events
As part of supporting NAN DBS, new WMI TLVs are defined so
that Host can maintain the status of NAN Discovery in sync
with the Firmware. Add modules that process these events and
updates the NAN states.

Add support for handling the NAN events.

Change-Id: Icfcd9c33cc410d9a65140f63cac69ddd69742306
CRs-Fixed: 2355383
2018-12-18 14:29:15 -08:00
Nachiket Kukade
d5a7683c8a qcacld-3.0: Add support for the NAN Enable/Disable commands
Add changes in the NAN component and Target IF to support the
NAN Enable and Disable commands. Add changes to support all
the other generic NAN commands as well. Add a state machine
to keep track of the status of the NAN Discovery in the Target.

Add support for the NAN Enable/Disable commands

Change-Id: I20c303cad8b7a30deba50345032b33b1deba4802
CRs-Fixed: 2338054
2018-12-18 14:29:10 -08:00
Linux Build Service Account
8f8a4f35e0 Merge branch 'wlan-cmn.driver.lnx.2.0' of ../target/qca-wifi-host-cmn into HEAD 2018-12-04 16:12:45 +05:30
Linux Build Service Account
c4ee8ca270 Merge branch 'wlan-cmn.driver.lnx.2.0' of ../target2/qca-wifi-host-cmn into HEAD 2018-12-04 16:06:27 +05:30
Linux Build Service Account
d2bb8757a6 Move target_if/tdls to components/target_if/tdls
Change-Id: Ia72f8dddc21df49bab8ba63be38ce080d858c603
2018-12-04 15:49:52 +05:30
Linux Build Service Account
7f1b42dbad Move target_if/p2p to components/target_if/p2p
Change-Id: I1ea8a2cc9f31223407fac0925b74e3c5a37bc6e5
2018-12-04 15:34:44 +05:30
Nachiket Kukade
63bb63d833 qcacld-3.0: Complete the NAN component movement into CLD
NAN related OS IF, Target IF and component files have been
merged into CLD. Add Makefile changes, include correct
files, replace lmac tx/rx ops with the new ops and call
updated API's such as init/deinit.

Complete the remaining changes for moving NAN component
into CLD.

Change-Id: Idcf8816337aa49b399596ce3cdfc9cdab811d386
CRs-Fixed: 2338060
2018-12-03 15:17:59 -08:00
Linux Build Service Account
eefcfdd514 Merge NAN related Target IF files from branch 'wlan-cmn.driver.lnx.2.0' into wlan-cld3.driver.lnx.2.0 2018-11-15 19:15:04 +05:30
Linux Build Service Account
9c774fa650 qcacld-3.0: Merge NAN related Target IF files into CLD
NAN component is not needed in the CMN repo. To reduce the
unnecessary lines of code, merge the NAN related Target IF
files from CMN into CLD. Subsequently remove these files
from the CMN repo.

Merge NAN related Target IF files from CMN into CLD.

Change-Id: I02475f1e1a3a90280bb9da0f131ba34bb189f5b3
2018-11-15 17:16:52 +05:30
Dundi Raviteja
8f307b02bc qcacld-3.0: Possible NULL pointer dereference in target_if_disa
Currently, the return value of get_wmi_unified_hdl_from_psoc() API
is passing directly as argument to some functions without checking
the return value for NULL which may cause NULL pointer dereference.

To address this issue, add NULL checks for return value of
get_wmi_unified_hdl_from_psoc() API where ever it is getting used.

Change-Id: Ieb4ff997960aac915b4dc40cb0d17070240d9b1f
CRs-Fixed: 2316854
2018-09-20 16:40:21 -07:00
Dundi Raviteja
db2dbab047 qcacld-3.0: Possible NULL pointer dereference in pmo
Currently, the return value of get_wmi_unified_hdl_from_psoc() API
is passing directly as argument to some functions without checking
the return value for NULL which may cause NULL pointer dereference.

To address this issue, add NULL checks for return value of
get_wmi_unified_hdl_from_psoc() API where ever it is getting used.

Change-id: I60e89b5305ad31d8663a8feed3cb0f71105bb060
CRs-Fixed: 2316868
2018-09-19 23:15:11 -07:00
Rachit Kankane
0cf4d4feb1 qcacld-3.0: Featurize WLAN_FEATURE_PACKET_FILTERING
Featurize packet filter properly, as this feature was partially featurized.

Change-Id: Ib4b0e94ab2b9847f824220e2cd4efc2cee6fae8d
CRs-Fixed: 2304233
2018-09-04 13:45:49 -07:00
Rajeev Kumar Sirasanagandla
80e16bfe83 qcacld-3.0: Add null check in action oui send request
In target_if_action_oui_send_req(), there is no NULL check against
return value of GET_WMI_HDL_FROM_PSOC() which can result in NULL
pointer exception. Therefore, add NULL check.

Change-Id: Ibbc4fdf03563496b9d5dac63141921dd8bdea4fa
CRs-Fixed: 2299793
2018-08-24 07:16:45 -07:00
Rajeev Kumar Sirasanagandla
4725ae4600 qcacld-3.0: Add support for action OUI extensions
Add support for action OUI extensions which can be used by station
to control mode of connection, connected AP's in-activity time and
Tx rate etc.,

Change-Id: Ie85e29c4b0ed7ac2815709d7a4e607c4ba46c6ca
CRs-Fixed: 2254502
2018-07-24 13:20:33 -07:00
Dustin Brown
867ce6d534 qcacld-3.0: Reduce excessive logging during suspend
Currently, errors are logged if a given offload feature is disabled
while suspending the wlan driver. Instead, simply return success for the
configuration of those features which are disabled, since nothing needs
to be done. This also has the side effect of avoiding meaningless error
logs for situations which are not error conditions.

Change-Id: I1d897d8db066e642e1cc6e77daff0f44172cefe8
CRs-Fixed: 2282040
2018-07-21 13:15:52 -07:00
Qiwei Cai
1083f5b0ac qcacld-3.0: Featurize WLAN_NS_OFFLOAD
Fix compilation errors when disable WLAN_NS_OFFLOAD

Change-Id: Ifba894a4880a226cedf4c88b1121d02c63aceb4b
CRs-Fixed: 2271272
2018-07-13 10:36:11 -07:00
Wu Gao
52084c1fdb qcacld-3.0: Refine disa head files
DISA head files include lots of not used public head files, and cause
compilation issue when disable PMO feature flag.

Change-Id: I287f845a3e9f923d042463c34abaedadb905d3b2
CRs-Fixed: 2243947
2018-05-21 22:51:28 -07:00
Sourav Mohapatra
cf632579b1 qcacld-3.0: Use new API for fetching wmi_handle
Use get_wmi_unified_hdl_from_psoc instead of GET_WMI_HDL_FROM_PSOC due
to incompatible return types.

Solve renaming dependencies with common side changes.

Change-Id: Ie84641327d64876877c7d26b63d632c79770a88c
CRs-Fixed: 2203055
2018-05-11 22:40:02 -07:00
Sravan Kumar Kairam
5214f65bf9 qcacld-3.0: Move IPA WLAN event handler to IPA component
IPA module has been moved to CLD component under the converged
driver model. Move the legacy HDD IPA WLAN event handler to
the IPA component.

Change-Id: Ia53adce7ef29eea747f288fa074f96a84e47925d
CRs-Fixed: 2177925
2018-03-21 18:57:30 -07:00
Sravan Kumar Kairam
a0600b8a87 qcacld-3.0: Modify IPA UC offload control cmd
IPA module has been moved to CLD component under the converged
driver model. Remove legacy WMA interface IPA command and use
the new defined API.

Change-Id: Icd9a207f43f8df4dc563d0078d402470683cfd7d
CRs-Fixed: 2177925
2018-03-21 18:57:06 -07:00
Sravan Kumar Kairam
4af61cf612 qcacld-3.0: Create IPA CLD component
As part of converged driver model remove IPA from
HDD and create a new IPA CLD component. Add files for
IPA core, dispatcher and target_if. Define IPA related
public and private structures.

Change-Id: I8848331edc7dd878f9fc51ef9f5e311ad91ed70b
CRs-Fixed: 2177925
2018-03-21 18:57:03 -07:00
Zhang Qian
b94edcee44 qcacld-3.0: Add target interfaces for OCB component
Add target interfaces and core APIs for OCB component.

CRs-Fixed: 2177578
Change-Id: I76a1afa4d6f3876b0b5df89ffe4080af77cd13c4
2018-01-25 07:41:16 -08:00