Printing the tx queue stats on to the console in
the timer context causes a watchdog bark due to
excessive logging.
Reduce the log level for the stats dumping
from timer context.
CRs-Fixed: 2522067
Change-Id: Ic8162fabf552f6e5103427298229385d68dbbfbb
Pointer hdd_ctx returned from the call to function cds_get_context may be
NULL and will be dereferenced. Move the recording of timing of runtime
PM operations to after validation of hdd_ctx.
Change-Id: I5da02c3fdb695be25bf0b59f4fe33e599e751d03
CRs-Fixed: 2524971
Currently the driver does not check if the state
is key exchange in progress and suspends wlan
before set-key happens which further results in
FW also in wake up state.
This would result in delayed EAP exchange, and also
in power loss.
Scenario:-
1. Turn on STA and try to connect to enterprise network
2. Turn off display.
Here the display turn off would trigger APPS suspend
while the STA is trying to connect, and authenticate
and since there is no check in driver to prevent
suspend in set key in progress state, it would result
in a FW assert, as the expectation of FW is to allow
suspend only after set key has been done.
Fix is to prevent WLAN-suspend in case of connection
in progress, and allow suspend only in connected
and authenticated state.
Change-Id: Ic173116f7ba424005d938a43c75831a6a4dc874c
CRs-Fixed: 2512866
If the firmware gets compromised, the values sent to
the driver could result in buffer overflows.
Validate HTT MSG "msg_word" to avoid buffer overflows.
Change-Id: I6073029f61a358da32bcc0dcfc339d9bb7ee8218
CRs-Fixed: 2213659
Initialize mic work for QDF_FTM_MODE in
hdd_open_adapter to avoid touching uninitialized
lock in hdd_mic_flush_work as part of hdd_stop_adapter.
Change-Id: I280de93b2408acba4da363ecd292f811f6301d31
CRs-Fixed: 2523654
To pass WFA 11N 4.2.25 case, it's needed to enable legacy mode
SIFS burst. So add INI to make SIFS burst mode configurable.
Change-Id: I740fe33a7ae0d9b558aa3b3aeee434f482ed24cb
CRs-Fixed: 2486171
Devide wma_add_bss_sta_mode into 4 functions for 4 cases:
1. wma_pre_assoc_req, called before sta assoc, config vdev
params.
2. wma_send_peer_assoc_req, called after sta associated, send
peer assoc cmd to F/W.
3. LFR3 add bss
4. LFR2 add bss and vdev start
Lim will call these functions directly instead of post msg to
wma.
Replace lim_set_link_state with wma_add_bss_peer_sta to create
peer for LFR2 roaming.
Clean up all link state usless code now.
Change-Id: I6ad19bb92e7b0334704ac9c930277e9c35abbee2
CRs-Fixed: 2510119
Currently, the connection_in_progress flag in hdd_ctx is not reset
as part of SSR this can lead to scan reject after SSR.
Change-Id: Icc7889eb3140f02dd100d05e812d5573ebcae63c
CRs-Fixed: 2516937
Switch legacy vdev up to vdev mgr/target if vdev up
Remove wakelock since it is handled in target if.
Clean up legacy vdev up API.
Change-Id: I125b202e9a18ee3bf279fe4df7bc17b9ec7bf999
CRs-Fixed: 2516586
In Genoa SDIO ADMA implementation Host sends packets to FW in
multiples of SDIO Block size.
If the packet/bundle is not block aligned Host adds padding at the
end of Packet/Bundle.
If the TX packet plus padding exceeds one FW TX Buffer, Padding data
will occupy the next FW TX buffer. Same applies for bundle TX packet.
For above scenario, HTC_FLAGS_PADDING_CHECK of HTC header Flags is used
to notify the FW that - Padding data follows the currentHTC packet
Since the padding data will take one extra FW Tx Buffer, host need to
handle the extra Tx credit being used by the padding data/buffer
CRs-Fixed: 2516619
Change-Id: Ie2d2292fabb30e1a13eebe4d11b57f452e42afa8
ANI_AKM_TYPE_SAE is defined only when WLAN_FEATURE_SAE defined.
But it is used without any checking in function lim_check_wpa_rsn_ie().
If WLAN_FEATURE_SAE is disabled, build error will occur.
It is easy to fix it to add '#ifdef WLAN_FEATURE_SAE' in function
lim_check_wpa_rsn_ie(). But coding rule, '#ifdef WLAN_FEATURE_SAE' isn't
allowed to occur in function. So, move '(*akm_type == ANI_AKM_TYPE_SAE)'
to function lim_check_sae_pmf_cap().
Change-Id: Id62bc69d770dbd4e470d8fa379b4cb3f7447d9dc
CRs-Fixed: 2508071
With vdev operations moved to target if from the wma, the vdev
request hold framework is not used.
Thus remove the unused functions and structures
Change-Id: I6e609735ad0bdc8b929cfffa6f13915f0ad6823d
CRs-Fixed: 2523104
In function hdd_softap_set_channel_change, vdev is passed to
function wlan_vdev_mlme_get_opmode without taking reference.
This can lead to NULL pointer access.
Change-Id: Ibbc58a1e7a4be0e0e34982b99541a63cd77e0480
CRs-Fixed: 2518560
Local peer_id is being cleaned up across DP, HDD and PS/WMA.
So, any references to local peer_id/sta_id will be replaced
by peer mac address and all interactions between the layers
will be based on peer mac address.
This change invloves updating the vdev_id for the network buffer list
in hdd_rx_pkt_thread_enqueue_cbk for later use in
dp_rx_thread_process_nbufq.
Change-Id: Ibaf5c10a7fe77772d2eea2a10398e0116fdd0344
CRs-Fixed: 2522201
Local peer_id is being cleaned up across DP, HDD and PS/WMA.
So, any references to local peer_id/sta_id will be replaced
by peer mac address and all interactions between the layers
will be based on peer mac address.
This change invloves removal of local_peer_id usage from
DP API dp_rx_thread_process_nbufq.
Change-Id: Ibfed421df3ace139808d16365ec5d54e9b013dfe
CRs-Fixed: 2512693
Cache the PMF capability of peer in peer_mlme_priv_obj while
adding bss for both station and AP modes. Process the mgmt frames
received from the peer as rmf frames only if the peer is of PMF
capable.
Move mlme_peer_object creation and deletion out of the define
CRYPTO_SET_KEY_CONVERGED to make it generic.
Remove the check where WEP bit is validated and modified based on
PMF capability of the peer. This is already taken care while
setting WEP bit in lim.
Change-Id: I0c93bb25db6a866e4c1793c9ba4c60773c0f019d
CRs-Fixed: 2520249
The qcn and ese arrays are dynamically recreated on every call of the
functions sme_add_qcn_ie and csr_append_assoc_ies.
Change the initializers to static const to avoid dynamic recreation.
Change-Id: Ib3ae9a1b753c4dcfb6d8fd440050977253f3e720
CRs-Fixed: 2522716
Vdev start req timeout is moved to target if.
Req msg type can be got from vdev mlme instead of wma rsp queue
in vdev start rsp handler.
Set bss params into vdev mlme priv when start vdev with add bss.
then can get bss params from vdev mlme priv when handle start
vdev add bss rsp.
Free hidden ssid vdev req after vdev restart return, don't need
it when handle rsp.
Change-Id: I956fc5a9164d5961513dfa922aee27af28483807
CRs-Fixed: 2516587
Use vdev_start_response to replace tpSwitchChannelParams
parameter in channel switch response handler.
Lim channel switch resp handler will be called directly, don't
use post msg.
Use vdev id to replace tpHalHiddenSsidVdevRestart in hidden
ssid response handler.
Change-Id: Ida0bfed3fea1cc0ff28ed15832765d446296f3be
CRs-Fixed: 2516582
While filling the QCN IE the IE length filled is 11 while actual
length is 8 and thus this lead to improper IE length in scan
additional ie while copying the default_scan_ies.
So fix the QCN IE length and add check for improper IE length check
while copying IE in scan additional ie.
Change-Id: I372af8c206d8f7ce0e93bc9c0fb14e222c6eb87e
CRs-Fixed: 2522208