23c66aa5b6717e6826aa964f62b2a07d7729358e
1 Index
: linux
-2.6.32.25/drivers
/net
/cpmac
.c
2 ===================================================================
3 --- linux
-2.6.32.25.orig
/drivers
/net
/cpmac
.c
2010-11-24 12:16:56.067517245 -0800
4 +++ linux
-2.6.32.25/drivers
/net
/cpmac
.c
2010-11-24 12:17:56.279985384 -0800
6 struct cpmac_desc
*desc
)
8 struct sk_buff
*skb
, *result
= NULL
;
11 if (unlikely(netif_msg_hw(priv
)))
12 cpmac_dump_desc(priv
->dev
, desc
);
15 skb
= netdev_alloc_skb(priv
->dev
, CPMAC_SKB_SIZE
);
17 - skb_reserve(skb
, 2);
20 + offset
+= priv
->phy
->pkt_align
;
22 + skb_reserve(skb
, offset
);
24 skb_put(desc
->skb
, desc
->datalen
);
25 - desc
->skb
->protocol
= eth_type_trans(desc
->skb
, priv
->dev
);
26 desc
->skb
->ip_summed
= CHECKSUM_NONE
;
27 priv
->dev
->stats
.rx_packets
++;
28 priv
->dev
->stats
.rx_bytes
+= desc
->datalen
;
31 skb
= cpmac_rx_one(priv
, desc
);
33 - netif_receive_skb(skb
);
34 + if (priv
->phy
->netif_receive_skb
) {
35 + priv
->phy
->netif_receive_skb(skb
);
37 + skb
->protocol
= eth_type_trans(skb
, priv
->dev
);
38 + netif_receive_skb(skb
);
45 static int cpmac_open(struct net_device
*dev
)
48 + int i
, size
, res
, offset
;
49 struct cpmac_priv
*priv
= netdev_priv(dev
);
51 struct cpmac_desc
*desc
;
52 @@
-1014,7 +1024,12 @@
56 - skb_reserve(skb
, 2);
59 + offset
+= priv
->phy
->pkt_align
;
61 + skb_reserve(skb
, offset
);
64 desc
->data_mapping
= dma_map_single(&dev
->dev
, skb
->data
,
This page took 0.044326 seconds and 3 git commands to generate.