Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 213802
b: refs/heads/master
c: 264fd77
h: refs/heads/master
v: v3
  • Loading branch information
Tobias Klauser authored and David S. Miller committed Aug 17, 2010
1 parent c83bcd9 commit 039654f
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 21 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 2154c704c7240379fae4633359e06e8df875c1fd
refs/heads/master: 264fd77a67f1a4fe102477d824014459c7ff61f3
35 changes: 16 additions & 19 deletions trunk/drivers/net/arm/am79c961a.c
Original file line number Diff line number Diff line change
Expand Up @@ -300,8 +300,6 @@ am79c961_open(struct net_device *dev)
struct dev_priv *priv = netdev_priv(dev);
int ret;

memset (&priv->stats, 0, sizeof (priv->stats));

ret = request_irq(dev->irq, am79c961_interrupt, 0, dev->name, dev);
if (ret)
return ret;
Expand Down Expand Up @@ -347,8 +345,7 @@ am79c961_close(struct net_device *dev)
*/
static struct net_device_stats *am79c961_getstats (struct net_device *dev)
{
struct dev_priv *priv = netdev_priv(dev);
return &priv->stats;
return &dev->stats;
}

static void am79c961_mc_hash(char *addr, unsigned short *hash)
Expand Down Expand Up @@ -510,14 +507,14 @@ am79c961_rx(struct net_device *dev, struct dev_priv *priv)

if ((status & (RMD_ERR|RMD_STP|RMD_ENP)) != (RMD_STP|RMD_ENP)) {
am_writeword (dev, hdraddr + 2, RMD_OWN);
priv->stats.rx_errors ++;
dev->stats.rx_errors++;
if (status & RMD_ERR) {
if (status & RMD_FRAM)
priv->stats.rx_frame_errors ++;
dev->stats.rx_frame_errors++;
if (status & RMD_CRC)
priv->stats.rx_crc_errors ++;
dev->stats.rx_crc_errors++;
} else if (status & RMD_STP)
priv->stats.rx_length_errors ++;
dev->stats.rx_length_errors++;
continue;
}

Expand All @@ -531,12 +528,12 @@ am79c961_rx(struct net_device *dev, struct dev_priv *priv)
am_writeword(dev, hdraddr + 2, RMD_OWN);
skb->protocol = eth_type_trans(skb, dev);
netif_rx(skb);
priv->stats.rx_bytes += len;
priv->stats.rx_packets ++;
dev->stats.rx_bytes += len;
dev->stats.rx_packets++;
} else {
am_writeword (dev, hdraddr + 2, RMD_OWN);
printk (KERN_WARNING "%s: memory squeeze, dropping packet.\n", dev->name);
priv->stats.rx_dropped ++;
dev->stats.rx_dropped++;
break;
}
} while (1);
Expand Down Expand Up @@ -565,7 +562,7 @@ am79c961_tx(struct net_device *dev, struct dev_priv *priv)
if (status & TMD_ERR) {
u_int status2;

priv->stats.tx_errors ++;
dev->stats.tx_errors++;

status2 = am_readword (dev, hdraddr + 6);

Expand All @@ -575,18 +572,18 @@ am79c961_tx(struct net_device *dev, struct dev_priv *priv)
am_writeword (dev, hdraddr + 6, 0);

if (status2 & TST_RTRY)
priv->stats.collisions += 16;
dev->stats.collisions += 16;
if (status2 & TST_LCOL)
priv->stats.tx_window_errors ++;
dev->stats.tx_window_errors++;
if (status2 & TST_LCAR)
priv->stats.tx_carrier_errors ++;
dev->stats.tx_carrier_errors++;
if (status2 & TST_UFLO)
priv->stats.tx_fifo_errors ++;
dev->stats.tx_fifo_errors++;
continue;
}
priv->stats.tx_packets ++;
dev->stats.tx_packets++;
len = am_readword (dev, hdraddr + 4);
priv->stats.tx_bytes += -len;
dev->stats.tx_bytes += -len;
} while (priv->txtail != priv->txhead);

netif_wake_queue(dev);
Expand Down Expand Up @@ -616,7 +613,7 @@ am79c961_interrupt(int irq, void *dev_id)
}
if (status & CSR0_MISS) {
handled = 1;
priv->stats.rx_dropped ++;
dev->stats.rx_dropped++;
}
if (status & CSR0_CERR) {
handled = 1;
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/net/arm/am79c961a.h
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,6 @@
#define ISALED0_LNKST 0x8000

struct dev_priv {
struct net_device_stats stats;
unsigned long rxbuffer[RX_BUFFERS];
unsigned long txbuffer[TX_BUFFERS];
unsigned char txhead;
Expand Down

0 comments on commit 039654f

Please sign in to comment.