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
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
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
As STA+SAP concurrency is supported by default in the driver,
flag WLAN_AP_STA_CONCURRENCY is removed from Kbuild, remove
this flag from the driver code also.
Change-Id: Id079e657035c5dd5572f323fefad0dbf96272a77
CRs-Fixed: 2364867
As part of change Iac183da52495aca07c6270edeb9f383ab49c1ff5
("qcacld-3.0: Add CFG items of power") support for the INI item
"gPowerUsage" was moved from HDD to MLME. However that change left
behind the PowerUsageControl field in struct hdd_config. This is now
obsolete, so remove it.
Change-Id: If5eb74b91f79288a2431b0e806ad89cd3d41b503
CRs-Fixed: 2368702
The mcs flags that are sent to the upper layer are derived from mcs
table as present in the driver. Getting the correct values from the
table depends on providing the correct NSS, rate and rate flags.
Currently for the case of TX, all the parameters are passed correctly
but for RX, the NSS is not correct. The rx_nss is set to default value
of 0 where as it should be matched with the value as per the AP
capabilities.
Assign the NSS to the rx_nss as taken from vdev.
Change-Id: Idd579cd23c961d8b194b6b197bc65330be857746
CRs-Fixed: 2366271
Change I374e870610d79cc0d172ae126bfa70dc6d2db9a9 ("qcacld-3.0: Remove
not used INI CFG") removed support for the gRssiFilterPeriod
configuration item. However it failed to remove the underlying
nRssiFilterPeriod field from struct hdd_config, so do so now.
Change-Id: I5c8106e7ea57c7ab97213e17628caa1ecdd82b05
CRs-Fixed: 2367390
Previously change I5bea63b83ddac62504ef38019aa4034c4e18bca7
("qcacld-3.0: Add IPA CFG items and APIs") relocated the IPA
configuration from HDD to the IPA component. As part of that change
the IpaConfig field was removed from struct hdd_config.
Subsequently change I8cd30439d7ac3de7b550aa5042353cf30e04cbda
("qcacld-3.0: Refactor MLME CFG items and APIs for VHT") inexplicably
restored that field. Since that field is obsolete, remove it again.
In addition remove field IpaClkScalingEnable since this field has
never been used by the current version of the driver.
Change-Id: Ic08dc4b1ec82848512e7667c870dc18de1a343be
CRs-Fixed: 2367389
Change I51dcc45d7f2d5ac8a55574b0c6dc0b30458047b8 ("qcacld-3.0: Remove
unused mcast/bcast filter setting") removed some unused MC/BC fields
in the HDD context. However there is still a set of macros that were
used to manipulate these fields that are now unused, so remove thoses
as well.
Change-Id: I7b5a430e125fd7bc4f13943cf63d6d2ec8598e8f
CRs-Fixed: 2367388
As part of change Iddde15330c1ad39a59bd9a3c7ea86af971df61b5
("qcacld-3.0: Remove legacy INI items of QOS aggregation configs") the
legacy support for a large number of configuration items was removed,
but the following macros were temporarily left:
- #define CFG_TX_AGGREGATION_SIZE_MIN 0
- #define CFG_TX_AGGREGATION_SIZE_MAX 64
- #define CFG_RX_AGGREGATION_SIZE_MIN 1
- #define CFG_RX_AGGREGATION_SIZE_MAX 64
Subsequently in change I64f474512463d3ba7ac238b2efd0f4cf2e36999b
("qcacld-3.0: Remove legacy CFG macro definitions") the references to
those macros were changed to utilize the converged configuration
infrastructure, but the macros were not removed.
Since these macros are now obsolete, remove them.
Change-Id: Ib2999532d7d60411948b27034ae5ef2acb5010fc
CRs-Fixed: 2367385
Change I0c6354960b49d680e3efe304ea3300059c37015c ("qcacld-3.0: ADD
MLME INI items of WMM Configuration") relocated some WMM config items
to MLME. However this change left behind in HDD the documentation and
CFG macros for ImplicitQosIsEnabled, so remove these remnants.
Change-Id: If37f7b37495e6658ec3eaaa542bab7b609ad2efd
CRs-Fixed: 2367384
Change I149971768a7193099926e2778f093dcd073f0461 ("qcacld-3.0: ADD
MLME INI items of WMM Config") relocated the definition of
gAddTSWhenACMIsOff to the MLME component. However this change left
behind in HDD the documentation and CFG macros for this item, so
remove these remnants.
Change-Id: I3cb836bc6292c67850cb5219fc8ca2556a4c0e6c
CRs-Fixed: 2367383
Change I8cd30439d7ac3de7b550aa5042353cf30e04cbda ("qcacld-3.0:
Refactor MLME CFG items and APIs for VHT") relocated the definitions
of gEnableRXSTBC and gEnableTXSTBC to the MLME component. However this
change left behind in HDD the documentation and CFG macros for these
items, so remove these remnants.
Change-Id: I22eb72e454fa1f9dcb2c6013c28b5148009ff0d9
CRs-Fixed: 2367382
Change Ib2fcdc6318adb488eca5cf47b2b59541020e6009 ("qcacld-3.0: Add
support for PMKID modes of PMK caching and OKC") replaced the config
item OkcEnabled with a new item pmkidModes. However it left behind the
documentation as well as the CFG macros for OkcEnabled, so now remove
those remnants, along with the prototype for the now removed function
hdd_is_okc_mode_enabled().
Change-Id: If2c99717e0e8f3fedfdcc5aee97f2d2de2189bc8
CRs-Fixed: 2367381
Previously change I9b9ff1f8701168787985cbcb219361a3f63c787f
("qcacld-3.0: Refine PMO configures based on converged cfg component")
introduced PMO items to the converged configuration.
Subsequently change I2cdf18c1000d8cc923c80c00bf530b2b0c60563e
("qcacld-3.0: Apply PMO configures") removed PMO items from the legacy
configuration.
This subsequent change was incomplete. It left behind the legacy
documentation as well as the legacy configuration macros for the
following items, so now remove them:
- gHwFilterMode
- gMCAddrListEnable
- g_enable_packet_filter_bitmap
Change-Id: I7876fc0cd810e1c4f36c30840c1af08387a9d70f
CRs-Fixed: 2367380
Previously change I374e870610d79cc0d172ae126bfa70dc6d2db9a9
("qcacld-3.0: Remove not used INI CFG") removed most of the code
associated with the obsolete configuration object gEnableMemoryDebug.
However it left behind the documentation as well as the CFG macros, so
remove those as well.
Change-Id: Ic4d302416630588020111307b73694710e5a269a
CRs-Fixed: 2367379
Recently change I1938c3f5ab8164e792cb9b1c76e6afa79444bd6f
("qcacld-3.0: Relocate HDD DP ini items") relocated the DP Trace
configuration from the legacy configuration to the converged
mechanism. But this change left behind some macros that are now unused
and obsolete, so remove them.
Change-Id: I1af43a3dd7d85465558195110744a303cce4dff3
CRs-Fixed: 2367378
Previously change Idca5285d58bea659a1a481c1f33827608377ab98
("qcacld-3.0: Cleanup scan concurrent active and passive min time")
partially removed the support for the concurrent scan min timers.
However it left behind the macros used to define the config
parameters, so remove those as well.
Change-Id: I7c5c6e1dc2f89dcb39d7381e01d74ae1c381b7cd
CRs-Fixed: 2367377
Change Iebda5bbb3c5c68b922b7f6ac1adaf25cccf903a6 ("qcacld-3.0: Apply
mlme lfr configuraions") relocated a large number of config items from
the legacy HDD config to the MLME config. However this change did not
remove all of the legacy support, so now remove the documentation and
CFG macros for the following:
- roam_bad_rssi_thresh_offset_2g
- enable_5g_band_pref
- 5g_rssi_boost_threshold
- 5g_rssi_boost_factor
- 5g_max_rssi_boost
- 5g_rssi_penalize_threshold
- 5g_rssi_penalize_factor
- 5g_max_rssi_penalize
Change-Id: Idb07ebbe5d6af03de8c46a09365bd74934883719
CRs-Fixed: 2367376
As part of change Ic63e07abdabae9795bba6f76daa954235c894245
("qcacld-3.0: Add hdd tx-rx apis for High Latency systems (6/6)") some
data structures were added to support INI configuation for the
QCA_BAD_PEER_TX_FLOW_CL feature. However the INI support is incomplete
and the associated data structures are not being used, so remove them.
Change-Id: I925b53ef7a44a1252ac1cbca5e97d90d0528879d
CRs-Fixed: 2367375
Previously change I2cdf18c1000d8cc923c80c00bf530b2b0c60563e
("qcacld-3.0: Apply PMO configures") relocated the PMO configuration
items from HDD to the PMO component.
Subsequently change I5046edec1a668e198ed4fcc997a0d24affe342ea
("qcacld-3.0: Add FW offload INI items (1)") inexplicably re-added the
auto_pwr_save_fail_mode and packet_filters_bitmap PMO fields back into
struct hdd_config, so re-remove them.
Change-Id: Iebc9f9046dd537c7be3ede857827b7173ecaf59a
CRs-Fixed: 2367374
The functionality provided by cds_rand_get_bytes() replicates
functionality provided by qdf_get_random_bytes(), so use
qdf_get_random_bytes().
Change-Id: I0b855556c9a9861c7067dfadaf0b8a4cdaf8709e
CRs-Fixed: 2366960
Previously change I6984096719a5abd7fa4f0a4f6641a17d29348332
("qcacld-3.0: Relocate HDD ini items (2)") added macro
CFG_ACTION_OUI_MAX_LEN, but did not add any code which uses it.
All of the Action OUI config items use ACTION_OUI_MAX_STR_LEN,
therefore remove the unused macro.
Change-Id: I8b194ebbbe901a4effef696014551346b3c52645
CRs-Fixed: 2365062
Add the functionality changes to replace the legacy powersave
parameters corresponding to the ini values that were converged.
Remove the legacy powersave ini items.
Change-Id: I1da9af9aac4a02a16dc22a43f7f9d526e196d599
CRs-Fixed: 2364964
Add basic infra to move the following Powersave related
ini to MLME component:
CFG_ENABLE_IMPS CFG_ENABLE_PS
CFG_AUTO_PS_ENABLE_TIMER CFG_ICMP_DISABLE_PS
CFG_BMPS_MINIMUM_LI CFG_BMPS_MAXIMUM_LI
CFG_DTIM_SELECTION_DIVERSITY
This change brings in mlme_init changes, mlme_public_struct.h changes
and cfg_mlme file changes for power save parameters.
Also remove the ini CFG_ICMP_DISABLE_PS_NAME as it is not used.
Change-Id: Ifd74d276b12acc8cd9740c25ee3ca261ed7d0143
CRs-Fixed: 2356897
The Driver Synchronization Core (DSC) is a set of synchronization
primitives for use by the driver's orchestration layer. It provides APIs
for ensuring safe state transitions (including bring up and tear down)
of major driver objects: a single driver, associated psocs, and their
associated vdevs.
Add APIs in HDD for starting and stopping vdev-level operations. These
APIs also provide a register/unregister capability to atomically enable
and disable operation processing for a particular vdev.
Change-Id: I8bfb7a9bc6c16d219eb74eeeb98591fe4fd7984a
CRs-Fixed: 2365189
WLAN Latency Manager support is one of the capabilities that is sent
along with the service bits by firmware. Currently, driver is not
exposing this feature to the user space.
Create and add support for a feature flag to expose this feature to the
userspace.
Change-Id: Ica8213bdaeb32c7be01b6a71a7d8b7a32dc8611b
CRs-Fixed: 2363704
After gerrit#2436786(which the Change-ID is
Ie64a05d795660d557d928cb9b874fa5e702f4f55), vdev in monitor mode
is removed from vdev list of pdev. So it is needed to use the new
cdp api, which is cdp_get_mon_vdev_from_pdev instead of
cdp_get_vdev_from_vdev_id in monitor mode to register vdev.
CRs-Fixed: 2350720
Change-Id: Idd36cdb09666783db2042f77708be4dcc6b9d82b
Currently MAC addresses are generated by driver only.
MAC addresses are queried from platform driver or wlan_mac.bin.
If platform driver gives mac addresses, driver uses it, else it
will use wlan_mac.bin to update MAC addresses. If wlan_mac.bin also
don't have MAC addresses then random MAC addresses are generated
using the HW address or using device serial number.
Add an ini support to enable MAC provisioning. If MAC provisioning
is enabled, ensure that platform driver provides atleast 2 provisioned
MAC addresses. Query the derived addresses also from platform driver.
Generate the remaining random MAC addresses.
Change-Id: Ib943f9de70a78ba5d5e87d81c76b20341893f8e9
CRs-Fixed: 2153836
Add action_oui ini gActionOUIDisableAggressiveTX to identify peers for
which some of aggressive TX features are to be disabled in firmware,
when DUT is operating in softap mode.
Aggressive TX features disabled are SIFS bursting, assist and support of
more than 32 frames in AMPDU.
Change-Id: I89fb6d40be5110b0331e84ed3239cd997ce0c899
CRs-Fixed: 2364888
Update qcacld driver to use converged CFG component for thermal
mitigation throttle offload feature config params. Also cleanup
hdd ini config based redundant entries.
Change-Id: I9c94d1cd7bf9f630ed92ebe0f9f6d6233a216ee5
CRs-fixed: 2358492
Currently ipa enable config is not updated to dp as a result
dp ipa configuration is skipped even if ipa is enabled from ini.
Update the ipa enable config to dp config parameters.
Change-Id: I6602f2c9d3ac0a4470f18460b0c1057fab4147ca
CRs-Fixed: 2365811
TDLS component related files moved from hostcmn to CLD, this change
adds initial functions, enables TDLS in Kbuild.
Change-Id: Ie5b93f4785c4a973a139dff9e58460fd7ee35e35
CRs-Fixed: 2361589
Cleanup Scan active and passive concurrent time CFG/INI
references from legacy code.
Concurrent active and passive min time component is never used,
so remove it.
Change-Id: Idca5285d58bea659a1a481c1f33827608377ab98
CRs-Fixed: 2363138
Policy mgr component related files moved from hostcmn to CLD, this
change add its initializion functions to CLD framework, change Kbuild
to enable it.
Change-Id: I0a87d93b9cf639aa66a10f9ae55ef8cb1dfbb80e
CRs-Fixed: 2361570
Enable the unit test cases for qdf_types, recently added in
I7536a973141a6311662390e42da749f48239bef8.
Change-Id: I4264696d61443acf1bd0993f91de06119471b25f
CRs-Fixed: 2359296
P2P component related files moved from hostcmn to CLD, this change
adds initial functions, enables P2P in Kbuild.
Change-Id: I04102a5f3e59ded13ada15b1b417ae81c7a10e90
CRs-Fixed: 2361500
Implementation of Host driver support to collect per Vdev Beacon
reception Stats from firmware and display the stats in sysfs.
"adb shell cat /sys/class/net/wlan0/beacon_stats"
vdev id: 0
Total Beacon Count: 255
Total Beacon Miss Count: 21
Beacon Miss Bit map [0x800] [0x10000000] [0x22000400] [0x100]
[0x84000000] [0x4030002] [0x5034000] [0x28084]
Change-Id: Iadd31042320f7815a6a6f4733f5393dba93b5b3e
CRs-Fixed: 2360913
Previously change I7f39ed0680919c6a383d9b8bae5864f979b6948c
("qcacld-3.0: Refactor more dfs cfg items") removed support for
gDisableDfsJapanW53. However some remants of that support were left
behind, so remove them.
Change-Id: Ic0ec3411621c87a66a2d2055ceeebc2ed027aa39
CRs-Fixed: 2364103