Replace channel ID(rx_channel) with channel frequency(
rx_freq) in struct bss_description.
Remove a few camel cases in function
lim_collect_bss_description.
Change-Id: Ic6051fa62d2fe0aa10a6d2a3568aeff75daa813f
CRs-Fixed: 2492155
As requirement, it's also needed to print country code in iwpriv
getChannelList under hostapd mode, align the output of getChannelList
in sta/hostapd mode. At the same time, in __iw_get_channel_list(),
the wrqu->data.length should be (the actual channel number+1), not
sizeof(struct channel_list_info), otherwise there would be many
zeros if call iw_get_channel_list() directly.
Change-Id: I1e0fc1a026bf6c3fff2947ab4712a1800214ec0c
CRs-Fixed: 2476458
wma_roam_event_callback can get called in atomic context from
wma_wake_event_piggybacked for reason WMI_ROAM_REASON_HO_FAILED
which lead to acquiring of pm_ctx->qdf_conc_list_lock mutex lock
in atomic context.
To fix this post msg to scheduler thread to call the policy mgr
API in scheduler thread context
Change-Id: I6b75de64a33559b73a7edc73e1100cfb3a1f507d
CRs-Fixed: 2491147
2G active dwell time parameter is not updated as per
requested duration value from 11k supported AP.
Updated 2G active dwell time scan request parameter
with the beacon measurement requested duration.
Change-Id: I93ab71aea3317e21dab4eccce8c698a6fe3a366d
CRs-Fixed: 2487725
Replace channel ID(channelId) with channel frequency(
chan_freq) in struct bss_description.
Add code for chan_freq's value population in the same
struct wherever channelId's value population occures.
Remove a few camel cases detected by checkpatch.
Change-Id: I84d193b67f642df310997865ec6e1b62e3518f98
CRs-Fixed: 2488826
Replace channel ID(currentReqChannel) with channel frequency(
curr_req_chan_freq) in struct pe_session.
Remove a few camel cases captured by checkpatch.
Change-Id: I56b5d411632ae3b7069fcfac843626435c5b27a2
CRs-Fixed: 2488084
If stop_ap is given to driver in case of SSR and other FW down cases,
because of invalid vdev id and validate context, failure
status is given to kernel. In such case beacon interval value
is not reset and that will lead to faliure of
subsequent set beacon commands.
In case of validate context failure, return success to upper layer
so that kernel variables like beacon interval can be cleaned up.
Change-Id: I03748a87ffcf38a260134a54fe5dce8f77f08739
CRs-Fixed: 2472089
In the htt_ipa_uc_get_resource, rx2_rdy_ring is from
pdev->ipa_uc_rx_rsc.rx2_ind_ring, rx2_proc_done_idx is
from pdev->ipa_uc_rx_rsc.rx2_ipa_prc_done_idx, but
rx2_ind_ring & rx2_ipa_prc_done_idx are not used for
WDI 1.0, just only used for WDI 2.0, which initialized in
the htt_rx_ipa_uc_alloc_wdi2_rsc. So as for Rome that use
WDI 1.0, these two variables are not initialized and thus
they are NULL pointers. Therefore this change can fix NULL
pointer deference for WDI 1.0 when CONFIG_IPA_WDI_UNIFIED_API
is defined and meanwhile QCA_WIFI_3_0 used to distinguish WDI 2.0
and WDI 1.0 IPA RX params.
Change-Id: I0378753dcedde4f398885d930a4cbbb2c854c110
CRs-Fixed: 2483879
In cds_sched_find_attach_cpu function, change calls to functions
cpumask_clear, cpumask_set_cpu, and cpumask_setall to instead use the
QDF abstraction of these functions qdf_cpumask_clear,
qdf_cpumask_set_cpu, and qdf_cpumask_setall.
Change-Id: Ibd62e4d0f38ad3b8f2483e6cf40d56fcb70cba10
CRs-Fixed: 2486827
Current band value is updated with new setting and the new band
setting is allowed only if the new band setting value is lower
configuration than the current one else it fails the new band
setting. If user configures band setting to lower value and
if later setting value has higher configuration then the current
band check fails the new setting.
Remove the current band check during new band setting by runtime
user configuration.
Change-Id: I3facf99e567e34de3eb675f29962bf809040244e
CRs-Fixed: 2486679
Some of softap APIs like hdd_softap_register_sta() contain sta_id
validation check against maximum value of HDD_MAX_ADAPTERS before
accessing adapter->sta_info[sta_id].
Since the maximum size of adapter->sta_info[] is WLAN_MAX_STA_COUNT
and less than HDD_MAX_ADAPTERS (used in sta_id index validation)
array out of bounds access is possible.
To fix this, validate sta_id index against maximum value of
WLAN_MAX_STA_COUNT instead of HDD_MAX_ADAPTERS.
Change-Id: I18390a76a3bee852a9d6ca3dde4382fa94387594
CRs-Fixed: 2486518
Update the sap ctx channel list according to acs cfg, and
not to sap_ctx->channel_list as it would get free in ACS
scan callback, but acs cfg list would remain intact.
Change-Id: I845d5cc3d025b0f2605027f517575f0ad70b07dc
CRs-Fixed: 2478162
In case of TSO, same buffer results in multiple tx_desc after
segmentations. To avoid multiple free of skb ref_cnt is used.
Currently ref_cnt is incremented twice for 1st segment and
not incremented for last segment and in case of failure from
ce_send_fast, ref_cnt is decremented twice.
Above logic don't work in case when TSO packet with segment
count is 1 and ce_send_fast failure is observed.
So, Change logic to increment ref_cnt only once for 1st segment
and avoid reducing ref_cnt twice in case of ce_send_fast failure.
Change-Id: Ia85a6a8f905310b210d6f480a004feb2528a31d7
CRs-Fixed: 2469773
This command is used to send OEM data binary blobs
from application/service to firmware.
Change-Id: I0b5d7dd5a030b70e59c8581fb51d99079b38385f
CRs-Fixed: 2477332
Currently, there is no logging for channel switch reason.
Add csa_reason to know the reason for the channel switch.
Change-Id: Iec02d7fa2b1ec51acb97005da220db7de705d7e0
CRs-Fixed: 2483206
In DBS, LFR 2.0 takes more time to complete the roaming sequence
due to DBS config changes through policy manager. If roaming is
in progress and cfg80211 issues disconnect, disconnect handler is
supposed to wait for 4 sec before processing. In some DBS scenarios,
4 sec wait timer can expire and disconnect proceed for clean up
before the roaming sequence can complete, results in race condition.
Thus adding CSR state check before proceeding with LFR issue connect.
Change-Id: I794c6bf3f749bba9c339fd18b5202d50091b73a7
CRs-Fixed: 2481706
When the set key timeout occurs and there is a disconnect
triggered from userspace during the set key timeout, then the
disconnect proceeds to free the roam_profile for the csr
session. And when the set key timeout handler
csr_roam_wait_for_key_time_out_handler() is invoked, it tries
to access the roam profile from csr_roam_link_up()->
csr_neighbor_roam_info_ctx_init(). This results in a race between the
supplicant thread and scheduler thread.
Acquire sme global lock before call to csr_roam_link_up() to avoid
this deadlock.
Change-Id: I1dd0bec7afa191648d064a1935a33d9612bb89bc
CRs-Fixed: 2486186
Driver sends the auto-resume flag to user space in the following two
scenarios in order to specify that the driver will automatically resume
reporting beacon or not:
Scenario 1: In the case of Disconnection
Driver should not set an auto-resume flag
QCA_WLAN_VENDOR_ATTR_BEACON_REPORTING_AUTO_RESUMES in subsequent
QCA_WLAN_VENDOR_BEACON_REPORTING_OP_PAUSE event irrespective of
do_not_resume flag is present in the recent
QCA_WLAN_VENDOR_BEACON_REPORTING_OP_START command.
Scenario 2: In the case of Scan
Driver should send QCA_WLAN_VENDOR_ATTR_BEACON_REPORTING_AUTO_RESUMES in
subsequent QCA_WLAN_VENDOR_BEACON_REPORTING_OP_PAUSE event only if
do_not_resume flag is set in the recent
QCA_WLAN_VENDOR_BEACON_REPORTING_OP_START command.
Currently, there is a possibility to send an auto-resume flag to userspace
in case of disconnection also, which is not as per the expectation of
userspace from the host.
Change-Id: I94cc7dc699b874422d0cf14cd4144c82adb4c2ac
CRs-Fixed: 2485792
This is to Remove CONFIG_MCL in qcacmn code.
Related qcacmn change is
Ie231e966229789bcd8fa69aef1bc20e9b07a88ae.
Change-Id: I7b9500bc5de74be20d404758b43fca590bbf7caa
CRs-Fixed: 2484900
This is to remove CONFIG_MCL from qcacmn code.
Related qcacmn change is
Ia417c90060b20b004b1e5408be654ff392a8113d.
Move cds_is_fatal_event_enabled from
wlan_logging_set_fw_flush_complete to
cds_logging_set_fw_flush_complete.
Change-Id: I709c1f9be40d0b09df512d995a72edd5e7a5c820
CRs-Fixed: 2484843
If p2p GO interface receives the dfs event,
as part of random chan selection logic
driver needs the interface type to query
policy mgr for PCL. To use the new API
utils_dfs_get_vdev_random_channel to support
GO random channel selection.
Change-Id: I098bb84455afc8dbee74f2df07a01499f7d07bd1
CRs-Fixed: 2467803
The SAP channel change can be called in scheduler thread and thus
waiting for hw mode change in scheduler thread will always lead to
timeout and thus channel switch failure.
Fix is to avoid wait and continue channel switch after hw mode
change is completed.
Change-Id: I951fab6c95ff2a84d6a619859295b830685fac4e
CRs-Fixed: 2484147