When the chip is power save mode it misses the gpio strobe
from the host platform. The TSF is not latched is not latched
in this case. As a result the reported TSF in the
WMI_VDEV_TSF_REPORT_EVENTID is not correct.
Fix this by adding a retry mechnism when the reported TSF is not proper.
Change-Id: Ica2d5c796e9d021b65e898ee3defe88d62183911
Validate the HE mcs map in assoc response frame while sending it
in peer assoc command to FW. If the valid MCS is not found in assoc
response frame then populate HE mcs map from beacon HE caps as the
session Nss is derived from beacon capabilities.
Change-Id: Icea452bc23b86f8a45f6096ffcacbc6f8545aab5
CRs-Fixed: 2566959
There are two path in code to deauth a associated STA in SAP mode:
1. Deauth issued from user space
2. Deauth issued from peer
Rectified the check for ongoing deauth before queuing for another.
Change-Id: Ib3f45968c770b1df25c77aed9fd1e3bc8edd6e72
CRs-Fixed: 2567087
SAE key derivation requires use of a secret element, PWE. This
element is deterministically discovered by repeatedly hashing
the password with some additional information until the
resulting hash is the abscissa of a point on the elliptic curve
(for ECC) or by exponentiating the hash digest to a constant to
produce an element (for FFC). This "hunting-and-pecking" loop
method is prone to side channel attacks.
To avoid this, a direct hashing to element technique in SAE is
introduced in IEEE P802.11-REVmd/D3.0. Support new RSNX IEEE
as part of the hash to element PWE derivation. The user space
sends the RSNX IE in the connect request.
Add support to save RSNXE from connect request and pack this IE
over SAE assoc request. Also send the IE in assoc IEs in RSO
commands.
Change-Id: I8eb756840400753794b1b80befe3a20f7d7c7705
CRs-Fixed: 2569596
The ANI level determines how well the device is coping with interference
in the wireless environment. Add support in the driver to query the ANI
level from the firmware and populate it for userspace entities to use.
Change-Id: I54934f670aa11737e11eca4d64e12f9dffb4f430
CRs-Fixed: 2554674
Currently host sends wdev as NULL to cfg80211_vendor_event_alloc,
this allows userspace to process nl_cmd for
QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING_INDEX event with P2P
interface instead of WLAN.
Set wdev with proper value to avoid processing nl_cmd with P2P
interface by userspace.
Change-Id: If0b99efdc76c1f89b6b07ee72edc6c5e2994a90c
CRs-Fixed: 2568776
In the adapter start phase, if meet chainmask configure
failure, and it should not block other parameters set
to fw, like some coex parameters that still needed.
Change-Id: I3c47ec233efc774e70205b27d2e0b5c6815bfe82
CRs-Fixed: 2572001
Enable Force wake feature through Kbuild
to access address range greater than BAR+4K
at runtime.
Change-Id: Ibe3c3b9b765c256493b1d5f9258e462760d45dc6
CRs-Fixed: 2557978
The query for an interface opmode returns the opmode
of a particular interface without checking if that
particular virtual interface handle is valid or not.
Fix this by checking the virtual interface handle
before trying to get the operation mode for that
particular interface.
CRs-Fixed: 2572981
Change-Id: I05b5f88455d6374adb41a037d3c5dda905de1497
Since it will takes long time to register spectral to Direct Buffer RX
component, and it will affect wmi ready event handling in pdev open.
So register spectral to dbr after wmi ready event handled.
Change-Id: I51844a708ed69144618e5b0846747601d4d96a9d
CRs-Fixed: 2560822
Add op_freq info for structure host_log_ibss_pkt_type and
host_event_wlan_connection_stats before indicate diag event.
Change-Id: Icbb69c0d93062654984b63e11969d0819818c56e
CRs-Fixed: 2554198
Fix one more scenario which is not covered by the change
Ib6a30057469d60efcc905d97b5234ea5a0e097a8
For some timing issue, HDD conn state is set to disconnecting
after hdd_association_completion_handler is called. So
hddDisconInProgress is not set and disconnect_comp_var will not
be completed in hdd_association_completion_handler.
To fix this issue, QDF_STATUS_CMD_NOT_QUEUED should be set only
when scan for ssid is in progress, with pSession->scan_info.profile
we can check if scan for ssid is in progress. So set
QDF_STATUS_CMD_NOT_QUEUED only when pSession->scan_info.profile
is set.
Also if disconnect from LIM was already in progress (i.e.
csr_is_conn_state_connected and
csr_is_roam_command_waiting_for_session are false and
pSession->scan_info.profile is set), return failure and wait for
WLAN_WAIT_DISCONNECT_ALREADY_IN_PROGRESS ms for the disconnect
to be completed.
Change-Id: Ib490021775a39614646f8e518860c878cc0fdaae
CRs-Fixed: 2564992
Some functions have been calling get_monotonic_bootime() directly, which
is now obsolete, having been replaced with ktime_get_boottime(). Change
calls to get_monotonic_boottime() with qdf_get_monotonic_boottime(),
which has now been updated to call ktime_get_boottime().
Change-Id: I9ce4bf2104077b6aacf841416997acb6f64b2841
CRs-Fixed: 2564544
Currently the 3 port concurrency combinations
which are not PORed should not be allowed to
connect or beacon as it could lead to functional
issues.
Fix is to bloack the 3 port concurrency which are
not PORed.
Change-Id: I792d0484da96fc0ae994fafa2c6b3ac787016815
CRs-Fixed: 2567322
Currently in SAP+SAP scenario the second ACS request
is moved to pending and is completed when the first
ACS is completed, but since FW serializes the scan
so the reuest for second ACS if not kept in pending
and sent down to FW would automatically be serialized
which would reduce latency in second SAP bringup.
Remove the pending work logic and implementation
to improve latency in second ACS scan.
Change-Id: I439398b406e9371a8e443f5409bd3f25b3062501
CRs-Fixed: 2570259
Self-peer holds a reference to the vdev object. As part
of new changes to send vdev delete to firmware as part
of vdev delete notification, the self peer reference needs
to be released 1st before sending the vdev delete to firmware.
Hence detach the peer deletion from the vdev deletion.
Change-Id: I8169fdd6cc6acadea9a89baf38bd273797e8bc9b
CRs-Fixed: 2565315
The function hdd_is_connection_in_progress() currently uses
hdd_for_each_adapter(), which is not working properly, resulting in it
checking for the NDI adapter only in an infinite loop. To solve this,
switch to using the newly created hdd_adapter_iterate() and its callback
function.
Change-Id: Ib6176ee268a3bf63ba9d29387d485cea6fc6c4fd
CRs-Fixed: 2561558
Currently the offloading of the NS and ARP to firmware is inefficient;
redundant caching is performed even if offload is not sent. This causes
wastage of resources and increases code complexity.
Introduce checks before caching and offload to ensure that the mentioned
inefficiencies are taken care of.
Change-Id: I6013810e1e08adb15c801f4fc21e1b50371bacda
CRs-Fixed: 2569763
In Monitor Mode, RSSI is always -96 for packets in TCPDUMP.
Populate the correct RSSI value in Monitor Mode.
Change-Id: Iba9fe7091043d27828f4742058ed3d389cde7e26
CRs-Fixed: 2568129
csr_set_ldpc_exception is already used channel frequency as input
parameter.
Call csr_set_ldpc_exception with channel frequency.
Change-Id: I0a30b558e570ed0e14f925d23241bdaf1b6f8a44
CRs-Fixed: 2568321
Use "CDS_BAND_2GHZ" to get 2G vht phy capabilities.
Also use "total_mac_phy_cnt" to enumerate mac_phy_cap
list to get correct 2G phy caps.
Change-Id: Ibced9b07370932b65a35f43aa579b3c28ea6e23b
CRs-Fixed: 2568539
Roaming to new AP is depends on the periodic scan which occurs every
10sec in fw. Due to the default value of sticky time (btm_sticky_time)
to BTM AP is 5 min, periodic roaming scan gets disabled in fw till
sticky timer expiry. So FW won’t trigger a periodic scan for 5 min,
in case of roaming to new AP by BTM.
In case if STA roams to new AP by BTM and Disassociation Timer
expires before Stick time, DUT is not able to roam to a candidate
AP till Stick time expiry.
In order to allow roaming just after disassociation timer expiry,
Make Stick time value to zero by default.
Change-Id: I0de09ec7134d543a9c934a03941bcdb57b983dc9
CRs-Fixed: 2566842
Currently the driver uses STR_EDCA_ANI_ACBK_LOCAL as the length
for all the EDCA_LOCAL string cfg items.
Use the corresponding string length for EDCA_LOCAL string.
Change-Id: Ia6fd19b90c3d6c2c6e7a12e9f44389db2bf160f8
CRs-Fixed: 2569514
The max values of the ini's CFG_SET_TSF_GPIO_PIN and
CFG_SET_TSF_IRQ_HOST_GPIO_PIN are set wrong. The default value for those
is higher than the max value.
Increase the max value to accommodate the correct range.
Change-Id: I7d5528801c3b0fc2480e00b28ab4eb8f0385930a
CRs-Fixed: 2570044
Currently, userspace is expecting SNR value through
NL80211_STA_INFO_SIGNAL for a disconnected client of SAP. But
the driver sends RSSI value by doing noise floor to the SNR value
received from firmware. Convert this back to SNR and provide to
userspace as per the definition of NL80211_STA_INFO_SIGNAL
and to be in sync with the existing implementation of userspace.
Change-Id: Ia360424a9d44e48fae5a85cf0d2c577e92cd93be
CRs-Fixed: 2552542