Commit Graph

5182 Commits

Author SHA1 Message Date
Jeff Johnson
8e9b88529a qcacld-3.0: Remove obsolete bExplicitCfg bitmap
The bExplicitCfg bitmap in struct hdd_config was originally used to
track which INI items had been explicitly configured from the INI
file. But now that the INI processing is distributed this bitmap is no
longer used, so remove it.

Change-Id: I101ffa82b3309209cdc2eea954d1467b68b6138d
CRs-Fixed: 2496393
2019-07-26 21:21:19 -07:00
Varuneshwar Petlozu
dbe255ce1e qcacld-3.0: Stop the psoc idle timer during the con mode change
During con mode change the driver will perform pld idle shutdown
and restart and if the interface change timer is running which
results in duplicate of idle stop queueing.

To resolve this, add psoc idle timer stop during the con mode change.

Change-Id: I7befefd2cb996d6b3e0b4ee92ecb15e615d33e30
CRs-Fixed: 2491208
2019-07-26 17:03:43 -07:00
Jingxiang Ge
ce7c547b92 qcacld-3.0: Replace channel with freq in hdd_connection_info
Replace channel with freq in hdd_connection_info

Change-Id: I0831e9cdc5cf39c7cdd6b35928fac23e4f582539
CRs-Fixed: 2495115
2019-07-26 10:46:38 -07:00
Min Liu
f97d28b552 qcacld-3.0: Fix vdev_id when resetting APF packet filter
In hdd_set_reset_apf_offload, vdev_id is not assigned before
sending reset packet filter command.

Change-Id: If8c9297f19e19eba01b4415144304b9f744a5de9
CRs-Fixed: 2496035
2019-07-25 05:09:13 -07:00
Will Huang
65d6425637 qcacld-3.0: Replace channel ID with frequency (bss_description 3)
Prepare to replace channel id with channel frequency of struct
bss_description, first cleanup reference of channel id of struct
bss_description in wlan_hdd_assoc.c wlan_hdd_cfg80211.c wlan_hdd_main.c
lim_assoc_utils.c lim_ft.c lim_process_sme_req_messages.c
lim_sme_req_utils.c rrm_api.c sme_api.c nan_datapath_api.c sme_rrm.c,
use channel frequency instead.

Change-Id: I980f74d77af97df2b2ade61250d44a606c76a7ef
CRs-Fixed: 2491488
2019-07-25 02:40:44 -07:00
guangde
45e45e7aff qcacld-3.0: update Rx timestamp every time
Host fill netbuf with qtime instead of tsf. In function
"hdd_get_soctime_from_tsf64time", when Host check RX packet
tsf value less than last_target_global_tsf_time, it will
return error. Then, Host will the default value 0 to
upper layer.Sometimes, User will found some packets FW
recvTime is not increasing compared with last packets.
So modify it to calculate qtime from tsf all the time.

Change-Id: Icc53f22b4213fb46ff3bfc3e3df940cb28c632f5
CRs-Fixed: 2485600
2019-07-24 17:09:44 -07:00
guangde
3f5fbbbbe7 qcacld-3.0: Add timestamp RX support in SAP mode
Host need to fill netbuf with qtime instead of tsf.
This function already realized in Change-Id
"Ib19ac1411c4e17624c012f188297c9f2122642d2".
But it only support STATION RX mode. add the similar
action for SAP RX mode.

Change-Id: Idb3f9da5488b19db48e96258ecb4539b5af3c9a6
CRs-Fixed: 2483566
2019-07-22 15:58:35 -07:00
Rakshith Suresh Patkar
db53c8f047 qcacld-3.0: Add new HDD callback for dp RX MIC error
As per existing design, dp rx mic error information is
posted to HDD via SME. HDD inturn indicates the mic error
to supplicant.

Define new HDD callback hdd_rx_mic_error_ind for
rx mic error, registered through the CDP API
cdp_register_rx_mic_error_ind_handler. This will
enable datapath to directly post mic error info to HDD,
eliminating processing by corestack.

Change-Id: I6561dc5e66e7059c249c1eeeabdbf754989221d2
CRs-Fixed: 2488455
2019-07-22 11:36:15 -07:00
gaurank kathpalia
af483f51a8 qcacld-3.0: Update the acs mode in case of concurrency
Issue:-
Sap does not restart when unsafe
channel event comes, due to the acs mode
flag not set though acs happened.

Scenario:-
Turn on STA on channel number 1.
Turn on SAP on 2.4ghz band.
Make the channel number unsafe.

Observation:-
Sap fails to restart.

Expectation:
Sap should restart on some other channel.

Fix:-
Set the flag before the driver returns the
best channel as the STA channel.

Change-Id: I2cf2f5d3096da04f3c43969b7405b81c743fe2e2
CRs-Fixed: 2492087
2019-07-22 09:17:48 -07:00
Min Liu
165114392f qcacld-3.0: Remove WLAN_UMAC_CONVERGENCE
Remove the macro WLAN_UMAC_CONVERGENCE and unused code.

Change-Id: Ife34a496f01e16a9e4a82b92457caaac924f9cdc
CRs-Fixed: 2491285
2019-07-22 09:17:44 -07:00
Rajeev Kumar Sirasanagandla
50b2c10276 qcacld-3.0: Fix invalid access in vendor cmd handler
While processing vendor command: GET_PREFERRED_FREQ_LIST respective
handler __wlan_hdd_cfg80211_get_preferred_freq_list() do not validate
pcl_len received from policy_mgr_get_pcl() which can be zero when
current regulatory domain is ETSI13 based, gindoor_channel_support=0
and etsi13_srd_chan_in_master_mode=0.

If pcl_len is zero then invalid index is computed in
wlan_hdd_populate_weigh_pcl() when trying to access
chan_weights->weight_list[pcl_len - 1].

To fix this, add zero length check for pcl_len before accessing
weight_list[plc_len - 1].

Change-Id: Ie8bf52fe289634efc104ca674d70fcd1beb6c304
CRs-Fixed: 2492630
2019-07-22 09:17:39 -07:00
Alan Chen
5b19c21c72 qcacld-3.0: Prevent suspend to allow for wifi to turn off
When wifi is turned off, system suspend might occur during the timer delay,
which would stop the timer and prevent wifi from being turned off, leading
to battery drain. To fix this issue, prevent the suspend and turn off the
wifi before allowing suspend to happen.

Change-Id: Id4fbb13f3ab350b4e2545f65e38d9baaba5ed7ab
CRs-Fixed: 2493487
2019-07-19 21:49:47 -07:00
Ashish Kumar Dhanotiya
3d8b0ae632 qcacld-3.0: Unlink hidden bss entry from kernel
Kernel maintains a list of bss and it adds/updates the bss
entries whenever driver informs it. When driver receives
beacon or probe response from any ap it informs kernel to
update the bss list and whenever it disconnects with the
AP driver unlink the bss in the kernel.

If the AP is hidden, when driver gets beacon from this
hidden AP it informs the kernel to update the bss list.
kernel add this entry to it's bss list with NULL SSID.
Now when driver receives probe response from this hidden
AP it again informs the kernel to update the bss list,
as this is probe response and ssid is not hidden,
kernel treats this entry as new entry and adds it to
its bss list and links this entry to the older hidden
AP entry (But still these are two entries for hidden AP).

When driver gets disconnect from the AP it unlink the
bss entry corresponding to this AP from kernel's bss
list, but since there are two entries for the same AP
as the AP is a hidden AP, driver should clear hidden AP
entry (Which was added as part of beacon) which is
not happening currently.
Now when AP moves from hidden to broadcasting SSID
in it's beacon, kernel drops this beacon entry as its
confusing because there is already a beacon entry with
hidden bss for this AP. During connection driver tries
to update the entry in the kernel and it fails as kernel
drops the beacon resulting into the connection failure.

To resolve this issue, whenever driver unlink the bss
entries from the kernel bss list unlink the hidden bss
entries also from the kernel's bss list.

Change-Id: I03a8517878b3db769bf28a157579179e1dd762e2
CRs-Fixed: 2488887
2019-07-19 00:54:00 -07:00
Alan Chen
e523cd9f23 qcacld-3.0: Add lock/unlock for idle restart to prevent suspend
During idle restart, system suspend is happening, which is leading
to timeout because idle restart task is frozen during system suspend.
To avoid the timeout, add a wakelock for idle restart to prevent
system suspend.

Change-Id: Iffb6151452680df8cb4fb98e8646112e780881f8
CRs-Fixed: 2490321
2019-07-18 16:45:25 -07:00
Mahesh Kumar Kalikot Veetil
59a9a78079 qcacld-3.0: Enable power saving for FTM mode
Currently ASPM is not enabled for FTM mode. Enable it to test low power
mode in FTM.

CRS-Fixed: 2491207
Change-Id: I997225d33c94ed870dda2354bac256d9d1ca855d
2019-07-18 16:45:21 -07:00
Mohit Khanna
6dbf9c8301 qcacld-3.0: Add BW level PLD_BUS_WIDTH_VERY_HIGH
Add additional bandwidth level for "very high" bandwidth. As per the
default configuration if the total number of tx/rx packets exceeds
bus_bw_very_high_threshold, the bus bandwidth requirement is designated
as PLD_BUS_WIDTH_VERY_HIGH and PLD API is called with this value.

Default value of 7000 is chosen for bus_bw_very_high_threshold, which
amounts to 820Mbps of throughput considering a 1500 byte packet and
100ms bandwidth timer interval.

Change-Id: I3bd904429a02ec4935ba12da7c2cfd37eec738ed
CRs-Fixed: 2489362
2019-07-18 09:16:10 -07:00
Qun Zhang
a055e9cb3b qcacld-3.0: Align the output of getChannelList under sta/hostapd mode
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
2019-07-18 01:07:11 -07:00
wadesong
91a2c1bd5c qcacld-3.0: Replace channel ID with channel frequency
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
2019-07-17 07:13:40 -07:00
Bala Venkatesh
bfb6f202bf qcacld-3.0: Return success status for stop_ap command in case of SSR
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
2019-07-17 01:00:33 -07:00
Kiran Kumar Lokere
d34e41fd41 qcacld-3.0: Remove current band check during new band setting
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
2019-07-16 17:14:49 -07:00
Rajeev Kumar Sirasanagandla
902680eec5 qcacld-3.0: Fix invalid check in softap API
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
2019-07-16 15:53:37 -07:00
Paul Zhang
da2970b777 qcacld-3.0: Add OEM DATA vendor command support
This command is used to send OEM data binary blobs
from application/service to firmware.

Change-Id: I0b5d7dd5a030b70e59c8581fb51d99079b38385f
CRs-Fixed: 2477332
2019-07-11 00:52:04 -07:00
CNSS_WLAN Service
531e1b7402 Merge "qcacld-3.0: Validate wdev before accessing netdev" into wlan-cld3.driver.lnx.2.0 2019-07-10 20:48:40 -07:00
Bala Venkatesh
8b9bbde04b qcacld-3.0: Add SAP csa reason
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
2019-07-10 10:26:38 -07:00
hangtian
8215fde26b qcacld-3.0: Validate wdev before accessing netdev
Validate wdev before accessing netdev in __wlan_hdd_cfg80211_set_txpower.
Avoid invalid memory access.

Change-Id: I48af4e458ef7571cfdf9f157cdb8c3427fff4fc7
CRs-Fixed: 2487005
2019-07-10 12:30:23 +08:00
Abhinav Kumar
5bb0a54fdd qcacld-3.0: Correct logic to send an auto-resume indication to userspace
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
2019-07-09 18:50:56 -07:00
Mahesh Kumar Kalikot Veetil
64a886965f qcacld-3.0: Add idle state to bus bw logic
Bus bandwidth logic uses PLD_BUS_WIDTH_NONE to vote if the packet
threshold is less than bus_bw_low_threshold. The same vote is used for
system suspend too. Add a new state for bus bandwidth logic to vote for
idle state.

Change-Id: I62ca6fff84a01083001db360f56344a05fb955db
CRs-Fixed: 2484003
2019-07-09 17:26:32 -07:00
Paul Zhang
3d7c0e6d33 qcacld-3.0: refine interface wlan_hdd_cfg80211_get_txpower
Currently wlan_hdd_cfg80211_get_txpower is limited for STA
device. This causes issue when SAP device wants to get the
tx power.

Change-Id: Iadf34e6c74ba013247d925bcd4f05e1aa1a971c9
CRs-Fixed: 2481680
2019-07-08 10:06:12 -07:00
Yu Ouyang
486fac8fed qcacld-3.0: Send user space about FW CRASHED indication
In function ol_target_failure(), if enable_self_recovery is true,
fw_indication_work_handler() will be called. Ramdump collection
will not be executed. But for no CNSS module platform, recovery flag
is neither cleaned, no any FW indication is sent to user space.
Even enable_self_recovery is false, no FW crashed indication sent
to user space.

So, call function ol_check_clean_recovery_flag() to clean recovery
flag, and send FW CRASHED indication to user space by function
ol_target_failure().

Change-Id: I44396caf4972dc267d60757c479e4681f8885de5
CRs-Fixed: 2482596
2019-07-05 23:07:30 -07:00
Srinivas Dasari
d4e8725828 qcacld-3.0: Send disconnect IEs received in deauth/disassoc to kernel
AP may send IEs in deauth/disassoc frames as part of disconnection.
Extract the same and forward to kernel through
cfg80211_disconnected().

Change-Id: I4ef339dcd1ecff64d6bed1de35621ecce5d8030a
CRs-Fixed: 2481912
2019-07-05 17:28:02 -07:00
Srinivas Dasari
37e3731d4a qcacld-3.0: Get disconnect IEs and cache in vdev mgr object
Application sends disconnect IEs to driver through vendor command
SET_WIFI_CONFIGURATION by embeding in the attribute
QCA_WLAN_VENDOR_ATTR_DISCONNECT_IES. Extract the same and validate
to make sure it's not more than maximum IE length that can be
accomodated in deauth/disassoc frame. Cache the extracted IEs
in mlme vdev object.

Change-Id: I6c95aa1d4d8ef7d8ed3ad5be8832ef1f45c26a2f
CRs-Fixed: 2481908
2019-07-05 17:27:52 -07:00
Ashish Kumar Dhanotiya
eadb28bbdc qcacld-3.0: Add support for updated FW version
FW version information which driver used to get
is updated to add release branch version also.
To give that information to userspace, parse the
release branch information also from the extended
FW version.

Change-ID: I45d06bac5ef0e57d1db8dbfe7ff6a0d7e2144b88
CRs-Fixed: 2482835
2019-07-05 10:26:24 -07:00
Ashish Kumar Dhanotiya
897a46ba59 qcacld-3.0: Remove legacy implementation of get station api
Driver has a stats infrastructure and all the stats related
commands are using this infrastructure.

Remove legacy implementation for get station stats api
as part of cleanup.

Change-Id: Iadc7fceccec32e7a27c29872fb13c03f79208965
CRs-Fixed: 2480770
2019-07-05 10:26:13 -07:00
Ashish Kumar Dhanotiya
b6f487bf7c qcacld-3.0: Use correct BIT operation for staflags
While filling station info rx_mpdus and fcs_error count
are getting filled and corresponding flags are getting
set. These flags are set using BIT macro which operates
only on integers and will cause overflow on 32 bit
machine if the bit operation is of more than 32 bit.

To resolve above issue use BIT_ULL for bit operations
on station flags.

Change-ID: Ia7263f0e86a1fbdf477491b84bf94d5609781b00
CRs-Fixed: 2484159
2019-07-05 10:26:08 -07:00
hqu
1dd504ae34 qcacld-3.0: Add ini to support BT SCO-WLAN coex
Add ini gBtScoAllowWlan2GScan to support BT SCO-WLAN coex.
Using this ini can control whether allow wlan 2g scan or not
when BT SCO connection is on.

Change-Id: Ia63b1ff92e75937487827c34bca1d2e1c289962d
CRs-Fixed: 2464679
2019-07-04 07:26:51 -07:00
gaurank kathpalia
fc166a1d36 qcacld-3.0: Flush the BLM reject ap list on WIFI-OFF from UI
Flush the reject ap list from the BLM when the user does
a explicit wifi off from the UI to ensure the user is able
to connect next time the wifi is turned on.

Change-Id: Ia8cdd6aa7e3357fc0def100cb13c6e25c1e0a62e
CRs-Fixed: 2470087
2019-07-03 12:08:39 -07:00
Varuneshwar Petlozu
f876667985 qcacld-3.0: Add null check for qdf_ctx in hdd_configure_cds
Currently in function hdd_configure_cds the driver is passing
the pointer from cds_get_context to ucfg_ipa_uc_ol_init without any
NULL check. This pointer later then gets dereferenced which can cause
null pointer dereference.

To solve this, added a null check before calling ucfg_ipa_uc_ol_init

Change-Id: Ie0d8e103c9eeac76d285c4b3870c3c4ea9172dc6
CRs-Fixed: 2462711
2019-07-03 08:55:53 -07:00
Ashish Kumar Dhanotiya
2168aadfa4 qcacld-3.0: Add support to configure avoid acs freq list
Currently there is no ini support to configure frequencies
which needs to be avoided for the acs channel list which
may allow SAP to come up on a channel which is not preferred.

For Example there are many legacy clients which supports
2.4GHz but don't support channel 12 and 13 (or does not have
the capability to detect country change where channel 12 and
13 is valid).
In that case, if SAP comes up on channel 12/13, those legacy
clients won't be able to connect to AP.

Hence, Add a feature flag and ini to configure the frequency
list which can be avoided during acs.

Change-Id: Id106b38228f837ba056eb916004dc012e919ddd2
CRs-Fixed: 2472004
2019-07-03 08:55:49 -07:00
Liangwei Dong
444cd261d1 qcacld-3.0: Allow single SAP started on DFS chan
With new configuration g_sta_sap_scc_on_dfs_chan = 2:
1. SAP is allowed to start on dfs channel if no STA interface
active on the same mac.
2. SAP is allowed SCC with STA on DFS chan without DFS master
functionality and ignore Radar event
3. Skip cac if dfs master capability disabled based on
the configuration and current connection combination.

Change-Id: If2ffb253e51c94c06a105b2691c19f7d246fcc98
CRs-Fixed: 2468004
2019-07-01 14:07:56 -07:00
Ashish Kumar Dhanotiya
0929b96172 qcacld-3.0: Remove legacy get tx power command
Driver has a stats infrastructure and all the stats related
commands are using this infrastructure.

Remove legacy implementation for get tx power command
as part of cleanup.

Change-Id: Iabe21f09fb6621bf81bf0b0b2864e68f78a68f2a
CRs-Fixed: 2480244
2019-06-29 10:56:56 -07:00
Ashish Kumar Dhanotiya
136bc8ea73 qcacld-3.0: Remove legacy wakelock stats implementation
Driver has a stats infrastructure and all the stats related
commands are using this infrastructure.

Remove legacy implementation for wakelock stats command
as part of cleanup.

Change-Id: Ie60293ae06401f841ef8dd9545587819ebe4cd4a
CRs-fixed: 2480191
2019-06-29 10:56:51 -07:00
Ashish Kumar Dhanotiya
30ec2959d5 qcacld-3.0: Remove legacy congestion stats implementation
Driver has a stats infrastructure and all the stats related
commands are using this infrastructure.

Remove legacy implementation for congestion stats command
as part of cleanup.

Change-Id: Ia8b919ad7cea4f47d5480b9f8e0f4636783ce6c3
CRs-Fixed: 2480246
2019-06-29 10:56:46 -07:00
Ashish Kumar Dhanotiya
af3f36587a qcacld-3.0: Remove legacy get rssi command implementation
Driver has a stats infrastructure and all the stats related
commands are using this infrastructure.

Remove legacy implementation for get rssi command as part
of cleanup.

Change-Id: I7a837d780c6a1551db0929e6ec7e73daaf479429
CRs-Fixed: 2480770
2019-06-29 10:56:42 -07:00
bings
672207d673 qcacld-3.0: Ignore legacy rate set if it is HE connection
Do not configure legacy rate to FW if it is HE connection, otherwise
FW does not work.

Change-Id: I31d167ee79b7b58cabad29e65cf6834a7151093d
CRs-Fixed: 2472811
2019-06-29 08:37:39 -07:00
gaurank kathpalia
6701aef06b qcacld-3.0: Check acs cfg channel list before access
Currently the driver does not check whether the
ACS cfg's chanel list is valid or not and checks
for the best channel within it in the function
wlansap_is_channel_present_in_acs_list, which can
lead to potential pointer deference.

Fix is to check the channel list and then only
process for comparison.

Change-Id: Icda2e7c8f260eb636c8159fbbb697400dddbdf74
CRs-Fixed: 2479941
2019-06-28 11:08:40 -07:00
Jingxiang Ge
ccd7fdcd23 qcacld-3.0: Return ret for hdd_trigger_psoc_idle_restart
When hdd_trigger_psoc_idle_restart is called from hdd_open,
if the process has some signal pending, pld_idle_restart
may return back before finishing start_modules. If keep running
in hdd_open, when creating vdev it may access invalid
pdev.

In hdd_open, change to return failure if idle_restart returns
error.

Change-Id: I454d421d0758dd4e90c4b4fba1f65096c0834446
CRs-Fixed: 2476316
2019-06-25 13:06:34 -07:00
Liangwei Dong
e7478e97d5 qcacld-3.0: Handle GO start on DFS chan
Auto usercase allow AGO to start on DFS channel.
We need to do similar CAC allow/disallow check in GO mode
as we do in SAP mode. We should skip CAC as DFS master
functionality may be disabled based on INI configuration.
Merge the SAP CAC allow logic to GO interface.

Change-Id: Iba89b8b3f170d6ffe97f53198ad041e7ceb41b44
CRs-Fixed: 2474391
2019-06-25 13:06:17 -07:00
gaurank kathpalia
5aafb67fa4 qcacld-3.0: Fix out of bound issue in get PCL
Fix out of bound issue in get pcl API where the
num of channels in the valid channel list can be
greater than the pcl list size, and can lead to
out of bound access.

Change-Id: Id3d34ff66c712bf310ae2689c43ce873f5c87fca
CRs-Fixed: 2475705
2019-06-25 13:06:13 -07:00
gaurank kathpalia
6fc5d5803c qcacld-3.0: Allow simultaneous scans for Hostapd scan
Currently the drivers blocks every simultaneous scan
that comes to the driver, and returns BUSY.
here if the STA SCAN which is low priority after connection
comes, and at the same time ACS has completed and the hostapd
tries to do a HT scan, it would get error as BUSY, and it
will try to scan again and again until successful or the timeout
happens. This will in turn delay the hotspot bringup as start
ap does not come until the hostapd does a OBSS scan.

Fix is to skip the check of simultaneous scan for SAP, and make
the priority of scan request high for SAP scan.

Change-Id: I5625a3e7c05f75238771ea1ec35b80ae5113bbc3
CRs-Fixed: 2471854
2019-06-25 13:06:09 -07:00
Srinivas Dasari
4bf1c934a4 qcacld-3.0: Set negotiated auth type to OPEN for SAE-pmk cache case
wpa_supplicant sends connect request with open auth and pmkid
when PMK caching is enabled and if it has PMK/PMKID cached.
Set rsn_auth_type to SAE when connect request has AKM as SAE
auth_type as open.
Set negotiated auth type to OPEN in SAE with pmk cache case as
open authentication going to happen. Similar fix is applicable
for FT-SAE. Handle the same.

Change-Id: I9ccc419bd439702041840b0194bb0622d7856255
CRs-Fixed: 2467813
2019-06-25 13:06:06 -07:00