ethdev: decouple from PCI device
[dpdk.git] / drivers / net / e1000 / e1000_ethdev.h
index 3c6f613..e5cfbcb 100644 (file)
@@ -33,6 +33,9 @@
 
 #ifndef _E1000_ETHDEV_H_
 #define _E1000_ETHDEV_H_
+#include <rte_time.h>
+
+#define E1000_INTEL_VENDOR_ID 0x8086
 
 /* need update link, bit flag */
 #define E1000_FLAG_NEED_LINK_UPDATE (uint32_t)(1 << 0)
 #define        EM_RXD_ALIGN    (E1000_ALIGN / sizeof(struct e1000_rx_desc))
 #define        EM_TXD_ALIGN    (E1000_ALIGN / sizeof(struct e1000_data_desc))
 
+#define E1000_MISC_VEC_ID               RTE_INTR_VEC_ZERO_OFFSET
+#define E1000_RX_VEC_START              RTE_INTR_VEC_RXTX_OFFSET
+
 /* structure for interrupt relative data */
 struct e1000_interrupt {
        uint32_t flags;
@@ -254,6 +260,9 @@ struct e1000_adapter {
        struct e1000_vf_info    *vfdata;
        struct e1000_filter_info filter;
        bool stopped;
+       struct rte_timecounter  systime_tc;
+       struct rte_timecounter  rx_tstamp_tc;
+       struct rte_timecounter  tx_tstamp_tc;
 };
 
 #define E1000_DEV_PRIVATE(adapter) \
@@ -277,6 +286,8 @@ struct e1000_adapter {
 #define E1000_DEV_PRIVATE_TO_FILTER_INFO(adapter) \
        (&((struct e1000_adapter *)adapter)->filter)
 
+#define E1000_DEV_TO_PCI(eth_dev) \
+       RTE_DEV_TO_PCI((eth_dev)->device)
 /*
  * RX/TX IGB function prototypes
  */