|
@@ -194,13 +194,14 @@ int usb_register_dev(struct usb_interface *intf,
|
|
|
++temp;
|
|
|
else
|
|
|
temp = name;
|
|
|
- intf->usb_dev = device_create(usb_class->class, &intf->dev,
|
|
|
- MKDEV(USB_MAJOR, minor), "%s", temp);
|
|
|
- if (IS_ERR(intf->usb_dev)) {
|
|
|
+ intf->class_dev = class_device_create(usb_class->class, NULL,
|
|
|
+ MKDEV(USB_MAJOR, minor),
|
|
|
+ &intf->dev, "%s", temp);
|
|
|
+ if (IS_ERR(intf->class_dev)) {
|
|
|
spin_lock (&minor_lock);
|
|
|
usb_minors[intf->minor] = NULL;
|
|
|
spin_unlock (&minor_lock);
|
|
|
- retval = PTR_ERR(intf->usb_dev);
|
|
|
+ retval = PTR_ERR(intf->class_dev);
|
|
|
}
|
|
|
exit:
|
|
|
return retval;
|
|
@@ -241,8 +242,8 @@ void usb_deregister_dev(struct usb_interface *intf,
|
|
|
spin_unlock (&minor_lock);
|
|
|
|
|
|
snprintf(name, BUS_ID_SIZE, class_driver->name, intf->minor - minor_base);
|
|
|
- device_destroy(usb_class->class, MKDEV(USB_MAJOR, intf->minor));
|
|
|
- intf->usb_dev = NULL;
|
|
|
+ class_device_destroy(usb_class->class, MKDEV(USB_MAJOR, intf->minor));
|
|
|
+ intf->class_dev = NULL;
|
|
|
intf->minor = -1;
|
|
|
destroy_usb_class();
|
|
|
}
|