Currently, WMI is using dfs flag offset that needs to be set from upper
layers. But these offset is defined by wmi and it is correct to set it
from WMI itself.
Change-Id: Ib9ff2122ed5b92fb21b01a87f0e99c3a54d1a83c
CRs-Fixed: 1099416
In function wma_get_buf_extscan_change_monitor_cmd() and
wma_get_buf_iextscan_hotlist_cmd(), numAp is of type uint32_t
but it is assigned to variable numap of type int.
Fix this by making 'numap' also of same type 'uint32_t'.
Change-Id: I02502f05d2305f62cbde47db2893770673d19fc3
CRs-Fixed: 1096384
In function send_roam_scan_offload_mode_cmd_tlv, assign qos_qnabled
parameter being sent to firmware. Otherwise firmware will not be able
to get correct qos_caps value.
Change-Id: I3bdf43594f68cb0780f2947fff9db723644b5dac
CRs-Fixed: 1092258
A new iwpriv command has been added to configure the period
and wlan duration for a btcoex duty cycle.
As a part of this registring the wmi_service_btcoex_duty_cycle
for WMI_SERVICE_BTCOEX_DUTY_CYCLE.
Also send_btcoex_wlan_priority_cmd registrtaion for btcoex
duty cycle command in non_tlv_ops.
Change-Id: I7f3bfdfd9804566d6d0b7cce7025e99db57d0e23
Acked-by: Basamma Yakkanahalli <ybasamma@qti.qualcomm.com>
CRs-Fixed: 1064437
For WOW Enable, firmware accepts a bitmap of flags, but passing them
to firmware is not exposed by WMI. Modify WMI to allow passing WOW
Enable flags to firmware.
Change-Id: I458b01bc6a4e5b14b2a1dfee928136daeb70ebe9
CRs-Fixed: 1092068
We want to enable the compiler's -Wmissing-prototypes switch, but
there is existing code that is generating warnings. Fix all warnings
in wmi.
Change-Id: I2452ffa4e9fa1de8a7bd75d04dd4a0f94d7cf55c
CRs-Fixed: 1093298
Using a buffer after passing it to wmi_unified_cmd_send() induces a
race condition that may result in a use-after-freed situation. Fix
several potential use-after-freed situations when calling
wmi_unified_cmd_send() by ensuring all access to a buffer is done
before the call to wmi_unified_cmd_send().
Change-Id: I985aad6e49daf1d823e3751a9cb0a293a298323c
CRs-Fixed: 1089713
Add helper routines to extract TLV params in WMI EXT service ready
event. These helper routines abstracts all TLV related information
providing APIs to extract ext serivce ready params.
Change-Id: Ic989331856ed2f9376965bdec4b658328f9e470b
CRs-Fixed: 1079237
Add only wmi_roam_scan_mode_fixed_param TLV for ROAM_SCAN_MODE disable
command[i.e. mode is set with WMI_ROAM_SCAN_MODE_NONE |
WMI_ROAM_SCAN_MODE_ROAMOFFLOAD]. This is to retain the scan params
[n_probes, dwell time] so that it can be used if ROAM_INVOKE command
follows ROAM_SCAN_MODE disable.
Change-Id: Iafe31850872cac3eaff35eeb57ab271b4409ef18
CRs-Fixed: 1084912
WMI_RECORDING:Fix implementation of WMI_MGMT_COMMAND_RECORD to
be compatible to WIN.
Current implemantation uses variables not applicable to
WIN.
CRs-Fixed: 1067944
Change-Id: I65b2415e40bd888d3b94ef5f04ec6d53b4d50da2
qcacld-2.0 to qcacmn propagation
Make the following enhancements to the EPNO feature:
1) Implement the reset EPNO command handler
2) Add new parameters for candidate score calculation.
Change-Id: Iad1ff9c2b003c9e3ddbc3373366686040ccb55ca
CRs-Fixed: 1075380
qcacld-2.0 to qcacmn propagation
gscan priority should not cross normal scan.
Add changes to reduce gscan priority.
CRs-Fixed: 1066785
Change-Id: I7459367cfed5d932f07f8c846265c448b9a84555
If param->len was 0, ret would be returned without being initialized.
param->len of 0 is unexpected, so return an error.
Change-Id: Ib9b0a60976dedcf8fcd4184083a9948892791621
CRs-Fixed: 1072077
Add TLV changes to pass DISA parameters received from
WMA and pass them to firmware for firmware
to encrypt data and send back to driver.
Change-Id: Ic6928a93f799c47518fbbad96564062f595287dd
CRs-Fixed: 1072545
qcacld-2.0 to qcacld-3.0 propagation
Enable firmware to send WMI_EXTSCAN_CYCLE_STARTED_EVENT and
WMI_EXTSCAN_CYCLE_COMPLETED_EVENT instead of
WMI_EXTSCAN_BUCKET_COMPLETED_EVENT as per Android N requirements.
This change is required to complete the propagation of
earlier change I399204261fa3d8515146c590630a3bb663ee801c
CRs-Fixed: 1062739
Change-Id: I5c801912828844aa3d8e2aa4f022cb184aa771c4
PEER assoc command failed in the tlv validation check.
Tlv length sent in the TLV header is different from
the length used to fill the tlv buffer which caused
failure at tlv validation.
Modified code to use the aligned length while
filling the tlv buffer.
Change-Id: I9ad2009315dd3cf37308ef44360d566035344950
CRs-Fixed: 1069008
qcacld-2.0 to qcacmn propagation
As Current WMI interface need both the ARP/NS configuration
in single command. To support active offload host need to
cache the ARP/NS at wma layer so host can fill the other
request and configure down to firmware complete request
(ARP+NS).
Change-Id: Ie0a57d216379817ff0ae48f4f582c9108e8ecca1
CRs-Fixed: 1067683
These fixes are made during qca8074 VP control path bringup.
Add fixes in tlv.c and enable TLV helper routines for WIN.
Fixed some inconsistencies in wmi API params by adding compiler flags.
This needs to be cleaned up so that API and params have common interface
between WIN and MCL.
Change-Id: I0821daa58df86ad0b394a7846a982a9e3577cd14
CRs-Fixed: 1063252
Propagation from qcacld-2.0 to qcacmn.
Add support to get per chain rssi from fw through the
already existing WMI command WMI_REQUEST_STATS_CMDID
and then store it in the station_info structure defined
by cfg80211.
Change-Id: Id50c96dd322b5ca4db34cf2df901730d8b103251
CRs-Fixed: 1005367
Send HT/VHT CAPs IE to firmware per band. This will allow certain
features like LDPC to be configured per band.
Change-Id: I21c83af984f9be3ade46121ef148b52568c3ad0f
CRs-Fixed: 1059454
qcacld-2.0 to qcacmn propagation
In some cases wmi_buf_alloc is used to allocate memory, while
adf_os_mem_free(vos_mem_free) is used to free the memory.
vos_mem_free checks if memory is present in vosMemList to detect
double free.
Now as wmi_buf_alloc doesnot add the allocated memory to
vosMemList, vos_mem_free assume it to be double free case and cause
kernel panic.
Use proper corresponding API to free memory
Change-Id: I3602887d2bfdb407e5805aedd7a97a57440a4567
CRs-Fixed: 1004079
Enable or disable OKC flag in WMI roam scan offload request based on
okc_enabled parameter in roam request from CSR.
Change-Id: I19ad7ea2171532f2417742e205d408bdd52682c0
CRs-Fixed: 1057181
WMI HB command buffer is not freed in case of tx error,
Free WMI HB command buffer in case of errors.
Propagation from qcacld-2.0 to qcacmn.
Change-Id: I15577c50cefc0cc2e9129f175cf874f17acc430e
CRs-Fixed: 1001068
Propagation from qcacld-2.0 to qcacld-3.0
Current implementation has support for IPv6 addresses of type
unicast for NS offload to firmware.
As part of this change add anycast addresses for NS offload.
CRs-Fixed: 954880
As part of MBO(Multiband Operations), host driver need to supply
the Assoc IEs to FW after initial connection. FW uses these Assoc
IE's in subsequent roaming.i.e Reassociation requests.
This Fix updates the WMI interface to provide support for passing
Assoc IEs to FW.
Change-Id: Ida3d2947714002233090a3f9075dd8d674a3c224
CRs-Fixed: 1039969
Add changes to allow coexistence of WIN/ MCL TLV implementation
through use of CONFIG_MCL flag and change of MACRO names.
Change-Id: I6868c288a43fd3afb19c84b8a9d4ef0dfbee5c94
Acked-by: prgandhi@qti.qualcomm.com
CRs-Fixed: 1008872
Compilation fixes made to compile TLV on WIN code base.
Also, Previous gerrits used WMI_NON_TLV_SUPPORT for all
compilation fixes of WIN vs MCL, using CONFIG_MCL and
CONFIG_WIN wherever it is found appropriate to keep it
consistent with other modules.
Change-Id: I1c129d736746556210c46f3122e2739d233e1d6b
Acked-by: prgandhi@qti.qualcomm.com
CRs-Fixed: 1008872
Compilation error occurs due to undefined struct when
WMI_INTERFACE_EVENT_LOGGING disabled.
Use void pointer as argument to wmi_mgmt_cmd_record() and cast as header
struct inside logging function to avoid casting as undeclared type.
Change-Id: I7d0922ee2009b235473febdbcbc3317e432a1386
CRs-Fixed: 1043597
qcacld-2.0 to qcacmn propagation.
oem data request len size should be of 4 byte instead of
1 byte.
Add changes to correct len size in wmi unified API.
Change-Id: I9b377420c50ff1160964f94be5eaa0072df0f63d
CRs-Fixed: 1013488
Fix the occupied channel list that is being passed from CSR to
WMA to WMI to firmware.There is a conversion happening in
WMA from channel number to frequency which is the root of the
issue.
Change-Id: I8a2f8c9d31897b38086df26ebd386ec59d0f3540
CRs-Fixed: 1039020
More detailed logging needed for mgmt frames
Add vdev_id, frame type, subtype, and channel to logs by defining wrapper
function around logging macro and calling it from send_mgmt_cmd_tlv
Change-Id: I0c8c26e3194d97be7d903f64c5c5909c2d4b9799
CRs-Fixed: 1011346
qcacld-2.0 to qcacld-3.0 propagation
Add support for NSS configurability per vdev type.
- Configure the 2g and 5g NSS with the INI value of
each vdev type
- Program the HT and VHT IE to FW for 1x1 and 2x2 mode,
FW will include them in scan probe request frames
Change-Id: I5cbf17a14ab6becad6cf5765ae5039fc284dc309
CRs-Fixed: 869026
Initialize bad peer tx control data structure in WMA,
send down the initial configuration info to fw and
configure the peer status update setting in the tx_rx module.
CRs-Fixed: 975526
Change-Id: Ib380e10a0b343b6a8f9c2c0bf6d6dd602d2601c5
Dwell time can be modify based on channel congestion per scan
request.
Add changes to enable firmware to use scan control flag and select
dwell time optimization algorithm based on ini values.
Change-Id: Iea3de57c1b7d087442e4b8984b4184d24bb8c930
CRs-Fixed: 994443
Add changes made in wmi_unified_tlv.c to get basic control path
working with WIN driver on a tlv platform
Change-Id: I2044df3d452cd5f1c8659a8e61e343494c6228fb
Acked-by: kiranv@qti.qualcomm.com
CRs-Fixed: 1005778
1.Logging of all WMI activities(commands, tx complete, events)
is adapted for WIN.
2. WIN and MCL continues to use existing approach of memory
allocation and it is managed using feature flag in common code.
3. Use debugfs for WMI event debugging.
example to read buffer through debugfs interface -
- Navigate to WMI directory under debugfs (/sys/kernel/debug/WMIx)
- It will display elements/files for all command/event buffers
- "cat wmi_command_log" (desired buffer name)
- Output will display something like this:
CMD ID = 16001
CMD = d 0 d8c6de24 e1cf
CMD ID = 16001
CMD = 8 0 0 0
CMD ID = 16001
CMD = d 0 d8c6de24 e1cf
CMD ID = 16001
Change-Id: I26895b480b9eaa400183c4667b9ac6980939cab9
Acked-by: Pratik Gandhi <prgandhi@qti.qualcomm.com>
CRs-Fixed: 1019979
Add host support for WMI POWER DEBUG command to control mac_core power features
for run time debugging.
Change-Id: Ifc810b24222507f1445a84a54caa8aee5e815b38
CRs-Fixed: 1007598