diff options
| -rw-r--r-- | target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h | 2 | ||||
| -rw-r--r-- | target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_main.c | 8 | 
2 files changed, 7 insertions, 3 deletions
| diff --git a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h index a64b4a8c5..77551dd62 100644 --- a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h +++ b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h @@ -38,7 +38,7 @@  #define ETH_FCS_LEN	4  #define AG71XX_DRV_NAME		"ag71xx" -#define AG71XX_DRV_VERSION	"0.5.33" +#define AG71XX_DRV_VERSION	"0.5.34"  #define AG71XX_NAPI_WEIGHT	64  #define AG71XX_OOM_REFILL	(1 + HZ/10) diff --git a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_main.c b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_main.c index 4b35b1f25..27c19564f 100644 --- a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_main.c +++ b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx_main.c @@ -826,8 +826,12 @@ static int ag71xx_rx_packets(struct ag71xx *ag, int limit)  		} else {  			skb->dev = dev;  			skb->ip_summed = CHECKSUM_NONE; -			skb->protocol = eth_type_trans(skb, dev); -			netif_receive_skb(skb); +			if (ag->phy_dev) { +				ag->phy_dev->netif_receive_skb(skb); +			} else { +				skb->protocol = eth_type_trans(skb, dev); +				netif_receive_skb(skb); +			}  		}  		ring->buf[i].skb = NULL; | 
