Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 683a38f3 authored by Malli Chilakala's avatar Malli Chilakala Committed by Jeff Garzik
Browse files

[PATCH] e1000: Fixed VLAN tag processing error for big-endian architectures



Fixed VLAN tag processing error for big-endian architectures

Signed-off-by: default avatarMallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com>
Signed-off-by: default avatarGanesh Venkatesan <ganesh.venkatesan@intel.com>
Signed-off-by: default avatarJohn Ronciak <john.ronciak@intel.com>
parent 012609a8
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -2994,7 +2994,7 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter)

	i = rx_ring->next_to_clean;
	rx_desc = E1000_RX_DESC_PS(*rx_ring, i);
	staterr = rx_desc->wb.middle.status_error;
	staterr = le32_to_cpu(rx_desc->wb.middle.status_error);

	while(staterr & E1000_RXD_STAT_DD) {
		buffer_info = &rx_ring->buffer_info[i];
@@ -3065,16 +3065,16 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter)
#ifdef CONFIG_E1000_NAPI
		if(unlikely(adapter->vlgrp && (staterr & E1000_RXD_STAT_VP))) {
			vlan_hwaccel_receive_skb(skb, adapter->vlgrp,
				le16_to_cpu(rx_desc->wb.middle.vlan &
					E1000_RXD_SPC_VLAN_MASK));
				le16_to_cpu(rx_desc->wb.middle.vlan) &
				E1000_RXD_SPC_VLAN_MASK);
		} else {
			netif_receive_skb(skb);
		}
#else /* CONFIG_E1000_NAPI */
		if(unlikely(adapter->vlgrp && (staterr & E1000_RXD_STAT_VP))) {
			vlan_hwaccel_rx(skb, adapter->vlgrp,
				le16_to_cpu(rx_desc->wb.middle.vlan &
					E1000_RXD_SPC_VLAN_MASK));
				le16_to_cpu(rx_desc->wb.middle.vlan) &
				E1000_RXD_SPC_VLAN_MASK);
		} else {
			netif_rx(skb);
		}
@@ -3087,7 +3087,7 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter)
		if(unlikely(++i == rx_ring->count)) i = 0;

		rx_desc = E1000_RX_DESC_PS(*rx_ring, i);
		staterr = rx_desc->wb.middle.status_error;
		staterr = le32_to_cpu(rx_desc->wb.middle.status_error);
	}
	rx_ring->next_to_clean = i;
	adapter->alloc_rx_buf(adapter);