Commit Graph

12 Commits

Author SHA1 Message Date
Nachiket Kukade
2fb1fdb1ac qcacld-3.0: Combine all NAN related flags with WLAN_FEATURE_NAN
Flag WLAN_FEATURE_NAN_DATAPATH was added to protect NAN Datapath
related code, while WLAN_FEATURE_NAN_CONVERGENCE was added to
protect the converged code inside NAN Component. Since the
original NAN Discovery related code has now been moved inside
NAN component and NAN Datapath cannot exist without NAN Discovery,
keeping these flags separate doesn't make sense. Combine these
two flags with WLAN_FEATURE_NAN flag which is the original NAN
feature flag.

As a cleanup of NAN code, combine all NAN related flags with
WLAN_FEATURE_NAN flag.

Change-Id: If98ecaace17f8724e9c28325ef61e721f42e1d8f
CRs-Fixed: 2377375
2019-02-04 10:44:30 -08:00
Abhishek Singh
d1f21c7b0d qcacld-3.0: Refactor firmware, serialization and HDD CMD timeouts
Refactor firmware, serialization and command timeouts so that
HDD timeout are greater than serialization is greater than firmware
timeout.

The timeouts are defined considering below worst case delay in
firmware.
WMI_VDEV_START_REQUEST_CMDID	6 sec
WMI_VDEV_RESTART_REQUEST_CMDID	6 sec
WMI_VDEV_STOP_CMDID		2 sec
WMI_PEER_DELETE_CMDID		2 sec
WMI_PEER_ASSOC_CMDID		2 sec
WMI_PDEV_SET_HW_MODE_CMDID	2 sec
WMI_PDEV_SET_MAC_CONFIG_CMDID	2 sec

Change-Id: I270e980ed1cf2aee55a1fa4e88ff8ddc845a203b
CRs-Fixed: 2384389
2019-01-24 16:17:50 -08:00
Nachiket Kukade
0a1aea6d44 qcacld-3.0: Forward NDP Indication event for NDP initiator
Driver only forwards NDP Indication event to upper layers
after it receives the event WMI_NDP_INDICATION_EVENTID as
an NDP Responder. But while as an NDP Initiator, if the
NDP Peer sends App info through NDP Response instead of
NDP Confirm, driver receives the same event. But it does
not forward it to upper layers. As a result App info is
dropped and upper layers miss out on it.

Forward NDP Indication event to upper layers through vendor
event subtype QCA_WLAN_VENDOR_ATTR_NDP_REQUEST_IND regardless
of the NDP role of the device.

Change-Id: I63349b92426b6090e024957e70fd7f9ef97cf314
CRs-Fixed: 2375741
2019-01-09 01:28:18 -08:00
Nachiket Kukade
c1bba2f146 qcacld-3.0: Set 5GHz channel for NDI start and remove the INI
NDI Create from upper layers also does a start bss with the
channel specified with INI "gnan_datapath_ndi_channel". It
defaults to channel 6 if no value is specified. For targets
with 2x2 DBS MAC Configuration this cannot happen without
a DBS mode change. Since this channel is not indicative of
the actual NDI channel, send a 5GHz NAN Social channel for
the BSS start to avoid the DBS mode change.

Send 5GHz NAN Social channel for NDI bss start and remove
the corresponding INI.

Change-Id: I40428f5eb4071f7c1d3934c6279316aad8082c03
CRs-Fixed: 2364619
2018-12-26 01:21:13 -08:00
Nachiket Kukade
089b98361e qcacld-3.0: Handle concurrencies with NAN Discovery
Use policy manager to set and update the NAN Discovery
related connection info. Disable NAN Discovery
explicitly for unsupported concurrencies.

Handle concurrencies with NAN Discovery interface.

Change-Id: I8c9450b034983ef0402fdc878d8b525bedac9f0b
CRs-Fixed: 2358180
2018-12-22 02:54:03 -08:00
Nachiket Kukade
cf94160805 qcacld-3.0: Add policy mgr changes to manage NAN Discovery
Add NAN Discovery specific modes, modules that manage NAN
Discovery interface. Add cases and exceptions that manage
concurrent operations alongside NAN Discovery.

Add policy manager changes to manage NAN Discovery.

Change-Id: Ib9a10be265c14adf8d1d5f2f2e2b65aa399d6636
CRs-Fixed: 2358183
2018-12-21 12:34:38 -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
Nachiket Kukade
85aa3788b6 qcacld-3.0: Store the NAN target caps inside its private obj
Host will receive the NAN related service capabilities from
the SERVICE_AVAILABLE event. In the HDD callback that gets
called afterwards, set the NAN related capabilities into
the NAN's private PSOC object.

Store the NAN target capabilities inside its private object.

Change-Id: If398b6f253613fc424b7821cfc62b0984ad34b6c
CRs-Fixed: 2356709
2018-12-18 14:29:06 -08:00
Nachiket Kukade
a6a70a98f1 qcacld-3.0: Add support for the new NAN EXT vendor command
As part of the NAN Discovery DBS support, a new vendor command
- QCA_NL80211_VENDOR_SUBCMD_NAN_EXT - has been defined that can
carry the binary blob encapsulated within an attribute and can
carry additional attributes to enhance the NAN command interface.
Add related data structures in NAN component and add modules in
OSIF to parse and sanitize this new command data and forward
the NAN message to the NAN component.

Add support for the new NAN EXT vendor command.

Change-Id: I0e6bb833b01a8cbd65e4d42700b5b70599f3ef99
CRs-Fixed: 2339029
2018-12-18 14:29:02 -08:00
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
4e044cf9f5 qcacld-3.0: Merge NAN component files from CMN into CLD
NAN component is not needed in the CMN repo. To reduce the
unnecessary lines of code, merge the NAN component files
from CMN into CLD with updated copyrights. Subsequently
remove these files from the CMN repo.

Merge NAN component files from CMN into CLD.

Change-Id: I63c2fb90ea517496946ea45a66bdf290af9d5a7c
2018-11-15 19:12:32 +05:30