[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <165063967919.27138.14706999257258120710.stgit@palantir17.mph.net>
Date: Fri, 22 Apr 2022 16:01:19 +0100
From: Martin Habets <habetsm.xilinx@...il.com>
To: kuba@...nel.org, pabeni@...hat.com, davem@...emloft.net
Cc: netdev@...r.kernel.org, ecree.xilinx@...il.com
Subject: [PATCH net-next 20/28] sfc/siena: Inline functions in sriov.h to
avoid conflicts with sfc
The implementation of each is quite short. This means sriov.c is
not needed any more.
Signed-off-by: Martin Habets <habetsm.xilinx@...il.com>
---
drivers/net/ethernet/sfc/siena/sriov.c | 72 --------------------------------
drivers/net/ethernet/sfc/siena/sriov.h | 68 ++++++++++++++++++++++++++++--
2 files changed, 63 insertions(+), 77 deletions(-)
delete mode 100644 drivers/net/ethernet/sfc/siena/sriov.c
diff --git a/drivers/net/ethernet/sfc/siena/sriov.c b/drivers/net/ethernet/sfc/siena/sriov.c
deleted file mode 100644
index 3f241e6c881a..000000000000
--- a/drivers/net/ethernet/sfc/siena/sriov.c
+++ /dev/null
@@ -1,72 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/****************************************************************************
- * Driver for Solarflare network controllers and boards
- * Copyright 2014-2015 Solarflare Communications Inc.
- */
-#include <linux/module.h>
-#include "net_driver.h"
-#include "nic.h"
-#include "sriov.h"
-
-int efx_sriov_set_vf_mac(struct net_device *net_dev, int vf_i, u8 *mac)
-{
- struct efx_nic *efx = netdev_priv(net_dev);
-
- if (efx->type->sriov_set_vf_mac)
- return efx->type->sriov_set_vf_mac(efx, vf_i, mac);
- else
- return -EOPNOTSUPP;
-}
-
-int efx_sriov_set_vf_vlan(struct net_device *net_dev, int vf_i, u16 vlan,
- u8 qos, __be16 vlan_proto)
-{
- struct efx_nic *efx = netdev_priv(net_dev);
-
- if (efx->type->sriov_set_vf_vlan) {
- if ((vlan & ~VLAN_VID_MASK) ||
- (qos & ~(VLAN_PRIO_MASK >> VLAN_PRIO_SHIFT)))
- return -EINVAL;
-
- if (vlan_proto != htons(ETH_P_8021Q))
- return -EPROTONOSUPPORT;
-
- return efx->type->sriov_set_vf_vlan(efx, vf_i, vlan, qos);
- } else {
- return -EOPNOTSUPP;
- }
-}
-
-int efx_sriov_set_vf_spoofchk(struct net_device *net_dev, int vf_i,
- bool spoofchk)
-{
- struct efx_nic *efx = netdev_priv(net_dev);
-
- if (efx->type->sriov_set_vf_spoofchk)
- return efx->type->sriov_set_vf_spoofchk(efx, vf_i, spoofchk);
- else
- return -EOPNOTSUPP;
-}
-
-int efx_sriov_get_vf_config(struct net_device *net_dev, int vf_i,
- struct ifla_vf_info *ivi)
-{
- struct efx_nic *efx = netdev_priv(net_dev);
-
- if (efx->type->sriov_get_vf_config)
- return efx->type->sriov_get_vf_config(efx, vf_i, ivi);
- else
- return -EOPNOTSUPP;
-}
-
-int efx_sriov_set_vf_link_state(struct net_device *net_dev, int vf_i,
- int link_state)
-{
- struct efx_nic *efx = netdev_priv(net_dev);
-
- if (efx->type->sriov_set_vf_link_state)
- return efx->type->sriov_set_vf_link_state(efx, vf_i,
- link_state);
- else
- return -EOPNOTSUPP;
-}
diff --git a/drivers/net/ethernet/sfc/siena/sriov.h b/drivers/net/ethernet/sfc/siena/sriov.h
index 747707bee483..fbde67319d87 100644
--- a/drivers/net/ethernet/sfc/siena/sriov.h
+++ b/drivers/net/ethernet/sfc/siena/sriov.h
@@ -11,15 +11,73 @@
#ifdef CONFIG_SFC_SRIOV
-int efx_sriov_set_vf_mac(struct net_device *net_dev, int vf_i, u8 *mac);
+static inline
+int efx_sriov_set_vf_mac(struct net_device *net_dev, int vf_i, u8 *mac)
+{
+ struct efx_nic *efx = netdev_priv(net_dev);
+
+ if (efx->type->sriov_set_vf_mac)
+ return efx->type->sriov_set_vf_mac(efx, vf_i, mac);
+ else
+ return -EOPNOTSUPP;
+}
+
+static inline
int efx_sriov_set_vf_vlan(struct net_device *net_dev, int vf_i, u16 vlan,
- u8 qos, __be16 vlan_proto);
+ u8 qos, __be16 vlan_proto)
+{
+ struct efx_nic *efx = netdev_priv(net_dev);
+
+ if (efx->type->sriov_set_vf_vlan) {
+ if ((vlan & ~VLAN_VID_MASK) ||
+ (qos & ~(VLAN_PRIO_MASK >> VLAN_PRIO_SHIFT)))
+ return -EINVAL;
+
+ if (vlan_proto != htons(ETH_P_8021Q))
+ return -EPROTONOSUPPORT;
+
+ return efx->type->sriov_set_vf_vlan(efx, vf_i, vlan, qos);
+ } else {
+ return -EOPNOTSUPP;
+ }
+}
+
+static inline
int efx_sriov_set_vf_spoofchk(struct net_device *net_dev, int vf_i,
- bool spoofchk);
+ bool spoofchk)
+{
+ struct efx_nic *efx = netdev_priv(net_dev);
+
+ if (efx->type->sriov_set_vf_spoofchk)
+ return efx->type->sriov_set_vf_spoofchk(efx, vf_i, spoofchk);
+ else
+ return -EOPNOTSUPP;
+}
+
+static inline
int efx_sriov_get_vf_config(struct net_device *net_dev, int vf_i,
- struct ifla_vf_info *ivi);
+ struct ifla_vf_info *ivi)
+{
+ struct efx_nic *efx = netdev_priv(net_dev);
+
+ if (efx->type->sriov_get_vf_config)
+ return efx->type->sriov_get_vf_config(efx, vf_i, ivi);
+ else
+ return -EOPNOTSUPP;
+}
+
+static inline
int efx_sriov_set_vf_link_state(struct net_device *net_dev, int vf_i,
- int link_state);
+ int link_state)
+{
+ struct efx_nic *efx = netdev_priv(net_dev);
+
+ if (efx->type->sriov_set_vf_link_state)
+ return efx->type->sriov_set_vf_link_state(efx, vf_i,
+ link_state);
+ else
+ return -EOPNOTSUPP;
+}
#endif /* CONFIG_SFC_SRIOV */
#endif /* EFX_SRIOV_H */
Powered by blists - more mailing lists