Fill the pfm info of the TDLS peer before sending the peer assoc
command to FW.
Change-Id: I4e336c345c0fb8f063157b3e3a780efa777f1a74
CRs-Fixed: 2535832
Currently logs for wifi_pos module are not enabled,
because of which it is difficult to debug the issues.
Enable the wifi_pos logs to address above issue.
Change-Id: I777076d5cd0251b7c714bf22fd885e0cabda6ea2
CRs-Fixed: 2547557
Disable 3 port in DBS 1x1 and No-DBS PCL tables
as DBS 1x1+1x1 or NON DBS solutions does not
support 3 port as of now.
Change-Id: I16d9d0b6f09ad599e94c776821e68f1e0fcc362e
CRs-Fixed: 2551510
After STA channel switch, when SAP try to force scc with STA,
race condition issue happens sometimes between mc thread and sap
restart thread, hdd_ctx->roaming_in_progress isn't cleared when
check roaming status in hdd_softap_set_channel_change, so channel
switch failed.
Fix: change order, make sure hdd_set_roaming_in_progress(false)
happens before policy_mgr_check_concurrent_intf_and_restart_sap.
Change-Id: I1146eb665941fe0beb8f6165272f32ac8f7e74f2
CRs-Fixed: 2549571
In lim, gpLimMlmAuthReq is freed in lim_restore_auth_state if
auth failure timeout happens. gpLimMlmAuthReq is dereferenced in
lim_process_auth_retry_timer. When there is a race where
lim_restore_auth_state is called before lim_process_auth_retry_timer,
then null pointer dereference of gpLimMlmAuthReq happens in
lim_process_auth_retry_timer.
Validate gpLimMlmAuthReq against null before accessing it.
Change-Id: Ic1af10172aa98785c84165c4491c8bdc1b3e508f
CRs-Fixed: 2550793
wlan_reg_get_channel_state does not return CHANNEL_STATE_DFS for DFS
channel if this channel is in NOL. Use wlan_reg_chan_has_dfs_attribute
to fix this issue.
With above fix, new issue is exposed. hdd_ctx->sap_dfs_ref_cnt is used
as a flag, If hdd_hostapd_channel_allow_suspend is called after
hdd_hostapd_channel_prevent_suspend, whatever the new channel state is,
if the old channel is going to release dfs lock, then dfs lock is
released. Generally we should handle the old channel then handle the
new channel, so exchange the order of hdd_hostapd_channel_prevent_suspend
and hdd_hostapd_channel_allow_suspend when doing channel switch.
Change-Id: I9bbeeb5ac23f3c2eaf694f64e0fea433dcc34740
CRs-Fixed: 2543642
Current driver configuration is as follow:
1. SME active roam command queue timeout is 30 seconds
2. SAE auth timeout is 5 seconds
3. Max BSS count in roam command (CSR_MAX_BSSID_COUNT) for SAE
authentication is 8
As SAE auth timeout is 5 seconds and SME active command queue timeout
are 30 seconds, so only 6 SAE auth timeouts (30/5 = 6) are enough to
trigger SME active command queue timeout for roam command.
In case of continuous SAE auth time out, Driver will try SAE
connection till 8th candidate. So when driver tries to process SAE
connection for 7th BSSID, device leads to crash as by this time
SAE roam command(connect command) gets removed from SME active roam
command queue.
Fix is to reduce the candidate list to 5 in roam command for SAE
authentication considering SME roam command queue timeout is of 30
seconds.
Change-Id: Ic43f44ef14ea4c3b972635682941a624cdc6dcc7
CRs-Fixed: 2551462
When doing IPA initialization, WLAN driver registers a
notification callback for IPA uC ready. In the callback,
we directly set uc_loaded to true before scheduling a work
task to connect WLAN IPA pipes. However issue is that in
the work handler, uc_loaded is checked and if it is true,
we return without connecting WLAN IPA pipes.
Therefore properly set uc_loaded to true so that WLAN IPA
pipes can be connected correctly.
Change-Id: I27a14e627a1a75836f08dc5dec8c8b1d09725e10
CRs-Fixed: 2537625
WMA_SET_PER_ROAM_CONFIG_CMD is dependent on
FEATURE_WLAN_EXTSCAN macro. By default
FEATURE_WLAN_EXTSCAN is disabled and thus
WMA_SET_PER_ROAM_CONFIG_CMD is not handled
To avoid conditional Handling of WMA_SET_PER_ROAM_CONFIG_CMD,
Move WMA_SET_PER_ROAM_CONFIG_CMD out of flag
FEATURE_WLAN_EXTSCAN.
Change-Id: I4574efa2ccc968ead71a9c6d54845f7bd3057e56
CRs-Fixed: 2549779
If tx_desc is freed as part of ol_tx_download_done_base
then do not free again in ol_tx_download_done_hl_free.
Change-Id: I006603f0fad40c0cfce59b8c14b521705cec7ebc
CRs-Fixed: 2544447
Linux coding style doesn't allow camel case notations. So
rename assocReq to be in compliance.
Change-Id: I82e608da9548ac9413f9ecb025e5b662c9f555be
CRs-Fixed: 2480902
Dump the regulatory channel list with tx power
info. The channel list log can be processed by
script to do validation.
Change-Id: I7b3badd026556c1d805e6f3770fae33838f6ee6e
CRs-Fixed: 2548231
When an attempt of connection failed and followed by a disconnection
initiated from user space, randomly it would take more than 10 seconds
to complete the disconnection due to disconnect_comp_var is not
completed in some race condition and it has to wait till timeout.
To fix this race condition, in hdd_association_completion_handler, also
need to complete disconnect_comp_var for the case when hddDisconInProgress
is true and roam_status is eCSR_ROAM_ASSOCIATION_FAILURE or
eCSR_ROAM_CANCELLED, it will also cover the following scenario besides
the one mentioned above:
Connection is in progress. But the connect command is in pending queue
and is removed from pending queue as part of csr_roam_disconnect.
Change-Id: Ib6a30057469d60efcc905d97b5234ea5a0e097a8
CRs-Fixed: 2547320
Presently upon interface up a message is posted to the scheduler
to create the vdev, which sends the vdev create to the firmware,
for the vdev create there is no response from the firmware host
internally posts a fake message internally for the vdev create
response.
Dont post the vdev create to the scheduler thread but directly
send the vdev create to the firmware in the caller context.
Change-Id: Iafb186b13d948e421d152c3142cb8614fdbbffa6
CRs-Fixed: 2549530
With des_chan->ch_phymode already having the chanmode value,
remove chanmode from from struct wma_txrx_node to use common
des_chan->ch_phymode
Change-Id: Ib34a032b541367305a9fdba998ed6a00073ac9aa
CRs-Fixed: 2550440
CONFIG_WLAN_TX_FLOW_CONTROL_LEGACY may be not set yes, if only
CONFIG_ROME_IF is set pci in external file. Because it is set yes
only when CONFIG_HIF_PCI set yes, however, CONFIG_HIF_PCI set yes
after it. For example, in file default_defconfig, CONFIG_HIF_PCI
set to yes on line 465, however line 311 checking CONFIG_HIF_PCI
to enable CONFIG_WLAN_TX_FLOW_CONTROL_LEGACY. So, line 314 can't
be called, CONFIG_WLAN_TX_FLOW_CONTROL_LEGACY is not set yes.
Change "ifeq ($(CONFIG_HIF_PCI), y)" to "ifeq ($(CONFIG_ROME_IF),pci)"
to avoid it.
Change-Id: Id324cdb99d6ee2d20bc00e698836c3ea4c5e0a05
CRs-Fixed: 2496110
When the ini gReportMaxLinkSpeed is set, it indicates that the rates
provided to the userspace should give the maximum possible rate for the
given connected parameters. But currently in the driver, the max rate
that is being sent to the userspace is dependent on the NSS at which
the tx/rx is being done. The NSS is calculated by taking the union of
the value from assoc req and from the rate table using MCS index/rates
from firmware. The rates fluctuate as per the tx/rx by firmware which
subsequently affects the NSS in the host.
To keep the max rate independent of this changing NSS, decouple the NSS
calculation to contain the value from only the assoc req when reporting
max rate.
Change-Id: I03d10e397fca6853d05b4812a2adeac0110bc517
CRs-Fixed: 2548498
Structure csr_roam_info member 'sae_info' is defined only when
WLAN_FEATURE_SAE is defined.
But function csr_process_roam_auth_offload_callback() call it
without any checking.
Because function csr_process_roam_auth_offload_callback() processes
WPA3 SAE info, so rename it, and move it to macro WLAN_FEATURE_SAE.
Change-Id: If3d5c1e6739fbd7bee24d19fbbab3495a9a6f8f6
CRs-Fixed: 2532693
For 6GHz support and to remove channel number ambiguity use policy
manager APIs updated for frequency in other modules. This change
covers following APIs:
policy_mgr_get_pcl
policy_mgr_update_with_safe_channel_list
policy_mgr_get_valid_chans_from_range
policy_mgr_get_valid_chans
policy_mgr_set_sap_mandatory_channels
policy_mgr_get_pcl_for_existing_conn
policy_mgr_get_mode_specific_conn_info
Change-Id: Ia21829345be2746cd3fc1f2337cfc90abf0c53f4
CRs-fixed: 2550092
The functions hdd_sysfs_create_adapter_root_obj() and
hdd_sysfs_destroy_adapter_root_obj() are declared but not
implemented if CONFIG_WLAN_SYSFS is not defined but
CONFIG_FEATURE_BECN_STATS is defined. Do not enable
CONFIG_FEATURE_BECN_STATS if CONFIG_WLAN_SYSFS is not defined.
Change-Id: Iccf0ea4519416266e43533cfd34c9a3085820bee
CRs-Fixed: 2549288
For 6GHz support and to remove channel number ambiguity use policy
manager APIs updated for frequency in other modules. This change
covers following APIs:
policy_mgr_get_chan_by_session_id
policy_mgr_get_mcc_operating_channel
policy_mgr_check_and_set_hw_mode_for_channel_switch
policy_mgr_is_chan_ok_for_dnbs
policy_mgr_is_safe_channel
policy_mgr_valid_sap_conc_channel_check
policy_mgr_disallow_mcc
policy_mgr_add_sap_mandatory_chan
policy_mgr_remove_sap_mandatory_chan
policy_mgr_is_hwmode_set_for_given_chnl
policy_mgr_is_valid_for_channel_switch
policy_mgr_update_user_config_sap_chan
policy_mgr_is_sap_restart_required_after_sta_disconnect
policy_mgr_is_sta_sap_scc
policy_mgr_nan_sap_scc_on_unsafe_ch_chk
Change-Id: I682f8380d9dc41fc015d73f06b6e055d1d04ef97
CRs-fixed: 2545110
For 6GHz support and to remove channel number ambiguity use policy
manager APIs updated for frequency in other modules. This change
covers following APIs:
policy_mgr_allow_concurrency
policy_mgr_nan_sap_pre_enable_conc_check
policy_mgr_allow_concurrency_csa
policy_mgr_current_connections_update
policy_mgr_incr_connection_count_utfw
policy_mgr_update_connection_info_utfw
policy_mgr_get_channel_from_scan_result
policy_mgr_update_and_wait_for_connection_update
policy_mgr_get_sap_mandatory_channel
policy_mgr_checkn_update_hw_mode_single_mac_mode
Change-Id: I162c2b90a58539194907c5ecd6915eafecc635cc
CRs-fixed: 2545099
For 6GHz support and to remove channel number ambiguity use policy
manager APIs updated for frequency in other modules. This change
covers following APIs:
policy_mgr_is_chnl_in_diff_band
policy_mgr_check_for_session_conc
policy_mgr_handle_conc_multiport
policy_mgr_change_sap_channel_with_csa
policy_mgr_get_channel
policy_mgr_get_nondfs_preferred_channel
Change-Id: I4a6673db3a02b6e8d7fa94ae452338db618e3883
CRs-fixed: 2545099
Remove sta index references in TDLS structures and APIs
and mac address would be used instead to refer the peer.
Change-Id: I861f7ce068f3f545598129b9f3955b84b2a6fbce
CRs-Fixed: 2524512
Remove sta index references in lim since mac address
would be used instead of this index as part of the
sta index cleanup.
Change-Id: Ia7cbb94cf988a04506440ddaca6b1c302e13e852
CRs-Fixed: 2524509
Remove usage of cdp APIs to fetch local id and cleanup
few sta index references in wma and lim.
Change-Id: I32633ef7491b3b91ee55dd813a009c4d8010a3f5
CRs-Fixed: 2524506
The IOCTL command WE_IBSS_GET_PEER_INFO used to fetch the IBSS peer info
is not used by any external entities. Also, as sta_id is being removed,
the implementation of the current ioctl is outdated.
Remove the IOCTL command all together.
Change-Id: Id4dfafb8d42f6c04af46a633df2a1d1e232da5e4
CRs-Fixed: 2532488
Remove sta index in few prints and replace it
with MAC address as part of sta_index cleanup.
Change-Id: I689ede9dc345667f1a054f76bf3d08b236131c13
CRs-Fixed: 2524505
As a part of the sta_id clean up, remove the usage of the sta_id from
struct hdd_connection_info. Instead of the station id, use peer mac
address to interact with the protocol and DP layers.
Change-Id: I60b939c37ff49b50579791f45e3e81ed81b86967
CRs-Fixed: 2524514