diff options
-rw-r--r-- | drivers/net/can/usb/kvaser_usb.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/net/can/usb/kvaser_usb.c b/drivers/net/can/usb/kvaser_usb.c index cb3a2d6d3ba4..7f7ebaffb3f0 100644 --- a/drivers/net/can/usb/kvaser_usb.c +++ b/drivers/net/can/usb/kvaser_usb.c @@ -1848,10 +1848,9 @@ static void kvaser_usb_remove_interfaces(struct kvaser_usb *dev) } } -static int kvaser_usb_init_one(struct usb_interface *intf, +static int kvaser_usb_init_one(struct kvaser_usb *dev, const struct usb_device_id *id, int channel) { - struct kvaser_usb *dev = usb_get_intfdata(intf); struct net_device *netdev; struct kvaser_usb_net_priv *priv; int err; @@ -1864,7 +1863,7 @@ static int kvaser_usb_init_one(struct usb_interface *intf, dev->max_tx_urbs * sizeof(*priv->tx_contexts), dev->max_tx_urbs); if (!netdev) { - dev_err(&intf->dev, "Cannot alloc candev\n"); + dev_err(&dev->intf->dev, "Cannot alloc candev\n"); return -ENOMEM; } @@ -1896,14 +1895,14 @@ static int kvaser_usb_init_one(struct usb_interface *intf, netdev->netdev_ops = &kvaser_usb_netdev_ops; - SET_NETDEV_DEV(netdev, &intf->dev); + SET_NETDEV_DEV(netdev, &dev->intf->dev); netdev->dev_id = channel; dev->nets[channel] = priv; err = register_candev(netdev); if (err) { - dev_err(&intf->dev, "Failed to register can device\n"); + dev_err(&dev->intf->dev, "Failed to register can device\n"); free_candev(netdev); dev->nets[channel] = NULL; return err; @@ -2005,7 +2004,7 @@ static int kvaser_usb_probe(struct usb_interface *intf, } for (i = 0; i < dev->nchannels; i++) { - err = kvaser_usb_init_one(intf, id, i); + err = kvaser_usb_init_one(dev, id, i); if (err) { kvaser_usb_remove_interfaces(dev); return err; |