diff options
author | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-04-09 18:43:36 +0000 |
---|---|---|
committer | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-04-09 18:43:36 +0000 |
commit | 7612d838205bf9a71ab0bd1218e90a758cc083db (patch) | |
tree | 6f27c35e1aed27c2a7ef341b3dbd61701456e46e | |
parent | c4e7fe7515555b2ce69dd8327f43b698127771cf (diff) |
[brcm63xx] do not overwrite ENET_CTL_REG, fixes ethernet on bcm6338
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20765 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | target/linux/brcm63xx/patches-2.6.32/230-external_phy_fix.patch | 13 | ||||
-rw-r--r-- | target/linux/brcm63xx/patches-2.6.33/230-external_phy_fix.patch | 13 |
2 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-2.6.32/230-external_phy_fix.patch b/target/linux/brcm63xx/patches-2.6.32/230-external_phy_fix.patch new file mode 100644 index 000000000..5edcfe8ef --- /dev/null +++ b/target/linux/brcm63xx/patches-2.6.32/230-external_phy_fix.patch @@ -0,0 +1,13 @@ +--- linux-2.6.32.10.orig/drivers/net/bcm63xx_enet.c 2010-04-06 19:25:52.612158288 +0100
++++ linux-2.6.32.10/drivers/net/bcm63xx_enet.c 2010-04-07 21:40:26.991801424 +0100
+@@ -965,7 +965,9 @@
+ /* 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));
\ No newline at end of file diff --git a/target/linux/brcm63xx/patches-2.6.33/230-external_phy_fix.patch b/target/linux/brcm63xx/patches-2.6.33/230-external_phy_fix.patch new file mode 100644 index 000000000..5edcfe8ef --- /dev/null +++ b/target/linux/brcm63xx/patches-2.6.33/230-external_phy_fix.patch @@ -0,0 +1,13 @@ +--- linux-2.6.32.10.orig/drivers/net/bcm63xx_enet.c 2010-04-06 19:25:52.612158288 +0100
++++ linux-2.6.32.10/drivers/net/bcm63xx_enet.c 2010-04-07 21:40:26.991801424 +0100
+@@ -965,7 +965,9 @@
+ /* 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));
\ No newline at end of file |