Currently logs for invalid channel width are set as error logs,
if invalid channel width is passed to this api very frequently,
error logs are getting flooded.
To address this issue make the logs as rate limit.
Change-Id: I493002b63ab72438cce2b61c858a32acf12ea6b6
CRs-Fixed: 2607361
Currently, sizeof(qdf_dma_addr_t) is 4 bytes, but IPA driver
and WLAN FW always use 8 bytes, we should follow up with them,
otherwise, the numbers of rx complete ring entries will not be
same in both sides. Meanwhile, for tx complete ring, during the
first time initialization, we fill the buffer address with 4
bytes, while GSI FW read 8 bytes address content from tx complete
ring, which should cause the GSI FW get invalid address on the half
way and cause the smmu fault issue. So fill 8 bytes length buffer
address to the tx complete ring can avoid such issue.
Change-Id: I61021627b634d4b1525727cc944ee410ed3154db
Send vdev param command to FW for STA vdev to set the packet
capture mode. Send the command only if packet capture support
is enabled.
Change-Id: I014acfc5d97a2bf00831259b9811b3c5bc7610a1
CRs-Fixed: 2528554
For NCHO disable, clear static and dynamic channels from roam scan
list in driver and firmware.
Change-Id: I24bca4dfb34895b4e86455dea40764af163544f1
CRs-Fixed: 2605299
In dp_rx_tm_suspend, suspend_event should be reset before waiting
for it. otherwise, the suspend function will be break.
Change-Id: I9132f45b02386c54fb8e27f0f7c2c71205450c9d
CRs-Fixed: 2606227
The current implementaion check for peer, vdev and pdev leaks on
psoc in order and if any leak is found for peer then QDF_DEBUG_PANIC
is called and vdev and pdev leaks are not checked. Similar is the case
if vdev leak is found, pdev leaks are not checked.
Invoke new API to check for all the object leaks and then result in panic.
Change-Id: Icf6622760f3646b82f893beb7415b95307e2ccd7
CRs-Fixed: 2604594
Currently cdp ops are given pdev/vdev/peer
handle as its arguments, which is directly
accessed in those APIs. This can cause a
race-condition in access of the respective
handles if it has been deleted in parallel.
Hence as a part of cdp convergence, pass only
the pdev_id or vdev_id or peer mac address,
which will be used to get the respective handles,
and hence avoiding the unwanted access of the
handles if it has been deleted.
Also remove the ops which are used to store
and retrieve such handles, that no more needed.
- register_peer
- clear_peer
- change_peer_state
- peer_get_ref_by_addr
- peer_release_ref
- peer_state_update
- get_vdev_by_sta_id
- register_ocb_peer
- get_peer_state
- get_vdev_for_peer
- update_ibss_add_peer_num_of_vdev
- remove_peers_for_vdev
- remove_peers_for_vdev_no_lock
- copy_mac_addr_raw
- add_last_real_peer
- is_vdev_restore_last_peer
- update_last_real_peer
- peer_detach_force_delete
Change-Id: I5134ca882f5fcf0e5941317e48712717eddb58fe
CRs-Fixed: 2541708
Add call to hdd_regulatory_chanlist_dump to dump
the curr_chan_list. It will be processed by regulatory
test case in whunt.
Change-Id: I6a35fc61f13f92874b24602a572ebb7bf6c03250
CRs-Fixed: 2606980
In OCE 4.2.1, REF AP sets MFPR = 0 and MFPC = 1, DUT STA
set MFPR = 0 and MFPC = 1 by default. The current driver
only add MBO IE when MFPR = 1 and MPFC = 1. Then the test
failed because of no MBO IE in DUT assoc request frame.
Driver needs to add MBO IE when MFPC = 1 in STA and AP
based on test plan spec. Add new API lim_get_bss_rmf_capable
to check MFPC and required mgmt cipher.
Change-Id: I54aaa096393702154d1d0df218ba334eda80b0aa
CRs-Fixed: 2604189
Use newly defined QDF API in CMN qdf_is_driver_unloading() to check
if driver unload is in progress in DSC.
Change-Id: I2958c6cc3ee6f2ac4302e2dbbf1c68d986fea175
CRs-Fixed: 2605706
Currently PM QoS is only enabled for kernel version 4.19.0 and below but
is supported and needed in kernel version 4.19.72. So enable PM QoS if
kernel version is below 5.4.0.
Change-Id: I440abe1cf9737447faff250b1973f1e6e2fe378e
CRs-Fixed: 2603396
Remove the unused suspend check is_lim_session_off_channel() logic
which is not been used.
Change-Id: Ie16475b324f7ba94b23a21c122865b742cace57b
CRs-Fixed: 2606230
Currently cdp ops are given pdev/vdev handle
as its arguments, which is directly accessed
in those APIs. This can cause a race-condition
in access of the respective handles, if it has
been deleted in parallel.
Hence as a part of cdp convergence, pass only
the pdev_id/vdev_id which will be used to get the
respective handles and hence avoiding unwanted
access of the handles if it has been deleted.
Also deleting few ops which stores and retrieves
such handles and adding ops to set/get pdev params.
- txrx_set_safemode
- txrx_set_drop_unenc
- txrx_get_pdev_param
- txrx_set_pdev_param
- wdi_event_sub
- wdi_event_unsub
Change-Id: Ib3511cbdead75b30e899dbf00f936ffdae316b71
CRs-Fixed: 2541657
Starting Kernel 4.19 IPA LAN RX supports NAPI polling
mechanism. Netdevs that hook into IPA need to call
netif_receive_skb() or similar to deliver the packet
to network stack instead of using netif_rx_ni().
IPA driver exports ipa_get_lan_rx_napi(void) API for
this purpose. If this API call returns true use
netif_receive_skb() or fallback on legacy api.
Add the changes under a feature flag IPA_LAN_RX_NAPI_SUPPORT.
The flag is enabled only for linux kernel version 4.19 and
above.
Change-Id: I3bf200c993461e45da0d07697678c634760e9a89
CRs-Fixed: 2560360
Previously vdev trans will be rejected if psoc in trans. but
it causes issue when __hdd_psoc_idle_shutdown is in psoc trans,
if ifconfig comes here, the ifconfig will fail.
Add checking if psoc trans in driver recovering and unloading,
if yes, it will be safe to reject vdev trans, otherwise, we should
let vdev trans waiting for psoc trans.
At the same time, we also need to make sure driver state has been
set before psoc trans when unloading.
Change-Id: Ic47eebef76b8eadc90780b74f75d4ebef73b822d
CRs-Fixed: 2601435
Set ipa_disable flag in the target_resource_config,
which is decided by target Genoa need to support IPA
or not.
Change-Id: I1a66c83ea36d5402880ce62d66ea3e633049479a
CRs-Fixed: 2594726
For SAP, IBSS, and NaN mode, the PCIe link down should be prevented
when first remote peer joins the network to avoid any throughput
latencies.
Change-Id: Iabea78b3a4916cce7e63eadce2e1ce2874cf2c88
CRs-Fixed: 2605563