linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020  switches
@ 2023-05-23 14:29 Lukasz Majewski
  2023-05-23 14:29 ` [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family Lukasz Majewski
                   ` (4 more replies)
  0 siblings, 5 replies; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-23 14:29 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, Russell King
  Cc: Eric Dumazet, Florian Fainelli, David S. Miller, Jakub Kicinski,
	Paolo Abeni, Alexander Duyck, netdev, linux-kernel,
	Lukasz Majewski

After the commit (SHA1: 7e9517375a14f44ee830ca1c3278076dd65fcc8f);
"net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220, 6250, 6290" the
error when mv88e6020 or mv88e6071 is used is not present anymore.

As a result patches for adding max frame size are not required to provide
working setup with aforementioned switches.

Lukasz Majewski (2):
  dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC
    family
  net: dsa: mv88e6xxx: add support for MV88E6071 switch

Matthias Schiffer (1):
  net: dsa: mv88e6xxx: add support for MV88E6020 switch

 drivers/net/dsa/mv88e6xxx/chip.c | 41 ++++++++++++++++++++++++++++++++
 drivers/net/dsa/mv88e6xxx/chip.h |  2 ++
 drivers/net/dsa/mv88e6xxx/port.h |  2 ++
 3 files changed, 45 insertions(+)

-- 
2.20.1


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

* [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family
  2023-05-23 14:29 [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Lukasz Majewski
@ 2023-05-23 14:29 ` Lukasz Majewski
  2023-05-23 14:38   ` Russell King (Oracle)
  2023-05-23 14:43   ` Russell King (Oracle)
  2023-05-23 14:29 ` [PATCH v7 2/3] net: dsa: mv88e6xxx: add support for MV88E6020 switch Lukasz Majewski
                   ` (3 subsequent siblings)
  4 siblings, 2 replies; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-23 14:29 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, Russell King
  Cc: Eric Dumazet, Florian Fainelli, David S. Miller, Jakub Kicinski,
	Paolo Abeni, Alexander Duyck, netdev, linux-kernel,
	Lukasz Majewski

Switches from mv88e6250 family (the marketing name - "Link Street",
including mv88e6020 and mv88e6071) need the possibility to setup the
maximal frame size, as they support frames up to 2048 bytes.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
Changes for v6:
- New patch

Changes for v7:
- Update commit message
---
 drivers/net/dsa/mv88e6xxx/chip.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
index 64a2f2f83735..b5e43dd40431 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -5043,6 +5043,7 @@ static const struct mv88e6xxx_ops mv88e6250_ops = {
 	.avb_ops = &mv88e6352_avb_ops,
 	.ptp_ops = &mv88e6250_ptp_ops,
 	.phylink_get_caps = mv88e6250_phylink_get_caps,
+	.set_max_frame_size = mv88e6185_g1_set_max_frame_size,
 };
 
 static const struct mv88e6xxx_ops mv88e6290_ops = {
-- 
2.20.1


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

* [PATCH v7 2/3] net: dsa: mv88e6xxx: add support for MV88E6020 switch
  2023-05-23 14:29 [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Lukasz Majewski
  2023-05-23 14:29 ` [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family Lukasz Majewski
@ 2023-05-23 14:29 ` Lukasz Majewski
  2023-05-23 14:29 ` [PATCH v7 3/3] net: dsa: mv88e6xxx: add support for MV88E6071 switch Lukasz Majewski
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-23 14:29 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, Russell King
  Cc: Eric Dumazet, Florian Fainelli, David S. Miller, Jakub Kicinski,
	Paolo Abeni, Alexander Duyck, netdev, linux-kernel,
	Matthias Schiffer, Lukasz Majewski

From: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>

A mv88e6250 family (i.e. "LinkStreet") switch with 2 PHY and RMII
ports and no PTP support.

Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
Changes for v2:
- Add S-o-B
- Update commit message
- Add information about max packet size (2048 B)

Changes for v3:
- None

Changes for v4:
- Update the num_ports and num_internal_phys to be in sync with
  88e6020 documentation

Changes for v5:
- None

Changes for v6:
- Reorder patches for better readiness

Changes for v7:
- Provide just support for this IC (remove the part with setting
  max frame info as it is not needed anymore)
---
 drivers/net/dsa/mv88e6xxx/chip.c | 20 ++++++++++++++++++++
 drivers/net/dsa/mv88e6xxx/chip.h |  1 +
 drivers/net/dsa/mv88e6xxx/port.h |  1 +
 3 files changed, 22 insertions(+)

diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
index b5e43dd40431..9cb76a5b8ff5 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -5643,6 +5643,26 @@ static const struct mv88e6xxx_ops mv88e6393x_ops = {
 };
 
 static const struct mv88e6xxx_info mv88e6xxx_table[] = {
+	[MV88E6020] = {
+		.prod_num = MV88E6XXX_PORT_SWITCH_ID_PROD_6020,
+		.family = MV88E6XXX_FAMILY_6250,
+		.name = "Marvell 88E6020",
+		.num_databases = 64,
+		.num_ports = 4,
+		.num_internal_phys = 2,
+		.max_vid = 4095,
+		.port_base_addr = 0x8,
+		.phy_base_addr = 0x0,
+		.global1_addr = 0xf,
+		.global2_addr = 0x7,
+		.age_time_coeff = 15000,
+		.g1_irqs = 9,
+		.g2_irqs = 5,
+		.atu_move_port_mask = 0xf,
+		.dual_chip = true,
+		.ops = &mv88e6250_ops,
+	},
+
 	[MV88E6085] = {
 		.prod_num = MV88E6XXX_PORT_SWITCH_ID_PROD_6085,
 		.family = MV88E6XXX_FAMILY_6097,
diff --git a/drivers/net/dsa/mv88e6xxx/chip.h b/drivers/net/dsa/mv88e6xxx/chip.h
index da6e1339f809..4cfb16375deb 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.h
+++ b/drivers/net/dsa/mv88e6xxx/chip.h
@@ -54,6 +54,7 @@ enum mv88e6xxx_frame_mode {
 
 /* List of supported models */
 enum mv88e6xxx_model {
+	MV88E6020,
 	MV88E6085,
 	MV88E6095,
 	MV88E6097,
diff --git a/drivers/net/dsa/mv88e6xxx/port.h b/drivers/net/dsa/mv88e6xxx/port.h
index d19b6303b91f..56efba08abdc 100644
--- a/drivers/net/dsa/mv88e6xxx/port.h
+++ b/drivers/net/dsa/mv88e6xxx/port.h
@@ -111,6 +111,7 @@
 /* Offset 0x03: Switch Identifier Register */
 #define MV88E6XXX_PORT_SWITCH_ID		0x03
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_MASK	0xfff0
+#define MV88E6XXX_PORT_SWITCH_ID_PROD_6020	0x0200
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_6085	0x04a0
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_6095	0x0950
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_6097	0x0990
-- 
2.20.1


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

* [PATCH v7 3/3] net: dsa: mv88e6xxx: add support for MV88E6071 switch
  2023-05-23 14:29 [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Lukasz Majewski
  2023-05-23 14:29 ` [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family Lukasz Majewski
  2023-05-23 14:29 ` [PATCH v7 2/3] net: dsa: mv88e6xxx: add support for MV88E6020 switch Lukasz Majewski
@ 2023-05-23 14:29 ` Lukasz Majewski
  2023-05-23 17:37   ` Andrew Lunn
  2023-05-23 17:26 ` [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Andrew Lunn
  2023-05-29  9:02 ` Lukasz Majewski
  4 siblings, 1 reply; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-23 14:29 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, Russell King
  Cc: Eric Dumazet, Florian Fainelli, David S. Miller, Jakub Kicinski,
	Paolo Abeni, Alexander Duyck, netdev, linux-kernel,
	Lukasz Majewski

A mv88e6250 family (i.e. "LinkStreet") switch with 5 internal PHYs,
2 RMIIs and no PTP support.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
Changes for v2:
- Update commit message
- Add information about max frame size

Changes for v3:
- None

Changes for v4:
- None

Changes for v5:
- None

Changes for v6:
- Reorder patches for better readiness

Changes for v7:
- Provide just support for this IC (remove the part with setting
  max frame info as it is not needed anymore)
---
 drivers/net/dsa/mv88e6xxx/chip.c | 20 ++++++++++++++++++++
 drivers/net/dsa/mv88e6xxx/chip.h |  1 +
 drivers/net/dsa/mv88e6xxx/port.h |  1 +
 3 files changed, 22 insertions(+)

diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
index 9cb76a5b8ff5..8d4c1ab4c85d 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -5663,6 +5663,26 @@ static const struct mv88e6xxx_info mv88e6xxx_table[] = {
 		.ops = &mv88e6250_ops,
 	},
 
+	[MV88E6071] = {
+		.prod_num = MV88E6XXX_PORT_SWITCH_ID_PROD_6071,
+		.family = MV88E6XXX_FAMILY_6250,
+		.name = "Marvell 88E6071",
+		.num_databases = 64,
+		.num_ports = 7,
+		.num_internal_phys = 5,
+		.max_vid = 4095,
+		.port_base_addr = 0x08,
+		.phy_base_addr = 0x00,
+		.global1_addr = 0x0f,
+		.global2_addr = 0x07,
+		.age_time_coeff = 15000,
+		.g1_irqs = 9,
+		.g2_irqs = 5,
+		.atu_move_port_mask = 0xf,
+		.dual_chip = true,
+		.ops = &mv88e6250_ops,
+	},
+
 	[MV88E6085] = {
 		.prod_num = MV88E6XXX_PORT_SWITCH_ID_PROD_6085,
 		.family = MV88E6XXX_FAMILY_6097,
diff --git a/drivers/net/dsa/mv88e6xxx/chip.h b/drivers/net/dsa/mv88e6xxx/chip.h
index 4cfb16375deb..128715df5772 100644
--- a/drivers/net/dsa/mv88e6xxx/chip.h
+++ b/drivers/net/dsa/mv88e6xxx/chip.h
@@ -55,6 +55,7 @@ enum mv88e6xxx_frame_mode {
 /* List of supported models */
 enum mv88e6xxx_model {
 	MV88E6020,
+	MV88E6071,
 	MV88E6085,
 	MV88E6095,
 	MV88E6097,
diff --git a/drivers/net/dsa/mv88e6xxx/port.h b/drivers/net/dsa/mv88e6xxx/port.h
index 56efba08abdc..e423ef13a827 100644
--- a/drivers/net/dsa/mv88e6xxx/port.h
+++ b/drivers/net/dsa/mv88e6xxx/port.h
@@ -112,6 +112,7 @@
 #define MV88E6XXX_PORT_SWITCH_ID		0x03
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_MASK	0xfff0
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_6020	0x0200
+#define MV88E6XXX_PORT_SWITCH_ID_PROD_6071	0x0710
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_6085	0x04a0
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_6095	0x0950
 #define MV88E6XXX_PORT_SWITCH_ID_PROD_6097	0x0990
-- 
2.20.1


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

* Re: [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family
  2023-05-23 14:29 ` [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family Lukasz Majewski
@ 2023-05-23 14:38   ` Russell King (Oracle)
  2023-05-24 12:53     ` Lukasz Majewski
  2023-05-23 14:43   ` Russell King (Oracle)
  1 sibling, 1 reply; 19+ messages in thread
From: Russell King (Oracle) @ 2023-05-23 14:38 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Andrew Lunn, Vladimir Oltean, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

On Tue, May 23, 2023 at 04:29:10PM +0200, Lukasz Majewski wrote:
> Switches from mv88e6250 family (the marketing name - "Link Street",
> including mv88e6020 and mv88e6071) need the possibility to setup the
> maximal frame size, as they support frames up to 2048 bytes.
> 
> Signed-off-by: Lukasz Majewski <lukma@denx.de>

Adding this function doesn't allow the "possibility" for a larger frame
size. Adding it changes the value returned from mv88e6xxx_get_max_mtu()
to be a larger frame size, so all switches that make use of
mv88e6250_ops will be expected to support this larger frame size. Do
we know whether that is true?

There were patches floating about a while ago that specified the
maximum size in struct mv88e6xxx_info, but it seems those died a death.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!

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

* Re: [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family
  2023-05-23 14:29 ` [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family Lukasz Majewski
  2023-05-23 14:38   ` Russell King (Oracle)
@ 2023-05-23 14:43   ` Russell King (Oracle)
  2023-05-24 12:06     ` Lukasz Majewski
  1 sibling, 1 reply; 19+ messages in thread
From: Russell King (Oracle) @ 2023-05-23 14:43 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Andrew Lunn, Vladimir Oltean, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

Also, subject line should be "net: dsa: ..."

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-23 14:29 [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Lukasz Majewski
                   ` (2 preceding siblings ...)
  2023-05-23 14:29 ` [PATCH v7 3/3] net: dsa: mv88e6xxx: add support for MV88E6071 switch Lukasz Majewski
@ 2023-05-23 17:26 ` Andrew Lunn
  2023-05-24 12:17   ` Lukasz Majewski
  2023-05-29  9:02 ` Lukasz Majewski
  4 siblings, 1 reply; 19+ messages in thread
From: Andrew Lunn @ 2023-05-23 17:26 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Vladimir Oltean, Russell King, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

On Tue, May 23, 2023 at 04:29:09PM +0200, Lukasz Majewski wrote:
> After the commit (SHA1: 7e9517375a14f44ee830ca1c3278076dd65fcc8f);
> "net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220, 6250, 6290" the
> error when mv88e6020 or mv88e6071 is used is not present anymore.

>   dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC
>     family

Hi Lukasz

commit 7e9517375a14f44ee830ca1c3278076dd65fcc8f
Author: Vladimir Oltean <vladimir.oltean@nxp.com>
Date:   Tue Mar 14 20:24:05 2023 +0200

    net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220, 6250, 6290
    
    There are 3 classes of switch families that the driver is aware of, as
    far as mv88e6xxx_change_mtu() is concerned:
    
    - MTU configuration is available per port. Here, the
      chip->info->ops->port_set_jumbo_size() method will be present.
    
    - MTU configuration is global to the switch. Here, the
      chip->info->ops->set_max_frame_size() method will be present.
    
    - We don't know how to change the MTU. Here, none of the above methods
      will be present.
    
    Switch families MV88E6165, MV88E6191, MV88E6220, MV88E6250 and MV88E6290
    fall in category 3.


Vladimir indicates here that it is not known how to change the max MTU
for the MV88E6250. Where did you get the information from to implement
it?

	Andrew

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

* Re: [PATCH v7 3/3] net: dsa: mv88e6xxx: add support for MV88E6071 switch
  2023-05-23 14:29 ` [PATCH v7 3/3] net: dsa: mv88e6xxx: add support for MV88E6071 switch Lukasz Majewski
@ 2023-05-23 17:37   ` Andrew Lunn
  0 siblings, 0 replies; 19+ messages in thread
From: Andrew Lunn @ 2023-05-23 17:37 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Vladimir Oltean, Russell King, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

On Tue, May 23, 2023 at 04:29:12PM +0200, Lukasz Majewski wrote:
> A mv88e6250 family (i.e. "LinkStreet") switch with 5 internal PHYs,
> 2 RMIIs and no PTP support.

chip.h says:

        MV88E6XXX_FAMILY_6250,  /* 6220 6250 */

Please update this comment.

I would also suggest you don't call the mv88e6250 family
"LinkStreet". All Marvell SoHo switches are LinkStreet, all switches
supported by the mv88e6xxx driver are "LinkStreet".

With these changes:

Reviewed-by: Andrew Lunn <andrew@lunn.ch>


    Andrew

---
pw-bot: cr

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

* Re: [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family
  2023-05-23 14:43   ` Russell King (Oracle)
@ 2023-05-24 12:06     ` Lukasz Majewski
  2023-05-24 12:08       ` Russell King (Oracle)
  0 siblings, 1 reply; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-24 12:06 UTC (permalink / raw)
  To: Russell King (Oracle)
  Cc: Andrew Lunn, Vladimir Oltean, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

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

Hi Russell,

> Also, subject line should be "net: dsa: ..."
> 

Ok, I will correct that subject line.


Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* Re: [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family
  2023-05-24 12:06     ` Lukasz Majewski
@ 2023-05-24 12:08       ` Russell King (Oracle)
  0 siblings, 0 replies; 19+ messages in thread
From: Russell King (Oracle) @ 2023-05-24 12:08 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Andrew Lunn, Vladimir Oltean, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

On Wed, May 24, 2023 at 02:06:36PM +0200, Lukasz Majewski wrote:
> Hi Russell,
> 
> > Also, subject line should be "net: dsa: ..."
> > 
> 
> Ok, I will correct that subject line.

Also, please use "mv88e6xxx" rather than "marvell" - consistency in the
subject lines, particularly when referring to a part of the kernel tree
is desirable.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-23 17:26 ` [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Andrew Lunn
@ 2023-05-24 12:17   ` Lukasz Majewski
  2023-05-24 12:37     ` Russell King (Oracle)
  2023-05-24 13:48     ` Andrew Lunn
  0 siblings, 2 replies; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-24 12:17 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: Vladimir Oltean, Russell King, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

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

Hi Andrew,

> On Tue, May 23, 2023 at 04:29:09PM +0200, Lukasz Majewski wrote:
> > After the commit (SHA1: 7e9517375a14f44ee830ca1c3278076dd65fcc8f);
> > "net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220,
> > 6250, 6290" the error when mv88e6020 or mv88e6071 is used is not
> > present anymore.  
> 
> >   dsa: marvell: Define .set_max_frame_size() function for mv88e6250
> > SoC family  
> 
> Hi Lukasz
> 
> commit 7e9517375a14f44ee830ca1c3278076dd65fcc8f
> Author: Vladimir Oltean <vladimir.oltean@nxp.com>
> Date:   Tue Mar 14 20:24:05 2023 +0200
> 
>     net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220,
> 6250, 6290 
>     There are 3 classes of switch families that the driver is aware
> of, as far as mv88e6xxx_change_mtu() is concerned:
>     
>     - MTU configuration is available per port. Here, the
>       chip->info->ops->port_set_jumbo_size() method will be present.
>     
>     - MTU configuration is global to the switch. Here, the
>       chip->info->ops->set_max_frame_size() method will be present.
>     
>     - We don't know how to change the MTU. Here, none of the above
> methods will be present.
>     
>     Switch families MV88E6165, MV88E6191, MV88E6220, MV88E6250 and
> MV88E6290 fall in category 3.
> 
> 
> Vladimir indicates here that it is not known how to change the max MTU
> for the MV88E6250. Where did you get the information from to implement
> it?

Please refer to [1].

The mv88e6185_g1_set_max_frame_size() function can be reused (as
registers' offsets and bits are the same for mv88e60{71|20}).

After using Vladimir's patch there is no need to add max_frame size
field and related patches from v6 can be dropped.

> 
> 	Andrew


Links:

[1] - https://www.spinics.net/lists/kernel/msg4798861.html

Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-24 12:17   ` Lukasz Majewski
@ 2023-05-24 12:37     ` Russell King (Oracle)
  2023-05-24 13:48     ` Andrew Lunn
  1 sibling, 0 replies; 19+ messages in thread
From: Russell King (Oracle) @ 2023-05-24 12:37 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Andrew Lunn, Vladimir Oltean, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

On Wed, May 24, 2023 at 02:17:43PM +0200, Lukasz Majewski wrote:
> Hi Andrew,
> 
> > On Tue, May 23, 2023 at 04:29:09PM +0200, Lukasz Majewski wrote:
> > > After the commit (SHA1: 7e9517375a14f44ee830ca1c3278076dd65fcc8f);
> > > "net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220,
> > > 6250, 6290" the error when mv88e6020 or mv88e6071 is used is not
> > > present anymore.  
> > 
> > >   dsa: marvell: Define .set_max_frame_size() function for mv88e6250
> > > SoC family  
> > 
> > Hi Lukasz
> > 
> > commit 7e9517375a14f44ee830ca1c3278076dd65fcc8f
> > Author: Vladimir Oltean <vladimir.oltean@nxp.com>
> > Date:   Tue Mar 14 20:24:05 2023 +0200
> > 
> >     net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220,
> > 6250, 6290 
> >     There are 3 classes of switch families that the driver is aware
> > of, as far as mv88e6xxx_change_mtu() is concerned:
> >     
> >     - MTU configuration is available per port. Here, the
> >       chip->info->ops->port_set_jumbo_size() method will be present.
> >     
> >     - MTU configuration is global to the switch. Here, the
> >       chip->info->ops->set_max_frame_size() method will be present.
> >     
> >     - We don't know how to change the MTU. Here, none of the above
> > methods will be present.
> >     
> >     Switch families MV88E6165, MV88E6191, MV88E6220, MV88E6250 and
> > MV88E6290 fall in category 3.
> > 
> > 
> > Vladimir indicates here that it is not known how to change the max MTU
> > for the MV88E6250. Where did you get the information from to implement
> > it?
> 
> Please refer to [1].
> 
> The mv88e6185_g1_set_max_frame_size() function can be reused (as
> registers' offsets and bits are the same for mv88e60{71|20}).
> 
> After using Vladimir's patch there is no need to add max_frame size
> field and related patches from v6 can be dropped.

However, you haven't responded to:

https://lore.kernel.org/all/ZGzP0qEjQkCFnXnr@shell.armlinux.org.uk/

to explain why what you're doing (adding this function) is safe.

Thanks.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!

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

* Re: [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family
  2023-05-23 14:38   ` Russell King (Oracle)
@ 2023-05-24 12:53     ` Lukasz Majewski
  0 siblings, 0 replies; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-24 12:53 UTC (permalink / raw)
  To: Russell King (Oracle)
  Cc: Andrew Lunn, Vladimir Oltean, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

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

Hi Russell,

> On Tue, May 23, 2023 at 04:29:10PM +0200, Lukasz Majewski wrote:
> > Switches from mv88e6250 family (the marketing name - "Link Street",
> > including mv88e6020 and mv88e6071) need the possibility to setup the
> > maximal frame size, as they support frames up to 2048 bytes.
> > 
> > Signed-off-by: Lukasz Majewski <lukma@denx.de>  
> 
> Adding this function doesn't allow the "possibility" for a larger
> frame size. Adding it changes the value returned from
> mv88e6xxx_get_max_mtu() to be a larger frame size, so all switches
> that make use of mv88e6250_ops will be expected to support this
> larger frame size. Do we know whether that is true?
> 

According to functional specification - the 6070, 6071, 6250, 6020 and
6220 have "Max Frame Size" of 2048 bytes.

The mv88e6xxx_get_max_mtu() now will:
return 1632 - VLAN_ETH_HLEN - EDSA_HLEN - ETH_FCS_LEN;

which is acceptable and safe for this family of chips.

> There were patches floating about a while ago that specified the
> maximum size in struct mv88e6xxx_info, but it seems those died a
> death.
> 

Those patches seems to not be strictly required after Vladimir's work.

The v7 provides what I need, so yes - extra patches from v6 can be
discarded.


Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-24 12:17   ` Lukasz Majewski
  2023-05-24 12:37     ` Russell King (Oracle)
@ 2023-05-24 13:48     ` Andrew Lunn
  1 sibling, 0 replies; 19+ messages in thread
From: Andrew Lunn @ 2023-05-24 13:48 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Vladimir Oltean, Russell King, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

> > Vladimir indicates here that it is not known how to change the max MTU
> > for the MV88E6250. Where did you get the information from to implement
> > it?
> 
> Please refer to [1].
> 
> The mv88e6185_g1_set_max_frame_size() function can be reused (as
> registers' offsets and bits are the same for mv88e60{71|20}).

So you have the datasheet? You get the information to implement this
from the data sheet?

     Andrew

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-23 14:29 [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Lukasz Majewski
                   ` (3 preceding siblings ...)
  2023-05-23 17:26 ` [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Andrew Lunn
@ 2023-05-29  9:02 ` Lukasz Majewski
  2023-05-29 10:51   ` Vladimir Oltean
  4 siblings, 1 reply; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-29  9:02 UTC (permalink / raw)
  To: Andrew Lunn, Vladimir Oltean, Russell King
  Cc: Eric Dumazet, Florian Fainelli, David S. Miller, Jakub Kicinski,
	Paolo Abeni, Alexander Duyck, netdev, linux-kernel

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

Dear All,

> After the commit (SHA1: 7e9517375a14f44ee830ca1c3278076dd65fcc8f);
> "net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220, 6250,
> 6290" the error when mv88e6020 or mv88e6071 is used is not present
> anymore.
> 

Are there any more comments for this patch set?

> As a result patches for adding max frame size are not required to
> provide working setup with aforementioned switches.
> 
> Lukasz Majewski (2):
>   dsa: marvell: Define .set_max_frame_size() function for mv88e6250
> SoC family
>   net: dsa: mv88e6xxx: add support for MV88E6071 switch
> 
> Matthias Schiffer (1):
>   net: dsa: mv88e6xxx: add support for MV88E6020 switch
> 
>  drivers/net/dsa/mv88e6xxx/chip.c | 41
> ++++++++++++++++++++++++++++++++ drivers/net/dsa/mv88e6xxx/chip.h |
> 2 ++ drivers/net/dsa/mv88e6xxx/port.h |  2 ++
>  3 files changed, 45 insertions(+)
> 




Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-29  9:02 ` Lukasz Majewski
@ 2023-05-29 10:51   ` Vladimir Oltean
  2023-05-29 11:03     ` Lukasz Majewski
  0 siblings, 1 reply; 19+ messages in thread
From: Vladimir Oltean @ 2023-05-29 10:51 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Andrew Lunn, Russell King, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

Hello Lukasz,

On Mon, May 29, 2023 at 11:02:22AM +0200, Lukasz Majewski wrote:
> Dear All,
> 
> > After the commit (SHA1: 7e9517375a14f44ee830ca1c3278076dd65fcc8f);
> > "net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220, 6250,
> > 6290" the error when mv88e6020 or mv88e6071 is used is not present
> > anymore.
> > 
> 
> Are there any more comments for this patch set?

Has your email client eaten these comments too?

https://lore.kernel.org/netdev/c39f4127-e1fe-4d38-83eb-f372ca2ebcd3@lunn.ch/
| On Wed, May 24, 2023 at 03:48:02PM +0200, Andrew Lunn wrote:
| > > > Vladimir indicates here that it is not known how to change the max MTU
| > > > for the MV88E6250. Where did you get the information from to implement
| > > > it?
| > > 
| > > Please refer to [1].
| > > 
| > > The mv88e6185_g1_set_max_frame_size() function can be reused (as
| > > registers' offsets and bits are the same for mv88e60{71|20}).
| > 
| > So you have the datasheet? You get the information to implement this
| > from the data sheet?
| > 
| >      Andrew

https://lore.kernel.org/netdev/ZG4E+wd03cKipsib@shell.armlinux.org.uk/
| On Wed, May 24, 2023 at 01:37:15PM +0100, Russell King (Oracle) wrote:
| > On Wed, May 24, 2023 at 02:17:43PM +0200, Lukasz Majewski wrote:
| > > Please refer to [1].
| > > 
| > > The mv88e6185_g1_set_max_frame_size() function can be reused (as
| > > registers' offsets and bits are the same for mv88e60{71|20}).
| > > 
| > > After using Vladimir's patch there is no need to add max_frame size
| > > field and related patches from v6 can be dropped.
| > 
| > However, you haven't responded to:
| > 
| > https://lore.kernel.org/all/ZGzP0qEjQkCFnXnr@shell.armlinux.org.uk/
| > 
| > to explain why what you're doing (adding this function) is safe.
| > 
| > Thanks.
| > 
| > -- 
| > RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
| > FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-29 10:51   ` Vladimir Oltean
@ 2023-05-29 11:03     ` Lukasz Majewski
  2023-05-29 11:23       ` Vladimir Oltean
  0 siblings, 1 reply; 19+ messages in thread
From: Lukasz Majewski @ 2023-05-29 11:03 UTC (permalink / raw)
  To: Vladimir Oltean
  Cc: Andrew Lunn, Russell King, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

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

Hi Vladimir,

> Hello Lukasz,
> 
> On Mon, May 29, 2023 at 11:02:22AM +0200, Lukasz Majewski wrote:
> > Dear All,
> >   
> > > After the commit (SHA1: 7e9517375a14f44ee830ca1c3278076dd65fcc8f);
> > > "net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220,
> > > 6250, 6290" the error when mv88e6020 or mv88e6071 is used is not
> > > present anymore.
> > >   
> > 
> > Are there any more comments for this patch set?  
> 
> Has your email client eaten these comments too?
> 
> https://lore.kernel.org/netdev/c39f4127-e1fe-4d38-83eb-f372ca2ebcd3@lunn.ch/
> | On Wed, May 24, 2023 at 03:48:02PM +0200, Andrew Lunn wrote:
> | > > > Vladimir indicates here that it is not known how to change
> the max MTU | > > > for the MV88E6250. Where did you get the
> information from to implement | > > > it?
> | > > 
> | > > Please refer to [1].
> | > > 
> | > > The mv88e6185_g1_set_max_frame_size() function can be reused (as
> | > > registers' offsets and bits are the same for mv88e60{71|20}).
> | > 
> | > So you have the datasheet? You get the information to implement
> this | > from the data sheet?
> | > 

This I've replied to Andrew in a private mail.

> | >      Andrew
> 
> https://lore.kernel.org/netdev/ZG4E+wd03cKipsib@shell.armlinux.org.uk/
> | On Wed, May 24, 2023 at 01:37:15PM +0100, Russell King (Oracle)
> wrote: | > On Wed, May 24, 2023 at 02:17:43PM +0200, Lukasz Majewski
> wrote: | > > Please refer to [1].
> | > > 
> | > > The mv88e6185_g1_set_max_frame_size() function can be reused (as
> | > > registers' offsets and bits are the same for mv88e60{71|20}).
> | > > 
> | > > After using Vladimir's patch there is no need to add max_frame
> size | > > field and related patches from v6 can be dropped.
> | > 
> | > However, you haven't responded to:
> | > 
> | >
> https://lore.kernel.org/all/ZGzP0qEjQkCFnXnr@shell.armlinux.org.uk/ |
> > | > to explain why what you're doing (adding this function) is safe.
> | > 
> | > Thanks.
> | > 

The above question has been replied:
https://lore.kernel.org/all/20230524145357.3928f261@wsk/

> | > -- 
> | > RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
> | > FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!

Do you have any more comments?


Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-29 11:03     ` Lukasz Majewski
@ 2023-05-29 11:23       ` Vladimir Oltean
  2023-05-29 14:16         ` Andrew Lunn
  0 siblings, 1 reply; 19+ messages in thread
From: Vladimir Oltean @ 2023-05-29 11:23 UTC (permalink / raw)
  To: Lukasz Majewski
  Cc: Andrew Lunn, Russell King, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

On Mon, May 29, 2023 at 01:03:14PM +0200, Lukasz Majewski wrote:
> This I've replied to Andrew in a private mail.

Aha.

> The above question has been replied:
> https://lore.kernel.org/all/20230524145357.3928f261@wsk/
> 
> Do you have any more comments?

I don't have any comments.

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

* Re: [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches
  2023-05-29 11:23       ` Vladimir Oltean
@ 2023-05-29 14:16         ` Andrew Lunn
  0 siblings, 0 replies; 19+ messages in thread
From: Andrew Lunn @ 2023-05-29 14:16 UTC (permalink / raw)
  To: Vladimir Oltean
  Cc: Lukasz Majewski, Russell King, Eric Dumazet, Florian Fainelli,
	David S. Miller, Jakub Kicinski, Paolo Abeni, Alexander Duyck,
	netdev, linux-kernel

On Mon, May 29, 2023 at 02:23:34PM +0300, Vladimir Oltean wrote:
> On Mon, May 29, 2023 at 01:03:14PM +0200, Lukasz Majewski wrote:
> > This I've replied to Andrew in a private mail.
> 
> Aha.

Yes, the appropriate checks have been made, the reuse of the functions
to set the MTU should be correct.

       Andrew

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

end of thread, other threads:[~2023-05-29 14:17 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-23 14:29 [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Lukasz Majewski
2023-05-23 14:29 ` [PATCH v7 1/3] dsa: marvell: Define .set_max_frame_size() function for mv88e6250 SoC family Lukasz Majewski
2023-05-23 14:38   ` Russell King (Oracle)
2023-05-24 12:53     ` Lukasz Majewski
2023-05-23 14:43   ` Russell King (Oracle)
2023-05-24 12:06     ` Lukasz Majewski
2023-05-24 12:08       ` Russell King (Oracle)
2023-05-23 14:29 ` [PATCH v7 2/3] net: dsa: mv88e6xxx: add support for MV88E6020 switch Lukasz Majewski
2023-05-23 14:29 ` [PATCH v7 3/3] net: dsa: mv88e6xxx: add support for MV88E6071 switch Lukasz Majewski
2023-05-23 17:37   ` Andrew Lunn
2023-05-23 17:26 ` [PATCH v7 0/3] dsa: marvell: Add support for mv88e6071 and 6020 switches Andrew Lunn
2023-05-24 12:17   ` Lukasz Majewski
2023-05-24 12:37     ` Russell King (Oracle)
2023-05-24 13:48     ` Andrew Lunn
2023-05-29  9:02 ` Lukasz Majewski
2023-05-29 10:51   ` Vladimir Oltean
2023-05-29 11:03     ` Lukasz Majewski
2023-05-29 11:23       ` Vladimir Oltean
2023-05-29 14:16         ` Andrew Lunn

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).