summaryrefslogtreecommitdiffstats
path: root/target/linux/atheros/patches-2.6.26/200-ar2313_enable_mvswitch.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/atheros/patches-2.6.26/200-ar2313_enable_mvswitch.patch')
-rw-r--r--target/linux/atheros/patches-2.6.26/200-ar2313_enable_mvswitch.patch70
1 files changed, 0 insertions, 70 deletions
diff --git a/target/linux/atheros/patches-2.6.26/200-ar2313_enable_mvswitch.patch b/target/linux/atheros/patches-2.6.26/200-ar2313_enable_mvswitch.patch
deleted file mode 100644
index 4711ef6f5..000000000
--- a/target/linux/atheros/patches-2.6.26/200-ar2313_enable_mvswitch.patch
+++ /dev/null
@@ -1,70 +0,0 @@
---- a/drivers/net/ar2313/ar2313.c
-+++ b/drivers/net/ar2313/ar2313.c
-@@ -834,6 +834,7 @@ static void ar2313_load_rx_ring(struct n
- for (i = 0; i < nr_bufs; i++) {
- struct sk_buff *skb;
- ar2313_descr_t *rd;
-+ int offset = RX_OFFSET;
-
- if (sp->rx_skb[idx]) {
- #if DEBUG_RX
-@@ -855,7 +856,9 @@ static void ar2313_load_rx_ring(struct n
- * Make sure IP header starts on a fresh cache line.
- */
- skb->dev = dev;
-- skb_reserve(skb, RX_OFFSET);
-+ if (sp->phy_dev)
-+ offset += sp->phy_dev->pkt_align;
-+ skb_reserve(skb, offset);
- sp->rx_skb[idx] = skb;
-
- rd = (ar2313_descr_t *) & sp->rx_ring[idx];
-@@ -946,6 +949,7 @@ static int ar2313_rx_int(struct net_devi
- /* alloc new buffer. */
- skb_new = dev_alloc_skb(AR2313_BUFSIZE + RX_OFFSET + 128);
- if (skb_new != NULL) {
-+ int offset;
-
- skb = sp->rx_skb[idx];
- /* set skb */
-@@ -953,13 +957,17 @@ static int ar2313_rx_int(struct net_devi
- ((status >> DMA_RX_LEN_SHIFT) & 0x3fff) - CRC_LEN);
-
- dev->stats.rx_bytes += skb->len;
-- skb->protocol = eth_type_trans(skb, dev);
-+
- /* pass the packet to upper layers */
-- netif_rx(skb);
-+ sp->rx(skb);
-
- skb_new->dev = dev;
-+
- /* 16 bit align */
-- skb_reserve(skb_new, RX_OFFSET + 32);
-+ offset = RX_OFFSET + 32;
-+ if (sp->phy_dev)
-+ offset += sp->phy_dev->pkt_align;
-+ skb_reserve(skb_new, offset);
- /* reset descriptor's curr_addr */
- rxdesc->addr = virt_to_phys(skb_new->data);
-
-@@ -1370,6 +1378,8 @@ static int mdiobus_probe (struct net_dev
- return PTR_ERR(phydev);
- }
-
-+ sp->rx = phydev->netif_rx;
-+
- /* mask with MAC supported features */
- phydev->supported &= (SUPPORTED_10baseT_Half
- | SUPPORTED_10baseT_Full
---- a/drivers/net/ar2313/ar2313.h
-+++ b/drivers/net/ar2313/ar2313.h
-@@ -107,6 +107,8 @@ typedef struct {
- */
- struct ar2313_private {
- struct net_device *dev;
-+ int (*rx)(struct sk_buff *skb);
-+
- int version;
- u32 mb[2];
-