ar71xx: ag71xx: fix compile error when enabling debug
authorKoen Vandeputte <koen.vandeputte@ncentric.com>
Mon, 11 Feb 2019 17:34:38 +0000 (18:34 +0100)
committerKoen Vandeputte <koen.vandeputte@ncentric.com>
Tue, 5 Mar 2019 12:19:43 +0000 (13:19 +0100)
Starting from kernel 4.5, phy_id needs to be fetched from a different location.

not doing so results in this compile error:

drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c: In function 'ag71xx_phy_connect_multi':
drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c:133:35: error: 'struct mdio_device' has no member named 'phy_id'
    ag->mii_bus->mdio_map[phy_addr]->phy_id);
                                   ^
./include/linux/printk.h:137:18: note: in definition of macro 'no_printk'
    printk(fmt, ##__VA_ARGS__); \
                  ^~~~~~~~~~~
drivers/net/ethernet/atheros/ag71xx/ag71xx.h:72:27: note: in expansion of macro 'pr_debug'
 #define DBG(fmt, args...) pr_debug(fmt, ## args)
                           ^~~~~~~~
drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c:130:3: note: in expansion of macro 'DBG'
   DBG("%s: PHY found at %s, uid=%08x\n",
   ^~~
scripts/Makefile.build:326: recipe for target 'drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.o' failed

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c

index 12fa2e301bf5c24e85fcc025cc5d10b9983b0eba..e92798ceb8975618b8cb2d4b9321402833e97b1e 100644 (file)
@@ -127,13 +127,12 @@ static int ag71xx_phy_connect_multi(struct ag71xx *ag)
                if (ag->mii_bus->mdio_map[phy_addr] == NULL)
                        continue;
 
                if (ag->mii_bus->mdio_map[phy_addr] == NULL)
                        continue;
 
-               DBG("%s: PHY found at %s, uid=%08x\n",
-                       dev_name(dev),
-                       dev_name(&ag->mii_bus->mdio_map[phy_addr]->dev),
-                       ag->mii_bus->mdio_map[phy_addr]->phy_id);
+               phydev = mdiobus_get_phy(ag->mii_bus, phy_addr);
 
 
-               if (phydev == NULL)
-                       phydev = mdiobus_get_phy(ag->mii_bus, phy_addr);
+               DBG("%s: PHY found at %s, uid=%08x\n",
+               dev_name(dev),
+               dev_name(&ag->mii_bus->mdio_map[phy_addr]->dev),
+               (phydev) ? phydev->phy_id : 0);
 #endif
        }
 
 #endif
        }