Commit 6202806e authored by Heiner Kallweit's avatar Heiner Kallweit Committed by David S. Miller

r8169: drop member opts1_mask from struct rtl8169_private

We can get rid of member opts1_mask and in addition save a few cpu
cycles in the hot path of rtl_rx().
Signed-off-by: default avatarHeiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent ebcd5daa
...@@ -836,7 +836,6 @@ struct rtl8169_private { ...@@ -836,7 +836,6 @@ struct rtl8169_private {
struct rtl8169_counters *counters; struct rtl8169_counters *counters;
struct rtl8169_tc_offsets tc_offset; struct rtl8169_tc_offsets tc_offset;
u32 saved_wolopts; u32 saved_wolopts;
u32 opts1_mask;
struct rtl_fw { struct rtl_fw {
const struct firmware *fw; const struct firmware *fw;
...@@ -7347,7 +7346,7 @@ static int rtl_rx(struct net_device *dev, struct rtl8169_private *tp, u32 budget ...@@ -7347,7 +7346,7 @@ static int rtl_rx(struct net_device *dev, struct rtl8169_private *tp, u32 budget
struct RxDesc *desc = tp->RxDescArray + entry; struct RxDesc *desc = tp->RxDescArray + entry;
u32 status; u32 status;
status = le32_to_cpu(desc->opts1) & tp->opts1_mask; status = le32_to_cpu(desc->opts1);
if (status & DescOwn) if (status & DescOwn)
break; break;
...@@ -7365,14 +7364,16 @@ static int rtl_rx(struct net_device *dev, struct rtl8169_private *tp, u32 budget ...@@ -7365,14 +7364,16 @@ static int rtl_rx(struct net_device *dev, struct rtl8169_private *tp, u32 budget
dev->stats.rx_length_errors++; dev->stats.rx_length_errors++;
if (status & RxCRC) if (status & RxCRC)
dev->stats.rx_crc_errors++; dev->stats.rx_crc_errors++;
if (status & RxFOVF) { /* RxFOVF is a reserved bit on later chip versions */
if (tp->mac_version == RTL_GIGA_MAC_VER_01 &&
status & RxFOVF) {
rtl_schedule_task(tp, RTL_FLAG_TASK_RESET_PENDING); rtl_schedule_task(tp, RTL_FLAG_TASK_RESET_PENDING);
dev->stats.rx_fifo_errors++; dev->stats.rx_fifo_errors++;
} } else if (status & (RxRUNT | RxCRC) &&
if ((status & (RxRUNT | RxCRC)) && !(status & RxRWT) &&
!(status & (RxRWT | RxFOVF)) && dev->features & NETIF_F_RXALL) {
(dev->features & NETIF_F_RXALL))
goto process_pkt; goto process_pkt;
}
} else { } else {
struct sk_buff *skb; struct sk_buff *skb;
dma_addr_t addr; dma_addr_t addr;
...@@ -8327,9 +8328,6 @@ static int rtl_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) ...@@ -8327,9 +8328,6 @@ static int rtl_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
tp->event_slow = cfg->event_slow; tp->event_slow = cfg->event_slow;
tp->coalesce_info = cfg->coalesce_info; tp->coalesce_info = cfg->coalesce_info;
tp->opts1_mask = (tp->mac_version != RTL_GIGA_MAC_VER_01) ?
~(RxBOVF | RxFOVF) : ~0;
timer_setup(&tp->timer, rtl8169_phy_timer, 0); timer_setup(&tp->timer, rtl8169_phy_timer, 0);
tp->rtl_fw = RTL_FIRMWARE_UNKNOWN; tp->rtl_fw = RTL_FIRMWARE_UNKNOWN;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment