mbox series

[net-next,0/6] net: ipa: add support for IPA v3.1

Message ID 20210621175627.238474-1-elder@linaro.org
Headers show
Series net: ipa: add support for IPA v3.1 | expand

Message

Alex Elder June 21, 2021, 5:56 p.m. UTC
This series adds support for IPA v3.1, used by the Qualcomm
Snapdragon 835 (MSM8998).

The first patch adds "qcom,msm8998-ipa" to the DT binding.

The next four patches add code to ensure correct operation on
IPA v3.1:
  - Avoid touching unsupported inter-EE interrupt mask registers
  - Set the proper flags in the clock configuration register
  - Work around the lack of an IPA FLAVOR_0 register
  - Work around the lack of a GSI PARAM_2 register

The last patch defines configuration data for this version of IPA.

Many thanks are due to AngeloGioacchino Del Regno and Jami Kettunen,
both associated with SoMainline.  Angelo first posted code to
implement most of what was required for this, and Jami has been
helpful testing these changes on his hardware.

					-Alex

Alex Elder (6):
  dt-bindings: net: qcom,ipa: add support for MSM8998
  net: ipa: inter-EE interrupts aren't always available
  net: ipa: disable misc clock gating for IPA v3.1
  net: ipa: FLAVOR_0 register doesn't exist until IPA v3.5
  net: ipa: introduce gsi_ring_setup()
  net: ipa: add IPA v3.1 configuration data

 .../devicetree/bindings/net/qcom,ipa.yaml     |   1 +
 drivers/net/ipa/Makefile                      |   6 +-
 drivers/net/ipa/gsi.c                         |  90 ++-
 drivers/net/ipa/gsi.h                         |   2 +-
 drivers/net/ipa/gsi_reg.h                     |   3 +-
 drivers/net/ipa/ipa_data-v3.1.c               | 533 ++++++++++++++++++
 drivers/net/ipa/ipa_data.h                    |   1 +
 drivers/net/ipa/ipa_endpoint.c                |  15 +
 drivers/net/ipa/ipa_main.c                    |  18 +-
 9 files changed, 629 insertions(+), 40 deletions(-)
 create mode 100644 drivers/net/ipa/ipa_data-v3.1.c

Comments

AngeloGioacchino Del Regno June 21, 2021, 6:42 p.m. UTC | #1
Il 21/06/21 19:56, Alex Elder ha scritto:
> Prior to IPA v3.5.1, there is no HW_PARAM_2 GSI register, which we
> use to determine the number of channels and endpoints per execution
> environment.  In that case, we will just assume the number supported
> is the maximum supported by the driver.
> 
> Introduce gsi_ring_setup() to encapsulate the code that determines
> the number of channels and endpoints.
> 
> Update GSI_EVT_RING_COUNT_MAX so it is big enough to handle any
> available channel for all supported hardware (IPA v4.9 can have 23
> channels and 24 event rings).
> 
> Signed-off-by: Alex Elder <elder@linaro.org>


Acked-by: AngeloGioacchino Del Regno 
<angelogioacchino.delregno@somainline.org>
patchwork-bot+netdevbpf@kernel.org June 21, 2021, 7:50 p.m. UTC | #2
Hello:

This series was applied to netdev/net-next.git (refs/heads/master):

On Mon, 21 Jun 2021 12:56:21 -0500 you wrote:
> This series adds support for IPA v3.1, used by the Qualcomm
> Snapdragon 835 (MSM8998).
> 
> The first patch adds "qcom,msm8998-ipa" to the DT binding.
> 
> The next four patches add code to ensure correct operation on
> IPA v3.1:
>   - Avoid touching unsupported inter-EE interrupt mask registers
>   - Set the proper flags in the clock configuration register
>   - Work around the lack of an IPA FLAVOR_0 register
>   - Work around the lack of a GSI PARAM_2 register
> 
> [...]

Here is the summary with links:
  - [net-next,1/6] dt-bindings: net: qcom,ipa: add support for MSM8998
    https://git.kernel.org/netdev/net-next/c/2afd6c8b43c1
  - [net-next,2/6] net: ipa: inter-EE interrupts aren't always available
    https://git.kernel.org/netdev/net-next/c/c31d73494fa5
  - [net-next,3/6] net: ipa: disable misc clock gating for IPA v3.1
    https://git.kernel.org/netdev/net-next/c/3833d0abd2c5
  - [net-next,4/6] net: ipa: FLAVOR_0 register doesn't exist until IPA v3.5
    https://git.kernel.org/netdev/net-next/c/110971d1ee4d
  - [net-next,5/6] net: ipa: introduce gsi_ring_setup()
    https://git.kernel.org/netdev/net-next/c/bae70a803a77
  - [net-next,6/6] net: ipa: add IPA v3.1 configuration data
    https://git.kernel.org/netdev/net-next/c/1bb1a117878b

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html