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);
}
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;