14 lines
547 B
Diff
14 lines
547 B
Diff
--- a/drivers/net/bcm63xx_enet.c
|
|
+++ b/drivers/net/bcm63xx_enet.c
|
|
@@ -962,7 +962,9 @@ static int bcm_enet_open(struct net_devi
|
|
/* all set, enable mac and interrupts, start dma engine and
|
|
* kick rx dma channel */
|
|
wmb();
|
|
- enet_writel(priv, ENET_CTL_ENABLE_MASK, ENET_CTL_REG);
|
|
+ val = enet_readl(priv, ENET_CTL_REG);
|
|
+ val |= ENET_CTL_ENABLE_MASK;
|
|
+ enet_writel(priv, val, ENET_CTL_REG);
|
|
enet_dma_writel(priv, ENETDMA_CFG_EN_MASK, ENETDMA_CFG_REG);
|
|
enet_dma_writel(priv, ENETDMA_CHANCFG_EN_MASK,
|
|
ENETDMA_CHANCFG_REG(priv->rx_chan));
|