After completing NDP initiator and response between two NDP peers,
ping failure between the peers is observed due to mismatch in the
broadcast station id set in the driver and the broadcast MAC address
for the NDI. This sta id is eventually used as local id to fetch the
peer associated with the sta id and extract the vdev id from the peer
handler, which was pointing to the incorrect vdev leading to ping
packets drop in the firmware due to incorrect vdev id.
Assign the broadcast id for NDI same as the NDI self
peer's sta id, which will point to the correct vdev id.
Change-Id: I4a4eeae149a4347da236cb768cf41141d9efdaca
CRs-Fixed: 1059527
Currently ani_global.h is included in qca-cmn,
The change removes ani_global.h and there are
corresponding changes in Driver
Change-Id: I59684e475406386e250635bde88390797835c95f
CRs-Fixed: 1012452
Netdevice setup for the Monitor mode/Device mode are different
with Dynamic mode change the adapter is allocated for normal mode
and the device setup is done according to the normal modes.
Once the device mode change request for monitor mode comes via con_mode
the driver shall change to monitor mode, when the mode switch happens
presently driver is using the same setup as station in monitor mode.
Update the net device setup for the monitor mode once the device changes
to monitor mode.
Change-Id: I38ff0e31b80f8e800a37c10431902ab092b627ba
CRs-Fixed: 1064063
qcacld-2.0 to qcacld-3.0 propagation
In the scenario where association times out because device has missed
the assoc resp sent by peer, the peer assumes the device to be
connected and thus when device again sends the auth for fresh
connection the peer sends deauth. Thus fresh connection also fails.
To avoid this send deauth after association time out, to cleanup
the session in peer.
Change-Id: I1f7bfbe804da0dc92ce4ece87dc65954b086133c
CRs-Fixed: 987455
qcacld-2.0 to qcacld-3.0 propagation
Driver prints qpower disabled even if command for qpower enabled
is sent to firmware.
To avoid confusion print qpower enable/disable depending on the cmd
sent to firmware.
Change-Id: Ifb135d4ad1691d0e5024aa2ef31880be271cac9e
CRs-Fixed: 1044603
Presently, interface creation for the p2p_go is only supported from the
change interface. Add support for starting the adapter from the
add_virt_iface.
Change-Id: I09736226c8c4793e103d091caafee732e410a056
CRs-Fixed: 1064020
NDI interface creation is supported from the hdd_open_adapter, because of
invalidation of sessionId is done in the same function the session created
for NDI is getting overwritten.
To migitate the issue invalidate the sessionId once the adapter is created.
Change-Id: I0a4a116daae02b822b3e75c06e2b966be9f2e24b
CRs-Fixed: 1064031
NULL check is not required before freeing the memory allocated to
dfs_radartable.
Add the changes to remove unnecessary NULL checks.
Change-Id: I063c036024e6bfc235a418056d15843646bc5a3c
CRs-Fixed: 1063843
Some HDD suspend/resume logging messages are vague or include redundant
status codes. Update these messages to reflect what actually happened and
remove redundant status codes.
Change-Id: Ic3613ab37a4c118447ce14087c8e0b0b65a108d9
CRs-Fixed: 1062544
PM suspend and FW interrupt handler is running at same time
which is leading to multiple race conditions and host is missing
FW wake up interrupt which is causing APPS not waking up reliably.
Define .suspend_noirq and .resume_noirq callbacks and make
sure there is no pending FW interrupt before allowing PM
suspend to complete. Kernel PM suspend framework gives guarantee
that suspend_noirq and device interrupt handler can't run
simultaneously. This helps WLAN driver to reliably detect FW
wake up interrupt during PM suspend and fail PM suspend gracefully
if FW has requested for initial wake up.
Change-Id: Ib16a4e86f2378a8ca3f7eaada54fc7a3d67a886b
CRs-Fixed: 1060748
This reverts Change-Id I9e55f58aee29017fe09efeb5231b8be23053f7b7.
WLAN driver is blocked from promotion as the dependent kernel
change is not merged yet. Race condition between PM suspend and fw
irq will occur again after reverting.
Change-Id: Id6497b81c703b3751fba0a85890203e316608aab
CRs-Fixed: 1060748
Fix some remaining u32 paddr references in htt and make sure
that they are defined as qdf_dma_addr_t.
Fix print %x's for such variables, as per printk-formats
document (use %llx and explicitly typecast the vars to uul).
Change-Id: I4bc25e631986d8343a704ac48fb7bdfe1717b396
CRs-Fixed: 1064917
Make sure that the message to enable flow steering is
sent to the FW when NAPI or LRO is enabled (as opposed
to sending it when LRO is enabled only).
Change-Id: Iadb4a08b213c9c31921c520f663a8a5359b0444b
CRs-Fixed: 1064917
Add throughput policy handler which triggers irq/CPU mananagement
functions as required.
Adapt NAPI enablement code to recent changes to the init sequence.
Add to the new files to build.
Change-Id: I8c16667a08982e419c2f2152cf31afcd3a535eb4
CRs-Fixed: 1064917
Register suspend_noirq/resume_noirq callbacks to kernel. It will
make sure no wake up is pending from FW and if initial wake up is
received then failing it should trigger resume.
Change-Id: I3d3de3789a7d560ed171294fa9a1ebe6389746a7
CRs-Fixed: 1060669
This reverts Change-Id Ifce8edc5db8c0410c5cddd24aceb88675f8ced42.
WLAN driver is blocked from promotion as the dependent kernel
change is not merged yet. PM suspend_noirq/resume_noirq are
not available after reverting.
CRs-Fixed: 1060669
Change-Id: I0e015d664681c3e2ba57a26b04318d4aa13f0406
This reverts Change-Id Ic0627a14a65f07faeb5cfa0ec4fcdc85b79e3f63.
WLAN driver is blocked from promotion as the dependent kernel
change is not merged yet. Getting/setting unsafe channels and
dfs nol are no longer be present after reverting.
CRs-Fixed: 1061220
Change-Id: Id4e374310c5140cc7c5432183562998b2584853a
Under error conditions while suspending FW, the target-suspended flag
was not being cleared properly. This caused a situation where FW was
thought to be suspended, but was not. This prevented Apps from
suspending. Properly unsetting this flag under error conditions was
added in this change.
Change-Id: I77c57b3ee7a3327c181e3cc350a59cd1ee46df68
CRs-Fixed: 1063089
qcacld-2.0 to qcacld-3.0 propagation
If base channel is 5 GHz and when we support all 11a and 11g
rates, then there is no need to advertise 11b rates in TDLS setup
request/response frames.
Advertising 11b rates also leading to IOT issues with few third
party devices.
Fix is to ensure that 11b rates are not included if base channel is
5ghz.
Change-Id: I45590a4067194e8929bac225b1a82ec510903539
CRs-Fixed: 955788
qcacld-2.0 to qcacld-3.0 propagation
In the current implementation, DUT doesn't initialize the social
channels 1, 6 and 11 and doesn't support P2P discovery in 5GHz only
mode. So we don't see any AP's on 1, 6 and 11 channels during p2p scan.
Change-Id: I317119bbbc30d44214c11076faceba8101cf835a
CRs-Fixed: 962252
qcacld-2.0 to qcacld-3.0 propagation
Currently, since we are using same member from lim structure for p2p and
TDLS there could be possibilities that session id is overwritten
by p2p which would lead in not sending Tx completion indication from
lim to hdd thus leading to Tx timeout though we have received tx completion
indication from FW.
Fix is to create new session id for TDLS frames transmission
Change-Id: I1f78f24ac01e0b26c92238dbe831af88aa267bd5
CRs-Fixed: 991455
Bitmasks should use atomic operations when they can be
modified in multiple contexts. Also sanitize msdu_id length
to avoid potential memory corruption.
Change-Id: I119916dba883ab7aa27d8c42035af5588774f535
CRs-Fixed: 1061195
In function csr_roam_chk_lnk_disassoc_ind format
specifier to print sizeof() is for 64 bit systems
which leads in compilation error on 32 bit systems.
Fix this issue by common format specifier for both
32 and 64 bit compilation.
Change-Id: Ib3a5df243c8c29040321af4bdcf7230a6e5e0e52
CRs-Fixed: 1055344
Compilation error is seen for 32 bit builds in htt_tx_ipa_uc_wdi_tx_buf_alloc
as buffer_paddr, which is defined as unsigned long and will be a 32 bit bit
variable for 32 bit builds, is right shifted by 32 to get the high 32 bits
for fragment descriptor.
Instead of right shifting buffer_paddr by 32, use APIs lower_32_bits
and upper_32_bits.
Change-Id: I283792333075c11219a491d305b2822849c025f3
CRs-Fixed: 1062916
The htc_pm_runtime provide a convenience wrapper arround
the hif modules put/get apis
Change-Id: Ic2ef437390501e269278e68aa3a219364de8b2c0
CRs-Fixed: 1058274