]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
eth: fbnic: reorder ethtool code
authorJakub Kicinski <kuba@kernel.org>
Fri, 20 Dec 2024 02:52:32 +0000 (18:52 -0800)
committerJakub Kicinski <kuba@kernel.org>
Mon, 23 Dec 2024 18:35:53 +0000 (10:35 -0800)
Define ethtool callback handlers in order in which they are defined
in the ops struct. It doesn't really matter what the order is,
but it's good to have an order.

Reviewed-by: Larysa Zaremba <larysa.zaremba@intel.com>
Link: https://patch.msgid.link/20241220025241.1522781-2-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/meta/fbnic/fbnic_ethtool.c

index cc8ca94529ca10654f6b810ed847eeda7bffbd37..777e083acae9b1baeb99f253bcfbf23f281e5d02 100644 (file)
@@ -40,35 +40,6 @@ static const struct fbnic_stat fbnic_gstrings_hw_stats[] = {
 #define FBNIC_HW_FIXED_STATS_LEN ARRAY_SIZE(fbnic_gstrings_hw_stats)
 #define FBNIC_HW_STATS_LEN     FBNIC_HW_FIXED_STATS_LEN
 
-static int
-fbnic_get_ts_info(struct net_device *netdev,
-                 struct kernel_ethtool_ts_info *tsinfo)
-{
-       struct fbnic_net *fbn = netdev_priv(netdev);
-
-       tsinfo->phc_index = ptp_clock_index(fbn->fbd->ptp);
-
-       tsinfo->so_timestamping =
-               SOF_TIMESTAMPING_TX_SOFTWARE |
-               SOF_TIMESTAMPING_TX_HARDWARE |
-               SOF_TIMESTAMPING_RX_HARDWARE |
-               SOF_TIMESTAMPING_RAW_HARDWARE;
-
-       tsinfo->tx_types =
-               BIT(HWTSTAMP_TX_OFF) |
-               BIT(HWTSTAMP_TX_ON);
-
-       tsinfo->rx_filters =
-               BIT(HWTSTAMP_FILTER_NONE) |
-               BIT(HWTSTAMP_FILTER_PTP_V1_L4_EVENT) |
-               BIT(HWTSTAMP_FILTER_PTP_V2_L4_EVENT) |
-               BIT(HWTSTAMP_FILTER_PTP_V2_L2_EVENT) |
-               BIT(HWTSTAMP_FILTER_PTP_V2_EVENT) |
-               BIT(HWTSTAMP_FILTER_ALL);
-
-       return 0;
-}
-
 static void
 fbnic_get_drvinfo(struct net_device *netdev, struct ethtool_drvinfo *drvinfo)
 {
@@ -79,10 +50,19 @@ fbnic_get_drvinfo(struct net_device *netdev, struct ethtool_drvinfo *drvinfo)
                                    sizeof(drvinfo->fw_version));
 }
 
-static void fbnic_set_counter(u64 *stat, struct fbnic_stat_counter *counter)
+static int fbnic_get_regs_len(struct net_device *netdev)
 {
-       if (counter->reported)
-               *stat = counter->value;
+       struct fbnic_net *fbn = netdev_priv(netdev);
+
+       return fbnic_csr_regs_len(fbn->fbd) * sizeof(u32);
+}
+
+static void fbnic_get_regs(struct net_device *netdev,
+                          struct ethtool_regs *regs, void *data)
+{
+       struct fbnic_net *fbn = netdev_priv(netdev);
+
+       fbnic_csr_get_regs(fbn->fbd, data, &regs->version);
 }
 
 static void fbnic_get_strings(struct net_device *dev, u32 sset, u8 *data)
@@ -97,6 +77,21 @@ static void fbnic_get_strings(struct net_device *dev, u32 sset, u8 *data)
        }
 }
 
+static void fbnic_get_ethtool_stats(struct net_device *dev,
+                                   struct ethtool_stats *stats, u64 *data)
+{
+       struct fbnic_net *fbn = netdev_priv(dev);
+       const struct fbnic_stat *stat;
+       int i;
+
+       fbnic_get_hw_stats(fbn->fbd);
+
+       for (i = 0; i < FBNIC_HW_STATS_LEN; i++) {
+               stat = &fbnic_gstrings_hw_stats[i];
+               data[i] = *(u64 *)((u8 *)&fbn->fbd->hw_stats + stat->offset);
+       }
+}
+
 static int fbnic_get_sset_count(struct net_device *dev, int sset)
 {
        switch (sset) {
@@ -107,21 +102,64 @@ static int fbnic_get_sset_count(struct net_device *dev, int sset)
        }
 }
 
-static void fbnic_get_ethtool_stats(struct net_device *dev,
-                                   struct ethtool_stats *stats, u64 *data)
+static int
+fbnic_get_ts_info(struct net_device *netdev,
+                 struct kernel_ethtool_ts_info *tsinfo)
 {
-       struct fbnic_net *fbn = netdev_priv(dev);
-       const struct fbnic_stat *stat;
-       int i;
+       struct fbnic_net *fbn = netdev_priv(netdev);
 
-       fbnic_get_hw_stats(fbn->fbd);
+       tsinfo->phc_index = ptp_clock_index(fbn->fbd->ptp);
 
-       for (i = 0; i < FBNIC_HW_STATS_LEN; i++) {
-               stat = &fbnic_gstrings_hw_stats[i];
-               data[i] = *(u64 *)((u8 *)&fbn->fbd->hw_stats + stat->offset);
+       tsinfo->so_timestamping =
+               SOF_TIMESTAMPING_TX_SOFTWARE |
+               SOF_TIMESTAMPING_TX_HARDWARE |
+               SOF_TIMESTAMPING_RX_HARDWARE |
+               SOF_TIMESTAMPING_RAW_HARDWARE;
+
+       tsinfo->tx_types =
+               BIT(HWTSTAMP_TX_OFF) |
+               BIT(HWTSTAMP_TX_ON);
+
+       tsinfo->rx_filters =
+               BIT(HWTSTAMP_FILTER_NONE) |
+               BIT(HWTSTAMP_FILTER_PTP_V1_L4_EVENT) |
+               BIT(HWTSTAMP_FILTER_PTP_V2_L4_EVENT) |
+               BIT(HWTSTAMP_FILTER_PTP_V2_L2_EVENT) |
+               BIT(HWTSTAMP_FILTER_PTP_V2_EVENT) |
+               BIT(HWTSTAMP_FILTER_ALL);
+
+       return 0;
+}
+
+static void fbnic_get_ts_stats(struct net_device *netdev,
+                              struct ethtool_ts_stats *ts_stats)
+{
+       struct fbnic_net *fbn = netdev_priv(netdev);
+       u64 ts_packets, ts_lost;
+       struct fbnic_ring *ring;
+       unsigned int start;
+       int i;
+
+       ts_stats->pkts = fbn->tx_stats.ts_packets;
+       ts_stats->lost = fbn->tx_stats.ts_lost;
+       for (i = 0; i < fbn->num_tx_queues; i++) {
+               ring = fbn->tx[i];
+               do {
+                       start = u64_stats_fetch_begin(&ring->stats.syncp);
+                       ts_packets = ring->stats.ts_packets;
+                       ts_lost = ring->stats.ts_lost;
+               } while (u64_stats_fetch_retry(&ring->stats.syncp, start));
+               ts_stats->pkts += ts_packets;
+               ts_stats->lost += ts_lost;
        }
 }
 
+static void fbnic_set_counter(u64 *stat, struct fbnic_stat_counter *counter)
+{
+       if (counter->reported)
+               *stat = counter->value;
+}
+
 static void
 fbnic_get_eth_mac_stats(struct net_device *netdev,
                        struct ethtool_eth_mac_stats *eth_mac_stats)
@@ -164,44 +202,6 @@ fbnic_get_eth_mac_stats(struct net_device *netdev,
                          &mac_stats->eth_mac.FrameTooLongErrors);
 }
 
-static void fbnic_get_ts_stats(struct net_device *netdev,
-                              struct ethtool_ts_stats *ts_stats)
-{
-       struct fbnic_net *fbn = netdev_priv(netdev);
-       u64 ts_packets, ts_lost;
-       struct fbnic_ring *ring;
-       unsigned int start;
-       int i;
-
-       ts_stats->pkts = fbn->tx_stats.ts_packets;
-       ts_stats->lost = fbn->tx_stats.ts_lost;
-       for (i = 0; i < fbn->num_tx_queues; i++) {
-               ring = fbn->tx[i];
-               do {
-                       start = u64_stats_fetch_begin(&ring->stats.syncp);
-                       ts_packets = ring->stats.ts_packets;
-                       ts_lost = ring->stats.ts_lost;
-               } while (u64_stats_fetch_retry(&ring->stats.syncp, start));
-               ts_stats->pkts += ts_packets;
-               ts_stats->lost += ts_lost;
-       }
-}
-
-static void fbnic_get_regs(struct net_device *netdev,
-                          struct ethtool_regs *regs, void *data)
-{
-       struct fbnic_net *fbn = netdev_priv(netdev);
-
-       fbnic_csr_get_regs(fbn->fbd, data, &regs->version);
-}
-
-static int fbnic_get_regs_len(struct net_device *netdev)
-{
-       struct fbnic_net *fbn = netdev_priv(netdev);
-
-       return fbnic_csr_regs_len(fbn->fbd) * sizeof(u32);
-}
-
 static const struct ethtool_ops fbnic_ethtool_ops = {
        .get_drvinfo            = fbnic_get_drvinfo,
        .get_regs_len           = fbnic_get_regs_len,