diff --git a/drivers/gpio/gpio-mpsse.c b/drivers/gpio/gpio-mpsse.c index 12191aeb6566..a859deab2bca 100644 --- a/drivers/gpio/gpio-mpsse.c +++ b/drivers/gpio/gpio-mpsse.c @@ -548,13 +548,6 @@ static void gpio_mpsse_ida_remove(void *data) ida_free(&gpio_mpsse_ida, priv->id); } -static void gpio_mpsse_usb_put_dev(void *data) -{ - struct mpsse_priv *priv = data; - - usb_put_dev(priv->udev); -} - static int mpsse_init_valid_mask(struct gpio_chip *chip, unsigned long *valid_mask, unsigned int ngpios) @@ -598,11 +591,7 @@ static int gpio_mpsse_probe(struct usb_interface *interface, INIT_LIST_HEAD(&priv->workers); - priv->udev = usb_get_dev(interface_to_usbdev(interface)); - err = devm_add_action_or_reset(dev, gpio_mpsse_usb_put_dev, priv); - if (err) - return err; - + priv->udev = interface_to_usbdev(interface); priv->intf = interface; priv->intf_id = interface->cur_altsetting->desc.bInterfaceNumber;