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
Currently some of the parameter names used in the implementation of
wma_mcs_rate_match() do not match the names used in the prototype.
This can be confusing to both humans and to code analysis tools, so
change the camelCase names used in the implementation to match the
prototype.
Change-Id: I87a85a7f1affa6bcad75f33f2bca6aa67475aa47
CRs-Fixed: 2365056
Previously change Id965dd8ee0fbddfa563335fd2fe225dcd20cd162
("qcacld-3.0: Port modulated dtim and override listen interval")
relocated support for configuring Modulated DTIM and Listen Offload
from WMA to PMO. The associated enumerations in enum GEN_PARAM are now
obsolete, so remove them, along with their default value macros.
Change-Id: Iac88c4b5578c24b6fcaefb935459f6e988892a1a
CRs-Fixed: 2365055
The driver contains a prototype for wma_map_channel() but no
implementation, so remove the prototype.
Change-Id: I1a8794c103ac78df8ef4fd1c181ee60350c88058
CRs-Fixed: 2365054
wma_api.h contains two prototypes for functions that are no longer
a part of the driver, so remove them.
Change-Id: I79c96320a23471e0c21cc04ec1b207cda76db199
CRs-Fixed: 2365053
parser_api.h contains two prototypes for functions that are no longer
a part of the driver, so remove them.
Change-Id: Id4cc9967ba95d624a2910dec564c68c679279b09
CRs-Fixed: 2365052
The driver contains FEATURE_WLAN_BTAMP_UT_RF code that is no longer
supported, so remove it.
Change-Id: Id9ff85b5a7c05e01fe6ceac0e9ce3e6aef6ff964
CRs-Fixed: 2365050
The eNeighborRoamEmptyScanCount enumerations are not used by the
current version of the driver, so remove the typedef.
Change-Id: Iafeef92741a6c7c8dd7b3039738b1828eed2ee60
CRs-Fixed: 2364277
The eNeighborRoamScanMode enumerations are not used by the current
version of the driver, so remove the typedef.
Change-Id: I2846de40e09665d1b39d64656e89d05c2009203e
CRs-Fixed: 2364276
csr_neighbor_roam.h contains two prototypes for functions that are no
longer a part of the driver, so remove them.
Change-Id: I3edc2c0625ba20ac6db15d69275b31a5e93ef734
CRs-Fixed: 2364275
The current version of the driver no longer uses the eWNI_SME_SCAN
message IDs, so remove them.
Change-Id: Ia2717c18606e5e771b5d5880bac6f494689ab802
CRs-Fixed: 2364273
The typedef tSirSmeScanRsp is not used by the current generation of
the driver, so remove it.
Change-Id: Id38ae6fe4b0c92e69c6a3f16db7f22ae13ba2fb7
CRs-Fixed: 2364272
Ongoing CFG componitization removed the enumerations for some
legacy configuration items that are now supported by component
configuration. However some of the changes did not remove the
MIN/MAX/DEF/LEN macros or enumeration macros. For all of the
ones that are now unused, remove them now.
Change-Id: Ib48e10cd09ef6811c9104c0b92f4b8f1665e5a5d
CRs-Fixed: 2364270
Both tEnablePsParams and tDisablePsParams contain unused fields, so
remove them.
Change-Id: I148c065ac5425a7695ef7bf1d54bf7975b1ef10e
CRs-Fixed: 2364269
Currently the prototype and the implementation of wma_tx_packet() use
different identifiers for some of the parameters, which is confusing
to both programmers and to tools. In addition currently the
implementation is documented instead of the interface. Therefore move
the documentation to the header file, and changed the prototype to
match the implementation.
Change-Id: I2c2e36c5b85935c37271336970c6532495c20fa6
CRs-Fixed: 2364268
The original definition of struct wmi_unified_pmk_cache had several
anomalies:
1) It contains an unnecessary tlv_header field. Only the fw-api
structs should contain TLV headers.
2) It contains a mis-named session_id field. Common structures should
use converged terminology, in this case vdev_id
qca-wifi-host-cmn change If4be27111c604c16ea437aa654210cdff28220a7
("qcacmn: Refine struct wmi_unified_pmk_cache (phase 1)") completely
addressed the first issue, and as the first phase of fixing the second
issue it replaced the session_id field with an anonymous union which
contains both the existing session_id field and a new vdev_id field.
Being part of a union these field will overlay each other.
For the current phase replace the reference to session_id with a
reference to vdev_id in sme_set_del_pmkid_cache().
Change-Id: Ief4bcb819cb3c842adb74904f2cb2483476eaeb9
CRs-Fixed: 2363433
QBSS IE uses min length of 4 bytes for version 1 and
min length of 5 bytes for version 2. Min length used
for IE is 5 bytes in driver which can cause WPA IE
parse failure if QBSS IE is 4 bytes resulting in failure
in fetching scan results due to security mismatch and
subsequently connection failure.
Fix is to skip the IE which has length less than the
minimum valid length.
Change-Id: I00fbffad221e2d9ecedcb87c9607ac8abd7c55b1
CRs-Fixed: 2364663
Currently the driver scans for the channels as part of ACS
algorithm, to select the best channel for SAP bringup.
But the active dwell time set in the scan request is Zero,
hence the active probe is not sent to the AP, and the DUT
(SAP in this case), just passively scans the channels for BSS,
which causes latency in SAP bringup.
Fix is to initialize the default active dwell time in case of
ACS scan, and set broadcast probe to true.
Change-Id: If4f001a9b272a7894125d81f2895cfa6f6ca2bc4
CRs-Fixed: 2363789
Currently the driver scans for the bssid if it is not present
in the scan cache, due to expire of scan results.
But the active dwell time set in the scan request is Zero,
hence the active probe is not sent to the AP, and the DUT
(STA in this case), just passively scans the channels for that
BSSID, which causes latency in connection.
Fix is to initialize the default active dwell time in case of
scan for ssid.
Change-Id: I38c8c0335e10544d165c510b59e013e9ee2a5031
CRs-Fixed: 2363980
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 I7faaf646df363a74954defbef103afbb4b72af92
("qcacld-3.0: Add extended IBSS feature on qcacld-3.0") introduced two
different typedefs to serve the same purpose, txFailIndCallback which
is in use, and wma_txFailIndCallback which is unused, so remove the
unused one.
Change-Id: Icc3e016337500e4899d6bc2dc257a61d82f0ec65
CRs-Fixed: 2364267
Previously change I6786ce42d99d6a3f29561c24dea7e3018fb0f3e9
("qcacld-3.0: Refactor formation of wmi scan roaming commands")
removed all of the clients of wma_get_hotlist_entries_per_page(),
so now remove this unused function.
Change-Id: I2a8931a9152b84f589e0b41a7c5138112db22985
CRs-Fixed: 2364106
The definitions in file ol_ctrl_addba_api.h are unused, so remove the
file and remove the #include directive in the one place it appears.
Change-Id: I9056791b1a21dc8c8e113db2d49468e3abafab34
CRs-Fixed: 2364105
The typedef tSap_StationAssocReassocCompleteEvent contains the
following fields that are not being used, so remove them:
- SapAuthType
- beaconLength
- beaconPtr
- assocReqLength
- assocReqPtr
- assocRespLength
- assocRespPtr
Change-Id: I1de03b76b0070ee0b19d3d4672ed75614c013ac7
CRs-Fixed: 2364104
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
The only use of typedef tSap_DfsNolInfo is to define the unused
sapDfsNolInfo field in typedef tSap_Event. Since they serve no purpose
remove both the sapDfsNolInfo field and the tSap_DfsNolInfo typedef.
Change-Id: Ic63288c0ea59b4f26a20d65a3e41503e49efedbd
CRs-Fixed: 2364102
In wma_process_pdev_hw_mode_trans_ind() vdev_mac_entry is used to copy the
pdev_id and vdev_id values from a for loop.
vdev_mac_entry is never checked before if it is allocated and can lead to
null pointer dereference.
Change-Id: I44ea6f5262bf39116af33a4d833a2c77d7963626
CRs-Fixed: 2359250
In monitor mode, pdev->self_peer is not updated before deleting the
peer in ol_txrx_peer_release_ref when peer ref_cnt becomes 0. This
leads the stale peer stored in pdev->self_peer. The pdev->self_peer
is not updated during peer creation due to this stale peer.
Update the pdev->self_peer to NULL when peer ref cnt becomes 0
Change-Id: Id09771a1a7c5a363cf3251af829ac8ff50d38a5b
CRs-Fixed: 2356492
Adds support to enable/disable scan for psoc/vdev with reason,
so that multiple clients can enable/disable the scan at same time.
Scan will remain disabled till all clients enable it back.
Change-Id: I693e223870142f831f8eefa59a9053960886bad6
CRs-Fixed: 2362098
The typedef tSap_StationAssocIndication contains an assoId field that
isn't used, so remove it.
Change-Id: I2a4ba9bd7220cb0cebe891d7085d92e17361ed06
CRs-Fixed: 2364101
The following fields in struct csr_roam_profile are unused, so remove
them:
- nWSCReqIELength
- pWSCReqIE
- fils_connection
Change-Id: I8fcae065b10d5480f2adab77427ef3048448d9a1
CRs-Fixed: 2364100
The sessionID field in tSapCtxList is written but never read, hence it
serves no purpose, so remove it.
Change-Id: I0c7a134dba75be905f85016a3db026132bbfa348
CRs-Fixed: 2364099
A recent set of changes replaced almost all occurrences of typedef
tpAniSirGlobal. The only ones left intact were the ones within the
auto-generated files dot11f.c and dot11f.h. Now to prevent new
instances from being introduced, change the definition.
Change-Id: I31924e45242320fee5d8432b624bb9ba00bf7531
CRs-Fixed: 2364097
Previously Policy Manager refactoring moved the logic for handling
different concurrency scenarios to the qca-wifi-host-cmn project.
Subsequently change I6cb9fe12bee3702556c9b52e7ccb7c69c762d8de
("qcacld-3.0: Remove legacy code for policy manager restructuring")
attempted to remove all of the legacy support. However a few remnants
remain, so remove the remaining support for the following items:
- sap_start_work
- is_sap_restart_required
- is_sta_connection_pending
- sap_update_info_lock
- sta_update_info_lock
Change-Id: I261e69938efddb4389982c77102ec07ed7591d9e
CRs-Fixed: 2363233
The PERE_IP_HDR_ALIGNMENT_WAR feature does not apply to hardware
supported by this driver, and the code would not build correctly
if the feature was enabled, so completely remove the feature.
Change-Id: I4697e798dc57ab7e51c88d40e4d0f9a26a98de6d
CRs-Fixed: 2363232
Almost all of the definitions in txrx.h are obsolete. Rather than
remove the obsolete definitions and leave behind a file containing
only the two definitions that are used, move those useful definitions
to ol_txrx_types.h and completely remove txrx.h.
A side effect of this change is that a couple of unrelated files no
longer build because some of their dependencies were being met as a
side effect by txrx.h including other files. To solve the build issues
explicitly include the necessary header files where they are needed.
Change-Id: Ic3e3b36939e4ab04831d41a1e230bfab3da086a2
CRs-Fixed: 2363231