diff options
author | Bartosz Golaszewski <bgolaszewski@baylibre.com> | 2018-06-20 10:03:56 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-06-21 03:23:48 +0200 |
commit | ea0820bb771175c7d4192fc6f5b5c56b3c6d5239 (patch) | |
tree | f8e3dff8120609d5546b21ed50db7fecfd0e556f /drivers/net | |
parent | r8169: Fix netpoll oops (diff) | |
download | linux-ea0820bb771175c7d4192fc6f5b5c56b3c6d5239.tar.xz linux-ea0820bb771175c7d4192fc6f5b5c56b3c6d5239.zip |
net: davinci_emac: match the mdio device against its compatible if possible
Device tree based systems without of_dev_auxdata will have the mdio
device named differently than "davinci_mdio(.0)". In this case use the
device's parent's compatible string for matching
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/ethernet/ti/davinci_emac.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/ethernet/ti/davinci_emac.c b/drivers/net/ethernet/ti/davinci_emac.c index a1a6445b5a7e..f270beebb428 100644 --- a/drivers/net/ethernet/ti/davinci_emac.c +++ b/drivers/net/ethernet/ti/davinci_emac.c @@ -1387,6 +1387,10 @@ static int emac_devioctl(struct net_device *ndev, struct ifreq *ifrq, int cmd) static int match_first_device(struct device *dev, void *data) { + if (dev->parent && dev->parent->of_node) + return of_device_is_compatible(dev->parent->of_node, + "ti,davinci_mdio"); + return !strncmp(dev_name(dev), "davinci_mdio", 12); } |