]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 26 Jul 2021 09:27:44 +0000 (11:27 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 26 Jul 2021 09:27:44 +0000 (11:27 +0200)
added patches:
net-dsa-mv88e6xxx-enable-serdes-pcs-register-dump-via-ethtool-d-on-topaz.patch
net-dsa-mv88e6xxx-enable-serdes-rx-stats-for-topaz.patch

queue-5.10/net-dsa-mv88e6xxx-enable-serdes-pcs-register-dump-via-ethtool-d-on-topaz.patch [new file with mode: 0644]
queue-5.10/net-dsa-mv88e6xxx-enable-serdes-rx-stats-for-topaz.patch [new file with mode: 0644]
queue-5.10/series

diff --git a/queue-5.10/net-dsa-mv88e6xxx-enable-serdes-pcs-register-dump-via-ethtool-d-on-topaz.patch b/queue-5.10/net-dsa-mv88e6xxx-enable-serdes-pcs-register-dump-via-ethtool-d-on-topaz.patch
new file mode 100644 (file)
index 0000000..5a1eeec
--- /dev/null
@@ -0,0 +1,48 @@
+From 953b0dcbe2e3f7bee98cc3bca2ec82c8298e9c16 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marek=20Beh=C3=BAn?= <kabel@kernel.org>
+Date: Thu, 1 Jul 2021 00:22:31 +0200
+Subject: net: dsa: mv88e6xxx: enable SerDes PCS register dump via ethtool -d on Topaz
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Marek Behún <kabel@kernel.org>
+
+commit 953b0dcbe2e3f7bee98cc3bca2ec82c8298e9c16 upstream.
+
+Commit bf3504cea7d7e ("net: dsa: mv88e6xxx: Add 6390 family PCS
+registers to ethtool -d") added support for dumping SerDes PCS registers
+via ethtool -d for Peridot.
+
+The same implementation is also valid for Topaz, but was not
+enabled at the time.
+
+Signed-off-by: Marek Behún <kabel@kernel.org>
+Fixes: bf3504cea7d7e ("net: dsa: mv88e6xxx: Add 6390 family PCS registers to ethtool -d")
+Reviewed-by: Andrew Lunn <andrew@lunn.ch>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/dsa/mv88e6xxx/chip.c |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+--- a/drivers/net/dsa/mv88e6xxx/chip.c
++++ b/drivers/net/dsa/mv88e6xxx/chip.c
+@@ -3436,6 +3436,8 @@ static const struct mv88e6xxx_ops mv88e6
+       .serdes_get_sset_count = mv88e6390_serdes_get_sset_count,
+       .serdes_get_strings = mv88e6390_serdes_get_strings,
+       .serdes_get_stats = mv88e6390_serdes_get_stats,
++      .serdes_get_regs_len = mv88e6390_serdes_get_regs_len,
++      .serdes_get_regs = mv88e6390_serdes_get_regs,
+       .phylink_validate = mv88e6341_phylink_validate,
+ };
+@@ -4211,6 +4213,8 @@ static const struct mv88e6xxx_ops mv88e6
+       .serdes_get_sset_count = mv88e6390_serdes_get_sset_count,
+       .serdes_get_strings = mv88e6390_serdes_get_strings,
+       .serdes_get_stats = mv88e6390_serdes_get_stats,
++      .serdes_get_regs_len = mv88e6390_serdes_get_regs_len,
++      .serdes_get_regs = mv88e6390_serdes_get_regs,
+       .phylink_validate = mv88e6341_phylink_validate,
+ };
diff --git a/queue-5.10/net-dsa-mv88e6xxx-enable-serdes-rx-stats-for-topaz.patch b/queue-5.10/net-dsa-mv88e6xxx-enable-serdes-rx-stats-for-topaz.patch
new file mode 100644 (file)
index 0000000..d5dda11
--- /dev/null
@@ -0,0 +1,82 @@
+From a03b98d68367b18e5db6d6850e2cc18754fba94a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marek=20Beh=C3=BAn?= <kabel@kernel.org>
+Date: Thu, 1 Jul 2021 00:22:30 +0200
+Subject: net: dsa: mv88e6xxx: enable SerDes RX stats for Topaz
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Marek Behún <kabel@kernel.org>
+
+commit a03b98d68367b18e5db6d6850e2cc18754fba94a upstream.
+
+Commit 0df952873636a ("mv88e6xxx: Add serdes Rx statistics") added
+support for RX statistics on SerDes ports for Peridot.
+
+This same implementation is also valid for Topaz, but was not enabled
+at the time.
+
+We need to use the generic .serdes_get_lane() method instead of the
+Peridot specific one in the stats methods so that on Topaz the proper
+one is used.
+
+Signed-off-by: Marek Behún <kabel@kernel.org>
+Fixes: 0df952873636a ("mv88e6xxx: Add serdes Rx statistics")
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/net/dsa/mv88e6xxx/chip.c   |    6 ++++++
+ drivers/net/dsa/mv88e6xxx/serdes.c |    6 +++---
+ 2 files changed, 9 insertions(+), 3 deletions(-)
+
+--- a/drivers/net/dsa/mv88e6xxx/chip.c
++++ b/drivers/net/dsa/mv88e6xxx/chip.c
+@@ -3433,6 +3433,9 @@ static const struct mv88e6xxx_ops mv88e6
+       .serdes_irq_enable = mv88e6390_serdes_irq_enable,
+       .serdes_irq_status = mv88e6390_serdes_irq_status,
+       .gpio_ops = &mv88e6352_gpio_ops,
++      .serdes_get_sset_count = mv88e6390_serdes_get_sset_count,
++      .serdes_get_strings = mv88e6390_serdes_get_strings,
++      .serdes_get_stats = mv88e6390_serdes_get_stats,
+       .phylink_validate = mv88e6341_phylink_validate,
+ };
+@@ -4205,6 +4208,9 @@ static const struct mv88e6xxx_ops mv88e6
+       .gpio_ops = &mv88e6352_gpio_ops,
+       .avb_ops = &mv88e6390_avb_ops,
+       .ptp_ops = &mv88e6352_ptp_ops,
++      .serdes_get_sset_count = mv88e6390_serdes_get_sset_count,
++      .serdes_get_strings = mv88e6390_serdes_get_strings,
++      .serdes_get_stats = mv88e6390_serdes_get_stats,
+       .phylink_validate = mv88e6341_phylink_validate,
+ };
+--- a/drivers/net/dsa/mv88e6xxx/serdes.c
++++ b/drivers/net/dsa/mv88e6xxx/serdes.c
+@@ -590,7 +590,7 @@ static struct mv88e6390_serdes_hw_stat m
+ int mv88e6390_serdes_get_sset_count(struct mv88e6xxx_chip *chip, int port)
+ {
+-      if (mv88e6390_serdes_get_lane(chip, port) == 0)
++      if (mv88e6xxx_serdes_get_lane(chip, port) == 0)
+               return 0;
+       return ARRAY_SIZE(mv88e6390_serdes_hw_stats);
+@@ -602,7 +602,7 @@ int mv88e6390_serdes_get_strings(struct
+       struct mv88e6390_serdes_hw_stat *stat;
+       int i;
+-      if (mv88e6390_serdes_get_lane(chip, port) == 0)
++      if (mv88e6xxx_serdes_get_lane(chip, port) == 0)
+               return 0;
+       for (i = 0; i < ARRAY_SIZE(mv88e6390_serdes_hw_stats); i++) {
+@@ -638,7 +638,7 @@ int mv88e6390_serdes_get_stats(struct mv
+       int lane;
+       int i;
+-      lane = mv88e6390_serdes_get_lane(chip, port);
++      lane = mv88e6xxx_serdes_get_lane(chip, port);
+       if (lane == 0)
+               return 0;
index 86d2bace5bb0d20375de6dcc556e31ee3b2bb779..8a1be1d52cef6042141838cdf6fc88985ed72990 100644 (file)
@@ -156,3 +156,5 @@ driver-core-prevent-warning-when-removing-a-device-link-from-unregistered-consum
 revert-drm-i915-propagate-errors-on-awaiting-already-signaled-fences.patch
 drm-return-enotty-for-non-drm-ioctls.patch
 drm-amdgpu-update-golden-setting-for-sienna_cichlid.patch
+net-dsa-mv88e6xxx-enable-serdes-rx-stats-for-topaz.patch
+net-dsa-mv88e6xxx-enable-serdes-pcs-register-dump-via-ethtool-d-on-topaz.patch