The header file ol_if_athvar.h is strange in that it is a qcacld-3.0
file that is included by files in the qca-wifi-host-cmn project. That
model does not conform to the software architecture so there is a plan
to correctly refactor the file. As a preliminary step remove all
include directives that are not actually required by the files that
include this header file.
Change-Id: Ifbb38adba434aa19fade4838e30d39884b6e4615
CRs-Fixed: 2366965
Currently ol_if_athvar.h defines the following:
- struct ol_version
- enum ol_ath_tx_ecodes
- struct ol_ath_stats
None of these are used, so remove them. This leaves behind just a set
of #include directives.
Change-Id: Ie8c2ee1fa1b3c34f37430633c28987651e60434b
CRs-Fixed: 2366964
Header file i_bmi.h utilizes several QDF data structures, but it does
not explicitly include the header files which define them. This must
mean that the data structures are being included as a side-effect of
including an unrelated header file.
In an upcoming change the header file ol_if_athvar.h is being
refactored, and that change somehow interferes with the side-effect
that causes the QDF header files to be included by i_bmi.h. So rather
than rely upon the side-effect, explicitly include the necessary
header files.
Change-Id: Icf7d7e4babb14faa41b2ac18c6181a206da9b858
CRs-Fixed: 2366963
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
Currently in cds_config.h the macro MAX_PMKID_LEN is not used, and the
pmkid field in struct cds_fils_connection_info uses the "magic number"
16, so replace the magic number with the macro.
Change-Id: I11e7f55d43e5cdd3f222f54434a33c94654f2384
CRs-Fixed: 2366959
In i_bmi.h the hif_reg_based_get_target_info() conditional
compilation references SNOC but this is not a macro defined
by the driver. Replace this with the correct macro, HIF_SNOC.
Change-Id: I52969426c58c078b3dd558e825e2a9fb68394536
CRs-Fixed: 2366958
WNI_CFG_WPS_UUID should be refactored and adopted by the mlme
component.
Move the cfg item to cfg_mlme_wps_params.h
Change-Id: I79db155ad16998e9d7a7e20c01efbcba1681d61e
CRs-Fixed: 2366599
Change I2c217891d0ca4b503e7388b3ebe2f787e8325af5 ("qcacld-3.0: Add
firmware download support for sdio bus (Part 5 - HIF SDIO)") added a
prototype for ol_get_fw_files() but did not add an implementation.
Since nothing uses this prototype, remove it.
Change-Id: Ie3b9aee767e14acc425ca7c365d10cbb73682fb5
CRs-Fixed: 2366957
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
Previously change I5828002d2363e01f63b0a643a0c59abd52bc4f19
("qcacld-3.0: NAN datapath cleanup") removed the code that uses
the pe_ndp_event_handler but did not remove the field from the
t_wma_handle structure, so remove it now.
Change-Id: I4b23e55fcdb8178d6a272fd46094af5505b94cc7
CRs-Fixed: 2365061
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
During channel switch if the new channel's phymode is different
than the old channel the host will update its phymode and
send vdev restart to firmware. Once vdev restart resp is received,
host sends new phymode and channel width to the firmware.
If host process beacon with opmode IE while waiting for vdev restart
response, it check if new channel width in bcn is valid for new
phymode and send channel width to firmware. If channel width changed
is greater than allowed value for older phymode, firmware is not able
to handle it.
Fix is to ignore any opmode IE during channel switch. Also ignore
the beacons with CSA/ECSA IE if channel switch detection is
offloaded. The opmode or any other change in beacon will be detected
with the beacons on new channel once AP moves to new channel.
Change-Id: If3bfb555dfa7b63dc997bbdf2fe6a0836bcf17fd
CRs-Fixed: 2361553
wma_remove_bss_peer doesn't need req_msg, as only vdev id is
needed. So refine the function definition of wma_remove_bss_peer.
Remove calls to wma_cleanup_target_req_param() if
wma_remove_bss_peer succeeds, as it posts the req->user_data to
firmware. Add debugs in wma_remove_bss path to get more info.
Change-Id: I0d8f0bd74784f0a4542e8ae6301471804285752d
CRs-Fixed: 2363696
Fix 'for' loop initial declarations are only allowed in C99 or C11 mode
build error at SDX24.le.1.7 platform.
Change-Id: I08cc4ee7558f0b390a8c848828272497f517ef08
CRs-Fixed: 2365266
After gerrit#2436786, 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 in stead of cdp_get_vdev_from_vdev_id
in monitor mode to register vdev.
CRs-Fixed: 2359997
Change-Id: I75cad531e161748a3830104516e44079dee636ec
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
Add an argument to dump only last n dpt records of debug fs
dump_set_dpt_logs file.
Change-Id: I6ce96d1e57db773386e8ebc29436b33b2211a94f
CRs-Fixed: 2362507
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
Modify the max tx power value form 22db to 30db
to cover regulatory power requirements.
Change-Id: Id24ed354ed364037ba0ff5dea9de9810fb255962
CRs-fixed: 2362060
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
The file cds_ieee80211_common.h contains a large number of macros that
are used to describe most fields in IEEE 802.11 frames. Despite that,
currently WMA has an enum ds_mode to represent the Distribution System
Mode settings. In order to avoid unnecessary duplicate definitions
remove enum ds_mode and instead use the cds_ieee80211_common macros.
Change-Id: I0dc722009e063a1eac0da4afbe77f96772c583b2
CRs-Fixed: 2365060
Previously change I750870ccbe84e817954a3ee1a50e2e8daa5ab661
("qcacld-3.0: Remove obsolete P2P Listen Offload from WMA") removed
the only code that used the p2p_lo_in_progress field in struct
wma_txrx_node. Since it is now obsolete, remove it.
Change-Id: I9e9247a578fb07ef8089f2b5eb544e4e6595244a
CRs-Fixed: 2365059
Previously change Iba16643adf1cbd997138c740345e40c00c8e81f6
("qcacld-3.0: Add Suspend and Resume support in PMO") relocated
Suspend/Resume support from WMA to PMO. However that change left
behind in WMA some remnants that are no longer useful such as the
wma_resume_event, so remove them.
Change-Id: Icf35bafd8fdacdbdc71cfb4309a8bd15bfb1a244
CRs-Fixed: 2365057