Refactor flush rx queue function call based on soc by adding an
interface to CDP funtion indirection table.
Change-Id: I2d05acd023baf156c5b0752447d76d0e9e92ff53
CRs-fixed: 2023399
Unit-test suspend/resume should not know how many IRQs there are or
which is the wake IRQ. Migrate unit-test suspend resume to the new
HIF IRQ enable/disable APIs so detailed IRQ knowledge is no longer
required.
Change-Id: I65b8bd454e469a9081f29dce5a1a96f55698a128
CRs-Fixed: 2023978
Check for SAP BSS started flag before deinitialization of SAP
context data, station disconnection and action frame cleanup
Change-Id: I0191567818d5ee62a826531311cd08cb1a18ad28
CRs-fixed: 2008653
Clear SOFTAP INIT DONE flag at the beginning of stop_ap cfg80211
function to handle SSR case. Thus SAP will not be restarted after
SSR. SAP adapter will be cleaned up during SSR even though stop_ap
returns failure as it could not be processed during SSR.
Change-Id: Ia90b26c68f7ded4481aa4cbdd8f424453853da21
CRs-fixed: 2008697
When hostapd close and wlan driver unload are happening in parallel
in different context, there could be a race condition in closing
adapter SAP context resulting in crash. Update to fix the crash
by protecting SAP close functions with lock.
Change-Id: I457b765d4932ad2c321fbc7e02f6ab4f289abb10
CRs-fixed: 2014663
Check for adapter validity for pre cac adapter close work function
and hdd context validity to avoid crash during race condition in
SSR case.
Change-Id: I6c167e8f1a8199c63fba905fff4e781d244c7dc1
CRs-fixed: 2021403
qcacld-2.0 to qcacld-3.0 propagation
After WDI PIPE establish done, WLAN kernel driver sends WDI_ENABLE message
to IPA kernel driver. IPA kernel driver handle this message same way as SCC
message. So, when MCC starts, IPA reconfig to SCC mode.
As a solution, after WDI ENABLE, re-config IPA with SCC/MCC message.
Change-Id: I94c933fce3d005930a24aa989425eed89f8e9d32
CRs-Fixed: 814186
This change addresses below two issues.
1) pe session entry may not exist in some cases where PE receives
ack cnf after deleting the pe session. So use
"lim.tdls_frm_session_id" instead of peSessionId while sending
the tdls mgmt frames.
2) PE sends eWNI_SME_TDLS_SEND_MGMT_RSP with failure status to SME
if mgmt tx fails before calling WDA_TxPacket. But SME is
ignoring this failure and not indicating ack conf failure to HDD.
Change-Id: I089be87fef71ebfb0327c47a301aaf5ede59d031
CRs-Fixed: 887676
Bssid is removed from scan cache as part of disconnect
handler if AP/p2p GO sends deauth or disassoc.
Fix is to remove bssid from scan cache only for HB
failure.
Change-Id: I23476858ab63f7c7ba1e82d897a4e37bb192e472
CRs-Fixed: 2017326
This reverts commit Ic0adb8287652ab1dcc89107e1610637342c426ec.
Defining gVdevTypeNss_2g and VdevTypeNss_5g as Integer.
Change-Id: Ia07c50dde2af4e6d47b844fa100fad4aaae93eab
CRs-Fixed: 2023756
qcacld-2.0 to qcacld-3.0 propagation
With ATH_11AC_TXCOMPACT defined, host to target message send-completion
won't be called and messages are stored in htt_htc_pkt_misclist after
sending to HTC layer which will be freed upon htt_detach. This list
doesn't have a size limit and outgrow with more messages.
Add a fix to limit the size of this list which gives enough time for
firmware to process these messages before releasing it.
Change-Id: I6feb2d5700abe81a21dd93303163202616c739f5
CRs-Fixed: 902909
If channel received in OEM channel info req is invalid for the
current country code the channel width received will be invalid.
When this invalid channel width is passed to wma_chan_phy_mode,
it cause QDF ASSERT.
To fix this if channel width is invalid set the phy mode invalid.
Change-Id: Iafa29be61c94ac6138162d47c8efda7504f0acf2
CRs-Fixed: 2021053
Some of the packets like configuration messages and ipa stat
messages to fw are added in htt misc list. If these packets
fail to be transmitted, they are added in endpoint tx queue as well.
When driver is unloaded, as these packets are present in misc list
as well as in endpoint tx queue, double free will happen and crash
will be observed.
Use magic pattern to distinguish the packets that are stored in
endpoint tx queue as well.
Change-Id: I5d327049d0a2a1598f55ef3ec8a5628f9a01ccee
CRs-Fixed: 2016412
Fix potential buffer overflow by array index out of bounds.
We need to add a new op_string entry whenever a new opcode added.
Otherwise, the op_string entry for the additional opcodes could
be accessed out-of-bounds.
Change-Id: Ic09b19916b63d8bb83bf278361b8519268ee1787
CRs-Fixed: 2005340
Separate out pdev detach processing as ol_txrx_pdev_detach()
and ol_txrx_pdev_pre_detach() corresponding to pdev attach
functions ol_txrx_pdev_attach() and ol_txrx_pdev_post_attach()
respectively.
Change-Id: I7fdbe70ad8262a57b61a742fcfb2779e323172af
CRs-Fixed: 2010653
When STA roam to new peer the old peer is not deleted from object
manager and this leads to crash during unload.
To fix this delete old peer from object manager once STA roams to
new peer
Change-Id: I991e0fc5fd7e1a8cb797395de601eab3ebfa015a
CRs-Fixed: 2022056
Add ENTER and EXIT log and check return value of ipa_connect_wdi_pipe
in hdd_ipa_uc_ol_init.
Add log to ensure doorbell_paddr and op_cb set correctly.
Change-Id: I444c58ea31f3ec9816cf5d052dbc22272ea8132c
CRs-Fixed: 1111256
Fix a compilation error when FEATURE_AP_MCC_CH_AVOIDANCE is defined,
introduced by a previous commit.
Change-Id: Ic85b805f590ce5acc5cd0caeff107b8315baefaf
CRs-Fixed: 2019332
Automated code style checker detected multiple instance of "no space
before tabs," so fix those issues.
Change-Id: I93248e3cfafa047c4fa8c9553769f9457086d01a
CRs-Fixed: 2021507
SME currently has legacy code to support the tCsrGlobalClassBStatsInfo
data structure. However these stats were specific to the WDI firmware
API used by older generations of hardware, and this interface is not
supported by WMI. In addition the support for these stats has been
removed from HDD. So remove support for these stats from SME.
Change-Id: Ia18d8635cff63d91f779bc3bae0a30c594514f8f
CRs-Fixed: 2021538
WMA currently has legacy code to support the tCsrGlobalClassBStatsInfo
data structure. However these stats were specific to the WDI firmware
API used by older generations of hardware, and this interface is not
supported by WMI. In addition the support for these stats has been
removed from HDD. So remove support for these stats from WMA.
Change-Id: I2e152cd55b54ed9f68bf85411fcfa4b95b5325a0
CRs-Fixed: 2021533
HDD currently requests SME_GLOBAL_CLASSB_STATS in a few of its legacy
ioctl handlers. However these stats were specific to the WDI firmware
API used by older generations of hardware, and this interface is not
supported by WMI. In addition HDD doesn't actually do anything with
the data returned. So remove support for these stats from HDD.
Change-Id: I97acf231cfffba630aa6a9ac98d3b8298fb8b7d7
CRs-Fixed: 2021531
SME currently has legacy code to support the tCsrGlobalClassCStatsInfo
data structure. However these stats were specific to the WDI firmware
API used by older generations of hardware, and this interface is not
supported by WMI. In addition the support for these stats has been
removed from HDD. So remove support for these stats from SME.
Change-Id: I3e63f99e1dd1b509694e3953490355b4c23f6c73
CRs-Fixed: 2021528
WMA currently has legacy code to support the tCsrGlobalClassCStatsInfo
data structure. However these stats were specific to the WDI firmware
API used by older generations of hardware, and this interface is not
supported by WMI. In addition the support for these stats has been
removed from HDD. So remove support for these stats from WMA.
Change-Id: I0614ed2660c886c7e61b0e87058a2f2e522580f3
CRs-Fixed: 2021526
HDD currently requests SME_GLOBAL_CLASSC_STATS in a few of its legacy
ioctl handlers. However these stats were specific to the WDI firmware
API used by older generations of hardware, and this interface is not
supported by WMI. In addition HDD doesn't actually do anything with
the data returned. So remove support for these stats from HDD.
Change-Id: I846aacb7076f29199bd4d3bbce4ca0654565f2ef
CRs-Fixed: 2021523
The qcacld-3.0 driver inherited the tCsrGlobalClassAStatsInfo data
structure from a prior version of the driver. This structure was based
upon the WDI firmware API used by older generations of hardware, and
this interface is not directly supported by the WMI interface used by
current generations of firmware. However "glue" code was introduced
which converts between the WMI data and this WDI-based representation.
When the glue code was introduced there were some parameters which
were supported by WDI but not WMI, and there were some parameters
which were supported by WMI but not WDI. Rather than remove the fields
for parameters not supported by WMI and add new fields for the
parameters only supported by WMI, for some reason the existing
WDI-only fields were repurposed. This fact is captured in WMA:
/* rx_frag_cnt and promiscuous_rx_frag_cnt
* parameter is currently not used. lets use the
* same parameter to hold the nss value and mcs
* rate flags */
classa_stats->rx_frag_cnt = node->nss;
classa_stats->promiscuous_rx_frag_cnt = mcsRateFlags;
And leads to nonsense code such as the following in HDD:
nss = pAdapter->hdd_stats.ClassA_stat.rx_frag_cnt;
rate_flags = pAdapter->hdd_stats.ClassA_stat.promiscuous_rx_frag_cnt;
Rename these fields so that they match the data they hold, and remove
other legacy fields which are unused.
Change-Id: If04a8943ad90d796968c817ff5e634eec23c97f0
CRs-Fixed: 2021520
Add changes for 11ax peer association.
Add support for the following
- update data structures to hold HE capabilities
- setting up HE capabilities in the session
- updating sta context with correct HE config
- intersecting self and peer capabilities
- update derivation of peer phymode to handle 11ax phymode
Change-Id: I46c7a7328d09e74bc0c5b25a67f6273d7eb04d30
CRs-Fixed: 1073481