[atheros] experimental support for 2.6.27
[openwrt.git] / target / linux / atheros / patches-2.6.27 / 200-ar2313_enable_mvswitch.patch
1 --- a/drivers/net/ar2313/ar2313.c
2 +++ b/drivers/net/ar2313/ar2313.c
3 @@ -953,9 +953,9 @@
4                                                 ((status >> DMA_RX_LEN_SHIFT) & 0x3fff) - CRC_LEN);
5  
6                                 dev->stats.rx_bytes += skb->len;
7 -                               skb->protocol = eth_type_trans(skb, dev);
8 +
9                                 /* pass the packet to upper layers */
10 -                               netif_rx(skb);
11 +                               sp->rx(skb);
12  
13                                 skb_new->dev = dev;
14                                 /* 16 bit align */
15 @@ -1370,6 +1370,8 @@
16                 return PTR_ERR(phydev);
17         }
18  
19 +       sp->rx = phydev->netif_rx;
20 +
21         /* mask with MAC supported features */
22         phydev->supported &= (SUPPORTED_10baseT_Half
23                 | SUPPORTED_10baseT_Full
24 --- a/drivers/net/ar2313/ar2313.h
25 +++ b/drivers/net/ar2313/ar2313.h
26 @@ -107,6 +107,8 @@
27   */
28  struct ar2313_private {
29         struct net_device *dev;
30 +       int (*rx)(struct sk_buff *skb);
31 +
32         int version;
33         u32 mb[2];
34