As part of removing gOclCfg ini, remove code used for it that is
no longer needed.
Change-Id: I00c32988cb3b852381be9810377aeefdd22454db
CRs-Fixed: 2791469
A htt message arrived after ipa context is freed as part of
deinitialization which was dereferenced by event handler
assigned to pdev->ipa_uc_op_cb, resulting in crash.
To fix this, during deinit pdev->ipa_uc_op_cb is deregistered
and assigned NULL before freeing up ipa context.
Change-Id: I8125cb104a538e88cda93960f7443129fabd850a
CRs-Fixed: 2793295
Define QCA vendor attribute in SET(GET)_WIFI_CONFIGURATION to
dynamically configure ANI level.
Change-Id: I422c6301f2e4c207b58a2d85199dd4a47f031236
CRs-Fixed: 2781047
log level for some frequent prints is set to info those
logs would be present in dmesg as well as driver logs
and System performance may get affected due to excessive
logging.
Avoid redundant logs which may affect system performance
and change default log level to debug.
Change-Id: Ic8669c2d7158200e5881bc1ffd15079c8d24af68
CRs-Fixed: 2794518
HTC runtime count is incremented after posting the HTT
ver req message to CE4. There could be possibility of
processing the ver response message from FW even before
htc_runtime_cnt is incremented. This can casue RTPM put
to not happen causing imbalance in get/put count.
Fix is to increment htc_runtime_cnt before enqueuing
the HTT message to CE.
Change-Id: Ib9b69910cd14193c41ecfee804b390f8a6cdef49
CRs-Fixed: 2794451
Handle disconnect requests in different states.
Take care of flushing scan and older connect and queueing
internal disconnect depending on the current state.
Change-Id: I08015d866fb629951b85f95fcd3cf0155e902082
CRs-Fixed: 2793228
Host gets spectral scan data after stopped spectral scan, then it
can't find out current vdev since vdev id is reset when stopping
spectral scan.
Change-Id: I082b784e998a7600c7f8ef14bf67b790942f3a5f
CRs-Fixed: 2779397
Add hal_rx_msdu_get_reo_destination_indication API for QCA6750
target. Add NULL check to avoid possible null pointer dereference
for targets API is not supported.
Change-Id: I2c78e16a6796b0b09834cb91749244357f3de753
CRs-Fixed: 2793284
Adds wlan_scan_get_scan_id, wlan_scan_init_default_params,
wlan_scan_register_requester and wlan_scan_unregister_requester
APIs to use from non-osif component, as ucfg_* API should only
be used from OSIF.
Change-Id: Ia90313030e853c957ca85e47ff2b67097490ef87
CRs-Fixed: 2791549
Introduce QCA_ATTR_ROAM_CONTROL_SCAN_SCHEME_TRIGGERS
that represents the triggers for which the scan scheme from
enum qca_roam_scan_scheme has to be applied.
Change-Id: I9d620a0ada16093042befaf8ae2e80437369c256
CRs-Fixed: 2785260
Add an assert check to __qdf_nbuf_add_rx_frag() to ensure
the number of fragments doesn't exceed the maximum number
of frags an skb can accommodate.
Change-Id: Idcfe8fdacaad581d7b2b0ce52fc7e8d757286ec8
CRs-Fixed: 2791955
The "radar on Agile detector" currently checks only if the detector
id in the radar found parameter is the same as the Agile detector id.
Increase the scope of the "radar on Agile detector" check by also
checking if the Agile PreCAC was enabled or if RCAC was enabled and
if PreCAC timer was running.
CRs-Fixed: 2770006
Change-Id: I064560f738bdcbbf4bcb45b37bae71a0829e4146
Add WMI command buffer address information(DMA/Physical addr) to
the WMI TX completion logging. This will help in debugging issues
when HW DMAs copies data from a different location than the one
configured.
Change-Id: I60586b865a97e7ff88e48606806ec151321ff0aa
CRs-Fixed: 2789492
Page fragments can be attached to the chained nbufs present in the
frag_list of the parent nbuf. Update the debug entries for such fragments
in different scenarios.
Change-Id: Ib114ec43dcb6cbcd707552bcca19f1ac0d3c2a22
CRs-Fixed: 2791903
Per channel maximum regulatory bandwidth depends on country
bandwidth settings and the reg-domain bandwidth settings.
Therefore, take channel bandwidth into account in channel
bonding calculations. Here including condition to check for
80p80 mode.
CRs-Fixed: 2781127
Change-Id: I5f9a5960f4df8170d39fa8d6ea195700db741f51
Compiling with gcc 9.3 will cause many implicit-fallthrough
compile errors.
Fix is to add keyword fallthrough to resolve such compile error.
Change-Id: I2e7dd1525861d951e3be44f6665e149499f0f5d6
CRs-Fixed: 2785178
Send unified ll_stats and get_stats request over qmi based on INI
configuration.
Change-Id: Icc43352c1ba19696148619100ee27fda4d5ffb41
CRs-Fixed: 2791043
For the Pine true 160MHz, the Host radar action receives radar parameters
based on the 160MHz synthesizer. Host internally converts these parameters
into 80MHz synthesizer parameters. This conversion API
dfs_translate_radar_params(), does not take care of Agile channel and is
based on the current channel.
Introduce a radar parameter translation API for radar detection on
160/165MHz Agile channel.
Change-Id: I97043da5837545da072d5da3139bc2cc9888aebc
CRs-Fixed: 2784493
Add support to dynamically initialize the CE for PKTLOG
and post buffers on demand.
This helps avoid unnecessary initialization of PKTLOG
ring and save the memory in lowmem platforms
Change-Id: Ib02153b3e7205be30b07e4a4763edf3374827328
Currently, there is no provision for dynamic dwell time control in 6G.
Update existing driver commands SETDWELLTIME and GETDWELLTIME to
support 6G.
Change-Id: Id284097e300f3ed45557ebe7ea2287e0da9a485b
CRs-Fixed: 2789720
Non-Tx beacon generated in driver contains TX
beacon capabilities instead of capabilities
advertised as part of non-TX profile in MBSSID IE.
Copy the non-TX beacon capabilities from MBSSID IE
profile to driver generated non-TX beacon.
Change-Id: Iecf63b959176bac8d60055e6b77082a6f3ec117c
CRs-Fixed: 2789394
Change ROME IPA pipes from IPA_CLIENT_WLAN1_CONS and
IPA_CLIENT_WLAN1_PROD to IPA_CLIENT_WLAN3_CONS and
IPA_CLIENT_WLAN3_PROD. The MCC pipe is changed to
IPA_CLIENT_WLAN2_CONS
Change-Id: I329eadc28e5730f6e9f73325ba41d69102dc89c0
Add API to do IPA Tx buf SMMU-S1 unmapping and register it
with cdp ops for Hastings, also assert if map/unmap failed.
Change-Id: I4071b5fccd84c3c97b9dccc40c6f798d70993189
CRs-Fixed: 2792170
Handle skb fraglist creation if parent skb has nr_frags.
Currently it is being handled if parent skb has nr_frags
associated with it and results into acessing invalid skb
region.
e.g:
To understand example, consider below points:
1. Parent frag has 40 bytes of data(qdf_nbuf_data())
2. Assume each frag is of size 10 bytes.
----------------------------------------------------------
|Parent_SKB -----> 1st Fraglist SKB - Cons SKB chained |
----------------------------------------------------------
| nbuf->Data : 40B | Nbuf->Data: 0B |
----------------------------------------------------------
| Nr Frags: 16 | Nr Frags: 10 |
----------------------------------------------------------
| Data Len: 160B (16 * 10) | Data Len: 100B (10 * 10) |
----------------------------------------------------------
| Nbuf->len: 200B ( 40 + 160) | Nbuf->len: 100B |
----------------------------------------------------------
While creating fraglist,
Parent nbuf -> data_len will become 100 Bytes (Because of assignment '=').
Logically it should be (160B + 100B). '+='
This change incorporate above handling.
Change-Id: I9f63035aa44e6f85a803511cb19632178d3dc2e5
Add sync API for disconnect to wait for disconnect to complete.
This can be used during vdev delete sequence to move the vdev and
connection manager SM to init state before VDEV is marked logically
deleted.
Change-Id: Id562e444cf1995d800b8268f906f811f143d0fc9
CRs-Fixed: 2790885
Handle connect requests in different states.
Take care of flushing scan and older connect and queueing
internal disconnect depending on the current state.
Change-Id: I5be3fcd75a1b27e9a9f4d7da3008b3b5b2224f7b
CRs-Fixed: 2790028
When a radar is detected by the Agile detector, the radar found center
frequency is same as the frequency configured to the Agile detector.
This is true for operation in 20/40/80MHz. When operating in 160MHz mode,
the Agile center frquency is the center frequency of the 160MHz channel
and when operating in restricted 80P80MHz channel the Agile detector is
configured with 5690MHz as center frequency 1 and 5775MHz as center
frequency 2. In these cases the radar found frequency should be based on
the segment id on which the radar is detected.
Modify the radar found found agile center frequency based on the
segment id.
While modifying the center frequency in the function to get the
bonding channels, it is to be noted that the API
dfs_get_bonding_channels_for_freq() is based on HK Agile DFS model.
That is, when the current channel is 80P80/160MHz mode, the agile
channel is 80MHz only. Whereas, for Pine, when the current channel
is 80P80MHz, the agile channel is 160MHz mode and when the current
channel is 160MHz, the agile channel might be 80P80MHz/165MHz channel or
160MHz channel.
Accommodate Pine ADFS considerations in
dfs_get_bonding_channels_for_freq().
Change-Id: I31710a73a79a52f29aa4229bc55e08b81311b8d6
CRs-Fixed: 2670679
If frames from the same FISA flow goes into different REO2SW rings, it
will result in an unexpected FISA behavior. This can happen if the
frames have been reinjected from FW offload module since FW will select
REO2SW1 ring. If the same flow frames hash to other REO2SW rings, then
the same flow UDP frames will do to different rings.
Reo_destination_indication of 6 indicates if the frame has been
reinjected from FW. If so, then continue to deliver the packet without
FISA.
Change-Id: I14a17a10d04909adfb30557d58beb1610e59bf70
CRs-Fixed: 2790292
In teardown API update logical delete state to peer
before deleting AST entries of peer. Also in delete
AST API use __dp_peer_get_ref_by_id to get the peer
Change-Id: I6db227a284cf3726cc241ebc98386230eca58fcf
Use CM_PREFIX_FMT and CM_PREFIX_REF to print connection mgr logs
instead of CM_PREFIX_LOG to avoid confusion.
Change-Id: I06c0009804d9c49da4916a120b6dc448ea28fdb6
CRs-Fixed: 2791198
QCA6490 expects twt_ap_pdev_count 2, to bring up twt sap on 2g.
Currently twt_ap_pdev_count is derived from num of radios and is
1 in case of MCC.
Configure twt_ap_pdev_count value equal to number of phy
advertised by firmware in wmi service ready ext event, configure
under flag WLAN_TWT_AP_PDEV_COUNT_NUM_PHY if defined in kbuild
Change-Id: Ib3fa81d140b473daa253e32cde2e11aad1b78b4d
CRs-Fixed: 2786512
In structure wlan_objmgr_psoc, member wlan_active_vdevs which is an
array of size WLAN_UMAC_PSOC_MAX_VDEVS and type uint8_t is neither
populated nor used anywhere. Remove this unused member from the
structure.
Change-Id: Ib2e49e42fe986358c26fa95a9287b20297b0eccf
Currently driver can handle only one radio stats event,
if the size of radio event exceeds more than the size which
can be accommodated in single WMI event in that case FW needs
to send multiple radio stats events.
Add support in host to send WMI capability to indicate FW
that host supports the multiple radio events.
Change-Id: Ifb89419715c87959095c0c88a23c8dd650d456e7
CRs-Fixed: 2783251
Currently disconnect is not handled in connection manager,
add support to handle disconnect in connection manager.
Change-Id: If3d5ac12300527ea0162efd955521711ed52c494
CRs-Fixed: 2785950
Add a new cdp datapath ops - mscs_ops for Mirrored
stream classification signalling feature. This function
will be invoked from ECM flow acceleration manager
Change-Id: I749623846395057b6ea8328c881efa8733700b0e