aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging
diff options
context:
space:
mode:
authorFlorian Fainelli <f.fainelli@gmail.com>2016-12-14 20:13:24 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-01-12 05:39:05 -0500
commit755259ba2a3a40f67d36325a1b34d8f0a1d63894 (patch)
tree0f91f5d9a08221890acf152c9083d2b37edb94d7 /drivers/staging
parentea991c8354c3dab7f7fe6c3a747bc473b9c935e2 (diff)
staging: octeon: Call SET_NETDEV_DEV()
commit e7c9a3d9e432200fd4c17855c2c23ac784d6e833 upstream. The Octeon driver calls into PHYLIB which now checks for net_device->dev.parent, so make sure we do set it before calling into any MDIO/PHYLIB related function. Fixes: ec988ad78ed6 ("phy: Don't increment MDIO bus refcount unless it's a different owner") Reported-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging')
-rw-r--r--drivers/staging/octeon/ethernet.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/staging/octeon/ethernet.c b/drivers/staging/octeon/ethernet.c
index d02e3e31ed29..12354440a334 100644
--- a/drivers/staging/octeon/ethernet.c
+++ b/drivers/staging/octeon/ethernet.c
@@ -776,6 +776,7 @@ static int cvm_oct_probe(struct platform_device *pdev)
776 /* Initialize the device private structure. */ 776 /* Initialize the device private structure. */
777 struct octeon_ethernet *priv = netdev_priv(dev); 777 struct octeon_ethernet *priv = netdev_priv(dev);
778 778
779 SET_NETDEV_DEV(dev, &pdev->dev);
779 dev->netdev_ops = &cvm_oct_pow_netdev_ops; 780 dev->netdev_ops = &cvm_oct_pow_netdev_ops;
780 priv->imode = CVMX_HELPER_INTERFACE_MODE_DISABLED; 781 priv->imode = CVMX_HELPER_INTERFACE_MODE_DISABLED;
781 priv->port = CVMX_PIP_NUM_INPUT_PORTS; 782 priv->port = CVMX_PIP_NUM_INPUT_PORTS;
@@ -820,6 +821,7 @@ static int cvm_oct_probe(struct platform_device *pdev)
820 } 821 }
821 822
822 /* Initialize the device private structure. */ 823 /* Initialize the device private structure. */
824 SET_NETDEV_DEV(dev, &pdev->dev);
823 priv = netdev_priv(dev); 825 priv = netdev_priv(dev);
824 priv->netdev = dev; 826 priv->netdev = dev;
825 priv->of_node = cvm_oct_node_for_port(pip, interface, 827 priv->of_node = cvm_oct_node_for_port(pip, interface,