If force SCC is enabled and there is a STA connection, trim the
ACS channel list on the band on which STA connection is present.
Change-Id: Ibd580a7afdcdfc5fb4398ada547565e229d59c70
CRs-Fixed: 2193720
In the current code, mgmt tx rx descriptors nubfs per pdev,
which are in use when driver is unloaded,
are tried to be freed in dispatcher_psoc_disable,
by iterating through the pdevs which ideally should not be available.
And in ideal conditions, there are no pdevs during psoc_disable,
there was no attempt to free the nbuf
of pdevs mgmt tx rx descriptors in use,
which could have resulted in leaks but no assert.
In some cases, by the time dispatcher_psoc_disable was called,
and pdev count was non zero, we were seeing some issue accessing
the pdev or pdev mgmt tx rx context and it was causing assert.
The mgmt tx rx descriptors nubfs
which are in use when the driver is unloaded,
should be freed in dispcatcher pdev close and
not in dispatcher psoc close.
Change-Id: Ia6ac0b2ceeb017221153dab92bf014481eca2a5b
CR's Fixed: 2187890
Invoke beacon update callback function before adding new entry
to scan list. It's required as get_scan_result API will end up
returning partially initialized scan entry.
Change-Id: Ia34f9c69b4eef2435b135912e06c39018a8987b8
CRs-Fixed: 2189783
FW recovery path needs this function as mgmt Tx
completions are not expected from the FW.
CRs-Fixed: 2178618
Change-Id: I7dddbff544dcce4dd9fe95ab79fb891bbd11b4ab
To make the code look neater, add a local variable to dereference the
frequency range.
Change-Id: I419aa913304c3b7e7d553a1419b92f9ee46ac754
CRs-Fixed: 2182461
Currently there is no individual length check to each IE, which
could probably result in buffer overead. Minimum length should
be checked for each varibale IE for avoid the same. Also some fixed
IEs should have a length check of not greater than the size of
their respective structures to avoid corrupting other IE data.
Fix is to add a length check to each individual IE to avoid
corrupting other IEs and also to prevent reception of any IE
of invalid length IE.
Change-Id: I9a0914861d7ff2871ac72ad7357ebbb7ef10eeb3
CRs-Fixed: 2183014
Add NULL check for access to wdev.
There could be cases where the wdev could not we initialized
to appropriate values, so we should have a NULL check before
we access its members.
CR's Fixed: 2168374
Change-Id: Id0a3f9b64c5e9beed86f5a3c019a5fe5dbdb8bd7
1. Enable scan command time out for all commands if not disabled
explicitly.
2. Remove QDF_BUG() for no serialization command buffers
Change-Id: I5357211ef6bc44f8ebd4b8acaa56a12f691fa46d
CRs-Fixed: 2175843
When setting country code dynamically, world mode is
variable. Multiple world modes are supported depending
on the BDF configuration. Currently, it does not check
the world mode when setting country code and not take
appropriate action.
Change-Id: Ibd087825dbdba58d3d52d0c208edf183e3088731
CRs-Fixed: 2182129
Station mode needs the full chan list including unsafe chan.
And HDD and policy mgr has local copy the unsafe chan list
for chan avoidance checking for SAP mode.
Keep unsafe chan in curr_chan_list and add unit test ucfg API
for chan avoidance internal test.
Change-Id: I23e040048a6dc1cc604cc2be91ac74916eb74f23
CRs-Fixed: 2182400
Spectral Netlink related APIs are currently present in
target_if layer, move them to os_if layer.
Change-Id: I86a5495f6ec8aa85a2e9639902503a522b023f8e
CRs-Fixed: 2151548
OWE SSID is hidden in OWE transition mode. When supplicant detects
connection to OWE transition mode, it issues connect with required
SSID to driver. But that ssid does not present in driver scan cache
as it is hidden. Instead of this ssid, driver scan cache has NULL
entry. This can result in connection failure due to mismatch in ssid.
In normal hidden ssid cases, supplicant issues scan with specific
ssid which helps to update driver scan cache with required ssid. SSID
is also hidden in OWE transition mode, but supplicant does not issue
scan with specific ssid which results in NULL entry in driver scan
cache for that SSID.
Fix this issue by explicit check for OWE if it is hidden.
Change-Id: I95e6b9af37e62c56b4b890090c33d53f89fed731
CRs-Fixed: 2185576
Newly designed P2P component doesn't contain
80211W PMF related information which is one
of the mandatory requirement to make PMF work
for P2P.
Provide PMF support to P2P component by adding
necessary callbacks to protocol stack to get
11W related information.
Change-Id: I399f0d296f9461239ac9d720905b196e87983f29
CRs-Fixed: 2175898
Move wma_get_buf_start_scan_cmd logic to common code in
ucfg_scan_update_params.
Change-Id: I4c9dcb48b4862ad10f64e260d87938251e270185
CRs-Fixed: 2180960
Support 11d for non-offload platform by maintaining
count of beacons encountered for each country code
and choosing country code with max votes as device's
country code.
Change-Id: I83b66e980854eded17e254386561fa32b1f8c4ac
CRs-Fixed: 2154048
If sub-channel marking is not supported then make sure to
add all the dfs channels in bonding channel list to NOL.
Change-Id: I27d738974bb2b2cfdb9dbcd944f5843cc3aeed93
CRs-Fixed: 2164692
Save BSS and desired channel information per vdev to access
it across all the modules.
Change-Id: I7729e0ae902643d0a2c61184b9ddc2babd07179e
CRs-Fixed: 2166359
When wide band scan is enabled, host configures all possible
channels with all possible phy modes. In his case if a scan
is invoked with 0 channels, target will end up scanning each
channel with all possible phy modes which increases scan time
exponentially.
If wide band scan is enabled and scan is issues with 0 channels,
configure target to scan all available channels only in 11A/11G mode.
Change-Id: I7c678ccf43c3238aacbfc59cc7e7bd19763453cc
CRs-Fixed: 2165025
Remove dependency on WMA layer for green AP component by registering
green AP events through target_if layer.
Change-Id: I8fe9079c6ba6b23cd5f1d98a7d1b333fde31f19b
CRs-Fixed: 2178143
1. Remove below country codes:
ARGENTINA (5003)
AUSTRALIA (5000)
CANADA (5001)
KOREA ROC 3 (412)
UNITED STATES (841)
UNITED STATES (842)
UNITED STATES (843)
BELGIUM2 (4101)
INDIA2 (5006)
2. Update regdomain
ARGENTINA from FCC3_WORLD to APL16_WORLD
BELIZE from FCC3_ETSIC to ETSI8_WORLD
CANADA from FCC3_FCCA to FCC6_FCCA
CHILE from APL6_WORLD to APL23_WORLD
JAMAICA from FCC3_WORLD to FCC13_WORLD
NAMIBIA from APL9_WORLD to APL20_WORLD
NEPAL from APL6_WORLD to APL23_WORLD
SENEGAL from FCC3_WORLD to FCC13_WORLD
UNITED STATES from FCC3_FCCA to FCC8_FCCA
3. Add IRAQ country code
4. MCL country Lookup table
Change-Id: I4b0468d9256ac919a2684d1980f8b017a8107248
CRs-Fixed: 2180713
Implement service ready, ext service ready
ready event handler, init command preparation
and other required APIs
Change-Id: Iaf707227c1e94bb492dd86bd2d0916a1cf875498
CRs-Fixed: 2177109
QDF_MAC_ADDRESS_STR has been replaced by QDF_MAC_ADDR_STR. Remove
QDF_MAC_ADDRESS_STR.
Change-Id: I810d56ef62009375422a69b66d75b4d03ddaee0f
CRs-Fixed: 2176528
When serialization puts the command in active queue & activates
the command, it gives the callback to command owner as part of
the activation procedure. If this activation callback fails then
serialization suppose to give a callback to the owner to release
the memory.
There are some instances observed in legacy platforms where owner
releases the memory itself as part of activation callback failure
first and gets serialization callback as well to release the same
memory. These scenario creates "double free" or "memory
corruption" phenomena.
In order to avoid this scenario, add a sanity check to make sure
command still present in active queue and memory is not released
by command owner before calling callback to release the memory.
Change-Id: Ide341e3288aadd7d6e4441a5768118cd1439d38d
CRs-Fixed: 2161678
Do command complete before invoking scan event handlers.
Its required as few scan event handlers check if scan is
active on underlying pdev which returns true as command
complete is not done yet.
Change-Id: Ia415b55e9c9a1cea71faa160c6b52c88dc8329a9
CRs-Fixed: 2180033
Current driver is using pld_wlan_set_dfs_nol() and pld_wlan_get_dfs_nol()
directly through eSAP_DFS_NOL_SET and eSAP_DFS_NOL_GET case statements
respectively within HDD module. These methods are obsoleted as per
new driver design.
Use DFS component's utils_dfs_init_nol() and utils_dfs_save_nol() APIs
instead to get and set DFS NOL respectively.
Change-Id: I63e8adac3f99c2052c26e6b01d19071f098e0a4f
CRs-Fixed: 2178580
For reg no-offload case, it needs to call the
reg_program_chan_list() function directory to apply
the right channel info.
Change-Id: Ieb7acf9f96973a6e56146e2763f455ef92838c4a
CRs-Fixed: 2174286
DFS capability was not set properly for Partial-offload(PO) and
Direct-Attach(DA) radio. Thus radar detection failed.
Change-Id: I5493d7195a57f160792a411653c05bbf220d3561
CRs-Fixed: 2160418
If gDisableDFSChSwitch is configured as 1, channel should not be
changed even radar is found.
Set usenol as 0 when gDisableDFSChSwitch is configured as 1.
Change-Id: I05c4afea3eb9af9c541b2324a2d50ea59c05f7d7
CRs-Fixed: 2168792
Knowing the current and historical state of high level abstractions in
the driver is critical to successful debugging of issues. To assist
these efforts, add info-level logs for the following object manager
psoc/pdev/vdev/peer lifecycle events.
* create
* logical destroy
* physical destroy
Change-Id: Idbb5350e85cb1b452e076a6fece31f83dcc7aafc
CRs-Fixed: 2179681
Due to Rx sensitivity issue, sometime beacons are seen on adjacent
channel so workaround in software is needed. If DS params or HT
info are present driver can get proper channel info from these IEs
and set channel_mismatch so that the older RSSI values are used in
new entry.
For the cases where DS params and HT info is not present, driver
needs to check below conditions to get proper channel and set
channel_mismatch so that the older RSSI values are used in
new entry:
-- The old entry channel and new entry channel are not same
-- RSSI is less than -80, this indicate that the signal has
leaked in adjacent channel
Change-Id: Ie9dc26f938b58b0c5d071ce4f2ba02b8e7fd4f60
CRs-Fixed: 2180012
In the routine sap_ch_params_to_bonding_channels, the channels is set
invalid value 0 if center freq segment0 for channel params is 0.
ch_params->center_freq_seg0 should be set for 2g HT20 mode.
Change-Id: I063f1341da5a4934c97dec4bcda9367101de7cc5
CRs-Fixed: 2179368
In current implementation, after radar detection, a new channel is selected
and then radar is disabled on the new channel. The new channel may be a DFS
channel and radar will be disabled on the new channel.
Radar disable should be called for the current channel and not on the new
channel. Therefore, disable the radar first and then select the new
channel.
Change-Id: Ied57f8910b30ee2181406e26ace1e7a44ff691b4
CRs-Fixed: 2172007
The pulse_delta_peak of chirp radar is not zero, which is one more radar
detection rule for ETSI chirp. Driver need delta peak related information
from FW for ETSI chirp radar detection.
Two more fields pulse_delta_peak and pulse_delta_diff are added in
wmi_dfs_radar_event_fixed_param.
Change-Id: Ief8dbea1c1336f45a24195853d5e1356bf3cad27
CRs-Fixed: 2179933
Every time when dfs_count_the_other_delay_elements is called,
delta_peak_match_count is set to 1, which is not correct.
delta_peak_match_count should be initialized once like numpulses
in dfs_bin_pri_check.
Change-Id: I9cf432cbe7b0ddb42a0c33adcbef07d0c48f42f8
CRs-Fixed: 2165538