Initialize drop_bcn_on_chan_mismatch from INI
(CFG_DROP_BCN_ON_CHANNEL_MISMATCH) default value
Change-Id: I55c28aa5656ce6befe9cd3477ab0b14c99641cea
CRs-Fixed: 2375199
Currently, beacon or probe responses are dropped by the scan module
if the rates IE does not present. But, some AP's in 11n mode does not
add the rates IE.
So, it is not mandatory to have the rates IE in the beacon or probe
response.
Change-Id: Id57b2216c012d117cca1a3a2dbce9825d58b67c3
CRs-Fixed: 2376710
Per the Linux coding style both mixed-case names and so-called
Hungarian notation are frowned upon, so rename local variable
ptspecIE in send_set_ric_req_cmd_tlv() to align with the coding
style.
Note that there are other instances of mixed-case names in this
function, but these are global in scope and will need to be cleaned up
in a global effort.
Change-Id: I10780e2f751d1a1ed8f14a5ee4890794f498ec0b
CRs-Fixed: 2374719
Logs of the Spectral WMI interaction prints are under
OL_SPECTRAL_DEBUG_CONFIG_INTERACTIONS macro and is disabled by default.
As the WMI logs are already controllable at runtime from qdf_cv_lvl,
there is no need for OL_SPECTRAL_DEBUG_CONFIG_INTERACTIONS anymore.
Change-Id: I3b89192de4deb420d853631064c20add894fb1e3
CRs-Fixed: 2369846
When unit test command "iwpriv wlan0 wlan_suspend 0 0" is issued on
SAP-DUT (given that one REF-STA is connected), FW would go in WOW-D0
state. In this state, when HW receives the pkt from peer (REF-STA), it
generates MSI (REO-interrupt) and host process this pkt but it doesn't
wake-up the FW. Due to this situation, no TX is happening on SAP after
issueing wlan_suspend command.
This situation only happens when iwpriv command issued as this command
would be fool the FW by notifying that APSS is in power-down state but
actually it is not in active state. When APSS is really in power-down
state then up-on receiption of any RX pkt would wake-up the APSS and
this waking-up process would wake-up FW as well.
Fix this situation by sending explicit FW wake-up event.
CRs-Fixed: 2325860
Change-Id: I18937e5c568c742f838cdf3f815c2184a916283c
Rearrange the debug prints in the wmi path
so that valid information gets printed.
CRs-Fixed: 2368173
Change-Id: I8900eda444c9d1dee69f5c1e30662022580d2a7b
Splitting the wds srcport learn function to add:
1. A wrapper function where host extracts the required fields from
nbuf cb and rx_tlv header.
2. A common function which can be called from both host path
as well as offload path.
Change-Id: I2f2c0580c049f48395a3e0a265e3fb5d8aed6774
Add cdp api to check if tx desc pool available descriptor
threshold has reached.
Change-Id: Ie542d03dd865d32aa6e01da00328aa51728b4276
CRs-Fixed: 2369218
In function qdf_trace_msg_cmn va_end is called without va_start.
This can lead to delay in driver logging.
Change-Id: I9d2c9893037f5836cf902e6e311a0a521b8389e0
CRs-Fixed: 2373637
The last_ack_rssi value is made to get updated with the
correct value and the code fragment to reset it to 0 has
been removed.
Change-Id: I87f9ca788c92ae6ffc05b10faeb82e03024050ce
According to the ucode and mac team, the new TB-PPDU (UL OFDMA
Dat frame) from any other users using the TLV's fields below:
* PHYRX_RSSI_LEGACY (has a reception type field that is
set to UL-MU)
* PHYRX_RSSI_HT
* PHYRX_COMMON_USER_INFO (has a reception type field that is
set to UL-MU)
* PHYRX_USER_INFO (has more detailed modulation info)
* PHYRX_USER_INFO (Could be more than one)
...
* PHYRX_DATA
* PHYRX_DATA (Could be more than one)
CRs-Fixed: 2329959
Change-Id: Ib5fa1734a5525d2b2d1db8756166f259be30b9c0
Current driver doesn't check for any TX pending flag before doing
bus suspend.
Add a logic which is similar to existing helium platform.
Change-Id: I49d078c3b86fc0d9659fbbc2f3c1a604a79a9dff
CRs-Fixed: 2360189
Driver first try to find peer for beacon frames with addr2,
and if no peer is found it loop through peer list 2nd time
for addr1. For beacon addr1 is broadcast address and thus
peer will never be found with broadcast address.
Thus use addr1 to find peer only if addr1 is not broadcast
address.
Change-Id: I7e5c221ec7f93f878981f4eafb69935aafd64174
CRs-Fixed: 2373793
Validate num_mem_reqs should be less than TLV size in
extract_host_mem_req_tlv() function.
Change-Id: I88ebfc4bfe3abb9b0926990f5f777fc0d62e1fc1
CRs-Fixed: 2347667
Packetdump invokes legacy data path API directly without
considering underlying HW:
1. ol_register_packetdump_callback
2. ol_deregister_packetdump_callback
Global pointer pdev_txrx_ctx will be casted to struct ol_txrx_pdev_t
always even Lithium (use struct dp_pdev) underlying, that leads to
struct dp_pdev be overwritten unexpectly.
Wrap with cdp API to avoid.
About packet-dump feature:
It is one debug feature/requirement for Android N, to track/dump
TX/RX data/mgmt. packets during connection. This enhancement can help
in debugging connection related issues.
This change only touches its data packet callback register API.
Change-Id: Ie63fd2dfa909f89741ccf0c5131f6d3305093a3e
CRs-Fixed: 2366334
Packetdump invokes legacy data path API directly without
considering underlying HW:
1. ol_register_packetdump_callback
2. ol_deregister_packetdump_callback
Global pointer pdev_txrx_ctx will be casted to struct ol_txrx_pdev_t
always even Lithium (use struct dp_pdev) underlying, and overwrite
struct dp_pdev unexpected.
Wrap with cdp API to avoid.
Change-Id: I5c8847ddc51548e8854ba600bec99ce5200dd817
CRs-Fixed: 2366344
Adds support to use bangradarenh command to inject radar on the
secondary segment, if AP is operating in HT80+80 or HT160 mode.
Change-Id: I78ab3d3fcb3ecf5fee274911bf6dc48f74c53818
CRs-Fixed: 2359763
Rename target_if_open() to target_if_init() and target_if_close()
to target_if_deinit() as these handles global target_if
initializations.
Change-Id: I935eb6461f1774043adaa0539b6e8e0ea9824382
CRs-Fixed: 2352015
Local variable is used to store cpumask to send it to
irq_set_affinity_hint and qdf_dev_set_irq_affinity APIs.
This memory is used by the kernel later outside the
current contect resulting in invalid memory access.
Fix this by using global variables to store cpumask.
Change-Id: I086f40bf1b3499d2c2ccb1ce18140b2dc2761d04
CRs-Fixed: 2373548
Currently, the function causes the system false when
tries to release the spinlock because it holds the
spinlock longer than max_hold_time.
Change-Id: I90c78b7d8530cf3d1c224a693ab9f743f669b730
CRs-Fixed: 2371481
Each cmd in serialization list holds a vdev ref by
I8d573ff5a25e6dff928b2708e51ad7b97e292277. When vdev is
destroyed physically, it means vdev ref count is 0, all
serialization cmds of this vdev are released, don't need purge
in vdev destroy handler.
Change-Id: Iea75707c88154e1e3e87369285b82d1288523e22
CRs-Fixed: 2367242
During Zerowait DFS, when radar is hit, the NOL IE element that
is being sent to its uplink is prepared after the precac timer
is turned off, which returns wrong center frequency
information for secondary segment.
This center frequency is used to built the list of subchannels to
be sent to root, which in turn are all 0s.
Reorder the function calls to prepare the IE before the
precac timer is turned off when radar is found so that the
list of subchannels are built properly.
Change-Id: I74e800cbbeb3730c862a72ddbe8f78219592e343
CRs-Fixed: 2373036
When adding stop command to the serialization queue, if the command is
getting added to the pending queue of the vdev and there already existed
another stop command in the same queue, then return already exists as the
return value after the command is enqueued.
This to avoid notifying the vdev state machine with down event multiple
times though the command already in the pending queue would have notified.
Change-Id: I1830251c6b6c1fa2860f17a3ea8a869e8a3c87ff
CRs-Fixed: 2372563
When the command is released from the queue, it is added back to the global
pool. Reset the status flag of the command before releasing it back to the
global pool.
Change-Id: I3e51fc6aa0ffc0dafe87b838a5a256fc65d12d09
CRs-Fixed: 2372562
In the current implementation, if there are any active commands
in the vdev queues then on vdev destroy we remove the commands from
the respective queue and return the command to the global pool.
We should also stop the timers for the corresponding active commands,
otherwise the timeout cb may be called after the destroy is executed.
Change-Id: I51a1049e952073d83b5caee3835e4f9adca2bb9e
CRs-Fixed: 2365411
Per the Linux coding style both mixed-case names and so-called
Hungarian notation are frowned upon, therefore replace the identifier
pAddPeriodicTxPtrnParams everywhere it occurs.
Change-Id: Id80fc4cd22a8e4af125f01b937e03eea0b898283
CRs-Fixed: 2371906
This change will resolve displaying NSS value
in stats in case of HT. And also it will give
proper NSS value to calculate rate value. Modify MCS
value to match with Tx stats from firmware.
Also retain original MCS value to use in radiotap code
for HT case.
Change-Id: I4dad068262a5e9188a5935db6b2cbf8d14138e7e
Add INI support to disable spectral feature and do not process the spectral
user commands if spectral feature is disabled.
Change-Id: Id353131675454652d59fd5d5f8fd3d732a07b777
Acked-by: Shashikala Prabhu <pshashik@codeaurora.org>
CRs-Fixed: 2343947
Using both structure wmi_tdls_params and tdls_info if TDLS component
sets FW states, which will cause memory corruption potentially. Use
enum wmi_tdls_state as type of tdls state.
Change-Id: Ia1e78a5c6d8aee9ab5166c0704dd7827f42c2457
CRs-Fixed: 2372452
Disable adaptive dwell time for scans in not connected state to
optimize host scans for fast connection.
Change-Id: I28f762c3ee44ffc20a7565ccc1d8e40f16aedb4e
CRs-Fixed: 2357888
wmi_unified_bcn_buf_ll_cmd in wmi_unified.h had compilation flag
CONFIG_MCL. To get rid of the compilation flag, a separate header
file is created
Change-Id: I0bbcdf749f461f6880aacc1e3ef4e8e8fdc08ff6
CRs-Fixed: 2366773
Two new WCNSS_qcom.ini values "roam_score_delta" and
"roam_trigger_bitmap" are introduced. These values are sent to
firmware over the WMI command WMI_ROAM_AP_PROFILE over the
structure wmi_roam_cnd_scoring_param. The values to this
structure are populated from struct scoring_params.
Add roam_score_delta and roam_trigger_bitmap in scoring_param.
Populate these values from roam request to the structure
wmi_roam_cnd_scoring_param to be sent over the wmi command.
Change-Id: I012867e60ddf18a276250ef3bd27015f191d8a6a
CRs-Fixed: 2368263
Two new WCNSS_qcom.ini values "btm_validity_timer" and
"disassoc_timer" are introduced. These values are sent to
firmware over the structures wmi_roam_offload_tlv_param and
wmi_btm_config_fixed_param respectively. The values to this
structure are populated from struct roam_offload_scan_params.
Add rct_validity_timer in roam_offload_scan_params.
Populate these values from roam request to the structure
roam_offload_scan_params to be sent over the wmi command.
Change-Id: I6130e9966d520169b0f74b9726d35aa4fef6d81d
CRs-Fixed: 2369040
The firmware sends a new wmi event WMI_ROAM_BLACKLIST_EVENTID
to send the blacklist AP list.
Change-Id: I04fab853efbded48285ac063bb39c64f342c229b
CRs-Fixed: 2369107
Define WLAN_AKM_SUITE_FT_8021X and WLAN_AKM_SUITE_FT_PSK for kernel version
less then 4.14.
Change-Id: Id5518511bc4f639fff6d1e20bcf0aad973d9ab46
CRs-Fixed: 2362888
Add changes to send bss_load_bss_sample_time over the wmi
command WMI_ROAM_BSS_LOAD_CONFIG_CMDID.
Change-Id: Iab882f0474071458ed8b8876d8edda987b76e94d
CRs-Fixed: 2372167
Populate the load bss trigger configuration values based on the
ini values and send them to firmware.
Add wmi changes to send bss load trigger config to firmware.
Change-Id: Ib2e21904bc7b8d87e5f51824d2694b90a3ac53f2
CRs-Fixed: 2367773
Stats are updated periodically and
are categorized to soc, pdev, and
vdev
While the stats are getting updated
and if pdev, or vdev gets detached
in the same time, the stats handlers
will deference a NULL pointer
Hence Add basic sanity checks to DP
layer for soc, pdev and vdev inside
stat handlers
Change-Id: Ic4919b9c205679e1d6e7c571c577339be65c1bad
Rename CONFIG_QCN7605 as QCN7605_SUPPORT since QCN7605_SUPPORT
is already present/being used.
Change-Id: I1739bf86a9eb02aa6920f06bc929f686a5fa8f54
CRs-Fixed: 2369622
The following changes are made on APL9 regdomain:
* Include channel 149 in the supported channel list.
* Change the regulatory tx power for 5150-5250 frequency range to 23dBm.
Change-Id: I2bb01acbf60d814a2bc2c35a86f7f2c30583aad9
CRs-Fixed: 2366774