diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index af9739c..0b82dbb 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -2115,9 +2115,8 @@
 
 	sky2_write8(hw, B0_Y2LED, LED_STAT_ON);
 
-	/* Turn on descriptor polling (every 75us) */
-	sky2_write32(hw, B28_DPT_INI, sky2_us2clk(hw, 75));
-	sky2_write8(hw, B28_DPT_CTRL, DPT_START);
+	/* Turn off descriptor polling */
+	sky2_write32(hw, B28_DPT_CTRL, DPT_STOP);
 
 	/* Turn off receive timestamp */
 	sky2_write8(hw, GMAC_TI_ST_CTRL, GMT_ST_STOP);
@@ -2162,8 +2161,6 @@
 	/* Set the list last index */
 	sky2_write16(hw, STAT_LAST_IDX, STATUS_RING_SIZE - 1);
 
-	sky2_write32(hw, STAT_TX_TIMER_INI, sky2_us2clk(hw, 1000));
-
 	/* These status setup values are copied from SysKonnect's driver */
 	if (is_ec_a1(hw)) {
 		/* WA for dev. #4.3 */
@@ -2174,21 +2171,20 @@
 
 		/* set Status-FIFO ISR watermark */
 		sky2_write8(hw, STAT_FIFO_ISR_WM, 0x07);	/* WA for dev. #4.18 */
-
+		sky2_write32(hw, STAT_TX_TIMER_INI, sky2_us2clk(hw, 10000));
 	} else {
-		sky2_write16(hw, STAT_TX_IDX_TH, 0x000a);
-
-		/* set Status-FIFO watermark */
-		sky2_write8(hw, STAT_FIFO_WM, 0x10);
+		sky2_write16(hw, STAT_TX_IDX_TH, 10);
+		sky2_write8(hw, STAT_FIFO_WM, 16);
 
 		/* set Status-FIFO ISR watermark */
 		if (hw->chip_id == CHIP_ID_YUKON_XL && hw->chip_rev == 0)
-			sky2_write8(hw, STAT_FIFO_ISR_WM, 0x10);
+			sky2_write8(hw, STAT_FIFO_ISR_WM, 4);
+		else
+			sky2_write8(hw, STAT_FIFO_ISR_WM, 16);
 
-		else		/* WA dev 4.109 */
-			sky2_write8(hw, STAT_FIFO_ISR_WM, 0x04);
-
-		sky2_write32(hw, STAT_ISR_TIMER_INI, 0x0190);
+		sky2_write32(hw, STAT_TX_TIMER_INI, sky2_us2clk(hw, 1000));
+		sky2_write32(hw, STAT_LEV_TIMER_INI, sky2_us2clk(hw, 100));
+		sky2_write32(hw, STAT_ISR_TIMER_INI, sky2_us2clk(hw, 20));
 	}
 
 	/* enable status unit */
