Clean up excessive logging from target if and QDF to avoid spamming
kernel log buffers.
Change-Id: Ib81d6bb68bae9d5c477755b31dc20e10663147d5
CRs-Fixed: 2259283
Add PEER_DEBUG_ID_WMA_CCMP_REPLAY_ATTACK, to be used during
ccmp replay detection to get the peer ref count.
Change-Id: I6159556db959f447edcf75a5f64d398cbe544a80
CRs-Fixed: 2264963
qdf_debugfs_init needs to be rearranged for the debugfs to work for
memory tracking on WIN.
Change-Id: I660731a22368d34a1e4f8c29539fffd9731d02cc
CRs-Fixed: 2254297
Create NDI vdev after adapter is added to back of hdd adapter list,
so that vdev create completion callback can identify right adapter
and set corresponding completion variable.
Change-Id: Id0d78a5e482c875fee346224f37c29a874814133
CRs-Fixed: 2252031
Netlink service init and exit is invoked as part of wlan logging
init and exit during qdf module init and exit. This brings in a
hard dependency to enable and compile wlan logging service
even if not used.
Decouple netlink service and wlan logging service to remove
inter-dependency. WIN qdf module currently does not require wlan
logging to be enabled. This separation leads to bss savings in qdf
module.
Change-Id: Ib0afafd196106eba78ad9783eb1a6cece77c00fa
CRs-Fixed: 2258640
When STA's join req times out on current BSS, SME issues next BSS
internally without checking HW mode for new channel
For example, STA tries to connect SSID="abc",
BSSID="a1:a2:a3:a4:a5:a6", channel=36 and lets say it fails. It
should try few more times to same BSSID and after that it will try
next bss. Lets say next BSS it found has, SSID="abc",
BSSID="b1:b2:b3:b4:b5:b6", channel=1 then it needs to check whether
hardware mode change is required for channel=1. If driver fails in
checking hardware mode then following check will prevent the bad
situation.
CRs-Fixed: 2261129
Change-Id: Ie31ac5b8b90c6e63122148647ad333fccfbf9dbf
DFS test timer is initialized and used by Full-offload but the timer is not
reset during DFS reset.
Reset DFS task timer during DFS reset.
Change-Id: I5d5395744a98e5ca2a7a94971e7c1c6e6e0b174f
CRs-Fixed: 2252612
As per the current design we are trying to take a ref
for the vdev even when there are no active vdev.
Fix this by adding a NULL check.
CRs-Fixed: 2262983
Change-Id: Iac62c9d0e1138c3d150a179546ad7793ff61e3db
Sync the Spectral header files used by driver and Spectral related
applications.
CRs-Fixed: 2258823
Change-Id: I9a4fb89e9327fffb7478619e63788a1d284f49b5
Allow the SAP to move from DFS channel to another DFS channel in
STA+SAP SCC concurrency scenario.
CRs-Fixed: 2263031
Change-Id: I3d1f5e57415ed39a30125d4565bb768926dff4c9
MC timer implementation has changed recently, and
it requires TDLS timers shouldn't be stopped before
restart.
Change-Id: I718972bd0f7c66b04145ee38c58440f6240a8de2
CRs-Fixed: 2223777
Add ol_txrx_completion_fp in ol_txrx_ops to provide support for
callback during TX completion.
Change-Id: I7af478636badd8f8562460cefaf5db56633df8e9
CRs-Fixed: 2253569
Fix the memory over run by removing the extra "END" ascii print
as it overruns the available memory.
Tests Done:
Ran Pollux_ACFG_MIPS_3Radio_Channel_Change_120s_Rev_1.0.0.0 for ~20hrs
Ran PDT_Pollux_Reboot_Rev_1.0.0.1 for ~36hrs
Change-Id: Id71fe8c95a41369f55d53ece043a0b00e62c5d4f
API for dumping the CE descriptors copies all descriptors for
the given Copy engine id and also copies the SKB packet pointed
by the descriptors till smart_log_skb_sz bytes.
Change-Id: I511bda77319944c1ec2377f716087956ce0637ac
CRs-Fixed: 2008290
Add host WMI definitions for the type and subtype fields in
wmi_fatal_condition_event.
CRs-Fixed: 2257956
Change-Id: I2c7043081de86a42b3e89ade34d4a1ffc0c39d77
Add vendor command support to enable or disable GTX.
Currently there is no vendor attribute to enable/disable
GTX from vendor command. Add vendor attribute
QCA_WLAN_VENDOR_ATTR_CONFIG_GTX support through
QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION vendor command
and with new wmi command WMI_VDEV_PARAM_GTX_ENABLE.
Change-Id: I8a740f9209ffd5f6438c3cfdd830ee2a76d0aa52
CRs-Fixed: 2261322
In ETSI domain, after CAC, channel is added to ETSI CAC cleared list,
so that next time it can skip CAC if channel is already present in this
list. If radar found, remove channel(s) from this list indicating that
when channel(s) is/are selected in future, the CAC needs to be re-done.
Change-Id: If6b31ecda2ab159188e7724bce7d1c2d8375fa3c
CRs-Fixed: 2143266
Fix out of bound access for array "weight_list" with size 55 bytes
and declared on stack of function utils_dfs_get_chan_list. Same memory
is accessed in function policy_mgr_update_with_safe_channel_list with
index 127, leading to OOB access.
Change-Id: Ib7ba74e0096e90fd197bc563d2e82e497cf83759
CRs-Fixed: 2232833
Android Packet Filter 3.0 requires the framework to be able to
read and write into the APF work memory in the Firmware. It
also requires to be able to enable or disable the interpreter.
New WMI commands are defined for read/write/enable/disable
operations.
Complete the implementation of these new commands.
Change-Id: I852d61eb213d9ae530e8a71069144ef35816f5b8
CRs-Fixed: 2184971
In case os_if request times out, free the corresponding
memory allocated for stats event to os_if.
Change-Id: I23bd65f2b79c71070d65b5e4045eaf4e17113354
CRs-Fixed: 2262653
wmi_buf_alloc() API expects length to be passed of type
uint16_t. However, the callers pass uint32_t to it.
This might result in overflow and illegal memory access
thereafter. The fix is to modify the API signature accordingly.
Change-Id: If09da4978d421269b884f7d3c933c49c81651475
CRs-Fixed: 2218346
Currently peer is not added to the dp pdev local peer id map when
resuing the peer reference. As a result register peer with the
dp fails and tx is not allowed. This leads to connection failures
as EAPOL tx is not permitted. In this change add peer to the pdev
local peer id map when existing dp peer reference is used.
Change-Id: I02221115e07450466ad165a6e0861d340cdbda4a
CRs-Fixed: 2241763
skb_unshare may create copy and return different skb. If skb_unshare
returns different skb, remove debug node for the original skb and add
new debug node for the returned skb.
Change-Id: Ib511cde241ea7a44bd726912c225452722d953a7
CRs-Fixed: 2260467
As CDS is not usable by WIN, add callbacks that are
registered in QDF and correct the module dependencies.
Also moves the platform related function to qdf_platform.[c|h]
Change-Id: I3080e9df86770235ff46237b8a2ffb9c2a3c9c2c
CRs-fixed: 2130260
Add service enum and populate service id for listen
interval offload support so that wmi_service_enabled
API can be used to check if the support is enabled.
Add enum for listen interval offload support
Change-Id: I62dbadb4980f54db8431ad53d096f7fc210d25d7
CRs-Fixed: 2253684
To avoid different thread delete the roc context or tx context at same
time, move cleanup roc and handle tx ack in scheduler thread.
Change-Id: Idc2a5394886a2e10c3acfabe139365dd263d6c0a
CRs-Fixed: 2211827
In some use cases of QDF_ARRAY_SIZE macro, the argument passing
to it is a pointer instead of array which leads to getting
incorrect array size.
Current implementation of updating main arrays pcl_list_org and
weight_list_org is inefficient. So, update the main arrays directly,
instead of copying the data to local arrays and again updating the
main arrays.
Change-Id: I9a4a7fa813412fd000ce55d2a958e49ab1b02ed5
CRs-Fixed: 2262231
Currently, PCL list is populated without checking channel select logic
ini. Check for channel select logic ini before selecting the second
connection pcl table.
Change-Id: I5a64d4ff43a7dcc2c70eac75b51d5f87de2903bb
CRs-FIxed: 2237403
If STA is already connected on DFS channel and SAP is going to start
on the same channel then skip the CAC for SAP.
If STA and SAP sessions are already operating on same DFS channel,
then ignore radar indication received on SAP interface.
CRs-Fixed: 2262494
Change-Id: Ife0ab6979a07c8773001a43f5a30c9a555dab37a
When Force SCC and STA+SAP SCC on LTE coex channel are enabled:
1. When STA on LTE coex channel, start SAP, select STA
channel.
2. When SAP on, connect STA on LTE coex channel, then switch
SAP channel to STA channel.
Change-Id: I7864e0ab2655c3bee95154ea4dedfb60fe8689e4
CRs-Fixed: 2261226
QCN7605 requires Management frames to be transported over WMI.
Enable this for HL transport too.
Change-Id: I97551684224cf027beadb403ac2220fa355af986
CRs-Fixed: 2252391
Restrict the force SCC logic for STA+SAP only unless ini is set for
QDF_MCC_TO_SCC_SWITCH_FORCE_PREFERRED_WITHOUT_DISCONNECTION.
Change-Id: If2c4c285b92ea5eba69679561c32875cff5f7b08
CRs-Fixed: 2261717
In wmi_unified_cmd_send, the skb head is pushed by size of WMI_CMD_HDR
and then the commandId is initialized in the header. However 1 byte of
reserved memory in the WMI_CMD_HDR is not initialized and is sent to
the FW as it is and this might lead to exposure of 1 byte of kernel
memory to FW.
Initialize the WMI_CMD_HDR to zero once the skb head is pushed and
then set the commandId in the header.
Change-Id: I89fd5401105cd9c61674a63aac5aa88fb20cc41a
CRs-Fixed: 2257688
Before wow enable or pdev suspend host sets hardware filter bitmap
and enables the filter via a command. But after resuming it sends
bitmap as zero with filter disable. This is interpreted by Firmware
as disable the modes set in the bitmap, so none of the modes are
disabled. With this host will not receive bc/mc packets after
disabling the hw filter, which it is expecting.
Use the correct bitmap sent by cld for disabling the hw filter.
Change-Id: I465e2ec40b6fde8a9e99743a1b9979b67cce5408
CRs-Fixed: 2194973
In implementation of Android Packet Filter, functions, variables,
definitions are named after BPF, which stands for Berkely Packet
Filter. The term was more appropriate for Link Layer packet
filters implemented in the Linux kernel, known as Linux Socket
Filters.
The term BPF is obsolete now, so rename it with the
appropriate acronym, APF.
Change-Id: I606afc747cddedb524a41cd8e5998400f04e69f6
CRs-Fixed: 2191531
File wmi_unified_tlv.c is bloated and adding support for upcoming
Android Packet Filter v3 is going to increase its size even more.
Create a new source file for APF related WMI modules and a header
file for declaring the API's
Change-Id: I37dcc30c7d1311067f375c891be9723612161de9
CRs-Fixed: 2189827
Currently the NL MSG handlers for WLAN_NL_MSG_CNSS_DIAG, ANI_NL_MSG_PUMAC
and ANI_NL_MSG_PTT are not deregistered during hdd_wlan_exit which can
causes a page fault if NL issues cld80211_doit for these NL messages
when the WLAN is not up.
Add Deregsiter APIs for all the NL MSGs to call as part of
hdd_exit_netlink_services during hdd_wlan_exit.
Change-Id: I231e2f32e708e9a14305f0a8f9f2f603aa42b031
CRs-Fixed: 2243993
NAPI context allocated during hif_napi_create is freed in
qca_napi_destroy path based on the conditions that NAPI state
is enabled and NAPI context is created for the CE.
There can be cases when the NAPI context is created for the CE
but the current NAPI state not be enable. In such scenarios, NAPI
context is not getting freed in the destroy path.
Add hif_napi_created API to check if NAPI context is created for CE,
and use it in destroy path.
Also, NAPI object allocated is not freed after alloc during cases
when there is a failure in subsequent operations. Free NAPI object
aptly as required.
Change-Id: Ifcc21d70ba52ca309a913ac564406db627e11249
CRs-Fixed: 2256037
Crypto params are not initalized with default values.
Crypto params initalized with default value during vdev
and peer creation.
Change-Id: I8adacc8b2770e3518bfbfe2da2eb3f6e0d9a5586
Crs-Fixed: 2251816
Fix the incorrect indention in function
util_scan_populate_bcn_ie_list, which causes newer versions of
gcc complaining.
Change-Id: I2ea0f2ea5bf3e381a789ae832f56a43d511e898e
CRs-Fixed: 2247021
Add support to configure logging buffer size from
per-OEM kbuild based on memory requirement.
Change-Id: Ia91d79e5e738b1c9787015de101c3f67ccde46aa
CRs-Fixed: 2253438