diff --git a/target/linux/lantiq/patches-2.6.39/280-netif_receive_skb.patch b/target/linux/lantiq/patches-2.6.39/280-netif_receive_skb.patch new file mode 100644 index 0000000000..7e870e28f9 --- /dev/null +++ b/target/linux/lantiq/patches-2.6.39/280-netif_receive_skb.patch @@ -0,0 +1,17 @@ +--- a/drivers/net/lantiq_etop.c ++++ b/drivers/net/lantiq_etop.c +@@ -155,8 +155,12 @@ + + skb_put(skb, len); + skb->dev = ch->netdev; +- skb->protocol = eth_type_trans(skb, ch->netdev); +- netif_receive_skb(skb); ++ if (priv->phydev && priv->phydev->netif_receive_skb) { ++ priv->phydev->netif_receive_skb(skb); ++ } else { ++ skb->protocol = eth_type_trans(skb, ch->netdev); ++ netif_receive_skb(skb); ++ } + } + + static int