]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blobdiff - drivers/net/ethernet/intel/fm10k/fm10k.h
Merge tag 'nfc-next-4.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo...
[mirror_ubuntu-hirsute-kernel.git] / drivers / net / ethernet / intel / fm10k / fm10k.h
index b34bb008b1045a0163fe9b4bb2acb93e7c861f42..fcf106e545c518d9be64a875c3b2356c8ac32d78 100644 (file)
@@ -1,5 +1,5 @@
-/* Intel Ethernet Switch Host Interface Driver
- * Copyright(c) 2013 - 2015 Intel Corporation.
+/* Intel(R) Ethernet Switch Host Interface Driver
+ * Copyright(c) 2013 - 2016 Intel Corporation.
  *
  * This program is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -27,9 +27,6 @@
 #include <linux/rtnetlink.h>
 #include <linux/if_vlan.h>
 #include <linux/pci.h>
-#include <linux/net_tstamp.h>
-#include <linux/clocksource.h>
-#include <linux/ptp_clock_kernel.h>
 
 #include "fm10k_pf.h"
 #include "fm10k_vf.h"
@@ -262,12 +259,12 @@ struct fm10k_intfc {
        unsigned long state;
 
        u32 flags;
-#define FM10K_FLAG_RESET_REQUESTED             (u32)(1 << 0)
-#define FM10K_FLAG_RSS_FIELD_IPV4_UDP          (u32)(1 << 1)
-#define FM10K_FLAG_RSS_FIELD_IPV6_UDP          (u32)(1 << 2)
-#define FM10K_FLAG_RX_TS_ENABLED               (u32)(1 << 3)
-#define FM10K_FLAG_SWPRI_CONFIG                        (u32)(1 << 4)
-#define FM10K_FLAG_DEBUG_STATS                 (u32)(1 << 5)
+#define FM10K_FLAG_RESET_REQUESTED             (u32)(BIT(0))
+#define FM10K_FLAG_RSS_FIELD_IPV4_UDP          (u32)(BIT(1))
+#define FM10K_FLAG_RSS_FIELD_IPV6_UDP          (u32)(BIT(2))
+#define FM10K_FLAG_RX_TS_ENABLED               (u32)(BIT(3))
+#define FM10K_FLAG_SWPRI_CONFIG                        (u32)(BIT(4))
+#define FM10K_FLAG_DEBUG_STATS                 (u32)(BIT(5))
        int xcast_mode;
 
        /* Tx fast path data */
@@ -333,6 +330,7 @@ struct fm10k_intfc {
        unsigned long last_reset;
        unsigned long link_down_event;
        bool host_ready;
+       bool lport_map_failed;
 
        u32 reta[FM10K_RETA_SIZE];
        u32 rssrk[FM10K_RSSRK_SIZE];
@@ -342,22 +340,8 @@ struct fm10k_intfc {
 
 #ifdef CONFIG_DEBUG_FS
        struct dentry *dbg_intfc;
-
 #endif /* CONFIG_DEBUG_FS */
-       struct ptp_clock_info ptp_caps;
-       struct ptp_clock *ptp_clock;
-
-       struct sk_buff_head ts_tx_skb_queue;
-       u32 tx_hwtstamp_timeouts;
 
-       struct hwtstamp_config ts_config;
-       /* We are unable to actually adjust the clock beyond the frequency
-        * value.  Once the clock is started there is no resetting it.  As
-        * such we maintain a separate offset from the actual hardware clock
-        * to allow for offset adjustment.
-        */
-       s64 ptp_adjust;
-       rwlock_t systime_lock;
 #ifdef CONFIG_DCB
        u8 pfc_en;
 #endif
@@ -510,6 +494,8 @@ int fm10k_close(struct net_device *netdev);
 
 /* Ethtool */
 void fm10k_set_ethtool_ops(struct net_device *dev);
+u32 fm10k_get_reta_size(struct net_device *netdev);
+void fm10k_write_reta(struct fm10k_intfc *interface, const u32 *indir);
 
 /* IOV */
 s32 fm10k_iov_event(struct fm10k_intfc *interface);
@@ -544,21 +530,6 @@ static inline void fm10k_dbg_init(void) {}
 static inline void fm10k_dbg_exit(void) {}
 #endif /* CONFIG_DEBUG_FS */
 
-/* Time Stamping */
-void fm10k_systime_to_hwtstamp(struct fm10k_intfc *interface,
-                              struct skb_shared_hwtstamps *hwtstamp,
-                              u64 systime);
-void fm10k_ts_tx_enqueue(struct fm10k_intfc *interface, struct sk_buff *skb);
-void fm10k_ts_tx_hwtstamp(struct fm10k_intfc *interface, __le16 dglort,
-                         u64 systime);
-void fm10k_ts_reset(struct fm10k_intfc *interface);
-void fm10k_ts_init(struct fm10k_intfc *interface);
-void fm10k_ts_tx_subtask(struct fm10k_intfc *interface);
-void fm10k_ptp_register(struct fm10k_intfc *interface);
-void fm10k_ptp_unregister(struct fm10k_intfc *interface);
-int fm10k_get_ts_config(struct net_device *netdev, struct ifreq *ifr);
-int fm10k_set_ts_config(struct net_device *netdev, struct ifreq *ifr);
-
 /* DCB */
 #ifdef CONFIG_DCB
 void fm10k_dcbnl_set_ops(struct net_device *dev);