ks8851_wrreg16(ks, KS_RXQCR, ks->rc_rxqcr);
 
        /* clear then enable interrupts */
-
-#define STD_IRQ (IRQ_LCI |     /* Link Change */       \
-                IRQ_TXI |      /* TX done */           \
-                IRQ_RXI |      /* RX done */           \
-                IRQ_SPIBEI |   /* SPI bus error */     \
-                IRQ_TXPSI |    /* TX process stop */   \
-                IRQ_RXPSI)     /* RX process stop */
-
-       ks->rc_ier = STD_IRQ;
-       ks8851_wrreg16(ks, KS_ISR, STD_IRQ);
-       ks8851_wrreg16(ks, KS_IER, STD_IRQ);
+       ks8851_wrreg16(ks, KS_ISR, ks->rc_ier);
+       ks8851_wrreg16(ks, KS_IER, ks->rc_ier);
 
        netif_start_queue(ks->netdev);
 
        spi->bits_per_word = 8;
 
        ks = netdev_priv(netdev);
+
+#define STD_IRQ (IRQ_LCI |     /* Link Change */       \
+                IRQ_TXI |      /* TX done */           \
+                IRQ_RXI |      /* RX done */           \
+                IRQ_SPIBEI |   /* SPI bus error */     \
+                IRQ_TXPSI |    /* TX process stop */   \
+                IRQ_RXPSI)     /* RX process stop */
+       ks->rc_ier = STD_IRQ;
+
        kss = to_ks8851_spi(ks);
 
        kss->spidev = spi;