bnx2x: Changing the Disabled state to a flag
[linux-2.6.git] / drivers / net / gianfar.h
index 3cb901b..05732fa 100644 (file)
@@ -45,7 +45,6 @@
 #include <linux/crc32.h>
 #include <linux/workqueue.h>
 #include <linux/ethtool.h>
-#include <linux/fsl_devices.h>
 
 /* The maximum number of packets to be handled in one call of gfar_poll */
 #define GFAR_DEV_WEIGHT 64
@@ -260,7 +259,7 @@ extern const char gfar_driver_version[];
 (IEVENT_RXC | IEVENT_BSY | IEVENT_EBERR | IEVENT_MSRO | \
  IEVENT_BABT | IEVENT_TXC | IEVENT_TXE | IEVENT_LC \
  | IEVENT_CRL | IEVENT_XFUN | IEVENT_DPE | IEVENT_PERR \
- | IEVENT_MAG)
+ | IEVENT_MAG | IEVENT_BABR)
 
 #define IMASK_INIT_CLEAR       0x00000000
 #define IMASK_BABR              0x80000000
@@ -314,7 +313,7 @@ extern const char gfar_driver_version[];
 #define ATTRELI_EI(x) (x)
 
 #define BD_LFLAG(flags) ((flags) << 16)
-#define BD_LENGTH_MASK         0x00ff
+#define BD_LENGTH_MASK         0x0000ffff
 
 /* TxBD status field bits */
 #define TXBD_READY             0x8000
@@ -727,6 +726,7 @@ struct gfar_private {
        unsigned long txic;
 
        /* Buffer descriptor pointers */
+       dma_addr_t tx_bd_dma_base;
        struct txbd8 *tx_bd_base;       /* First tx buffer descriptor */
        struct txbd8 *cur_tx;           /* Next free ring entry */
        struct txbd8 *dirty_tx;         /* First buffer in line
@@ -738,7 +738,8 @@ struct gfar_private {
        spinlock_t rxlock;
 
        struct device_node *node;
-       struct net_device *dev;
+       struct net_device *ndev;
+       struct of_device *ofdev;
        struct napi_struct napi;
 
        /* skb array and index */
@@ -758,6 +759,8 @@ struct gfar_private {
        unsigned int rx_stash_size;
        unsigned int rx_stash_index;
 
+       struct sk_buff_head rx_recycle;
+
        struct vlan_group *vlgrp;
 
        /* Unprotected fields */
@@ -777,7 +780,8 @@ struct gfar_private {
        spinlock_t bflock;
 
        phy_interface_t interface;
-       char    phy_bus_id[BUS_ID_SIZE];
+       struct device_node *phy_node;
+       struct device_node *tbi_node;
        u32 device_flags;
        unsigned char rx_csum_enable:1,
                extended_hash:1,
@@ -791,7 +795,6 @@ struct gfar_private {
 
        /* PHY stuff */
        struct phy_device *phydev;
-       struct phy_device *tbiphy;
        struct mii_bus *mii_bus;
        int oldspeed;
        int oldduplex;