gianfar.c (134d1fd44221614d7de994d07ef92a6111952e1c) | gianfar.c (590399ddf9561f2ed0839311c8ae1be21597ba68) |
---|---|
1/* drivers/net/ethernet/freescale/gianfar.c 2 * 3 * Gianfar Ethernet Driver 4 * This driver is designed for the non-CPM ethernet controllers 5 * on the 85xx and 83xx family of integrated processors 6 * Based on 8260_io/fcc_enet.c 7 * 8 * Author: Andy Fleming --- 3049 unchanged lines hidden (view full) --- 3058 skb_pull(skb, priv->padding); 3059 3060 /* Trim off the FCS */ 3061 pskb_trim(skb, skb->len - ETH_FCS_LEN); 3062 3063 if (ndev->features & NETIF_F_RXCSUM) 3064 gfar_rx_checksum(skb, fcb); 3065 | 1/* drivers/net/ethernet/freescale/gianfar.c 2 * 3 * Gianfar Ethernet Driver 4 * This driver is designed for the non-CPM ethernet controllers 5 * on the 85xx and 83xx family of integrated processors 6 * Based on 8260_io/fcc_enet.c 7 * 8 * Author: Andy Fleming --- 3049 unchanged lines hidden (view full) --- 3058 skb_pull(skb, priv->padding); 3059 3060 /* Trim off the FCS */ 3061 pskb_trim(skb, skb->len - ETH_FCS_LEN); 3062 3063 if (ndev->features & NETIF_F_RXCSUM) 3064 gfar_rx_checksum(skb, fcb); 3065 |
3066 /* Tell the skb what kind of packet this is */ 3067 skb->protocol = eth_type_trans(skb, ndev); 3068 | |
3069 /* There's need to check for NETIF_F_HW_VLAN_CTAG_RX here. 3070 * Even if vlan rx accel is disabled, on some chips 3071 * RXFCB_VLN is pseudo randomly set. 3072 */ 3073 if (ndev->features & NETIF_F_HW_VLAN_CTAG_RX && 3074 be16_to_cpu(fcb->flags) & RXFCB_VLN) 3075 __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), 3076 be16_to_cpu(fcb->vlctl)); --- 54 unchanged lines hidden (view full) --- 3131 3132 /* discard faulty buffer */ 3133 dev_kfree_skb(skb); 3134 skb = NULL; 3135 rx_queue->stats.rx_dropped++; 3136 continue; 3137 } 3138 | 3066 /* There's need to check for NETIF_F_HW_VLAN_CTAG_RX here. 3067 * Even if vlan rx accel is disabled, on some chips 3068 * RXFCB_VLN is pseudo randomly set. 3069 */ 3070 if (ndev->features & NETIF_F_HW_VLAN_CTAG_RX && 3071 be16_to_cpu(fcb->flags) & RXFCB_VLN) 3072 __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), 3073 be16_to_cpu(fcb->vlctl)); --- 54 unchanged lines hidden (view full) --- 3128 3129 /* discard faulty buffer */ 3130 dev_kfree_skb(skb); 3131 skb = NULL; 3132 rx_queue->stats.rx_dropped++; 3133 continue; 3134 } 3135 |
3136 gfar_process_frame(ndev, skb); 3137 |
|
3139 /* Increment the number of packets */ 3140 total_pkts++; 3141 total_bytes += skb->len; 3142 3143 skb_record_rx_queue(skb, rx_queue->qindex); 3144 | 3138 /* Increment the number of packets */ 3139 total_pkts++; 3140 total_bytes += skb->len; 3141 3142 skb_record_rx_queue(skb, rx_queue->qindex); 3143 |
3145 gfar_process_frame(ndev, skb); | 3144 skb->protocol = eth_type_trans(skb, ndev); |
3146 3147 /* Send the packet up the stack */ 3148 napi_gro_receive(&rx_queue->grp->napi_rx, skb); 3149 3150 skb = NULL; 3151 } 3152 3153 /* Store incomplete frames for completion */ --- 642 unchanged lines hidden --- | 3145 3146 /* Send the packet up the stack */ 3147 napi_gro_receive(&rx_queue->grp->napi_rx, skb); 3148 3149 skb = NULL; 3150 } 3151 3152 /* Store incomplete frames for completion */ --- 642 unchanged lines hidden --- |