All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lorenzo Bianconi <lorenzo@kernel.org>
To: Andrew Lunn <andrew+netdev@lunn.ch>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>
Cc: Christian Marangi <ansuelsmth@gmail.com>,
	Benjamin Larsson <benjamin.larsson@genexis.eu>,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org, netdev@vger.kernel.org,
	devicetree@vger.kernel.org, Xuegang Lu <xuegang.lu@airoha.com>,
	Madhur Agrawal <madhur.agrawal@airoha.com>
Subject: Re: [PATCH net-next v8 00/10] net: airoha: Support multiple net_devices connected to the same GDM port
Date: Wed, 27 May 2026 12:16:01 +0200	[thread overview]
Message-ID: <ahbEYeiSzB9h3VgQ@lore-desk> (raw)
In-Reply-To: <20260519-airoha-eth-multi-serdes-v8-0-6bd70e329df6@kernel.org>

[-- Attachment #1: Type: text/plain, Size: 6764 bytes --]

> EN7581 or AN7583 SoCs support connecting multiple external SerDes (e.g.
> Ethernet or USB SerDes) to GDM3 or GDM4 ports via a hw arbiter that
> manages the traffic in a TDM manner. As a result multiple net_devices can
> connect to the same GDM{3,4} port and there is a theoretical "1:n"
> relation between GDM ports and net_devices.
> 
>            ┌─────────────────────────────────┐
>            │                                 │    ┌──────┐
>            │                         P1 GDM1 ├────►MT7530│
>            │                                 │    └──────┘
>            │                                 │      ETH0 (DSA conduit)
>            │                                 │
>            │              PSE/FE             │
>            │                                 │
>            │                                 │
>            │                                 │    ┌─────┐
>            │                         P0 CDM1 ├────►QDMA0│
>            │  P4                     P9 GDM4 │    └─────┘
>            └──┬─────────────────────────┬────┘
>               │                         │
>            ┌──▼──┐                 ┌────▼────┐
>            │ PPE │                 │   ARB   │
>            └─────┘                 └─┬─────┬─┘
>                                      │     │
>                                   ┌──▼──┐┌─▼───┐
>                                   │ ETH ││ USB │
>                                   └─────┘└─────┘
>                                    ETH1   ETH2
> 
> This series introduces support for multiple net_devices connected to the
> same Frame Engine (FE) GDM port (GDM3 or GDM4) via an external hw
> arbiter. Please note GDM1 or GDM2 does not support the connection with
> the external arbiter.

In order to make easier the inclusion of this series I am splitting it in two
smaller ones:
- a preliminary rework series (just code adjustments)
- a smaller series where we introduce the real support for multiple net_devices
  connected to the same FE GDM port.

This way we can unlock even other patches in my queue.

Regards,
Lorenzo

> 
> ---
> Changes in v8:
> - Fix dts schema issues reported by sashiko.
> - Fix possible NULL-pointer dereference in patch 2/10.
> - Fix max mtu computation in airoha_dev_change_mtu().
> - Link to v7: https://lore.kernel.org/r/20260516-airoha-eth-multi-serdes-v7-0-99e0093303e2@kernel.org
> 
> Changes in v7:
> - Fix dma_sync_single_for_cpu() size in airoha_qdma_rx_process().
> - Fix hw stats reset.
> - Fix typos.
> - Add fix for airoha_tc_remove_htb_queue queue index.
> - Fix dts schema issues.
> - Remove hw stats patch from the series.
> - Link to v6: https://lore.kernel.org/r/20260511-airoha-eth-multi-serdes-v6-0-c899462c4f75@kernel.org
> 
> Changes in v6:
> - Reconfigure REG_GDM_LEN_CFG() whit max 'running' MTU in
>   airoha_dev_stop().
> - Fix port staring MIB counters in airoha_update_hw_stats().
> - Fix regression in TC_HTB_NODE_MODIFY command.
> - Fix length check in airoha_qdma_rx_process().
> - Fix dts schema.
> - Link to v5: https://lore.kernel.org/r/20260509-airoha-eth-multi-serdes-v5-0-805e38edc2aa@kernel.org
> 
> Changes in v5:
> - Move qos_sq_bmap bitmap in airoha_gdm_dev struct.
> - Unregister netdevice before running of_node_put().
> - Move stat MIB counters in airoha_gdm_dev struct.
> - Fix airoha_ppe_init_upd_mem() mac address configuration.
> - Do not return -EBUSY if we try to decrease configured MTU of a shared
>   GDM port, just skip hw configuration.
> - use int instead of atomic_t for GDM port users.
> - Add patch "net: airoha: Reserve RX headroom to avoid skb reallocation"
> - Fix typos.
> - Link to v4: https://lore.kernel.org/r/20260507-airoha-eth-multi-serdes-v4-0-af613b61ae02@kernel.org
> 
> Changes in v4:
> - Make ethernet-port property available just for GDM3 and GDM4 in DTS
>   specification
> - Move cpu_tx_packets, fwd_tx_packets qos_sq_bmap fields in airoha_qdma
>   struct
> - Fix of_node leak removing the net_device in airoha_remove() or
>   airoha_probe() error path
> - Fix nbq backward compatibility
> - Link to v3: https://lore.kernel.org/r/20260406-airoha-eth-multi-serdes-v3-0-ab6ea49d59ff@kernel.org
> 
> Changes in v3:
> - Fix MTU and VIP configuration when the GDM port is shared between
>   multiple net_devices.
> - Add sanity check for nbq parameter.
> - Add missing of_node_get() for net_device np node.
> - Check if GDM port is shared before decresing device MTU.
> - Move port forward configuration in airoha_dev_stop() before
>   configuring DMA tx/rx engine.
> - Introduce PRIV_FLAG_WAN parameter.
> - Link to v2: https://lore.kernel.org/r/20260401-airoha-eth-multi-serdes-v2-0-ac427ae4beeb@kernel.org
> 
> Changes in v2:
> - Rename multiplexer in arbiter in the commit logs.
> - Rebase on top of net-next main branch.
> - Add missing PPE cpu port configuration for GDM2 when loopback is
>   enabled.
> - Link to v1: https://lore.kernel.org/r/20260329-airoha-eth-multi-serdes-v1-0-00f52dc360ca@kernel.org
> 
> ---
> Lorenzo Bianconi (10):
>       dt-bindings: net: airoha: Add GDM port ethernet child node
>       net: airoha: Introduce airoha_gdm_dev struct
>       net: airoha: Move airoha_qdma pointer in airoha_gdm_dev struct
>       net: airoha: Rely on airoha_gdm_dev pointer in airoha_is_lan_gdm_port()
>       net: airoha: Move qos_sq_bmap in airoha_gdm_dev struct
>       net: airoha: Move {cpu,fwd}_tx_packets in airoha_gdm_dev struct
>       net: airoha: Support multiple net_devices for a single FE GDM port
>       net: airoha: Do not stop GDM port if it is shared
>       net: airoha: Introduce WAN device flag
>       net: airoha: Support multiple LAN/WAN interfaces for hw MAC address configuration
> 
>  .../devicetree/bindings/net/airoha,en7581-eth.yaml |  56 +-
>  drivers/net/ethernet/airoha/airoha_eth.c           | 833 +++++++++++++++------
>  drivers/net/ethernet/airoha/airoha_eth.h           |  47 +-
>  drivers/net/ethernet/airoha/airoha_ppe.c           |  43 +-
>  4 files changed, 702 insertions(+), 277 deletions(-)
> ---
> base-commit: 7a348a95f696d20f15c776de4df8b4415bcf3d77
> change-id: 20260324-airoha-eth-multi-serdes-fb4b556ee756
> 
> Best regards,
> -- 
> Lorenzo Bianconi <lorenzo@kernel.org>
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

      parent reply	other threads:[~2026-05-27 10:16 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-19  8:57 [PATCH net-next v8 00/10] net: airoha: Support multiple net_devices connected to the same GDM port Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 01/10] dt-bindings: net: airoha: Add GDM port ethernet child node Lorenzo Bianconi
2026-05-22 19:27   ` Lorenzo Bianconi
2026-06-01 23:11   ` Rob Herring (Arm)
2026-05-19  8:57 ` [PATCH net-next v8 02/10] net: airoha: Introduce airoha_gdm_dev struct Lorenzo Bianconi
2026-05-20  8:59   ` sashiko-bot
2026-05-20 12:25     ` Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 03/10] net: airoha: Move airoha_qdma pointer in " Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 04/10] net: airoha: Rely on airoha_gdm_dev pointer in airoha_is_lan_gdm_port() Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 05/10] net: airoha: Move qos_sq_bmap in airoha_gdm_dev struct Lorenzo Bianconi
2026-05-20  8:59   ` sashiko-bot
2026-05-20 12:24     ` Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 06/10] net: airoha: Move {cpu,fwd}_tx_packets " Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 07/10] net: airoha: Support multiple net_devices for a single FE GDM port Lorenzo Bianconi
2026-05-20  8:59   ` sashiko-bot
2026-05-20 12:28     ` Lorenzo Bianconi
2026-05-20 12:33     ` Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 08/10] net: airoha: Do not stop GDM port if it is shared Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 09/10] net: airoha: Introduce WAN device flag Lorenzo Bianconi
2026-05-20  8:59   ` sashiko-bot
2026-05-20 12:46     ` Lorenzo Bianconi
2026-05-19  8:57 ` [PATCH net-next v8 10/10] net: airoha: Support multiple LAN/WAN interfaces for hw MAC address configuration Lorenzo Bianconi
2026-05-20  8:59   ` sashiko-bot
2026-05-20 12:49     ` Lorenzo Bianconi
2026-05-22 18:25       ` Jakub Kicinski
2026-05-22 19:25         ` Lorenzo Bianconi
2026-05-22 23:58           ` Jakub Kicinski
2026-05-23  8:23             ` Lorenzo Bianconi
2026-05-25 19:08               ` Jakub Kicinski
2026-05-27 10:16 ` Lorenzo Bianconi [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ahbEYeiSzB9h3VgQ@lore-desk \
    --to=lorenzo@kernel.org \
    --cc=andrew+netdev@lunn.ch \
    --cc=ansuelsmth@gmail.com \
    --cc=benjamin.larsson@genexis.eu \
    --cc=conor+dt@kernel.org \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=edumazet@google.com \
    --cc=krzk+dt@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=madhur.agrawal@airoha.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=robh@kernel.org \
    --cc=xuegang.lu@airoha.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.