summaryrefslogtreecommitdiffstats
path: root/sys/dev/msk/if_msk.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/msk/if_msk.c')
-rw-r--r--sys/dev/msk/if_msk.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c
index 2613b81..bb4ba13 100644
--- a/sys/dev/msk/if_msk.c
+++ b/sys/dev/msk/if_msk.c
@@ -3658,9 +3658,12 @@ msk_init_locked(struct msk_if_softc *sc_if)
CSR_WRITE_4(sc, MR_ADDR(sc_if->msk_port, RX_GMF_FL_MSK),
GMR_FS_ANY_ERR);
- /* Set Rx FIFO flush threshold to 64 bytes. */
+ /*
+ * Set Rx FIFO flush threshold to 64 bytes + 1 FIFO word
+ * due to hardware hang on receipt of pause frames.
+ */
CSR_WRITE_4(sc, MR_ADDR(sc_if->msk_port, RX_GMF_FL_THR),
- RX_GMF_FL_THR_DEF);
+ RX_GMF_FL_THR_DEF + 1);
/* Configure Tx MAC FIFO. */
CSR_WRITE_4(sc, MR_ADDR(sc_if->msk_port, TX_GMF_CTRL_T), GMF_RST_SET);
OpenPOWER on IntegriCloud