mirror of https://github.com/hak5/openwrt-owl.git
atheros: ignore reports about oversized ethernet frames, as can be caused by the header mode of marvell 88e6060 switches (see https://dev.openwrt.org/ticket/3507#comment:16)
SVN-Revision: 15185owl
parent
2f9590a84c
commit
f607e2cc76
|
@ -25,7 +25,7 @@
|
||||||
obj-$(CONFIG_DECLANCE) += declance.o
|
obj-$(CONFIG_DECLANCE) += declance.o
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/drivers/net/ar231x.c
|
+++ b/drivers/net/ar231x.c
|
||||||
@@ -0,0 +1,1265 @@
|
@@ -0,0 +1,1264 @@
|
||||||
+/*
|
+/*
|
||||||
+ * ar231x.c: Linux driver for the Atheros AR231x Ethernet device.
|
+ * ar231x.c: Linux driver for the Atheros AR231x Ethernet device.
|
||||||
+ *
|
+ *
|
||||||
|
@ -833,8 +833,7 @@
|
||||||
+ break;
|
+ break;
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ if ((status & (DMA_RX_ERROR | DMA_RX_ERR_LENGTH)) &&
|
+ if (status & DMA_RX_ERROR) {
|
||||||
+ (!(status & DMA_RX_LONG))) {
|
|
||||||
+ dev->stats.rx_errors++;
|
+ dev->stats.rx_errors++;
|
||||||
+ dev->stats.rx_dropped++;
|
+ dev->stats.rx_dropped++;
|
||||||
+
|
+
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
sp->rx_skb[idx] = skb;
|
sp->rx_skb[idx] = skb;
|
||||||
|
|
||||||
rd = (ar231x_descr_t *) & sp->rx_ring[idx];
|
rd = (ar231x_descr_t *) & sp->rx_ring[idx];
|
||||||
@@ -826,20 +829,23 @@ static int ar231x_rx_int(struct net_devi
|
@@ -825,20 +828,23 @@ static int ar231x_rx_int(struct net_devi
|
||||||
/* alloc new buffer. */
|
/* alloc new buffer. */
|
||||||
skb_new = netdev_alloc_skb(dev, AR2313_BUFSIZE + RX_OFFSET);
|
skb_new = netdev_alloc_skb(dev, AR2313_BUFSIZE + RX_OFFSET);
|
||||||
if (skb_new != NULL) {
|
if (skb_new != NULL) {
|
||||||
|
@ -48,7 +48,7 @@
|
||||||
/* reset descriptor's curr_addr */
|
/* reset descriptor's curr_addr */
|
||||||
rxdesc->addr = virt_to_phys(skb_new->data);
|
rxdesc->addr = virt_to_phys(skb_new->data);
|
||||||
|
|
||||||
@@ -1241,6 +1247,8 @@ static int ar231x_mdiobus_probe (struct
|
@@ -1240,6 +1246,8 @@ static int ar231x_mdiobus_probe (struct
|
||||||
return PTR_ERR(phydev);
|
return PTR_ERR(phydev);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue