]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - net/ethernet/eth.c
llc: use dev_hard_header
[mv-sheeva.git] / net / ethernet / eth.c
index dd3db88f8f0a84659017d1c548b6729344a6da8a..205a1c12f3c0475f4c15bd59064e21c3be7b93e9 100644 (file)
@@ -73,8 +73,8 @@ __setup("ether=", netdev_boot_setup);
  * @len:   packet length (<= skb->len)
  *
  *
- * Set the protocol type. For a packet of type ETH_P_802_3 we put the length
- * in here instead. It is up to the 802.2 layer to carry protocol information.
+ * Set the protocol type. For a packet of type ETH_P_802_3/2 we put the length
+ * in here instead.
  */
 int eth_header(struct sk_buff *skb, struct net_device *dev,
               unsigned short type,
@@ -82,7 +82,7 @@ int eth_header(struct sk_buff *skb, struct net_device *dev,
 {
        struct ethhdr *eth = (struct ethhdr *)skb_push(skb, ETH_HLEN);
 
-       if (type != ETH_P_802_3)
+       if (type != ETH_P_802_3 && type != ETH_P_802_2)
                eth->h_proto = htons(type);
        else
                eth->h_proto = htons(len);