linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx
@ 2025-08-26 23:05 Daniel Golle
  2025-08-26 23:05 ` [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder Daniel Golle
                   ` (6 more replies)
  0 siblings, 7 replies; 16+ messages in thread
From: Daniel Golle @ 2025-08-26 23:05 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Hauke Mehrtens, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

Continue to prepare for supporting the newer standalone MaxLinear GSW1xx
switch family by extending the existing lantiq_gswip driver to allow it
to support MII interfaces and MDIO bus of the GSW1xx.

This series has been preceded by an RFC series which covers everything
needed to support the MaxLinear GSW1xx family of switches. Andrew Lunn
had suggested to split it into a couple of smaller series and start
with the changes which don't yet make actual functional changes or
support new features.

Everything has been compile and runtime tested on AVM Fritz!Box 7490
(GSWIP version 2.1, VR9 v1.2)

Link: https://lore.kernel.org/netdev/aKDhFCNwjDDwRKsI@pidgin.makrotopia.org/

v2: move lantiq_gswip driver to its own folder

Daniel Golle (6):
  net: dsa: lantiq_gswip: move to dedicated folder
  net: dsa: lantiq_gswip: support model-specific mac_select_pcs()
  net: dsa: lantiq_gswip: ignore SerDes modes in phylink_mac_config()
  net: dsa: lantiq_gswip: support offset of MII registers
  net: dsa: lantiq_gswip: support standard MDIO node name
  net: dsa: lantiq_gswip: move MDIO bus registration to .setup()

 MAINTAINERS                                 |  3 +-
 drivers/net/dsa/Kconfig                     |  8 +---
 drivers/net/dsa/Makefile                    |  2 +-
 drivers/net/dsa/lantiq/Kconfig              |  7 +++
 drivers/net/dsa/lantiq/Makefile             |  1 +
 drivers/net/dsa/{ => lantiq}/lantiq_gswip.c | 52 ++++++++++++++++-----
 drivers/net/dsa/{ => lantiq}/lantiq_gswip.h |  4 ++
 drivers/net/dsa/{ => lantiq}/lantiq_pce.h   |  0
 8 files changed, 55 insertions(+), 22 deletions(-)
 create mode 100644 drivers/net/dsa/lantiq/Kconfig
 create mode 100644 drivers/net/dsa/lantiq/Makefile
 rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.c (98%)
 rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.h (98%)
 rename drivers/net/dsa/{ => lantiq}/lantiq_pce.h (100%)

-- 
2.51.0

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder
  2025-08-26 23:05 [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Daniel Golle
@ 2025-08-26 23:05 ` Daniel Golle
  2025-08-28 20:33   ` Vladimir Oltean
  2025-08-26 23:05 ` [PATCH net-next v2 2/6] net: dsa: lantiq_gswip: support model-specific mac_select_pcs() Daniel Golle
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 16+ messages in thread
From: Daniel Golle @ 2025-08-26 23:05 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Hauke Mehrtens, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

Move the lantiq_gswip driver to its own folder and update
MAINTAINERS file accordingly.
This is done ahead of extending the driver to support the MaxLinear
GSW1xx series of standalone switch ICs, which includes adding a bunch
of files.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
v2: move driver to its own folder

 MAINTAINERS                                 | 3 +--
 drivers/net/dsa/Kconfig                     | 8 +-------
 drivers/net/dsa/Makefile                    | 2 +-
 drivers/net/dsa/lantiq/Kconfig              | 7 +++++++
 drivers/net/dsa/lantiq/Makefile             | 1 +
 drivers/net/dsa/{ => lantiq}/lantiq_gswip.c | 0
 drivers/net/dsa/{ => lantiq}/lantiq_gswip.h | 0
 drivers/net/dsa/{ => lantiq}/lantiq_pce.h   | 0
 8 files changed, 11 insertions(+), 10 deletions(-)
 create mode 100644 drivers/net/dsa/lantiq/Kconfig
 create mode 100644 drivers/net/dsa/lantiq/Makefile
 rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.c (100%)
 rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.h (100%)
 rename drivers/net/dsa/{ => lantiq}/lantiq_pce.h (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index bce96dd254b8..e86bdad15919 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -13801,8 +13801,7 @@ M:	Hauke Mehrtens <hauke@hauke-m.de>
 L:	netdev@vger.kernel.org
 S:	Maintained
 F:	Documentation/devicetree/bindings/net/dsa/lantiq,gswip.yaml
-F:	drivers/net/dsa/lantiq_gswip.c
-F:	drivers/net/dsa/lantiq_pce.h
+F:	drivers/net/dsa/lantiq/*
 F:	drivers/net/ethernet/lantiq_xrx200.c
 F:	net/dsa/tag_gswip.c
 
diff --git a/drivers/net/dsa/Kconfig b/drivers/net/dsa/Kconfig
index 202a35d8d061..4d9af691b989 100644
--- a/drivers/net/dsa/Kconfig
+++ b/drivers/net/dsa/Kconfig
@@ -26,13 +26,7 @@ config NET_DSA_LOOP
 
 source "drivers/net/dsa/hirschmann/Kconfig"
 
-config NET_DSA_LANTIQ_GSWIP
-	tristate "Lantiq / Intel GSWIP"
-	depends on HAS_IOMEM
-	select NET_DSA_TAG_GSWIP
-	help
-	  This enables support for the Lantiq / Intel GSWIP 2.1 found in
-	  the xrx200 / VR9 SoC.
+source "drivers/net/dsa/lantiq/Kconfig"
 
 config NET_DSA_MT7530
 	tristate "MediaTek MT7530 and MT7531 Ethernet switch support"
diff --git a/drivers/net/dsa/Makefile b/drivers/net/dsa/Makefile
index 23dbdf1a36a8..c0a534fe6eaf 100644
--- a/drivers/net/dsa/Makefile
+++ b/drivers/net/dsa/Makefile
@@ -6,7 +6,6 @@ ifdef CONFIG_NET_DSA_LOOP
 obj-$(CONFIG_FIXED_PHY)		+= dsa_loop_bdinfo.o
 endif
 obj-$(CONFIG_NET_DSA_KS8995) 	+= ks8995.o
-obj-$(CONFIG_NET_DSA_LANTIQ_GSWIP) += lantiq_gswip.o
 obj-$(CONFIG_NET_DSA_MT7530)	+= mt7530.o
 obj-$(CONFIG_NET_DSA_MT7530_MDIO) += mt7530-mdio.o
 obj-$(CONFIG_NET_DSA_MT7530_MMIO) += mt7530-mmio.o
@@ -20,6 +19,7 @@ obj-$(CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM) += vitesse-vsc73xx-platform.o
 obj-$(CONFIG_NET_DSA_VITESSE_VSC73XX_SPI) += vitesse-vsc73xx-spi.o
 obj-y				+= b53/
 obj-y				+= hirschmann/
+obj-y				+= lantiq/
 obj-y				+= microchip/
 obj-y				+= mv88e6xxx/
 obj-y				+= ocelot/
diff --git a/drivers/net/dsa/lantiq/Kconfig b/drivers/net/dsa/lantiq/Kconfig
new file mode 100644
index 000000000000..1cb053c823f7
--- /dev/null
+++ b/drivers/net/dsa/lantiq/Kconfig
@@ -0,0 +1,7 @@
+config NET_DSA_LANTIQ_GSWIP
+	tristate "Lantiq / Intel GSWIP"
+	depends on HAS_IOMEM
+	select NET_DSA_TAG_GSWIP
+	help
+	  This enables support for the Lantiq / Intel GSWIP 2.1 found in
+	  the xrx200 / VR9 SoC.
diff --git a/drivers/net/dsa/lantiq/Makefile b/drivers/net/dsa/lantiq/Makefile
new file mode 100644
index 000000000000..849f85ebebd6
--- /dev/null
+++ b/drivers/net/dsa/lantiq/Makefile
@@ -0,0 +1 @@
+obj-$(CONFIG_NET_DSA_LANTIQ_GSWIP) += lantiq_gswip.o
diff --git a/drivers/net/dsa/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
similarity index 100%
rename from drivers/net/dsa/lantiq_gswip.c
rename to drivers/net/dsa/lantiq/lantiq_gswip.c
diff --git a/drivers/net/dsa/lantiq_gswip.h b/drivers/net/dsa/lantiq/lantiq_gswip.h
similarity index 100%
rename from drivers/net/dsa/lantiq_gswip.h
rename to drivers/net/dsa/lantiq/lantiq_gswip.h
diff --git a/drivers/net/dsa/lantiq_pce.h b/drivers/net/dsa/lantiq/lantiq_pce.h
similarity index 100%
rename from drivers/net/dsa/lantiq_pce.h
rename to drivers/net/dsa/lantiq/lantiq_pce.h
-- 
2.51.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH net-next v2 2/6] net: dsa: lantiq_gswip: support model-specific mac_select_pcs()
  2025-08-26 23:05 [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Daniel Golle
  2025-08-26 23:05 ` [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder Daniel Golle
@ 2025-08-26 23:05 ` Daniel Golle
  2025-08-28 13:05   ` Paolo Abeni
  2025-08-26 23:06 ` [PATCH net-next v2 3/6] net: dsa: lantiq_gswip: ignore SerDes modes in phylink_mac_config() Daniel Golle
                   ` (4 subsequent siblings)
  6 siblings, 1 reply; 16+ messages in thread
From: Daniel Golle @ 2025-08-26 23:05 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Hauke Mehrtens, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

Call mac_select_pcs() function if provided in struct gswip_hwinfo.
The MaxLinear GSW1xx series got one port wired to a SerDes PCS and
PHY which can do 1000Base-X, 2500Base-X and SGMII. Support for the
SerDes port will be provided using phylink_pcs, so provide a
convenient way for mac_select_pcs() to differ based on the hardware
model.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
v2: no changes

 drivers/net/dsa/lantiq/lantiq_gswip.c | 19 ++++++++++++++++---
 drivers/net/dsa/lantiq/lantiq_gswip.h |  3 +++
 2 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
index 67919c3935e4..acb6996356e9 100644
--- a/drivers/net/dsa/lantiq/lantiq_gswip.c
+++ b/drivers/net/dsa/lantiq/lantiq_gswip.c
@@ -1592,10 +1592,23 @@ static int gswip_get_sset_count(struct dsa_switch *ds, int port, int sset)
 	return ARRAY_SIZE(gswip_rmon_cnt);
 }
 
+static struct phylink_pcs *gswip_phylink_mac_select_pcs(struct phylink_config *config,
+							phy_interface_t interface)
+{
+	struct dsa_port *dp = dsa_phylink_to_port(config);
+	struct gswip_priv *priv = dp->ds->priv;
+
+	if (priv->hw_info->mac_select_pcs)
+		return priv->hw_info->mac_select_pcs(config, interface);
+
+	return NULL;
+}
+
 static const struct phylink_mac_ops gswip_phylink_mac_ops = {
-	.mac_config	= gswip_phylink_mac_config,
-	.mac_link_down	= gswip_phylink_mac_link_down,
-	.mac_link_up	= gswip_phylink_mac_link_up,
+	.mac_config		= gswip_phylink_mac_config,
+	.mac_link_down		= gswip_phylink_mac_link_down,
+	.mac_link_up		= gswip_phylink_mac_link_up,
+	.mac_select_pcs		= gswip_phylink_mac_select_pcs,
 };
 
 static const struct dsa_switch_ops gswip_switch_ops = {
diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.h b/drivers/net/dsa/lantiq/lantiq_gswip.h
index 620c2d560cbe..19bbe6fddf04 100644
--- a/drivers/net/dsa/lantiq/lantiq_gswip.h
+++ b/drivers/net/dsa/lantiq/lantiq_gswip.h
@@ -4,6 +4,7 @@
 
 #include <linux/clk.h>
 #include <linux/mutex.h>
+#include <linux/phylink.h>
 #include <linux/platform_device.h>
 #include <linux/regmap.h>
 #include <linux/reset.h>
@@ -237,6 +238,8 @@ struct gswip_hw_info {
 	enum dsa_tag_protocol tag_protocol;
 	void (*phylink_get_caps)(struct dsa_switch *ds, int port,
 				 struct phylink_config *config);
+	struct phylink_pcs *(*mac_select_pcs)(struct phylink_config *config,
+					      phy_interface_t interface);
 };
 
 struct gswip_gphy_fw {
-- 
2.51.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH net-next v2 3/6] net: dsa: lantiq_gswip: ignore SerDes modes in phylink_mac_config()
  2025-08-26 23:05 [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Daniel Golle
  2025-08-26 23:05 ` [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder Daniel Golle
  2025-08-26 23:05 ` [PATCH net-next v2 2/6] net: dsa: lantiq_gswip: support model-specific mac_select_pcs() Daniel Golle
@ 2025-08-26 23:06 ` Daniel Golle
  2025-08-28 20:39   ` Vladimir Oltean
  2025-08-26 23:06 ` [PATCH net-next v2 4/6] net: dsa: lantiq_gswip: support offset of MII registers Daniel Golle
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 16+ messages in thread
From: Daniel Golle @ 2025-08-26 23:06 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Hauke Mehrtens, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

We can safely ignore SerDes interface modes 1000Base-X, 2500Base-X and
SGMII in phylink_mac_config() as they are being taken care of by the
PCS.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
v2: no changes

 drivers/net/dsa/lantiq/lantiq_gswip.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
index acb6996356e9..3e2a54569828 100644
--- a/drivers/net/dsa/lantiq/lantiq_gswip.c
+++ b/drivers/net/dsa/lantiq/lantiq_gswip.c
@@ -1444,6 +1444,10 @@ static void gswip_phylink_mac_config(struct phylink_config *config,
 	miicfg |= GSWIP_MII_CFG_LDCLKDIS;
 
 	switch (state->interface) {
+	case PHY_INTERFACE_MODE_SGMII:
+	case PHY_INTERFACE_MODE_1000BASEX:
+	case PHY_INTERFACE_MODE_2500BASEX:
+		return;
 	case PHY_INTERFACE_MODE_MII:
 	case PHY_INTERFACE_MODE_INTERNAL:
 		miicfg |= GSWIP_MII_CFG_MODE_MIIM;
-- 
2.51.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH net-next v2 4/6] net: dsa: lantiq_gswip: support offset of MII registers
  2025-08-26 23:05 [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Daniel Golle
                   ` (2 preceding siblings ...)
  2025-08-26 23:06 ` [PATCH net-next v2 3/6] net: dsa: lantiq_gswip: ignore SerDes modes in phylink_mac_config() Daniel Golle
@ 2025-08-26 23:06 ` Daniel Golle
  2025-08-28 20:30   ` Hauke Mehrtens
  2025-08-26 23:06 ` [PATCH net-next v2 5/6] net: dsa: lantiq_gswip: support standard MDIO node name Daniel Golle
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 16+ messages in thread
From: Daniel Golle @ 2025-08-26 23:06 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Hauke Mehrtens, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

The MaxLinear GSW1xx family got a single (R)(G)MII port at index 5 but
the registers MII_PCDU and MII_CFG are those of port 0.
Allow applying an offset for the port index to access those registers.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
v2: no changes

 drivers/net/dsa/lantiq/lantiq_gswip.c | 12 ++++++++++--
 drivers/net/dsa/lantiq/lantiq_gswip.h |  1 +
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
index 3e2a54569828..64e378852284 100644
--- a/drivers/net/dsa/lantiq/lantiq_gswip.c
+++ b/drivers/net/dsa/lantiq/lantiq_gswip.c
@@ -183,21 +183,29 @@ static void gswip_mii_mask(struct gswip_priv *priv, u32 clear, u32 set,
 static void gswip_mii_mask_cfg(struct gswip_priv *priv, u32 clear, u32 set,
 			       int port)
 {
+	int reg_port;
+
 	/* MII_CFG register only exists for MII ports */
 	if (!(priv->hw_info->mii_ports & BIT(port)))
 		return;
 
-	gswip_mii_mask(priv, clear, set, GSWIP_MII_CFGp(port));
+	reg_port = port + priv->hw_info->mii_port_reg_offset;
+
+	gswip_mii_mask(priv, clear, set, GSWIP_MII_CFGp(reg_port));
 }
 
 static void gswip_mii_mask_pcdu(struct gswip_priv *priv, u32 clear, u32 set,
 				int port)
 {
+	int reg_port;
+
 	/* MII_PCDU register only exists for MII ports */
 	if (!(priv->hw_info->mii_ports & BIT(port)))
 		return;
 
-	switch (port) {
+	reg_port = port + priv->hw_info->mii_port_reg_offset;
+
+	switch (reg_port) {
 	case 0:
 		gswip_mii_mask(priv, clear, set, GSWIP_MII_PCDU0);
 		break;
diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.h b/drivers/net/dsa/lantiq/lantiq_gswip.h
index 19bbe6fddf04..2df9c8e8cfd0 100644
--- a/drivers/net/dsa/lantiq/lantiq_gswip.h
+++ b/drivers/net/dsa/lantiq/lantiq_gswip.h
@@ -233,6 +233,7 @@ struct gswip_hw_info {
 	int max_ports;
 	unsigned int allowed_cpu_ports;
 	unsigned int mii_ports;
+	int mii_port_reg_offset;
 	const struct gswip_pce_microcode (*pce_microcode)[];
 	size_t pce_microcode_size;
 	enum dsa_tag_protocol tag_protocol;
-- 
2.51.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH net-next v2 5/6] net: dsa: lantiq_gswip: support standard MDIO node name
  2025-08-26 23:05 [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Daniel Golle
                   ` (3 preceding siblings ...)
  2025-08-26 23:06 ` [PATCH net-next v2 4/6] net: dsa: lantiq_gswip: support offset of MII registers Daniel Golle
@ 2025-08-26 23:06 ` Daniel Golle
  2025-08-26 23:06 ` [PATCH net-next v2 6/6] net: dsa: lantiq_gswip: move MDIO bus registration to .setup() Daniel Golle
  2025-08-28 20:24 ` [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Hauke Mehrtens
  6 siblings, 0 replies; 16+ messages in thread
From: Daniel Golle @ 2025-08-26 23:06 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Hauke Mehrtens, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

Instead of matching against the child node's compatible string also
support locating the node of the device tree node of the MDIO bus
in the standard way by referencing the node name ("mdio").

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Alexander Sverdlin <alexander.sverdlin@siemens.com>
---
v2: no changes

 drivers/net/dsa/lantiq/lantiq_gswip.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
index 64e378852284..9fd5e5938384 100644
--- a/drivers/net/dsa/lantiq/lantiq_gswip.c
+++ b/drivers/net/dsa/lantiq/lantiq_gswip.c
@@ -286,6 +286,9 @@ static int gswip_mdio(struct gswip_priv *priv)
 	int err = 0;
 
 	mdio_np = of_get_compatible_child(switch_np, "lantiq,xrx200-mdio");
+	if (!mdio_np)
+		mdio_np = of_get_child_by_name(switch_np, "mdio");
+
 	if (!of_device_is_available(mdio_np))
 		goto out_put_node;
 
-- 
2.51.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH net-next v2 6/6] net: dsa: lantiq_gswip: move MDIO bus registration to .setup()
  2025-08-26 23:05 [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Daniel Golle
                   ` (4 preceding siblings ...)
  2025-08-26 23:06 ` [PATCH net-next v2 5/6] net: dsa: lantiq_gswip: support standard MDIO node name Daniel Golle
@ 2025-08-26 23:06 ` Daniel Golle
  2025-08-28 20:24 ` [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Hauke Mehrtens
  6 siblings, 0 replies; 16+ messages in thread
From: Daniel Golle @ 2025-08-26 23:06 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Hauke Mehrtens, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

Instead of registering the switch MDIO bus in the probe() function, move
the call to gswip_mdio() into the .setup() DSA switch op, so it can be
reused independently of the probe() function.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
---
v2: no changes

 drivers/net/dsa/lantiq/lantiq_gswip.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
index 9fd5e5938384..a6a76db7ef52 100644
--- a/drivers/net/dsa/lantiq/lantiq_gswip.c
+++ b/drivers/net/dsa/lantiq/lantiq_gswip.c
@@ -627,6 +627,13 @@ static int gswip_setup(struct dsa_switch *ds)
 	/* Configure the MDIO Clock 2.5 MHz */
 	gswip_mdio_mask(priv, 0xff, 0x09, GSWIP_MDIO_MDC_CFG1);
 
+	/* bring up the mdio bus */
+	err = gswip_mdio(priv);
+	if (err) {
+		dev_err(priv->dev, "mdio bus setup failed\n");
+		return err;
+	}
+
 	/* Disable the xMII interface and clear it's isolation bit */
 	for (i = 0; i < priv->hw_info->max_ports; i++)
 		gswip_mii_mask_cfg(priv,
@@ -1973,13 +1980,6 @@ static int gswip_probe(struct platform_device *pdev)
 					     "gphy fw probe failed\n");
 	}
 
-	/* bring up the mdio bus */
-	err = gswip_mdio(priv);
-	if (err) {
-		dev_err_probe(dev, err, "mdio probe failed\n");
-		goto gphy_fw_remove;
-	}
-
 	err = dsa_register_switch(priv->ds);
 	if (err) {
 		dev_err_probe(dev, err, "dsa switch registration failed\n");
-- 
2.51.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 2/6] net: dsa: lantiq_gswip: support model-specific mac_select_pcs()
  2025-08-26 23:05 ` [PATCH net-next v2 2/6] net: dsa: lantiq_gswip: support model-specific mac_select_pcs() Daniel Golle
@ 2025-08-28 13:05   ` Paolo Abeni
  0 siblings, 0 replies; 16+ messages in thread
From: Paolo Abeni @ 2025-08-28 13:05 UTC (permalink / raw)
  To: Daniel Golle, Andrew Lunn, Vladimir Oltean, David S. Miller,
	Eric Dumazet, Jakub Kicinski, Hauke Mehrtens, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

On 8/27/25 1:05 AM, Daniel Golle wrote:
> Call mac_select_pcs() function if provided in struct gswip_hwinfo.
> The MaxLinear GSW1xx series got one port wired to a SerDes PCS and
> PHY which can do 1000Base-X, 2500Base-X and SGMII. Support for the
> SerDes port will be provided using phylink_pcs, so provide a
> convenient way for mac_select_pcs() to differ based on the hardware
> model.
> 
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> ---
> v2: no changes

FTR, the above statement is misleading, as you actually addressed the
issue reported by the kbuild bot on v1 :)

/P


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx
  2025-08-26 23:05 [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Daniel Golle
                   ` (5 preceding siblings ...)
  2025-08-26 23:06 ` [PATCH net-next v2 6/6] net: dsa: lantiq_gswip: move MDIO bus registration to .setup() Daniel Golle
@ 2025-08-28 20:24 ` Hauke Mehrtens
  6 siblings, 0 replies; 16+ messages in thread
From: Hauke Mehrtens @ 2025-08-28 20:24 UTC (permalink / raw)
  To: Daniel Golle, Andrew Lunn, Vladimir Oltean, David S. Miller,
	Eric Dumazet, Jakub Kicinski, Paolo Abeni, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

On 8/27/25 01:05, Daniel Golle wrote:
> Continue to prepare for supporting the newer standalone MaxLinear GSW1xx
> switch family by extending the existing lantiq_gswip driver to allow it
> to support MII interfaces and MDIO bus of the GSW1xx.
> 
> This series has been preceded by an RFC series which covers everything
> needed to support the MaxLinear GSW1xx family of switches. Andrew Lunn
> had suggested to split it into a couple of smaller series and start
> with the changes which don't yet make actual functional changes or
> support new features.
> 
> Everything has been compile and runtime tested on AVM Fritz!Box 7490
> (GSWIP version 2.1, VR9 v1.2)
> 
> Link: https://lore.kernel.org/netdev/aKDhFCNwjDDwRKsI@pidgin.makrotopia.org/
> 

Looks good, thanks for the work on the driver.

Reviewed-by: Hauke Mehrtens <hauke@hauke-m.de>

Hauke

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 4/6] net: dsa: lantiq_gswip: support offset of MII registers
  2025-08-26 23:06 ` [PATCH net-next v2 4/6] net: dsa: lantiq_gswip: support offset of MII registers Daniel Golle
@ 2025-08-28 20:30   ` Hauke Mehrtens
  0 siblings, 0 replies; 16+ messages in thread
From: Hauke Mehrtens @ 2025-08-28 20:30 UTC (permalink / raw)
  To: Daniel Golle, Andrew Lunn, Vladimir Oltean, David S. Miller,
	Eric Dumazet, Jakub Kicinski, Paolo Abeni, Russell King,
	linux-kernel, netdev
  Cc: Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

On 8/27/25 01:06, Daniel Golle wrote:
> The MaxLinear GSW1xx family got a single (R)(G)MII port at index 5 but
> the registers MII_PCDU and MII_CFG are those of port 0.
> Allow applying an offset for the port index to access those registers.
> 
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> ---
> v2: no changes
> 
>   drivers/net/dsa/lantiq/lantiq_gswip.c | 12 ++++++++++--
>   drivers/net/dsa/lantiq/lantiq_gswip.h |  1 +
>   2 files changed, 11 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
> index 3e2a54569828..64e378852284 100644
> --- a/drivers/net/dsa/lantiq/lantiq_gswip.c
> +++ b/drivers/net/dsa/lantiq/lantiq_gswip.c
....
> diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.h b/drivers/net/dsa/lantiq/lantiq_gswip.h
> index 19bbe6fddf04..2df9c8e8cfd0 100644
> --- a/drivers/net/dsa/lantiq/lantiq_gswip.h
> +++ b/drivers/net/dsa/lantiq/lantiq_gswip.h
> @@ -233,6 +233,7 @@ struct gswip_hw_info {
>   	int max_ports;
>   	unsigned int allowed_cpu_ports;
>   	unsigned int mii_ports;
> +	int mii_port_reg_offset;

Maybe you should set the mii_port_reg_offset attribute explicitly to 0.

>   	const struct gswip_pce_microcode (*pce_microcode)[];
>   	size_t pce_microcode_size;
>   	enum dsa_tag_protocol tag_protocol;

Hauke

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder
  2025-08-26 23:05 ` [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder Daniel Golle
@ 2025-08-28 20:33   ` Vladimir Oltean
  2025-08-28 20:49     ` Hauke Mehrtens
  2025-09-03 18:05     ` Daniel Golle
  0 siblings, 2 replies; 16+ messages in thread
From: Vladimir Oltean @ 2025-08-28 20:33 UTC (permalink / raw)
  To: Daniel Golle
  Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Hauke Mehrtens, Russell King, linux-kernel, netdev,
	Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

On Wed, Aug 27, 2025 at 12:05:28AM +0100, Daniel Golle wrote:
> Move the lantiq_gswip driver to its own folder and update
> MAINTAINERS file accordingly.
> This is done ahead of extending the driver to support the MaxLinear
> GSW1xx series of standalone switch ICs, which includes adding a bunch
> of files.
> 
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> ---
> v2: move driver to its own folder
> 
>  MAINTAINERS                                 | 3 +--
>  drivers/net/dsa/Kconfig                     | 8 +-------
>  drivers/net/dsa/Makefile                    | 2 +-
>  drivers/net/dsa/lantiq/Kconfig              | 7 +++++++
>  drivers/net/dsa/lantiq/Makefile             | 1 +
>  drivers/net/dsa/{ => lantiq}/lantiq_gswip.c | 0
>  drivers/net/dsa/{ => lantiq}/lantiq_gswip.h | 0
>  drivers/net/dsa/{ => lantiq}/lantiq_pce.h   | 0
>  8 files changed, 11 insertions(+), 10 deletions(-)
>  create mode 100644 drivers/net/dsa/lantiq/Kconfig
>  create mode 100644 drivers/net/dsa/lantiq/Makefile
>  rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.c (100%)
>  rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.h (100%)
>  rename drivers/net/dsa/{ => lantiq}/lantiq_pce.h (100%)

I don't have a problem with this patch per se, but it will make it
harder to avoid conflicts for the known and unsubmitted bug fixes, like:
https://github.com/dangowrt/linux/commit/c7445039b965e1a6aad1a4435e7efd4b7cb30f5b
https://github.com/dangowrt/linux/commit/48d5cac46fc95a826b5eb49434a3a68b75a8ae1a
which I haven't found the time to submit (sorry). Are we okay with that?

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 3/6] net: dsa: lantiq_gswip: ignore SerDes modes in phylink_mac_config()
  2025-08-26 23:06 ` [PATCH net-next v2 3/6] net: dsa: lantiq_gswip: ignore SerDes modes in phylink_mac_config() Daniel Golle
@ 2025-08-28 20:39   ` Vladimir Oltean
  2025-08-28 22:02     ` Daniel Golle
  0 siblings, 1 reply; 16+ messages in thread
From: Vladimir Oltean @ 2025-08-28 20:39 UTC (permalink / raw)
  To: Daniel Golle
  Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Hauke Mehrtens, Russell King, linux-kernel, netdev,
	Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

On Wed, Aug 27, 2025 at 12:06:03AM +0100, Daniel Golle wrote:
> We can safely ignore SerDes interface modes 1000Base-X, 2500Base-X and
> SGMII in phylink_mac_config() as they are being taken care of by the
> PCS.
> 
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> ---
> v2: no changes
> 
>  drivers/net/dsa/lantiq/lantiq_gswip.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
> index acb6996356e9..3e2a54569828 100644
> --- a/drivers/net/dsa/lantiq/lantiq_gswip.c
> +++ b/drivers/net/dsa/lantiq/lantiq_gswip.c
> @@ -1444,6 +1444,10 @@ static void gswip_phylink_mac_config(struct phylink_config *config,
>  	miicfg |= GSWIP_MII_CFG_LDCLKDIS;
>  
>  	switch (state->interface) {
> +	case PHY_INTERFACE_MODE_SGMII:
> +	case PHY_INTERFACE_MODE_1000BASEX:
> +	case PHY_INTERFACE_MODE_2500BASEX:
> +		return;
>  	case PHY_INTERFACE_MODE_MII:
>  	case PHY_INTERFACE_MODE_INTERNAL:
>  		miicfg |= GSWIP_MII_CFG_MODE_MIIM;
> -- 
> 2.51.0

Is "miicfg" irrelevant in these 3 modes? Doesn't it have to be set to
GSWIP_MII_CFG_MODE_GMII?

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder
  2025-08-28 20:33   ` Vladimir Oltean
@ 2025-08-28 20:49     ` Hauke Mehrtens
  2025-08-28 22:05       ` Daniel Golle
  2025-09-03 18:05     ` Daniel Golle
  1 sibling, 1 reply; 16+ messages in thread
From: Hauke Mehrtens @ 2025-08-28 20:49 UTC (permalink / raw)
  To: Vladimir Oltean, Daniel Golle
  Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Russell King, linux-kernel, netdev, Andreas Schirm,
	Lukas Stockmann, Alexander Sverdlin, Peter Christen,
	Avinash Jayaraman, Bing tao Xu, Liang Xu, Juraj Povazanec,
	Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng, Livia M. Rosu,
	John Crispin

On 8/28/25 22:33, Vladimir Oltean wrote:
> On Wed, Aug 27, 2025 at 12:05:28AM +0100, Daniel Golle wrote:
>> Move the lantiq_gswip driver to its own folder and update
>> MAINTAINERS file accordingly.
>> This is done ahead of extending the driver to support the MaxLinear
>> GSW1xx series of standalone switch ICs, which includes adding a bunch
>> of files.
>>
>> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
>> ---
>> v2: move driver to its own folder
>>
>>   MAINTAINERS                                 | 3 +--
>>   drivers/net/dsa/Kconfig                     | 8 +-------
>>   drivers/net/dsa/Makefile                    | 2 +-
>>   drivers/net/dsa/lantiq/Kconfig              | 7 +++++++
>>   drivers/net/dsa/lantiq/Makefile             | 1 +
>>   drivers/net/dsa/{ => lantiq}/lantiq_gswip.c | 0
>>   drivers/net/dsa/{ => lantiq}/lantiq_gswip.h | 0
>>   drivers/net/dsa/{ => lantiq}/lantiq_pce.h   | 0
>>   8 files changed, 11 insertions(+), 10 deletions(-)
>>   create mode 100644 drivers/net/dsa/lantiq/Kconfig
>>   create mode 100644 drivers/net/dsa/lantiq/Makefile
>>   rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.c (100%)
>>   rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.h (100%)
>>   rename drivers/net/dsa/{ => lantiq}/lantiq_pce.h (100%)
> 
> I don't have a problem with this patch per se, but it will make it
> harder to avoid conflicts for the known and unsubmitted bug fixes, like:
> https://github.com/dangowrt/linux/commit/c7445039b965e1a6aad1a4435e7efd4b7cb30f5b
> https://github.com/dangowrt/linux/commit/48d5cac46fc95a826b5eb49434a3a68b75a8ae1a
> which I haven't found the time to submit (sorry). Are we okay with that?

I think git cherry-pick will still work.

I would like to have these fixes also in the stable kernel, if cherry 
pick does not work you can also send modified version to linux stable.

Hauke

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 3/6] net: dsa: lantiq_gswip: ignore SerDes modes in phylink_mac_config()
  2025-08-28 20:39   ` Vladimir Oltean
@ 2025-08-28 22:02     ` Daniel Golle
  0 siblings, 0 replies; 16+ messages in thread
From: Daniel Golle @ 2025-08-28 22:02 UTC (permalink / raw)
  To: Vladimir Oltean
  Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Hauke Mehrtens, Russell King, linux-kernel, netdev,
	Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

On Thu, Aug 28, 2025 at 11:39:35PM +0300, Vladimir Oltean wrote:
> On Wed, Aug 27, 2025 at 12:06:03AM +0100, Daniel Golle wrote:
> > We can safely ignore SerDes interface modes 1000Base-X, 2500Base-X and
> > SGMII in phylink_mac_config() as they are being taken care of by the
> > PCS.
> > 
> > Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> > ---
> > v2: no changes
> > 
> >  drivers/net/dsa/lantiq/lantiq_gswip.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> > 
> > diff --git a/drivers/net/dsa/lantiq/lantiq_gswip.c b/drivers/net/dsa/lantiq/lantiq_gswip.c
> > index acb6996356e9..3e2a54569828 100644
> > --- a/drivers/net/dsa/lantiq/lantiq_gswip.c
> > +++ b/drivers/net/dsa/lantiq/lantiq_gswip.c
> > @@ -1444,6 +1444,10 @@ static void gswip_phylink_mac_config(struct phylink_config *config,
> >  	miicfg |= GSWIP_MII_CFG_LDCLKDIS;
> >  
> >  	switch (state->interface) {
> > +	case PHY_INTERFACE_MODE_SGMII:
> > +	case PHY_INTERFACE_MODE_1000BASEX:
> > +	case PHY_INTERFACE_MODE_2500BASEX:
> > +		return;
> >  	case PHY_INTERFACE_MODE_MII:
> >  	case PHY_INTERFACE_MODE_INTERNAL:
> >  		miicfg |= GSWIP_MII_CFG_MODE_MIIM;
> > -- 
> > 2.51.0
> 
> Is "miicfg" irrelevant in these 3 modes? Doesn't it have to be set to
> GSWIP_MII_CFG_MODE_GMII?

The function is basically already a no-op for SGMII ports for which
there isn't a GSWIP_MII_CFG register (ie. gswip_mii_mask_cfg() will
just return and do nothing). The same is true for gswip_mii_mask_pcdu(),
so what is left is just the printing of the error message
"Unsupported interface: ...", which is misleading (and could maybe be
removed completely now that I think about it as phylink_get_caps() should
already make sure that phylink_mac_config() only gets called with a
supported interface mode).


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder
  2025-08-28 20:49     ` Hauke Mehrtens
@ 2025-08-28 22:05       ` Daniel Golle
  0 siblings, 0 replies; 16+ messages in thread
From: Daniel Golle @ 2025-08-28 22:05 UTC (permalink / raw)
  To: Hauke Mehrtens
  Cc: Vladimir Oltean, Andrew Lunn, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Russell King, linux-kernel, netdev,
	Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

On Thu, Aug 28, 2025 at 10:49:18PM +0200, Hauke Mehrtens wrote:
> On 8/28/25 22:33, Vladimir Oltean wrote:
> > On Wed, Aug 27, 2025 at 12:05:28AM +0100, Daniel Golle wrote:
> > > Move the lantiq_gswip driver to its own folder and update
> > > MAINTAINERS file accordingly.
> > > This is done ahead of extending the driver to support the MaxLinear
> > > GSW1xx series of standalone switch ICs, which includes adding a bunch
> > > of files.
> > > 
> > > Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> > > ---
> > > v2: move driver to its own folder
> > > 
> > >   MAINTAINERS                                 | 3 +--
> > >   drivers/net/dsa/Kconfig                     | 8 +-------
> > >   drivers/net/dsa/Makefile                    | 2 +-
> > >   drivers/net/dsa/lantiq/Kconfig              | 7 +++++++
> > >   drivers/net/dsa/lantiq/Makefile             | 1 +
> > >   drivers/net/dsa/{ => lantiq}/lantiq_gswip.c | 0
> > >   drivers/net/dsa/{ => lantiq}/lantiq_gswip.h | 0
> > >   drivers/net/dsa/{ => lantiq}/lantiq_pce.h   | 0
> > >   8 files changed, 11 insertions(+), 10 deletions(-)
> > >   create mode 100644 drivers/net/dsa/lantiq/Kconfig
> > >   create mode 100644 drivers/net/dsa/lantiq/Makefile
> > >   rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.c (100%)
> > >   rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.h (100%)
> > >   rename drivers/net/dsa/{ => lantiq}/lantiq_pce.h (100%)
> > 
> > I don't have a problem with this patch per se, but it will make it
> > harder to avoid conflicts for the known and unsubmitted bug fixes, like:
> > https://github.com/dangowrt/linux/commit/c7445039b965e1a6aad1a4435e7efd4b7cb30f5b
> > https://github.com/dangowrt/linux/commit/48d5cac46fc95a826b5eb49434a3a68b75a8ae1a
> > which I haven't found the time to submit (sorry). Are we okay with that?
> 
> I think git cherry-pick will still work.
> 
> I would like to have these fixes also in the stable kernel, if cherry pick
> does not work you can also send modified version to linux stable.

Cherry-pick anyway already won't work any more because of

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=6e8e6baf16ce7d2310959ae81d0194a56874e0d2

However, I've already rebased the series with Vladimir's fixes on top of
that and this pending series, see

https://github.com/dangowrt/linux/commits/1be5db5457b6956e606af37b03fb1dc86aadd392/


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder
  2025-08-28 20:33   ` Vladimir Oltean
  2025-08-28 20:49     ` Hauke Mehrtens
@ 2025-09-03 18:05     ` Daniel Golle
  1 sibling, 0 replies; 16+ messages in thread
From: Daniel Golle @ 2025-09-03 18:05 UTC (permalink / raw)
  To: Vladimir Oltean
  Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Hauke Mehrtens, Russell King, linux-kernel, netdev,
	Andreas Schirm, Lukas Stockmann, Alexander Sverdlin,
	Peter Christen, Avinash Jayaraman, Bing tao Xu, Liang Xu,
	Juraj Povazanec, Fanni (Fang-Yi) Chan, Benny (Ying-Tsan) Weng,
	Livia M. Rosu, John Crispin

On Thu, Aug 28, 2025 at 11:33:46PM +0300, Vladimir Oltean wrote:
> On Wed, Aug 27, 2025 at 12:05:28AM +0100, Daniel Golle wrote:
> > Move the lantiq_gswip driver to its own folder and update
> > MAINTAINERS file accordingly.
> > This is done ahead of extending the driver to support the MaxLinear
> > GSW1xx series of standalone switch ICs, which includes adding a bunch
> > of files.
> > 
> > Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> > ---
> > v2: move driver to its own folder
> > 
> >  MAINTAINERS                                 | 3 +--
> >  drivers/net/dsa/Kconfig                     | 8 +-------
> >  drivers/net/dsa/Makefile                    | 2 +-
> >  drivers/net/dsa/lantiq/Kconfig              | 7 +++++++
> >  drivers/net/dsa/lantiq/Makefile             | 1 +
> >  drivers/net/dsa/{ => lantiq}/lantiq_gswip.c | 0
> >  drivers/net/dsa/{ => lantiq}/lantiq_gswip.h | 0
> >  drivers/net/dsa/{ => lantiq}/lantiq_pce.h   | 0
> >  8 files changed, 11 insertions(+), 10 deletions(-)
> >  create mode 100644 drivers/net/dsa/lantiq/Kconfig
> >  create mode 100644 drivers/net/dsa/lantiq/Makefile
> >  rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.c (100%)
> >  rename drivers/net/dsa/{ => lantiq}/lantiq_gswip.h (100%)
> >  rename drivers/net/dsa/{ => lantiq}/lantiq_pce.h (100%)
> 
> I don't have a problem with this patch per se, but it will make it
> harder to avoid conflicts for the known and unsubmitted bug fixes, like:
> https://github.com/dangowrt/linux/commit/c7445039b965e1a6aad1a4435e7efd4b7cb30f5b
> https://github.com/dangowrt/linux/commit/48d5cac46fc95a826b5eb49434a3a68b75a8ae1a
> which I haven't found the time to submit (sorry). Are we okay with that?

I've prepared a tree rebasing your tree

https://github.com/vladimiroltean/linux/commits/lantiq-gswip/

onto current net-next:

https://github.com/dangowrt/linux/commits/lantiq_gswip-fixes-for-vladimiroltean/

If you don't have time to submit the patches from this tree yourself I
can do that on your behalf, just let me know which of the patches you'd
like to submit as fixes, I'll find the causing commit, add the Fixes:-tag
and send them to netdev@ for the net tree after the next net-next -> net
merge.

Or, in case that makes more sense, send the patches to 'net' now and
then solve the conflicts at the next net-next -> net merge, what ever
works better.


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2025-09-03 18:06 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-26 23:05 [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Daniel Golle
2025-08-26 23:05 ` [PATCH net-next v2 1/6] net: dsa: lantiq_gswip: move to dedicated folder Daniel Golle
2025-08-28 20:33   ` Vladimir Oltean
2025-08-28 20:49     ` Hauke Mehrtens
2025-08-28 22:05       ` Daniel Golle
2025-09-03 18:05     ` Daniel Golle
2025-08-26 23:05 ` [PATCH net-next v2 2/6] net: dsa: lantiq_gswip: support model-specific mac_select_pcs() Daniel Golle
2025-08-28 13:05   ` Paolo Abeni
2025-08-26 23:06 ` [PATCH net-next v2 3/6] net: dsa: lantiq_gswip: ignore SerDes modes in phylink_mac_config() Daniel Golle
2025-08-28 20:39   ` Vladimir Oltean
2025-08-28 22:02     ` Daniel Golle
2025-08-26 23:06 ` [PATCH net-next v2 4/6] net: dsa: lantiq_gswip: support offset of MII registers Daniel Golle
2025-08-28 20:30   ` Hauke Mehrtens
2025-08-26 23:06 ` [PATCH net-next v2 5/6] net: dsa: lantiq_gswip: support standard MDIO node name Daniel Golle
2025-08-26 23:06 ` [PATCH net-next v2 6/6] net: dsa: lantiq_gswip: move MDIO bus registration to .setup() Daniel Golle
2025-08-28 20:24 ` [PATCH net-next v2 0/6] net: dsa: lantiq_gswip: prepare for supporting MaxLinear GSW1xx Hauke Mehrtens

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).