Graf commitů

189 Commity

Autor SHA1 Zpráva Datum
Himanshu Batra
7c3316638a qcacmn: Changes to support for vlan tagged traffic in IPA offload
IPA component changes to support for vlan tagged traffic in IPA offload

Change-Id: Ie28474537332d31f1ed1403ee0b774563a16a3ab
CRs-Fixed: 3229801
2022-07-21 11:02:26 -07:00
Devender Kumar
3035192763 qcacmn: Easymesh feature support
Current IPA/WLAN driver does not support the WDS feature.
Packets are dropped if they came via end-node which is not
in direct connection with root AP.

Fix is to enable WDS support and update the same to IPA
driver and create/update AST entries for end-node in
roaming, new src port learn case. Send WDS support to IPA
at wdi init and AP client connect event.

CRs-Fixed: 3226348
Change-Id: I26211613334b33d0d601629405597be329a56774
2022-07-13 02:37:14 -07:00
Devender Kumar
0fd34e472b qcacmn: Fix for netdev iface deregistration
IPA driver is not able to deregister the netdev iface
as the WLAN driver is unregistering the netdev before
giving event to the IPA driver, hence IPA driver is unable
to map the local iface mapping.
FIX is to pass the netdev interface id to IPA driver
so that IPA can get the correct netdev.

Change-Id: I6011bc01a56d90287e3a0f93b3cddf9e4b0fff9b
CRs-Fixed: 3165336
2022-06-03 04:41:32 -07:00
Devender Kumar
411e8fc3e0 qcacmn: Fix for IPA init path
After enable and disable of both radio, If second radio is enabled
then the instance_id from wlan driver is passed wrongly to IPA driver
which is in leading to initializion of first radio on IPA driver side.
Fix is to take the instace id based on psoc id and set the prod and cons
pipes based on instance_id instead of IPA given handle.

Change-Id: I26f4f3fbd23284e79a380d212ad07aceac50f053
CRs-Fixed: 3179306
2022-05-05 01:20:56 -07:00
Ananya Gupta
0afac9d12e qcacmn: Enable IPA if enabled in platform driver and ini
Enable IPA only if it is enabled from both platform driver
and ini file.
Change-Id: Ifc4bcd2c5b29b91c0eb72a844906cf11a65686e4
CRs-Fixed: 3148731
2022-04-12 06:31:43 -07:00
Himanshu Batra
5decc2b494 qcacmn: Use correct BW for ipa perf based on radio type
Use correct BW for ipa perf based on radio type

Change-Id: Ieabf287445de79e8c0a80416a39268a7334a82d5
CRs-Fixed: 3160927
2022-04-06 04:39:52 -07:00
Devender Kumar
b64b200ff8 qcacmn: Fix for early free of IPA global varible
With multiple radio supporting IPA offload path, the g_ipa_config
is getting free when doing wifi unload for single radio, which is
leading to an issue of early free of g_ipa_config variable.
Fix is check if all the soc are down and then only free the
global struct for IPA.

Change-Id: If8fbc7a72c91a26e6f9e680711cd58429f8a1e99
CRs-Fixed: 3137091
2022-03-09 05:37:51 -08:00
Devender Kumar
89fb12ba8a qcacmn: Fix for IPA deinit path
While Unloading WIFI ko IPA deinit path is called thrice
and leading to double free issue which is causing kernal
panic, FIX is call the IPA deinit only once for each soc/pdev.

Change-Id: I3b5bd500afabe45cb8d1062e2c82a4b338f28544
CRs-Fixed: 3130590
2022-03-07 23:46:18 -08:00
Devender Kumar
3d525ae1ce qcacmn: Code change in IPA component for 2x_pdev
2x_pdev changes are included mainly related to IPA
init for second pdev/radio and pipe enablement for
second pdev/radio, code changes can support n number
of radio for IPA, add support for new IPA API's.

Change-Id: Iac67e05e0f0098bdc24626fdbe59b89d768154cd
2022-02-16 16:57:01 -08:00
Himanshu Batra
289a751055 qcacmn: Update Quic Copyright year markings
Update Quic Copyright year markings

Change-Id: Idb93456c55e3c2d412a19147bb76ea737fe1eaf4
2022-01-20 11:04:32 -08:00
Jianmin Zhu
03f7a9accb qcacmn: Avoid spin_lock_bh in ipa wlan rx callback
Spin_lock_bh is introduced in ipa wlan rx path by security fix
I0c0bc6e60efa193126ba1e3eca36c5e02f7f76a3,
wlan_ipa_w2i_cb->cdp_peer_state_get->dp_get_peer_state->
dp_peer_find_hash_find->qdf_spin_unlock_bh(&soc->peer_hash_lock),
which make rx pkt aggregation failed, for each rx pkt, once
put into backlog queue, net_rx soft irq is scheduled to handle it.
For each rx msdu, ipa rx work thread, net_rx soft irq and iperf/app
thread are scheduled, which make rx throughput failed to meet KPI.

To avoid spin_lock_bh, don't call cdp_peer_state_get for each rx pkt,
only call 1 time, and save peer auth state in IPA context, for following
pkts, just get peer auth state from IPA context without spin_lock_bh.

Change-Id: I36196bab4626194bda254219c4c44dc4f029cff0
CRs-Fixed: 3098860
2022-01-20 10:01:03 -08:00
Himanshu Batra
003a476648 qcacmn: Use QAL API for RCU lock
Use QAL API for RCU lock to avoid GPL symbol usage in host driver

Change-Id: I0d71cc60072b6e3e3e7b067a522f2bdb38c8f457
2022-01-08 22:53:16 -08:00
Himanshu Batra
0dd1799d92 qcacmn: Increase IPA Max bandwidth to support high BW voting
Increase IPA Max bandwidth to support high BW voting

Change-Id: I80d127601d7c6c6feb214062cee6b35a3553f9de
2021-12-27 22:34:27 -08:00
Will Huang
f920f723a9 qcacmn: Extend IPA max intf number to 4
To support 4 SAP concurrency on sdxlemur, it is required to extend IPA
max interface number to 4.

wlan_ipa_iface_2_client is for legacy chip which support MCC, it is not
useful for nowaday chip, just extend it to 4 interface with same
content as other interface to pass ipa setup.

And Fix a static analyze error about session_id.

Change-Id: I5f2a4a0e3ff943e15ab9907e206b64423002eccb
CRs-Fixed: 3092428
2021-12-23 20:33:37 -08:00
Vevek V
03017ea28c qcacmn: handle_last_discon to disable IPA in dual SAP mode
In dual SAP connection, calls only disable_pipes to disable IPA,
whereas during second SAP disconnection, to enable IPA, calls
wlan_ipa_uc_handle_first_con, which sends ipa_set_active MSG
as true to FW, for both Tx/Rx to resume.
So calling wlan_ipa_uc_handle_last_discon in dual SAP mode,
which sends ipa_set_active MSG as false to FW, to suspend.

Change-Id: I224e94a003030f497e15f242634f15d9c71b9ef0
CRs-Fixed: 3094276
2021-12-22 06:43:27 -08:00
Himanshu Batra
a83d7d4111 qcacmn: Modify IPA object cleanup path
Currently ipa object cleanup is happening as part of pdev destroy.
Move it to deinit API of IPA

Change-Id: Id36648397102fa47ad1d29f99f2f152f40663f36
2021-12-20 22:45:17 -08:00
Himanshu Batra
78fb9d70d7 qcacmn: IPA changes to support SDX+Pine
IPA changes to support SDX+Pine.

Change-Id: I66ad2a2c3e2f142c54df3e35c867ee827ac1d687
CRs-Fixed: 3079952
2021-12-20 22:44:55 -08:00
Jianmin Zhu
5cc430c6ed qcacld-3.0: Fix Dual AP IPA failed when NAPI enabled
Fix AP+AP IPA offload path failure when NAPI over IPA enabled on mdm
platforms by adding QCA_CONFIG_RPS check.

QCA_CONFIG_RPS is same as CONFIG_RPS, default Y, but depend on CONFIG_SMP
as msm-5.4/net/Kconfig.

For AP+AP mode,
For LA,   CONFIG_SMP on,  then QCA_CONFIG_RPS on,  use IPA exception path.
For mdm,  CONFIG_SMP off, then QCA_CONFIG_RPS off,  use IPA offload path.

For IPA napi enable status check, just use qdf_ipa_get_lan_rx_napi,
don't need MACRO IPA_LAN_RX_NAPI_SUPPORT.

Change-Id: I6b16f2a830d4e7829c9e539896ed2977895d367e
CRs-Fixed: 2992393
2021-08-17 11:01:11 -07:00
Jia Ding
1f3afe0e38 qcacld-3.0: Prevent possible use-after-free of ipa_obj
wlan_ipa_uc_loaded_uc_cb is an API that is registered to IPA driver.
Therefore when IPA uC is ready, IPA driver is likely to invoke this CB
into our driver. If it is invoked after a WLAN idle shutdown, ipa_obj
use-after-free will happen because ipa_obj is destroyed as part of
shutdown.

g_ipa_is_ready flag is cleared after ipa_obj is destroyed. Therefore
fix is to add a ipa_cb_is_ready check in wlan_ipa_uc_loaded_uc_cb to
ensure ipa_obj is allocated and not freed.

Change-Id: Id422c0780ab864936d9bc812a6078ea4c20ef2af
CRs-Fixed: 2975057
2021-07-07 09:11:22 -07:00
Huashan Qu
61fda1ca3d qcacld-3.0: Fix KW issues in ipa files
Fix KW issues in ipa files, add ipa_obj null check before use.

Change-Id: Ie6f69fda7d50b8ece9917db43a838e0f3852393f
CRs-Fixed: 2979119
2021-07-01 13:44:16 -07:00
Vevek Venkatesan
f9c689d648 qcacld-3.0: reorder error checks in ipa_uc_ol_deinit
Reorder error checks in ipa_uc_ol_deinit, so it can
return immediately if IPA config is not enabled.

Change-Id: Ibf9f30650ce201eea562baf07b6dd9b83fd8dfff
CRs-Fixed: 2977474
2021-06-25 09:40:12 -07:00
Tiger Yu
2451f03cc8 qcacld-3.0: Enable the wlan IPA events for P2P GO/CLI mode for qca6390
Enable the wlan IPA events for P2P GO/CLI mode for qca6390 to avoid RX
packets get dropped due to IPA interface context is not created.

Change-Id: I1e2c5e4085874280779d8d8d07efdb1f33e6d90b
CRs-Fixed: 2853271
2021-06-22 13:14:06 -07:00
Rakesh Pillai
2f706c89a5 qcacld-3.0: Changes to enable BE/WCN7850 flags
Changes to enable compilation for beryllium target(chip WCN7850).

CRs-Fixed: 2888534
Change-Id: I7b3d252fc8550883a2d24b6beb2b78f482f5004b
2021-06-04 10:43:23 -07:00
Karthik Kantamneni
9c8d5d01a3 qcacld-3.0: Handle ipa pipes setup failure in wlan_ipa_uc_ol_init
When ipa setup pipes fails in wlan_ipa_uc_ol_init API,
tx buff mapping is not done but during deinit path
tx buff unmapping is called without mapping.

Fix this by resetting uc_loaded flag to false when ipa pipes
setup failure is encountered.

Change-Id: Ic34320e56cee9e60381d9203dd95e268d0ef392b
CRs-Fixed: 2957612
2021-05-31 13:30:15 -07:00
Yeshwanth Sriram Guntuka
6f18d8bc21 qcacld-3.0: Handle error cases in ipa_uc_loaded_handler
In the scenario where ipa connect pipes fails in the
wlan_ipa_uc_loaded_handler API, uc_loaded flag is not
reset. As a result of this, in wlan_ipa_uc_ol_deinit,
ipa_tx_buf_smmu_unmap and ipa_wdi_disconn_pipes APIs are
invoked incorrectly.

Fix is to set the uc_loaded flag to true only if connect
pipes and tx_smmu mappings are successful in
wlan_ipa_uc_loaded_handler. Also, initialize the uc_op_work
in wlan_ipa_uc_ol_init prior to the uc_loaded check to
avoid a possible race condition which could also result
in the similar issue as above.

Change-Id: I119170413cb9b5e03ec476c9a69d9effaa460c01
CRs-Fixed: 2940833
2021-05-31 07:47:15 -07:00
Tiger Yu
eec83a00b3 qcacld-3.0: Reset iface_context to NULL if max IPA interfaces reached
Reset iface_context to NULL if max IPA interfaces reached to avoid to
cleanup the wrong interface context when setup IPA interface failure.

Change-Id: I2f19d62b9f76f826c2275a0d889b5f5a0a48a01f
CRs-Fixed: 2931966
2021-05-17 23:43:36 -07:00
Yeshwanth Sriram Guntuka
f470c2d0d7 qcacld-3.0: Do not intrabss fwd EAPOL frames in IPA exc path
Do not intrabss forward EAPOL frames received in IPA
exception path.

Change-Id: I0be68ec2c186a7b64d4d2f1c3de7dbb20e49d860
CRs-Fixed: 2860225
2021-05-12 18:42:18 -07:00
Yeshwanth Sriram Guntuka
aa4b9f0745 qcacld-3.0: Drop non-EAPOL/WAPI frames from unauthorized peer
Drop non-EAPOL/WAPI frames from unauthorized peer received
in the IPA exception path.

Change-Id: I0c0bc6e60efa193126ba1e3eca36c5e02f7f76a3
CRs-Fixed: 2860206
2021-05-12 12:30:53 -07:00
Jianmin Zhu
259b15da1f qcacld-3.0: Avoid intra bss forwarding for adapter in sta mode
During DUT STA Rx over IPA, qdf_spin_unlock_bh is called as following.
__wlan_ipa_w2i_cb
->wlan_ipa_rx_intrabss_fwd
->cdp_ipa_rx_intrabss_fwd
->dp_ipa_rx_intrabss_fwd
->dp_vdev_get_ref_by_id
->qdf_spin_unlock_bh

netif_rx will raise NET_RX_SOFTIRQ in enqueue_to_backlog->
____napi_schedule even NAPI not enabled.
spin_unlock_bh will call do_softirq to execute NET_RX if NET_RX_SOFTIRQ
is raised.

If qdf_spin_unlock_bh is called in wlan_ipa_w2i_cb, once 1 skb received,
netif_rx is called, and NET_RX_SOFTIRQ and APP like iperf is scheduled,
too much context switch happens, CPU and power is wasted, Rx throughput
KPI failed on mdm platform which only has single 1.2G-1.5G CPU.

Fix it by avoiding intra bss forwarding for adapter in sta mode.

Change-Id: I264b14120b9998a56f6c1978f5a890615e6f837c
CRs-Fixed: 2915691
2021-05-11 10:13:39 -07:00
Ananya Gupta
a815a86774 qcacld-3.0: Enable IPA when loaded as module
Currently, module 'm' is converted to 'y' in QGKI when
compiling. In Waipio, GKI2 is present in which 'm'
is not being converted and hence IPA_OFFLOAD is not enabled.
To fix this, checking if CONFIG_IPA3 is either set to y or m
and then enabling CONFIG_IPA_OFFLOAD.
From Kernel 5.10, few IPA functions are depreciated for which
putting the depreciated functions under kernel check condition.

Change-Id: Iba3735692267130b76a8eaaaeeb53c263f8f0ddf
CRs-Fixed: 2921600
2021-05-06 06:23:38 -07:00
Nisha Menon
ea7435df63 qcacld-3.0: Stop BW monitoring before disabling IPA pipes
Stop the BW monitoring and stats collection for IPA before
disabling the pipes. Add this to the the case where WLAN
is in SSR and IPA pipes are being disabled when last client
is disconnecting.

Change-Id: I29e8ec6d73287cf601f829e74ba03aa611564d3a
CRs-Fixed: 2922079
2021-04-28 12:04:53 -07:00
Tiger Yu
8f8a2c9424 qcacld-3.0: Use the global lock instead of the ipa init_deinit_lock
Use the global lock instead of the init_deinit_lock in the ipa_obj to
avoid access the invalid memory with ipa_obj->init_deinit_lock since
the ipa_obj will be freed after driver shutdown.

Change-Id: I98a844456873f60213fae19c237bb08b76b4846c
CRs-Fixed: 2887487
2021-04-27 06:19:06 -07:00
Tiger Yu
a96072211d qcacld-3.0: Add is_2g_iface support in WLAN IPA
With IPA TX two pipes support, TX rings for 2G and 5G traffic
are separated. As a result, WLAN needs to let IPA driver
know if the interface registered to IPA is 2G or 5G so that
IPA could differentiate and designate the interface for the
correct IPA TX pipe.

In this change, a new param is_2g_iface is added for the
event interface between protocol and IPA component. And
this new param is applicable only STA_CONNECT and
AP_CONNECT where wlan will register interface details
including is_2g_iface to IPA driver.

For two pipes implementation, is_2g_iface piggy-backs
session_id when passing it to CDP layer. And CDP layer
needs to decode session_id and is_2g_iface.

Change-Id: I5e02ec6969bb2f77d6b40e89d5a9451a7bb0be9d
CRs-Fixed: 2702704
2021-04-20 03:32:15 -07:00
Vevek Venkatesan
3de08235c3 qcacld-3.0: add checks for deinit in ipa_register_ready_cb
Since stop_modules can happen in parallel due to idle shutdown,
add additional checks whether the IPA deinit happened already
or in-progress, in ipa_register_ready_cb.

Change-Id: Icc1973be3e90d4231addcebab55e621d19c5789c
CRs-Fixed: 2903419
2021-04-01 20:34:02 -07:00
Vevek Venkatesan
c38e06f149 qcacld-3.0: iface connection/disconnection mgmt in IPA
Debug change to crash if there is a mismatch in number of
connections and disconnections

Change-Id: I1bb9cac331c0cb491a0ba761a78969537185e414
CRs-Fixed: 2870628
2021-03-15 16:10:06 -07:00
Vevek Venkatesan
d30f59a33e qcacld-3.0: send eapol to network even if iface is not ready
Currently the first EAPOL pkt has been received before setup
IPA interface context for STA and getting dropped, so adding
changes to send the EAPOL pkt to network even if IPA iface
for STA is not ready.

Change-Id: I78e8c7ba82dabc73503fb75c39ac794c152303dd
CRs-Fixed: 2874358
2021-03-10 21:14:18 -08:00
Vevek Venkatesan
3bf3b2f205 qcacld-3.0: add NULL check before calling rps_enable cb
Add a NULL check before calling rps_enable callback
from ipa_set_rps_per_vdev and also add a check to avoid
disabling rps twice.

Change-Id: Ib63b2cda99aa332905df640ffa2d401c22845ad2
CRs-Fixed: 2876490
2021-02-18 14:14:02 -08:00
Vevek Venkatesan
775d1b4f40 qcacld-3.0: decouple bw monitor from WDI3_STATS_UPDATE
Decouple BW monitor from WDI3_STATS_UPDATE and add as a
separate feature flag WDI3_STATS_BW_MONITOR.

Change-Id: I77fb5658d995daceaada6a7d64f669da706ead9c
CRs-Fixed: 2868582
2021-02-02 13:08:13 -08:00
Jianmin Zhu
9f5af14e54 qcacld-3.0: Fix assert for sta ipa interface leaked
Once 1 roaming happened, ipa_ctx->sta_connected increased 1, and its
type was uint8_t, once increased to 256, overflow happened.
ipa_ctx->sta_connected became 0. then wlan_ipa_cleanup_iface couldn’t be
called to free old iface, but wlan_ipa_setup_iface was called to add new
iface, then there were 2 sta ipa interfaces with same session id 2.

When sta disconnected, only 1 ipa interface was freed, the other ipa
interface with session id 2 was left, but vdev 2 was deleted.

If 1st client connected DUT SAP, sta vdev 2 was found by mistake,
WMI_IPA_OFFLOAD_ENABLE_DISABLE_CMDID was sent to F/W to enable IPA path
for vdev 2, but vdev 2 wasn't existed, assert happened.

To fix it, when LFR3 roaming happens, when wlan_ipa_cleanup_iface is
called to free old iface, ipa_ctx->sta_connected is decreased by 1
first, when wlan_ipa_setup_iface is called to add new iface,
ipa_ctx->sta_connected is increased by 1, then
ipa_ctx->sta_connected reflects real STA number on DUT.

Change-Id: I5c91b3402dcfe8b1828d8d1f0701f66ca3c15d50
CRs-Fixed: 2859438
2021-01-22 12:07:25 -08:00
Zhaoyang Liu
8071f3b053 qcacld-3.0: fix build error about function redefinition
Fix the compilation error about redefinition of 'ipa_is_ready'.
This API is defined in <linux/ipa.h>. Rename the function name.

Change-Id: I206a221a5df95494e947483f2d133df6e5053220
CRs-Fixed: 2817997
2020-12-21 04:49:45 -08:00
sandhu
bc520323d5 qcacld-3.0: Remove unused IPA related memory in lahaina
Remove IPA related TX completion memory not used in lithium
and helium platforms.

Change-Id: Ibdce6169a1b5b95289fee80a36e2041cf785ad86
CRs-Fixed: 2808513
2020-12-17 23:45:51 -08:00
Karthik Kantamneni
2661d28260 qcacld-3.0: Fix uninitialized IPA MCC work cancellation
IPA MCC work is initialiazed only when uc code loaded successfully,
before canceling MCC work check for uc load success state.

Change-Id: I9af501d1b974d0da21891634bde2beafd69701b2
CRs-Fixed: 2822382
2020-11-23 13:19:23 -08:00
Yeshwanth Sriram Guntuka
dae61de6fd qcacld-3.0: Do not sched IPA UC op work when de-init is in progress
In the scenario where IPA UC ready work is processed after
wlan_ipa_uc_ol_deinit, triggered as part of idle shutdown,
there is a possibility for NULL wbm srng pointer derefernce
when setting the tx doorbell address.

Fix is to avoid scheduling UC op work when deinit is in
progress.

Change-Id: Ifa0908912b77f45b7d93c5f9c2f5aaf9e17685c5
CRs-Fixed: 2807218
2020-10-29 11:01:45 -07:00
Ananya Gupta
20c78eb1be qcacld-3.0: handle multiple sap if NAPI is enabled for IPA
Disable IPA when second SAP is turned on only if NAPI support
is enabled for IPA path.

Change-Id: Id30714156a959ed940d0480cb0e0d8db467c821f
CRs-Fixed: 2807158
2020-10-29 09:00:07 -07:00
Ananya Gupta
deb653e856 qcacld-3.0: Call cdp function to deregister IPA handler from pdev
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, cdp function is called during deinit to
deregister pdev->ipa_uc_op_cb and assign it NULL. Also, adding
NULL check in wlan_ipa_uc_op_cb. Also, registering ipa_uc_op_cb
after work is created so as to not hit condition where work is
scheduled before creation.

Change-Id: Ib79136b1122625079d8173a401dba5516126c621
CRs-Fixed: 2794663
2020-10-13 15:28:18 -07:00
Chaoli Zhou
13fd5d9173 qcacld-3.0: Enable/Disable intrabss for Rome IPA
In the Rome IPA case, it need wlanhost side to
enble/disable intrabss by WMI_VDEV_PARAM_INTRA_BSS_FWD.
If set to 1, the ip data transfer between two wlan clients
should be:
wlan client1 -> wlan fw -> wlanhost -> wlan fw-> wlan client2.
If set to 0, the ip data transfer between two wlan cleints
should be:
wlan client1 -> wlan fw -> ipa -> wlan fw -> wlan clients2.

Change-Id: I105ddbdb58f2cd01bdf94521bd7934508889de5d
2020-10-13 04:13:15 -07:00
Ananya Gupta
c66323f7a6 qcacld-3.0: Enabling RPS for STA in STA+SAP mode
In STA+SAP mode, RPS is enabled only for SAP interface and
not for STA interface resulting in low throughput as STA RX
will also take the IPA path.
To fix this, enable/disable RPS when SAP is turned on/off
when IPA is enabled

Change-Id: I67c0da2fbbb43bd7b34969bbb05c1127e60d5673
CRs-Fixed: 2783136
2020-10-09 02:14:18 -07:00
Guisen Yang
89442907ba qcacld-3.0: Change ROME IPA pipe names
With IPA team's request, in order to match
the pipe setting in the ipa driver of linux
kernel 4.14, we need to change ROME IPA
pipes from IPA_CLIENT_WLAN1_CONS and
IPA_CLIENT_WLAN1_PROD to IPA_CLIENT_WLAN3_CONS and
IPA_CLIENT_WLAN3_PROD. Meanwhile change MCC pipe
to IPA_CLIENT_WLAN2_CONS. Also add one feature
flag to avoid affecting other SPs

Change-Id: I99dd442801b1278742c19e4565da2201e1303607
2020-10-07 15:16:18 -07:00
Vevek Venkatesan
635c38abc7 qcacld-3.0: add cdp ops for IPA Tx buf smmu_unmapping
Add cdp ops for IPA Tx buf SMMU-S1 unmapping and
call unmap from ipa_uc_ol_deinit if IPA uc_loaded,
also assert if mapping/unmapping failed.

Change-Id: I79f293fcf5d6f02e3a01d6c8ff829f4ca87e76e8
CRs-Fixed: 2788811
2020-10-05 17:50:08 -07:00
Ananya Gupta
1e52915530 qcacld-3.0: Disable IPA when 2nd SAP is turned on
When 2nd SAP is turned on throughput is dropping as
rps is not getting enabled on wifi bridge interface.
A bridge interface is a virtual interface created,
when 2 SAP are turned on else, there is no bridge
interface.
To fix this, Disable IPA when 2nd SAP is turned
on, so that packets are not re-routed through IPA
which is reducing throughput.

Change-Id: I250056338cec0924e97ff79d2d9e6ac513f50d66
CRs-Fixed: 2769539
2020-09-28 00:02:57 -07:00