diff options
author | Paul Stewart <pstew@chromium.org> | 2012-05-17 11:15:10 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-17 13:17:41 -0700 |
commit | 54bc1ff1daa86353ab07191b7fdde05e6b3844b1 (patch) | |
tree | f042878f6105dbef138311629a87952b519aab08 | |
parent | 3080b838158f1b17bd806c3fd7b9086ba3054a04 (diff) | |
download | linux-54bc1ff1daa86353ab07191b7fdde05e6b3844b1.tar.bz2 |
staging: gdm72xx: Set up parent link in sysfs for gdm72xx devices
This patch uses SET_NETDEV_DEV to set up a 'device' parent link in sysfs
(e.g. /sys/class/net/wm0/device) for a gdm72xx device.
Signed-off-by: Paul Stewart <pstew@chromium.org>
Signed-off-by: Ben Chan <benchan@chromium.org>
Cc: Sage Ahn <syahn@gctsemi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/staging/gdm72xx/gdm_sdio.c | 2 | ||||
-rw-r--r-- | drivers/staging/gdm72xx/gdm_usb.c | 2 | ||||
-rw-r--r-- | drivers/staging/gdm72xx/gdm_wimax.c | 3 | ||||
-rw-r--r-- | drivers/staging/gdm72xx/gdm_wimax.h | 2 |
4 files changed, 5 insertions, 4 deletions
diff --git a/drivers/staging/gdm72xx/gdm_sdio.c b/drivers/staging/gdm72xx/gdm_sdio.c index 1ef466e718ae..e1a3dd2fc4af 100644 --- a/drivers/staging/gdm72xx/gdm_sdio.c +++ b/drivers/staging/gdm72xx/gdm_sdio.c @@ -618,7 +618,7 @@ end_io: done: sdio_writeb(func, 0x00, 0x10, &ret); /* PCRRT */ if (!phy_dev->netdev) - register_wimax_device(phy_dev); + register_wimax_device(phy_dev, &func->dev); } static int gdm_sdio_receive(void *priv_dev, diff --git a/drivers/staging/gdm72xx/gdm_usb.c b/drivers/staging/gdm72xx/gdm_usb.c index f60e890c65c8..1e9dc0d90362 100644 --- a/drivers/staging/gdm72xx/gdm_usb.c +++ b/drivers/staging/gdm72xx/gdm_usb.c @@ -624,7 +624,7 @@ static int gdm_usb_probe(struct usb_interface *intf, INIT_WORK(&udev->pm_ws, do_pm_control); #endif /* CONFIG_WIMAX_GDM72XX_USB_PM */ - ret = register_wimax_device(phy_dev); + ret = register_wimax_device(phy_dev, &intf->dev); out: if (ret) { diff --git a/drivers/staging/gdm72xx/gdm_wimax.c b/drivers/staging/gdm72xx/gdm_wimax.c index 27874941f75a..f1936b92533b 100644 --- a/drivers/staging/gdm72xx/gdm_wimax.c +++ b/drivers/staging/gdm72xx/gdm_wimax.c @@ -943,7 +943,7 @@ static struct net_device_ops gdm_netdev_ops = { .ndo_do_ioctl = gdm_wimax_ioctl, }; -int register_wimax_device(struct phy_dev *phy_dev) +int register_wimax_device(struct phy_dev *phy_dev, struct device *pdev) { struct nic *nic = NULL; struct net_device *dev; @@ -957,6 +957,7 @@ int register_wimax_device(struct phy_dev *phy_dev) return -ENOMEM; } + SET_NETDEV_DEV(dev, pdev); dev->mtu = 1400; dev->netdev_ops = &gdm_netdev_ops; dev->flags &= ~IFF_MULTICAST; diff --git a/drivers/staging/gdm72xx/gdm_wimax.h b/drivers/staging/gdm72xx/gdm_wimax.h index a1cd71ef8e97..023e6492e33d 100644 --- a/drivers/staging/gdm72xx/gdm_wimax.h +++ b/drivers/staging/gdm72xx/gdm_wimax.h @@ -85,7 +85,7 @@ struct nic { /*#define LOOPBACK_TEST */ -extern int register_wimax_device(struct phy_dev *phy_dev); +extern int register_wimax_device(struct phy_dev *phy_dev, struct device *pdev); extern int gdm_wimax_send_tx(struct sk_buff *skb, struct net_device *dev); extern void unregister_wimax_device(struct phy_dev *phy_dev); |