Make changes to the legacy code to support the
new SET KEY converged infrastructure.
Change-Id: Ic5359e3a9035ac5f2a937a9a1013fa92764cda9d
CRs-Fixed: 2358795
Change I097c67da517e86b4d44901a01b0fe65e1a53b0a9 ("qcacld-3.0:
Cleanup SME APIs") removed all references to typedef
tCsrUpdateConfigParam. Since the typedef is obsolete, remove it.
Change-Id: Idd33f42930c181d1c79c2cdf72adde0a4af2e9fa
CRs-Fixed: 2375517
Change I8ba344ce5593df44bd15527e2ff68e872b6d23b8 ("qcacld-3.0: TDLS:
remove legacy core functions") removed the last references to typedef
tCsrStaParams. Since the typedef is obsolete, remove it.
Change-Id: I63442b1c2f0033c50ab94d4dcf4288eae5fb4d9d
CRs-Fixed: 2375515
The roamOffloadSynchParams field in struct csr_roam_session
is unused, so remove it, along with the underlying struct
csr_roam_offload_synch_params.
Change-Id: I7a1c7bad6090404fde9a97ce0ca3a3b36cb8299a
CRs-Fixed: 2375514
The uRTSThresh and uDeferThresh fields in struct bss_config_param are
obsolete, so remove them.
Change-Id: I79144e36d661fac7136fbb7b941b7772addf7f25
CRs-Fixed: 2375513
The parameter identifiers used in the implementation of
csr_validate_mcc_beacon_interval() differ from the ones used in the
prototype. Since this can be confusing for both humans and code
analysis tools, harmonize on the parameters used in the
implementation. In addition, relocate the documentation so that it is
the interface that is documented and not the implementation.
Change-Id: I817c836fe07a8add1e3588d9b5eeded027ee6f26
CRs-Fixed: 2375512
Change I71de90d5fb88462e52148a434d43ea80c41cfe36 ("qcacld-3.0: Move
Channel convert and frame indication logic to lim_utils.c") removed
the implementation of p2p_process_remain_on_channel_cmd() but left
behind the prototype. Since the prototype is obsolete, remove it.
Change-Id: I34caafa9cc2731f3a21e0200e520118a10740d3b
CRs-Fixed: 2375511
Change Ibea328196a9453ebaae887aa4068e78c47296762 ("qcacld-3.0:
Scan cleanup in lim and csr") removed the implementation of
csr_process_scan_command() but left the prototype. Since the
prototype is obsolete, remove it.
Change-Id: I937ef951045be638fccce8902fbaed510350f029
CRs-Fixed: 2375510
Change Ibea328196a9453ebaae887aa4068e78c47296762 ("qcacld-3.0:
Scan cleanup in lim and csr") removed the last references to
struct tag_scanreq_param. Since it is now obsolete, remove it.
Change-Id: I3c4d929696a8e70b14c3a0a7f706b5665a90532e
CRs-Fixed: 2375435
Change Ie891eddad2b536e43f5f933c8683d41b096bf578 ("qcacld-3.0: Remove
obsolete code in SME QOS module") removed the only references to
typedef uapsd_start_indication_cb. Since it is obsolete, remove it.
Change-Id: I940608cf59b4f9f5f68cffb68b9ee45606461ded
CRs-Fixed: 2374843
Change Ia44acd9a3e31bf0d1098f7d423f0c28a2b7fe5fa ("qcacld-3.0: Cleanup
WMA and SME code related to DISA") removed the SME DISA code, but it
left behind the encrypt_decrypt_cb and encrypt_decrypt_context fields
in tSmeStruct. Since these are now obsolete, remove them, along with
their underlying type definitions.
Change-Id: I7bf5d737b89cc9604310b7c18c510f42f73ec971
CRs-Fixed: 2374842
Function csr_roamGetConcurrencyConnectStatusForBmps() no longer
exists, but the prototype is still present. Since it is obsolete,
remove it.
Change-Id: I6e1f0206957a828a1041659e7d5f3ac9e97dc843
CRs-Fixed: 2374840
Function sme_ConfigureAppsCpuWakeupState() no longer exists, but the
prototype is still present. Since it is obsolete, remove it.
Change-Id: I91c26c2e3ec67c61ff55efbf24b2716e3ff35675
CRs-Fixed: 2374839
Function csr_get_phy_mode_from_bssDesc() no longer exists, but the
prototype is still present. Since it is obsolete, remove it.
Change-Id: Ib5a37e0468d3f6f2f5ed862c99d508aadb3afda0
CRs-Fixed: 2374838
The following channel-related fields in struct csr_roamstruct are
unused, so remove them:
- baseChannels
- channelList24
- channelList5G
- numChannelsEeprom
Change-Id: Ia44e386496e36ba15bcb1c39c6190d0331603903
CRs-Fixed: 2374836
Change I7994a9038d5bd094ce23bcd525ef8f5282974bfc ("qcacld-3.0: Apply
second part of LFR INIs changes") removed the logic that utilized the
csr_hi_rssi_scan_id enumerations. Since these are now unused, remove
the definition.
Change-Id: Ia72aabdfa672c8012f952967c7f67b1bc8024514
CRs-Fixed: 2374835
Add dot11mode related cfg items in mlme cfg, and replace
old WNI dot11 modes with new MLME DOT11 mode enums
Change-Id: I6e866959f440ae781432c8aaa724b229c0874856
CRs-Fixed: 2362540
lim.dfschannelList.timeStamp is a array of
SIR_MAX_24G_5G_CHANNEL_RANGE(166). In some countries channel greater
than 165 are allowed and thus if channel is greater than 165 driver
access out of bound memory which lead to corruption of
lim.sme_msg_callback.
lim.dfschannelList.timeStamp is used to convert DFS channels to
active, which is used for host handled scan to decide if active
scan can be done on DFS channel. Scan now been handled in firmware
this logic is unused and can be removed.
Change-Id: Ib301fa70a6b7ed99f3ecacbf344dd9e821079149
CRs-Fixed: 2374977
Currently power save enable request user command is not
processed if the station is not in connected state and the
configuration is not saved hence station do not enter into
power save mode until the user command is issued after
connection.
Save the power save user configuration setting if the station
is not connected and start the auto power save timer for one
second timeout value after the station is connected to enable
the power save.
Change-Id: I6e17a8e989ca731ca008dcb46ca79c3a181ddff0
CRs-Fixed: 2371045
Each cmd in serialization list holds a vdev ref by
I8d573ff5a25e6dff928b2708e51ad7b97e292277. When vdev is
destroyed physically, it means vdev ref count is 0, all
serialization cmds of this vdev are released, so no need
to registed purge calback.
Change-Id: Iea75707c88154e1e3e87369285b82d1288523e22
CRs-Fixed: 2373677
As part of ini convergence, enabled_11d and enabled_11h inis are
moved to converged framework but these inis are not removed from
legacy initialization path which is overwritting these values
to constant values and thus these inis are not taking effect.
Morever in the converged code also these inis are getting
initialized with default values instead of the values given
from ini file.
To address this issue, remove the legacy initialization of these
inis and in the converged ini path initialize these values with
the values configured in the ini files.
Change-id: I3d02c0d543fd561f1fd948b5c2850a509b1104e7
CRs-fixed: 2371528
In specific scan result callback, before issue connect, check
whether need HW mode change. If HW mode change is unneeded or
return FAILED, need free roam profile in scan info after issue
connect.
Change-Id: I81b37babcbdf474a3cfa58edb8c21dbcbd467d6f
CRs-Fixed: 2373157
In scan for ssid if scan req allocation fails in csr_scan_for_ssid,
status is success and thus the memories are not freed for
scan_info.profile results in memleak.
Fix is to free mem for scan_info.profile in case if scan req allocation
fails in csr_scan_for_ssid.
Change-Id: I45ac2093bdd6d2d17b353f805a157dcea80a2623
CRs-Fixed: 2372803
Add two new WCNSS_qcom.ini values:
"roam_score_delta" - Factor by which the new roaming candidate
ap score should be greater than the score of the current
connected AP.
"roam_score_deltabitmap" - Roam triggers for which
roam_score_delta needs to be applied on the roam score of the
candidate AP.
Populate these two values to wlan_mlme_scoring_cfg from cfg
component in mlme_init_scoring_cfg. The values are sent to
firmware over the WMI TLV WMI_ROAM_AP_PROFILE in the below code
flow:
csr_update_score_params()->__lim_process_roam_scan_offload_req()
->wma_process_roaming_config()->wma_roam_scan_offload_ap_profile
Change-Id: I64f2a2328e485418547dae937c657f85225f1457
CRs-Fixed: 2367910
Add the following new WCNSS_qcom.ini value:
"prefer_roam_score_for_candidate_selection" - choose to sort the
candidates on roam score or preferred AP list send in the BTM
request frame by AP.
When this ini is set, host driver will
modify btm_offload_config bit 7 which will be read by firmware
to get this ini value.
“roam_candidate_validity_timer” - roam cache entries validity
timer. The candidates in the roam cache are valid only for this
time value. This value is sent to firmware over the wmi command
on the structure wmi_roam_offload_tlv_param
"btm_disassoc_timer_threshold" - Disassociation timer threshold
to wait after which the full scan for roaming can be started
after the AP has sent the disassoc imminent
Change-Id: I3ba5ba2182b1b6d722d9c315757332a1b3e62521
CRs-Fixed: 2369018
Add new ini item "bss_load_sample_time" to send the monitor
time window for which the beacons are to be sampled to collect
the bss load information.
Also add changes to send bss load trigger parameters only during
RSO start during initial connection
Change-Id: I61d1f3745b56199838fc886f1ed3a05786653501
CRs-Fixed: 2372147
When firmware receives BTM request with disassoc imminent set,
the firmware should blacklist the AP and should not roam to it
for disassoc timer duration sent in the btm frame. The new wmi
event WMI_ROAM_BLACKLIST_EVENTID received from the firmware
carries the bssid to be blacklisted.
Handle this wmi event WMI_ROAM_BLACKLIST_EVENTID and update the
mac_ctx->roam.rssi_disallow_bssid with the bssid entries
received from firmware.
Change-Id: Ib41bcb91f123ce24b7d28407468e4597af7b5e1a
CRs-Fixed: 2369078
Introduce the following new WCNSS_qcom.ini values:
"enable_bss_load_roam_trigger"
"bss_load_threshold"
Send these values over the new wmi command,
WMI_ROAM_BSS_LOAD_CONFIG_CMDID if "enable_bss_load_roam_trigger"
is set to true.
This wmi command will be sent to firmware as part of the RSO
start or update config.
Change-Id: Ib2e21904bc7b8d87e5f51824d2694b90a3ac53f2
CRs-Fixed: 2367770
The driver currently defines two different data structures to hold
a TSpec IE field:
- tSirMacTspecIE
- struct mac_tspec_ie
In this case having two different structures to provide the same
functionality is pointless. Furthermore, due to the way in which these
structures are used, there is an implicit requirement that they be
exactly identical. This approach is very fragile. To align with the
converged software architecture and to improve code maintainability
remove the legacy typedef and exclusively use the unified WMI
structure.
Change-Id: I2e9da1d72dae3c4b0baa13306ee7ec127895a4f2
CRs-Fixed: 2371911
The driver currently defines two different data structures to hold
a TS Info field:
- tSirMacTSInfo
- struct mac_ts_info
In this case having two different structures to provide the same
functionality is pointless. Furthermore, due to the way in which these
structures are used, there is an implicit requirement that they be
exactly identical. This approach is very fragile. To align with the
converged software architecture and to improve code maintainability
remove the legacy typedef and exclusively use the unified WMI
structure.
Change-Id: I95bcb4364ee7e3108137c8ceeedf05c7a53bc393
CRs-Fixed: 2371910
Add host support for db2dbm RSSI changes. Firmware
indicates this capability when underlying hardware
has RSSI reporting feature. Based on this capability
host will know if firmware sends SNR or RSSI. If no
capablity is present then host will convert SNR to
rssi using a fixed offset of -96. If capability is
present host will directly use the rssi as it is.
Change-Id: I9058f16c6280d466feb96cf88a8a0d8cd7b02032
CRs-Fixed: 2364023
The driver currently defines three different data structures to hold
mobility domain information:
- tSirMobilityDomainInfo
- tCsrMobilityDomainInfo
- struct mobility_domain_info
To align with the converged software architecture remove the two
legacy typedefs and exclusively use the unified WMI structure.
Change-Id: I317b90e47c3db8b74a76c297f6bc42301fa2f80e
CRs-Fixed: 2369476
Replace legacy isRoamOffloadEnabled from csr_config with
converged flag lfr3_roaming_offload.
Fix CamelCase issues for roam offload part.
Change-Id: I89ceda876d5549e9b0959e7e25e317c9667594b5
CRs-Fixed: 2367873
When STA connect and target AP isn't in scan cache, specific
scan for AP ssid will happen, and roam profile is saved in
scan info.
When scan complete, in registered csr scan callback, if connect
need HW mode change, HW mode change is sent to F/W, and roam
profile in scan info is freed at once.
In HW mode change response handler, if roam profile in scan info
is found to be freed, failed to start connect.
Fix:
Make sure roam profile not freed before issue connect.
In specific scan result callback, before issue connect, check
whether need HW mode change.
1. If HW mode change is unneeded or return FAILED, free roam
profile in scan info.
2. If HW mode change return SUCCESS, when cmd is finished or
cancelled, in csr_free_cmd_memory, free roam profile when
cmd is e_sme_command_set_hw_mode with reason
POLICY_MGR_UPDATE_REASON_HIDDEN_STA.
Change-Id: I3f87996de4142baea33dd0f56cb2a892f0387336
CRs-Fixed: 2369154
Change I1d45de261c50f1835379a9cc1df4631f3e32f459 ("qcacld-3.0: Purge
all serialization commands on csr stop") removed the only client of
csr_purge_vdev_all_ser_cmd_list(). Since this function is now unused,
remove it.
Change-Id: I62ff513aa817d9b7fd4dcec156d53c02a1de40e2
CRs-Fixed: 2371198
Change I913b6e769f282a0f5a0ddb40e54d294ae07deb55 ("qcacld-3.0: Remove
unused concurrency ini parameters") removed the last client of
csr_is_sta_session_connected(). Since this function is unused, remove
it.
Change-Id: I6c14227fb1364b37dd570cd658aedb0b5b10b341
CRs-Fixed: 2371197
Change Id39629e33e87ffe6ed58f375609a55e324618693 ("qcacld-3.0: Apply
second part of LFR INIs changes in HDD layer") removed the last client
of sme_set_neighbor_scan_min_period()"). Since this function is
unused, remove it.
Change-Id: I305b9d78582b5e633079daeb864da703428314d8
CRs-Fixed: 2371192
Change Idf75957707c3799add0c59fdd532fe0c24d27117 ("qcacld-3.0: Remove
obsolete STA support for SIOCSIWESSID") removed the only client of
sme_set_dhcp_till_power_active_flag(). Since this function is now
unused, remove it.
Change-Id: I161122772fbc6e588384ac10382885cafdadbc3e
CRs-Fixed: 2371191