Graf commitů

819 Commity

Autor SHA1 Zpráva Datum
Dima Birenbaum
a752482c60 ipa: added more missing registers to ipa_reg_save struct
Added more DEBUG registers, checked and fixed existing structs
in ipa_reg_save

Change-Id: I95add61146e45d1faf8fd1c625cdb34749395f1e
Signed-off-by: Dima Birenbaum <quic_dbirenba@quicinc.com>
Signed-off-by: Ilia Lin <quic_ilial@quicinc.com>
2021-11-08 13:11:49 +02:00
Ilia Lin
5f16b09c14 ipa: added missing ipa 5.0 registers support
Added Q6 Channel and Event context registers.

Change-Id: I0541c2de555d5ad5d663321abbd3e5b3867274dd
Signed-off-by: Dima Birenbaum <quic_dbirenba@quicinc.com>
Signed-off-by: Ilia Lin <quic_ilial@quicinc.com>
2021-11-03 09:15:00 +02:00
qctecmdr
2c6c923133 Merge "msm: ipa: Add API to set IPA client filtering table SRAM priority high" 2021-11-01 23:36:46 -07:00
qctecmdr
900a7432c4 Merge "msm: ipa: includes raw notifier for rmnet_data" 2021-11-01 18:26:01 -07:00
Ilia Lin
6cf42d86a8 msm: ipa: Add debugfs support for Dual NIC
Retrieves debugfs data for both ethernet clients in case of Dual NIC mode.

Change-Id: I62eb6af1dedaa738674979520d393c753c0f0190
Acked-by: Eliad Ben Yishay <ebenyish@qti.qualcomm.com>
Signed-off-by: Ilia Lin <quic_ilial@quicinc.com>
2021-10-31 00:31:01 -07:00
qctecmdr
754f226ac2 Merge "dataipa: unlock qmi mutex before the workqueue" 2021-10-29 17:41:25 -07:00
Michael Adisumarta
ca5cf8cba8 msm: ipa: includes raw notifier for rmnet_data
Supports APIs for rmnet to register for buffer high/low
notification on WAN and WAN_COAL pipes.

Change-Id: I0b8fd7287f5a25a695243d2aaad93bbc8fb505c1
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-10-29 11:45:21 -07:00
qctecmdr
35e636b9af Merge "ipa: distribute non-hash flt table" 2021-10-28 16:30:22 -07:00
qctecmdr
ed5dc27be8 Merge "msm: ipa: use lower order pages" 2021-10-28 15:10:35 -07:00
Pooja Kumari
ec747710eb msm: ipa: Add sa410m to dataipa MAKEFILE
Compile IPA driver in sa410m.

Change-Id: I18efc61e54632590a31dfb4f7e9e11e286cf7529
Signed-off-by: Pooja Kumari <quic_kumarip@quicinc.com>
2021-10-28 03:32:28 -07:00
Ilia Lin
e2a5bd292a msm: ipa: Add API to set IPA client filtering table SRAM priority high
IPA client filtering table can reside in SRAM in case there is enough
space. Since SRAM is a limited resource it might also reside in slower
memory (DDR). This new API enables setting an IPA client's filtering
table SRAM priority to high. It also includes an IOCTL that enables
to use the API from user-space.
Moving an IPA client filtering table to SRAM greatly
improves access time to the filtering rules in it and therefore
the entire data path of this client.
Current limitation is this API needs to be called before filter
rules are installed.

Change-Id: I34814369b9c4f6ea535b739aed9a20df8606080b
Acked-by: Eliad Ben Yishay <ebenyish@qti.qualcomm.com>
Signed-off-by: Ilia Lin <quic_ilial@quicinc.com>
2021-10-28 10:03:27 +03:00
Ilia Lin
eab3627ab4 ipa: distribute non-hash flt table
Distribute the non-hashable tables between SRAM and DDR
instead of relocating them completely to the DDR.

The tables priority is set in first come - first served order.
A more sophisticated priority management may be introduced later.

Change-Id: I744cdfa928a780a7567fd8e6d8dc92d2c2cc6fd6
Signed-off-by: Ilia Lin <quic_ilial@quicinc.com>
2021-10-28 10:03:27 +03:00
Perry Randise
616d86d3be msm: ipa: eogre fixes/embellishments as follows:
1) Race condition fix: eogre_enabled set to true too late
   relative to ipacm induced ipa3_cfg_ep_metadat ioctl

2) Added more logging when eogre add/del mapping ioctl's arrive

Change-Id: I58c132a8d0b412c3dc8c5e26773fe358fe58df8f
Signed-off-by: Perry Randise <prandise@codeaurora.org>
2021-10-26 20:16:36 -07:00
Chaitanya Pratapa
d8ab3cd10e msm: ipa: use lower order pages
When order 3 pages are not available, make changes to use
lower order pages to ensure buffers are provided to HW.

Change-Id: I9eea764d678820b0d3f485525310c506ea29c45e
Signed-off-by: Chaitanya Pratapa <cpratapa@quicinc.com>
2021-10-26 12:29:42 -07:00
Michael Adisumarta
201ab59656 dataipa: unlock qmi mutex before the workqueue
Make sure to unlock mutex before adding qmi client req to work queue

Change-Id: I6c85017600c797b64063925be6717151ddb5a0c9
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-10-21 16:49:03 -07:00
Michael Adisumarta
75c23d0df7 msm: ipa: rmnet ll flow control support
Make changes to add flow control support for rmnet ll xmit path.
Following changes are added:-
1) Provide free descriptors on every xmit call.
2) Trigger a callback when number of free descriptors go above
a configured threshold.

Change-Id: I527b5cc396ed96176d059f3624b1a042ab7e56df
Signed-off-by: Chaitanya Pratapa <cpratapa@codeauora.org>
2021-10-21 12:25:52 -07:00
qctecmdr
37e14bab66 Merge "dataipa: add NTN3 support for spearhead" 2021-10-20 19:45:49 -07:00
qctecmdr
9ba1c31180 Merge "msm: ipa3: Fix to NULL terminate the header pointer in proc header table" 2021-10-20 18:58:43 -07:00
Michael Adisumarta
8156cc3eab dataipa: add NTN3 support for spearhead
Adding NTN3 ethernet client type support for spearhead stats.

Change-Id: Iec7ba1fff0a403066c41008965feaac26aa2dcc4
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-10-20 11:26:51 -07:00
Ashok Vuyyuru
2785d02d4b msm: ipa3: Fix to NULL terminate the header pointer in proc header table
While resetting the header rules if it find invalid header ID it
will return before freeting proc header table it was leading to use
after free when accessing the header pointer from proc header table.
Adding changes to NULL terminating header pointer in proc header table
after header table deleted from the list.

Change-Id: If270d855d3907e61368336316161a250053e1e62
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
2021-10-20 23:32:39 +05:30
Ashok Vuyyuru
90837d4b3a msm: ipa3: Fix to unlock mutex before return
Adding changes to unlock mutex before return from QMI
send request.

Change-Id: I39c32219db69fbc41b30507759bed16acb976005
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
2021-10-20 10:37:10 -07:00
qctecmdr
177ccbe352 Merge "msm: ipa3: add DL_NLO q6 pipe for IPA HW-5.0 MHI targets" 2021-10-18 21:47:00 -07:00
Michael Adisumarta
db86553f4e msm: gsi: add support for 2 new MSI interrupts
Add support for 2 new seperate MSI interrupts
to pin rmnet_ll and rmnet_ctl processing to seperate
CPUs.

Change-Id: I83977081a72d734622525732a97f8563fb530ade
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-10-13 18:57:56 -07:00
Praveen Kurapati
a07f95c2a0 msm: ipa3: add DL_NLO q6 pipe for IPA HW-5.0 MHI targets
Add ep configuration for DL_NLO q6 on IPA HW-5.0 MHI targets
which is enabled by default on Q6 driver. This will keep IPA LNX
flt table index bitmask consistent with IPA Q6 when committing
the rules.

Change-Id: Iec628bd1033c2041a8d53c7bd9af5576637ab379
2021-10-14 06:02:11 +05:30
Ilia Lin
885066266d Revert "ipa: distribute non-hash flt table"
This reverts commit b06baeebf1.
2021-10-11 10:46:46 +03:00
Ilia Lin
b96e26521a Revert "msm: ipa: Add API to set IPA client filtering table SRAM priority high"
This reverts commit fa34979af5.
2021-10-11 10:46:36 +03:00
qctecmdr
d52a00bcaf Merge "msm: ipa3: add back DL_NLO q6 pipe for IPA HW-5.1 targets" 2021-10-09 04:25:58 -07:00
Michael Adisumarta
95f843c8fd dataipa: increase QMAP rx buffer base size by 64
Buffer size provided from AP side is increased from 64 to 128.

Change-Id: I794dbf9d02bbadfd6a324b5d78bdb2f04b8ea8e9
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-10-08 16:13:47 -07:00
Michael Adisumarta
790078aa1d msm: ipa3: add back DL_NLO q6 pipe for IPA HW-5.1 targets
ep configuration for DL_NLO q6 on IPA HW-5.1 targets.

Change-Id: I351a99ae1e4ff841233843c9663274baf8cd9f2a
2021-10-08 15:23:36 -07:00
qctecmdr
765a0e4198 Merge "msm: ipa3: add DL_NLO q6 pipe for IPA HW-5.0 targets" 2021-10-07 17:27:53 -07:00
qctecmdr
d5c6a6e3fc Merge "msm: ipa3: Add change to not reset HOLB timer" 2021-10-07 12:17:56 -07:00
Jagadeesh Ponduru
884cc1f395 msm: ipa3: increasing the uC interrupt timeout value
Increased the timeout value of ipa3_uc_send_cmd
from 10 to 20 in ipa3_uc_debug_stats_alloc function.

Change-Id: I5be5839c60b84226872a22e8a05bb712e395e62d
Signed-off-by: Jagadeesh Ponduru <jponduru@codeaurora.org>
2021-10-07 11:18:52 +05:30
Michael Adisumarta
ab5a3fa6b1 msm: ipa3: add DL_NLO q6 pipe for IPA HW-5.0 targets
Add ep configuration for DL_NLO q6 on IPA HW-5.0 targets
which is enabled by default on Q6 driver. This will keep IPA LNX
flt table index bitmask consistent with IPA Q6 when committing
the rules.

Change-Id: I123ed19e0071430e04ff1414f2a5a2d74cd62771
2021-10-06 17:27:40 -07:00
qctecmdr
e282eb7abb Merge "msm: ipa: remove drop stats support for ADPL pipes" 2021-10-05 18:07:19 -07:00
qctecmdr
28c9a158d5 Merge "msm: ipa3: Add wait queue for the adpl" 2021-10-05 16:18:04 -07:00
Jagadeesh Ponduru
42ee3ab01c msm: ipa3: Add change to not reset HOLB timer
For Q6 endpoints add change to not reset the HOLB timer
value to zero instead of default value. Add change to
enable HOLB twice for IPA 4.x targets.

Change-Id: Ic9596e711b037d24ae25835cb6dd193ec040d723
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
Signed-off-by: Jagadeesh Ponduru <jponduru@codeaurora.org>
2021-09-30 17:29:08 +05:30
qctecmdr
f2bdd0e489 Merge "msm: ipa: add lookup table for pm client names" 2021-09-30 02:13:35 -07:00
Michael Adisumarta
7fb6d7e1f2 msm: ipa: add lookup table for pm client names
Adding lookup table to compare pm client names for stats module.

Change-Id: Ia54f6721fe0f1674e2c409b045c1066777bcfe82
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-09-29 12:47:52 -07:00
Michael Adisumarta
7f721b5ebb msm: ipa: adding debug prints for flow control enable/disable
Adding debug and register prints for flow control enable or disable.

Change-Id: Id6a79880340cc3e7503da6add3ce9aaf9d0a991d
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-09-27 12:03:59 -07:00
Ashok Vuyyuru
0816549094 msm: ipa3: Add wait queue for the adpl
add changes to wait queue for the adpl.

Change-Id: I5330cbf7fe1439e04c011c143bdd68657469c36e
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
2021-09-27 20:53:16 +05:30
qctecmdr
c40acf7a9b Merge "msm: ipa: overwrite end point delay setting workaround for APQ" 2021-09-23 18:39:04 -07:00
qctecmdr
7088990beb Merge "msm: ipa3: Adding changes to read the return code if IRQ not received" 2021-09-23 17:51:59 -07:00
Ashok Vuyyuru
0c2788282c msm: ipa3: Adding changes to read the return code if IRQ not received
In some cases GP_INT1 interrupt not receiving even GSI FW send the
interrupt. In those cases cases reading the flow control command return
code to check completion.

Change-Id: I329550ab94af9caac870c6050761d3701f0517cd
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
2021-09-23 22:37:05 +05:30
Michael Adisumarta
ea8fa99482 msm: ipa: remove drop stats support for ADPL pipes
Removing drops stats support for ADPL pipe from Apps
on both LA and LE as now it is taken care by Q6.

Change-Id: If997204145eaa9b4c15133bd238e59ad3e0dfd98
Signed-off-by: Michael Adisumarta <madisuma@codeauroa.org>
2021-09-22 16:52:00 -07:00
Michael Adisumarta
eb993784ea msm: ipa: add skb recycle if dma fails during replenish
Add skb recycle when dma mapping fails during rx cache
replenishing.

Change-Id: I4ea2b1581f4d9a404248ce39bb916e58e368b7e4
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-09-22 12:23:37 -07:00
qctecmdr
894fa78b04 Merge "msm: ipa: Fix to free up all pending EOB pages" 2021-09-21 03:29:30 -07:00
Michael Adisumarta
9e9014b796 msm: ipa: overwrite end point delay setting workaround for APQ
Overwrite ep flow control setting workaround for waipio APQ.

Change-Id: I004ab924bd5ae9797f93589fb98982ba1929714d
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
2021-09-20 12:54:45 -07:00
Ilia Lin
fa34979af5 msm: ipa: Add API to set IPA client filtering table SRAM priority high
IPA client filtering table can reside in SRAM in case there is enough
space. Since SRAM is a limited resource it might also reside in slower
memory (DDR). This new API enables setting an IPA client's filtering
table SRAM priority to high. It also includes an IOCTL that enables
to use the API from user-space.
Moving an IPA client filtering table to SRAM greatly
improves access time to the filtering rules in it and therefore
the entire data path of this client.
Current limitation is this API needs to be called before filter
rules are installed.

Change-Id: I80986a4c5f570c93e656f745664e275037a32c2c
Acked-by: Eliad Ben Yishay <ebenyish@qti.qualcomm.com>
Signed-off-by: Ilia Lin <ilialin@codeaurora.org>
2021-09-14 14:46:26 -07:00
Ilia Lin
b06baeebf1 ipa: distribute non-hash flt table
Distribute the non-hashable tables between SRAM and DDR
instead of relocating them completely to the DDR.

The tables priority is set in first come - first served order.
A more sophisticated priority management may be introduced later.

Change-Id: I77e5983914d86705c1ec13ab215b4c9416476d0f
Signed-off-by: Ilia Lin <ilialin@codeaurora.org>
2021-09-14 00:39:51 -07:00
Ilia Lin
fb6b6d379d msm: ipa: Interface names standardization
Use macros instead of magic strings for interfaces names.

Change-Id: I908f35725c72d425334beebd55bc0f0532e183ce
Acked-by: Eliad Ben Yishay <ebenyish@qti.qualcomm.com>
Signed-off-by: Ilia Lin <ilialin@codeaurora.org>
2021-09-12 10:27:54 +03:00