Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
This commit is contained in:
@@ -341,7 +341,7 @@ static void gfar_rx_offload_en(struct gfar_private *priv)
|
||||
if (priv->ndev->features & (NETIF_F_RXCSUM | NETIF_F_HW_VLAN_CTAG_RX))
|
||||
priv->uses_rxfcb = 1;
|
||||
|
||||
if (priv->hwts_rx_en)
|
||||
if (priv->hwts_rx_en || priv->rx_filer_enable)
|
||||
priv->uses_rxfcb = 1;
|
||||
}
|
||||
|
||||
@@ -351,7 +351,7 @@ static void gfar_mac_rx_config(struct gfar_private *priv)
|
||||
u32 rctrl = 0;
|
||||
|
||||
if (priv->rx_filer_enable) {
|
||||
rctrl |= RCTRL_FILREN;
|
||||
rctrl |= RCTRL_FILREN | RCTRL_PRSDEP_INIT;
|
||||
/* Program the RIR0 reg with the required distribution */
|
||||
if (priv->poll_mode == GFAR_SQ_POLLING)
|
||||
gfar_write(®s->rir0, DEFAULT_2RXQ_RIR0);
|
||||
@@ -3595,11 +3595,9 @@ static irqreturn_t gfar_error(int irq, void *grp_id)
|
||||
netif_dbg(priv, tx_err, dev, "Transmit Error\n");
|
||||
}
|
||||
if (events & IEVENT_BSY) {
|
||||
dev->stats.rx_errors++;
|
||||
dev->stats.rx_over_errors++;
|
||||
atomic64_inc(&priv->extra_stats.rx_bsy);
|
||||
|
||||
gfar_receive(irq, grp_id);
|
||||
|
||||
netif_dbg(priv, rx_err, dev, "busy error (rstat: %x)\n",
|
||||
gfar_read(®s->rstat));
|
||||
}
|
||||
|
@@ -695,14 +695,14 @@ static void ethflow_to_filer_rules (struct gfar_private *priv, u64 ethflow)
|
||||
u32 fcr = 0x0, fpr = FPR_FILER_MASK;
|
||||
|
||||
if (ethflow & RXH_L2DA) {
|
||||
fcr = RQFCR_PID_DAH |RQFCR_CMP_NOMATCH |
|
||||
fcr = RQFCR_PID_DAH | RQFCR_CMP_NOMATCH |
|
||||
RQFCR_HASH | RQFCR_AND | RQFCR_HASHTBL_0;
|
||||
priv->ftp_rqfpr[priv->cur_filer_idx] = fpr;
|
||||
priv->ftp_rqfcr[priv->cur_filer_idx] = fcr;
|
||||
gfar_write_filer(priv, priv->cur_filer_idx, fcr, fpr);
|
||||
priv->cur_filer_idx = priv->cur_filer_idx - 1;
|
||||
|
||||
fcr = RQFCR_PID_DAL | RQFCR_AND | RQFCR_CMP_NOMATCH |
|
||||
fcr = RQFCR_PID_DAL | RQFCR_CMP_NOMATCH |
|
||||
RQFCR_HASH | RQFCR_AND | RQFCR_HASHTBL_0;
|
||||
priv->ftp_rqfpr[priv->cur_filer_idx] = fpr;
|
||||
priv->ftp_rqfcr[priv->cur_filer_idx] = fcr;
|
||||
|
Reference in New Issue
Block a user