On 2/27/25 4:33 AM, Luca Weiss wrote:
As per downstream reference, max_writes should be 12 and max_reads
should be 13.
Fixes: b310de784bac ("net: ipa: add IPA v4.7 support")
Signed-off-by: Luca Weiss
Looks good.
Reviewed-by: Alex Elder
---
drivers/net/ipa/data/ipa_data-
d this to check what you're saying:
https://git.codelinaro.org/clo/la/platform/vendor/opensource/dataipa/-/blob/clo/main/drivers/platform/msm/ipa/ipa_v3/ipa_utils.c
This looks good, thanks a lot for the patch.
Reviewed-by: Alex Elder
---
drivers/net/ipa/data/ipa_data-v4.7.c | 12
ou were able to
get this working.
Reviewed-by: Alex Elder
---
drivers/net/ipa/data/ipa_data-v4.7.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ipa/data/ipa_data-v4.7.c
b/drivers/net/ipa/data/ipa_data-v4.7.c
index
e63dcf8d45567b0851393c2ce
On 2/28/25 4:52 PM, Jakub Kicinski wrote:
On Thu, 27 Feb 2025 11:33:39 +0100 Luca Weiss wrote:
couldn't be tested much back then due to missing features in tqftpserv
which caused the modem to not enable correctly.
Especially the last commit is important since it makes mobile data
actually funct
pose.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_main.c | 23 +++
1 file changed, 15 insertions(+), 8 deletions(-)
diff --git a/drivers/net/ipa/ipa_main.c b/drivers/net/ipa/ipa_main.c
index aad915e2ce523..9915603ed10ba 100644
--- a/drivers/net/ipa/ipa_main.c
+++ b/driver
") is used.
Signed-off-by: Alex Elder
---
.../devicetree/bindings/net/qcom,ipa.yaml | 19 +++
1 file changed, 19 insertions(+)
diff --git a/Documentation/devicetree/bindings/net/qcom,ipa.yaml
b/Documentation/devicetree/bindings/net/qcom,ipa.yaml
index da5212e693e91..7443490d4cc
Add the ability to define a "firmware-name" property in the IPA DT
node, specifying an alternate name to use for the firmware file.
Used only if the AP (Trust Zone) does early IPA initialization.
-Alex
Alex Elder (2):
dt-bindings: net: qco
On 4/15/21 10:40 PM, zhuguangqin...@gmail.com wrote:
From: Guangqing Zhu
This is not required here. -Alex
https://lore.kernel.org/netdev/d57e0a43-4d87-93cf-471c-c8185ea85...@ieee.org/
Coccinelle noticed:
drivers/net/ipa/ipa_smp2p.c:186:7-27: ERROR: Threaded IRQ with no primary
handler
On 4/14/21 9:29 AM, Joe Perches wrote:
On Wed, 2021-04-14 at 08:17 -0500, Alex Elder wrote:
Perhaps (like the -W options for GCC) there
could be a way to specify in a Makefile which checkpatch
messages are reported/not reported? I don't claim that's
a good suggestion, but if I could
On 4/6/21 12:21 PM, Joe Perches wrote:
On Tue, 2021-04-06 at 15:27 +0200, Greg KH wrote:
On Tue, Apr 06, 2021 at 06:42:59PM +0600, Zhansaya Bagdauletkyzy wrote:
Match next line with open parentheses by adding tabs/spaces
to conform with Linux kernel coding style.
Reported by checkpatch.
[]
di
Enable IPA for the SM8350 MTP.
Signed-off-by: Alex Elder
---
arch/arm64/boot/dts/qcom/sm8350-mtp.dts | 6 ++
1 file changed, 6 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/sm8350-mtp.dts
b/arch/arm64/boot/dts/qcom/sm8350-mtp.dts
index 6ca638b4e3213..93740444dd1ea 100644
--- a/arch
Add IPA-related nodes and definitions to "sm8350.dtsi", which uses
IPA v4.9.
Signed-off-by: Alex Elder
---
arch/arm64/boot/dts/qcom/sm8350.dtsi | 51
1 file changed, 51 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/sm8350.dtsi
b/arch/arm64/boo
Add IPA-related information to "sm8350.dtsi", and enable IPA for the
SM8350 MTP platform.
-Alex
Alex Elder (2):
arm64: dts: qcom: sm8350: add IPA information
arm64: dts: qcom: sm8350-mtp: enable IPA
arch/arm64/boot/dts/qcom/sm8350-mt
Add support for the SM8350 SoC, which includes IPA version 4.9.
Signed-off-by: Alex Elder
---
drivers/net/ipa/Makefile| 3 +-
drivers/net/ipa/ipa_data-v4.9.c | 430
drivers/net/ipa/ipa_data.h | 1 +
drivers/net/ipa/ipa_main.c | 4 +
4
Add support for "qcom,sm8350-ipa", which uses IPA v4.9.
Use "enum" rather than "oneOf/const ..." to specify compatible
strings, as suggested by Rob Herring.
Signed-off-by: Alex Elder
---
Documentation/devicetree/bindings/net/qcom,ipa.yaml | 11 ++-
1 fi
files to support this SoC will be sent separately and
will go through the Qualcomm tree.)
-Alex
Alex Elder (2):
dt-bindings: net: qcom,ipa: add support for SM8350
net: ipa: add IPA v4.9 configuration data
.../devicetree/bindings/net/qcom,ipa.yaml | 11
On 4/12/21 2:26 AM, Leon Romanovsky wrote:
On Sun, Apr 11, 2021 at 08:42:15AM -0500, Alex Elder wrote:
On 4/11/21 8:28 AM, Leon Romanovsky wrote:
I think *not* checking an available return value is questionable
practice. I'd really rather have a build option for a
"__need_not_chec
On 4/11/21 8:28 AM, Leon Romanovsky wrote:
>> I think *not* checking an available return value is questionable
>> practice. I'd really rather have a build option for a
>> "__need_not_check" tag and have "must_check" be the default.
> __need_not_check == void ???
I'm not sure I understand your sta
On 4/11/21 1:34 AM, Leon Romanovsky wrote:
> On Fri, Apr 09, 2021 at 01:07:19PM -0500, Alex Elder wrote:
>> In ipa_modem_stop(), if the modem netdev pointer is non-null we call
>> ipa_stop(). We check for an error and if one is returned we handle
>> it. But ipa_stop() never
Add support for the SC7280 SoC, which includes IPA version 4.11.
Signed-off-by: Alex Elder
---
drivers/net/ipa/Makefile | 2 +-
drivers/net/ipa/ipa_data-v4.11.c | 382 +++
drivers/net/ipa/ipa_data.h | 1 +
drivers/net/ipa/ipa_main.c | 4 +
4
m
metadata supplied with messages.
Currently, the RMNet driver does not support inline checksum offload.
This support is imminent, but until it is available, do not allow
newer versions of IPA to specify checksum offload for endpoints.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_endpo
in SDX55 versus the other two existing
platforms (SDM845 and SC7180):
- SDX55 uses a 32-bit Linux kernel
- SDX55 has four interconnects rather than three
- SDX55 uses IPA v4.5, which uses inline checksum offload
Signed-off-by: Alex Elder
---
drivers/net/ipa/Makefile| 3 +-
drivers/n
Add existing supported platform "qcom,sc7180-ipa" to the set of IPA
compatible strings. Also add newly-supported "qcom,sdx55-ipa",
"qcom,sc7280-ipa".
Signed-off-by: Alex Elder
---
Documentation/devicetree/bindings/net/qcom,ipa.yaml | 6 +-
1 file change
um offload used for IPA v4.5+, and
once those are present this capability will be enabled for IPA.
The third and fourth patches add configuration data for IPA versions
4.5 (used for the SDX55 SoC) and 4.11 (used for the SD7280 SoC).
-Alex
Alex Elder (4):
d
removed, resulting in some code simplification.
Add comments in these spots making it explicit that there is no
inverse.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_main.c | 29 +
drivers/net/ipa/ipa_mem.c | 9 +++--
drivers/net/ipa/ipa_mem.h | 5
it's only referenced inside
"ipa_endpoint.c".
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_endpoint.c | 6 +++---
drivers/net/ipa/ipa_endpoint.h | 2 --
2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ipa/ipa_endpoint.c b/drivers/net/ipa/ipa_endpo
cases.
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.c | 54 +--
1 file changed, 6 insertions(+), 48 deletions(-)
diff --git a/drivers/net/ipa/gsi.c b/drivers/net/ipa/gsi.c
index 1c835b3e1a437..9f06663cef263 100644
--- a/drivers/net/ipa/gsi.c
+++ b/driver
handling is needed at this spot.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_modem.c | 18 --
1 file changed, 4 insertions(+), 14 deletions(-)
diff --git a/drivers/net/ipa/ipa_modem.c b/drivers/net/ipa/ipa_modem.c
index 8a6ccebde2889..af9aedbde717a 100644
--- a/drivers/net/ipa
_stop()
before unregistering the network device.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_modem.c | 16 +---
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/drivers/net/ipa/ipa_modem.c b/drivers/net/ipa/ipa_modem.c
index 9b08eb8239846..8a6ccebde2889 100644
--- a/dr
ned-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-v3.5.1.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/ipa/ipa_data-v3.5.1.c
b/drivers/net/ipa/ipa_data-v3.5.1.c
index 57703e95a3f9c..ead1a82f32f5c 100644
--- a/drivers/net/ipa/ipa_data-v3.5.1.c
+++ b/drivers/net/ipa/ipa_dat
d-off-by: Alex Elder
---
drivers/net/ipa/gsi_trans.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ipa/gsi_trans.c b/drivers/net/ipa/gsi_trans.c
index 70c2b585f98d6..8c795a6a85986 100644
--- a/drivers/net/ipa/gsi_trans.c
+++ b/drivers/net/ipa/gsi_trans.c
@@
er warning.
-Alex
Alex Elder (7):
net: ipa: relax pool entry size requirement
net: ipa: update sequence type for modem TX endpoint
net: ipa: only set endpoint netdev pointer when in use
net: ipa: ipa_stop() does not return an error
net: ipa: get rid of empty IPA functions
Add IPA-related nodes and definitions to "sdx55.dtsi". The SMP2P
nodes (ipa_smp2p_out and ipa_smp2p_in) are already present.
Signed-off-by: Alex Elder
---
Note: This depends on this series posted by Mani Sadhasivam:
https://lore.kernel.org/linux-arm-msm/202104081704
The SDX55 is a 32-bit ARM device that includes IPA v4.5. Add
CONFIG_QCOM_IPA=m and CONFIG_RMNET=m to "qcom_defconfig".
Signed-off-by: Alex Elder
---
arch/arm/configs/qcom_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/configs/qcom_defconfig b/arch/a
The IPA core clock is required for SDX55. Define it.
Signed-off-by: Alex Elder
---
drivers/clk/qcom/clk-rpmh.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/clk/qcom/clk-rpmh.c b/drivers/clk/qcom/clk-rpmh.c
index c623ce9004063..552d1cbfea4c0 100644
--- a/drivers/clk/qcom/clk
the endpoints. Let's fix this and
use the correct ids.
Reported-by: Alex Elder
Signed-off-by: Georgi Djakov
Looks good to me.
Acked-by: Alex Elder
---
drivers/interconnect/qcom/sm8350.c | 80 +++---
1 file changed, 40 insertions(+), 40 deletions(-)
diff --
On 4/1/21 4:44 AM, Georgi Djakov wrote:
There is a link between the GEM NoC and C NoC nodes, which is currently
missing from the topology. Let's add it to allow consumers request paths
that use this link.
Reported-by: Alex Elder
Signed-off-by: Georgi Djakov
Thanks Georgi.
Tested-by:
arily obscures what a table entry *is*.
So get rid of IPA_TABLE_ENTRY_SIZE, and just use sizeof(__le64) in
its place throughout the code.
Update the comments in "ipa_table.c" to provide a little better
explanation of these table slots.
Signed-off-by: Alex Elder
---
drivers/net/ipa/i
Rename the SC7180 configuration data file so that its name is
derived from its IPA version.
Update a few other references to the code that talk about the SC7180
rather than just IPA v4.2.
Signed-off-by: Alex Elder
---
drivers/net/ipa/Makefile | 2 +-
.../{ipa_data-sc7180
EM_DL_NLO_TX, which can be used
for IPA v4.5+.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-sdm845.c | 12
drivers/net/ipa/ipa_endpoint.h| 11 ++-
2 files changed, 6 insertions(+), 17 deletions(-)
diff --git a/drivers/net/ipa/ipa_data-sdm845.c
b/drivers/net/i
nting an error if a DMA allocation fails.
Suggested-by: David Laight
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.c | 13 -
drivers/net/ipa/gsi_private.h | 2 +-
drivers/net/ipa/gsi_trans.c | 9 -
drivers/net/ipa/ipa_data.h| 4 ++--
drivers/net/ipa/ipa_ta
about the SDM845
rather than just IPA v3.5.1.
Signed-off-by: Alex Elder
---
drivers/net/ipa/Kconfig | 3 +--
drivers/net/ipa/Makefile | 2 +-
.../{ipa_data-sdm845.c => ipa_data-v3.5.1.c} | 22 ++-
drivers/net/ipa/ipa_dat
The backward compatibility register value is a platform-specific
property that is not stored in the platform data. Create a data
field where this can be represented, and get rid ipa_reg_bcr_val().
This register is not present starting with IPA v4.5.
Signed-off-by: Alex Elder
---
drivers/net
Fix all warnings produced when running:
scripts/kernel-doc -none drivers/net/ipa/*.[ch]
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi_private.h | 2 +-
drivers/net/ipa/gsi_trans.h | 5 +++--
drivers/net/ipa/ipa.h | 7 ---
drivers/net/ipa/ipa_cmd.h | 19
the size of a table
entry, using sizeof(__le64) in its place.
-Alex
Alex Elder (7):
net: ipa: fix all kernel-doc warnings
net: ipa: store BCR register values in config data
net: ipa: don't define endpoints unnecessarily
net: ipa: switch to version
On 3/26/21 12:05 PM, Rasmus Villemoes wrote:
> On 26/03/2021 17.31, Alex Elder wrote:
>> On 3/26/21 10:22 AM, Rasmus Villemoes wrote:
>>> Including a nul byte in the otherwise human-readable ascii output
>>> from this debugfs file is probably not intended.
>>
>
On 3/26/21 10:22 AM, Rasmus Villemoes wrote:
Including a nul byte in the otherwise human-readable ascii output
from this debugfs file is probably not intended.
Looking only at the comments above simple_read_from_buffer(),
the last argument is the size of the buffer (tmp_buf in this
case). So "
defines its supported number of resource groups. So get rid of
those two functions.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-sc7180.c | 4 +++
drivers/net/ipa/ipa_data-sdm845.c | 4 +++
drivers/net/ipa/ipa_data.h| 4 +++
drivers/net/ipa/ipa_resource.c| 50
The ipa_resource_src and ipa_resource_dst structures are identical
in form, so just replace them with a single structure.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-sc7180.c | 4 ++--
drivers/net/ipa/ipa_data-sdm845.c | 4 ++--
drivers/net/ipa/ipa_data.h| 18
-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-sc7180.c | 21 +++--
drivers/net/ipa/ipa_data-sdm845.c | 21 +++--
drivers/net/ipa/ipa_data.h| 4
drivers/net/ipa/ipa_resource.c| 20 ++--
4 files changed, 24 insertions(+), 42 deletions
n its configuration data file. This
permits each to have a distinct set of resources.
Shorten the data files slightly, by putting the min and max limit
values on the same line.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-sc7180.c | 35 --
drivers/net/ipa/ipa_data-sdm845.c
Pass the resource data pointer to ipa_resource_config_src() and
ipa_resource_config_dst() to be used for configuring resource
limits.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_resource.c | 14 ++
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ipa
IPA versions 3.0 and 3.1 support up to 8 resource groups. There is
some interest in supporting these older versions of the hardware, so
update the resource configuration code to program resource limits
for these groups if specified.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data.h
Replace IPA_RESOURCE_GROUP_SRC_MAX and IPA_RESOURCE_GROUP_DST_MAX
with a single symbol, IPA_RESOURCE_GROUP_MAX.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data.h | 11 +--
drivers/net/ipa/ipa_resource.c | 10 +-
2 files changed, 10 insertions(+), 11 deletions(-)
diff
its configuration data file.
Use these new symbolic values when specifying the resource group an
endpoint is associated with. And use them to index the limits
arrays for source and destination resources, making it clearer how
these values are used.
Signed-off-by: Alex Elder
---
drivers/net/ipa
, stating explicitly that code
assumes the first source and first destination member must have
numeric value 0.
Fix the kerneldoc comments for the ipa_gsi_endpoint_data structure.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data.h | 31 +++
1 file changed, 15
estination resource group (number 2) should have
non-zero limits programmed in some cases, to ensure correct operation.
Add these missing resource group limit definitions to the SDM845
configuration data.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-sdm
four places it occurs.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_resource.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ipa/ipa_resource.c b/drivers/net/ipa/ipa_resource.c
index 2f0f2dca36785..edd9d1e5cbb62 100644
--- a/drivers/net/ipa
Separate the IPA resource-related code into a new source file,
"ipa_resource.c", and matching header file "ipa_resource.h".
Signed-off-by: Alex Elder
---
drivers/net/ipa/Makefile | 2 +-
drivers/net/ipa/ipa_main.c | 148 +---
drivers/net/ipa/
ration data.
That way the number is based on the actual number of groups defined.
This removes the need for a sort of clunky pair of functions that
defined that information previously.
Finally, the last patch just increases the number of resource groups
that can be defined to 8.
- Add the definition of GSI_CH_DB_STOP channel command
- Add a couple of blank lines
- Move one comment and indent another
- Delete two unused register definitions at the end.
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi_reg.h | 14 +-
1 file changed, 9 insertions(+), 5 deletion
can be larger starting with
IPA v4.9, so create a function to encode that as well.
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.c | 7 +--
drivers/net/ipa/gsi_reg.h | 17 +++--
2 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ipa/gsi.c b
protocols. At this point we still use only GPI protocol.
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.c | 2 +-
drivers/net/ipa/gsi_reg.h | 38 +++---
2 files changed, 32 insertions(+), 8 deletions(-)
diff --git a/drivers/net/ipa/gsi.c b/drivers/net
require changes elsewhere in the
code.
Update rsrc_grp_encoded() to support these other IPA versions.
Add kerneldoc comments for the IPA IRQ numbers and sequencer type.
Fix a few spots where the version check should be less restrictive
(missed by an earlier patch).
Signed-off-by: Alex Elder
Starting with IPA v4.7, registers related to IPA interrupts are
located at a fixed offset 0x1000 above than the addresses used for
earlier versions. Define and use functions to provide the offset to
use for these registers based on IPA version.
Signed-off-by: Alex Elder
---
drivers/net/ipa
purpose for the register.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_main.c | 2 +-
drivers/net/ipa/ipa_reg.h | 32 +---
2 files changed, 30 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ipa/ipa_main.c b/drivers/net/ipa/ipa_main.c
index
-Alex
Alex Elder (6):
net: ipa: update IPA register comments
net: ipa: update component config register
net: ipa: support IPA interrupt addresses for IPA v4.7
net: ipa: GSI register cleanup
net: ipa: update GSI ring size registers
net: ipa: expand GSI channel types
drivers/net
On 3/24/21 12:12 PM, David Laight wrote:
I think 'count' is also required to be a power of 2.
so you could have checked 'addr & (size - 1)'.
It is required to be, and that is checked elsewhere
(in gsi_channel_data_valid()). And yes, size would
therefore be a power-of-2, and so your clever test
On 3/24/21 11:27 AM, David Laight wrote:
From: Alex Elder
Sent: 23 March 2021 01:05
It is possible for a 32 bit x86 build to use a 64 bit DMA address.
There are two remaining spots where the IPA driver does a modulo
operation to check alignment of a DMA address, and under certain
conditions
Define the ENDP_INIT_NAT register for setting up the NAT
configuration for an endpoint. We aren't using NAT at this
time, so explicitly set the type to BYPASS for all endpoints.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_endpoint.c | 17 -
drivers/net/ipa/ipa_
Increase the maximum number of channels and event rings supported by
the driver, to allow the maximum available on the SDX55.
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ipa/gsi.h b/drivers/net/ipa/gsi.h
the valid bits.
Shorten the name of the register (omit "_BASE") to avoid the need to
wrap the line in the one place it's used.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_mem.c | 6 --
drivers/net/ipa/ipa_reg.h | 14 --
2 files changed, 16 insertions(+), 4 del
Add IPA version definitions for all IPA v3.x and v4.x. Fix the GSI
version associated with IPA version 4.1.
Signed-off-by: Alex Elder
---
v2: - Add kernel-doc descriptions for ipa_version members.
drivers/net/ipa/ipa_version.h | 29 ++---
1 file changed, 22 insertions
ersion and subsequent versions. (E.g.,
"present for IPA v4.2+" instead of just "present for v4.2".)
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.c | 8
drivers/net/ipa/ipa_cmd.c | 26 +++---
drivers/net/ipa/ipa_endpoint.c | 25
.
-Alex
Alex Elder (6):
net: ipa: reduce IPA version assumptions
net: ipa: update version definitions
net: ipa: define the ENDP_INIT_NAT register
net: ipa: limit local processing context address
net: ipa: move ipa_aggr_granularity_val()
net: ipa: increase channels and
o "ipa_main.c" where it's used. TIMER_FREQUENCY is used only
by that function, so move that definition as well.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_main.c | 15 +++
drivers/net/ipa/ipa_reg.h | 12
2 files changed, 15 insertions(+), 12 de
the valid bits.
Shorten the name of the register (omit "_BASE") to avoid the need to
wrap the line in the one place it's used.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_mem.c | 6 --
drivers/net/ipa/ipa_reg.h | 14 --
2 files changed, 16 insertions(+), 4 del
o "ipa_main.c" where it's used. TIMER_FREQUENCY is used only
by that function, so move that definition as well.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_main.c | 15 +++
drivers/net/ipa/ipa_reg.h | 12
2 files changed, 15 insertions(+), 12 de
Define the ENDP_INIT_NAT register for setting up the NAT
configuration for an endpoint. We aren't using NAT at this
time, so explicitly set the type to BYPASS for all endpoints.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_endpoint.c | 17 -
drivers/net/ipa/ipa_
Increase the maximum number of channels and event rings supported by
the driver, to allow the maximum available on the SDX55.
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ipa/gsi.h b/drivers/net/ipa/gsi.h
Add IPA version definitions for all IPA v3.x and v4.x. Fix the GSI
version associated with IPA version 4.1.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_version.h | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ipa/ipa_version.h b/drivers/net/ipa
and events supported by the driver, sufficient for IPA
v4.5.
-Alex
Alex Elder (6):
net: ipa: reduce IPA version assumptions
net: ipa: update version definitions
net: ipa: define the ENDP_INIT_NAT register
net: ipa: limit local processing context
ersion and subsequent versions. (E.g.,
"present for IPA v4.2+" instead of just "present for v4.2".)
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.c | 8
drivers/net/ipa/ipa_cmd.c | 26 +++---
drivers/net/ipa/ipa_endpoint.c | 25
g are for power-of-2 values, and this
means the lower 32 bits of the DMA address can be used. This ensures
both operands to the modulo operator are 32 bits wide.
Reported-by: Randy Dunlap
Signed-off-by: Alex Elder
---
drivers/net/ipa/gsi.c | 11 +++
drivers/net/ipa/ipa_table.c
On 3/22/21 5:56 PM, Andrew Lunn wrote:
The solution is to create a user space tool inside the
drivers/net/ipa directory that will link with the kernel
source files and will perform all the basic one-time checks
I want to make.
Hi Alex
Have you found any other driver doing this? Where do they
On 3/22/21 12:16 PM, Randy Dunlap wrote:
On 3/22/21 12:52 AM, Stephen Rothwell wrote:
Hi all,
Warning: Some of the branches in linux-next may still based on v5.12-rc1,
so please be careful if you are trying to bisect a bug.
News: if your -next included tree is based on Linus' tree tag
v5.12-rc
On 3/22/21 9:17 AM, Leon Romanovsky wrote:
We are not talking about putting this tool in upstream repo, right?
If yes, please get buy-in from David/Jakub first.
I'll make the user space sanity check tool either way.
It would be nice to have it upstream, the checks
continue to be made as the ke
On 3/20/21 9:17 AM, Alex Elder wrote:
There is sanity checking code in the IPA driver that's meant to be
enabled only during development. This allows the driver to make
certain assumptions, but not have to verify those assumptions are
true at (operational) runtime. This code is
On 3/22/21 1:40 AM, Leon Romanovsky wrote:
I'd like to suggest a plan so I can begin to make progress,
but do so in a way you/others think is satisfactory.
- I would first like to fix the existing bugs, namely that
if IPA_VALIDATION is defined there are build errors, and
that IPA_VALIDATION
On 3/21/21 8:49 AM, Leon Romanovsky wrote:
> On Sun, Mar 21, 2021 at 08:21:24AM -0500, Alex Elder wrote:
>> On 3/21/21 3:21 AM, Leon Romanovsky wrote:
>>> On Sat, Mar 20, 2021 at 09:17:29AM -0500, Alex Elder wrote:
>>>> There are blocks of IPA code that sanity-check v
On 3/21/21 3:21 AM, Leon Romanovsky wrote:
On Sat, Mar 20, 2021 at 09:17:29AM -0500, Alex Elder wrote:
There are blocks of IPA code that sanity-check various values, at
compile time where possible. Most of these checks can be done once
during development but skipped for normal operation
Fix/expand some comments in "ipa_data.h".
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data.h | 23 ---
1 file changed, 12 insertions(+), 11 deletions(-)
diff --git a/drivers/net/ipa/ipa_data.h b/drivers/net/ipa/ipa_data.h
index caf9b3f9577eb..7816583fc1
f passes
that a packet takes through the IPA processing pipeline, and how
many of those passes end by supplying the processed packet to the
microprocessor.
The result expands the supported types beyond what is required for
now, but simplifies the way these are defined.
Signed-off-by: Alex Elder
---
e one spot it's needed.
We previously specified the sequencer type for RX endpoints with
INVALID values. These are no longer needed, so get rid of them.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-sc7180.c | 12 +---
drivers/net/ipa/ipa_data-sdm845.c | 10 --
drive
to be specified
in the platform configuration data.
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_data-sc7180.c | 1 +
drivers/net/ipa/ipa_data.h| 2 ++
drivers/net/ipa/ipa_main.c| 10 --
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/drivers/ne
type definition so it only
applies to TX endpoints (they aren't valid for RX endpoints). And
the last makes some minor documentation updates.
-Alex
Alex Elder (5):
net: ipa: use configuration data for QSB settings
net: ipa: implement MAX_READS_BEAT
Use the QSB configuration data in ipa_hardware_config_qsb(), rather
than determining in code what values to use based on IPA version.
Pass configuration data to ipa_hardware_config() so it can be passed
to ipa_hardware_config_qsb().
Signed-off-by: Alex Elder
---
drivers/net/ipa/ipa_main.c | 73
On 3/20/21 8:24 AM, Alex Elder wrote:
On 3/18/21 11:29 PM, Alex Elder wrote:
There is sanity checking code in the IPA driver that's meant to be
enabled only during development. This allows the driver to make
certain assumptions, but not have to verify those assumptions are
true at (operat
checking.
The checks are defined conditionally, but not consistently. In
some cases IPA_VALIDATION enables the optional checks, while in
others IPA_VALIDATE is used.
Fix this by using IPA_VALIDATION consistently.
Signed-off-by: Alex Elder
---
drivers/net/ipa/Makefile | 2 +-
drivers/net/ipa
atch so that it mentions
the changes made to ipa_cmd_table_valid().
-Alex
Alex Elder (2):
net: ipa: fix init header command validation
net: ipa: fix IPA validation
drivers/net/ipa/Makefile | 2 +-
drivers/net/ipa/gsi_trans.c| 8 ++---
1 - 100 of 1005 matches
Mail list logo