brcm47xx: bgmac: implement unaligned addressing for DMA rings that support it
[openwrt/openwrt.git] / target / linux / brcm47xx / patches-3.10 / 770-bgmac-phylib.patch
index 6041d2a77aceebea7bbf5901a28a3e7050085f6d..33308319db00ef75f410006dcbd6a6657ea1706e 100644 (file)
@@ -10,7 +10,7 @@
          They can be found on BCM47xx SoCs and provide gigabit ethernet.
 --- a/drivers/net/ethernet/broadcom/bgmac.c
 +++ b/drivers/net/ethernet/broadcom/bgmac.c
-@@ -1201,27 +1201,14 @@ static int bgmac_set_mac_address(struct
+@@ -1219,27 +1219,14 @@ static int bgmac_set_mac_address(struct
  static int bgmac_ioctl(struct net_device *net_dev, struct ifreq *ifr, int cmd)
  {
        struct bgmac *bgmac = netdev_priv(net_dev);
@@ -45,7 +45,7 @@
  }
  
  static const struct net_device_ops bgmac_netdev_ops = {
-@@ -1243,61 +1230,18 @@ static int bgmac_get_settings(struct net
+@@ -1261,61 +1248,18 @@ static int bgmac_get_settings(struct net
  {
        struct bgmac *bgmac = netdev_priv(net_dev);
  
  
  static void bgmac_get_drvinfo(struct net_device *net_dev,
                              struct ethtool_drvinfo *info)
-@@ -1308,6 +1252,7 @@ static void bgmac_get_drvinfo(struct net
+@@ -1326,6 +1270,7 @@ static void bgmac_get_drvinfo(struct net
  
  static const struct ethtool_ops bgmac_ethtool_ops = {
        .get_settings           = bgmac_get_settings,
        .get_drvinfo            = bgmac_get_drvinfo,
  };
  
-@@ -1326,10 +1271,42 @@ static int bgmac_mii_write(struct mii_bu
+@@ -1344,10 +1289,42 @@ static int bgmac_mii_write(struct mii_bu
        return bgmac_phy_write(bus->priv, mii_id, regnum, value);
  }
  
  
        mii_bus = mdiobus_alloc();
        if (!mii_bus)
-@@ -1360,7 +1337,29 @@ static int bgmac_mii_register(struct bgm
+@@ -1378,7 +1355,29 @@ static int bgmac_mii_register(struct bgm
  
        bgmac->mii_bus = mii_bus;
  
        kfree(mii_bus->irq);
 --- a/drivers/net/ethernet/broadcom/bgmac.h
 +++ b/drivers/net/ethernet/broadcom/bgmac.h
-@@ -399,7 +399,10 @@ struct bgmac {
+@@ -401,7 +401,10 @@ struct bgmac {
        struct bcma_device *cmn; /* Reference to CMN core for BCM4706 */
        struct net_device *net_dev;
        struct napi_struct napi;