r8169: Support RX-FCS flag.
This allows the NIC to receive the Ethernet FCS and pass it up the stack, allowing sniffers and other interested programs to inspect the FCS. Signed-off-by: Ben Greear <greearb@candelatech.com>
This commit is contained in:
Родитель
6bbe021d40
Коммит
79d0c1d26e
|
@ -4186,6 +4186,7 @@ rtl8169_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||||
dev->hw_features &= ~NETIF_F_HW_VLAN_RX;
|
dev->hw_features &= ~NETIF_F_HW_VLAN_RX;
|
||||||
|
|
||||||
dev->hw_features |= NETIF_F_RXALL;
|
dev->hw_features |= NETIF_F_RXALL;
|
||||||
|
dev->hw_features |= NETIF_F_RXFCS;
|
||||||
|
|
||||||
tp->hw_start = cfg->hw_start;
|
tp->hw_start = cfg->hw_start;
|
||||||
tp->event_slow = cfg->event_slow;
|
tp->event_slow = cfg->event_slow;
|
||||||
|
@ -5773,7 +5774,10 @@ static int rtl_rx(struct net_device *dev, struct rtl8169_private *tp, u32 budget
|
||||||
|
|
||||||
process_pkt:
|
process_pkt:
|
||||||
addr = le64_to_cpu(desc->addr);
|
addr = le64_to_cpu(desc->addr);
|
||||||
|
if (likely(!(dev->features & NETIF_F_RXFCS)))
|
||||||
pkt_size = (status & 0x00003fff) - 4;
|
pkt_size = (status & 0x00003fff) - 4;
|
||||||
|
else
|
||||||
|
pkt_size = status & 0x00003fff;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The driver does not support incoming fragmented
|
* The driver does not support incoming fragmented
|
||||||
|
|
Загрузка…
Ссылка в новой задаче