emx: Utilize mbuf's header lengthes
[dragonfly.git] / sys / dev / netif / emx / if_emx.h
index 1083ec1..282cf5d 100644 (file)
@@ -235,6 +235,8 @@ struct emx_rxdata {
 struct emx_softc {
        struct arpcom           arpcom;
        struct e1000_hw         hw;
+       int                     flags;
+#define EMX_FLAG_SHARED_INTR   0x1
 
        /* DragonFly operating-system-specific structures. */
        struct e1000_osdep      osdep;
@@ -252,6 +254,7 @@ struct emx_softc {
        struct resource         *intr_res;
        void                    *intr_tag;
        int                     intr_rid;
+       int                     intr_type;
 
        struct ifmedia          media;
        struct callout          timer;
@@ -262,6 +265,11 @@ struct emx_softc {
        /* Management and WOL features */
        int                     wol;
        int                     has_manage;
+       int                     has_amt;
+       int                     control_hw;
+
+       /* Multicast array memory */
+       uint8_t                 *mta;
 
        /* Info about the board itself */
        uint8_t                 link_active;
@@ -338,7 +346,8 @@ struct emx_softc {
 #define EMX_TXDD_SAFE  48 /* 48 <= val < EMX_TXDD_MAX */
        int                     tx_dd[EMX_TXDD_MAX];
 
-       int                     rx_ring_inuse;
+       int                     rss_debug;
+       int                     rx_ring_cnt;
        struct emx_rxdata       rx_data[EMX_NRX_RING];
 
        /* Misc stats maintained by the driver */
@@ -353,21 +362,11 @@ struct emx_softc {
        unsigned long           rx_irq;
        unsigned long           tx_irq;
        unsigned long           link_irq;
-       unsigned long           tx_csum_try_pullup;
-       unsigned long           tx_csum_pullup1;
-       unsigned long           tx_csum_pullup1_failed;
-       unsigned long           tx_csum_pullup2;
-       unsigned long           tx_csum_pullup2_failed;
-       unsigned long           tx_csum_drop1;
-       unsigned long           tx_csum_drop2;
 
        /* sysctl tree glue */
        struct sysctl_ctx_list  sysctl_ctx;
        struct sysctl_oid       *sysctl_tree;
 
-       int                     rx_ring_cnt;
-       int                     rss_debug;
-
        struct e1000_hw_stats   stats;
 };