Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cae74b30 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Revert "[PATCH] USB: move usb_device_class class devices to be real devices"



This reverts c182274f commit because it
required a newer version of udev to work properly than what is currently
documented in Documentation/Changes.

Cc: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 27fb4f0a
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
@@ -517,19 +517,19 @@ static int check_ctrlrecip(struct dev_state *ps, unsigned int requesttype, unsig

static struct usb_device *usbdev_lookup_minor(int minor)
{
	struct device *device;
	struct usb_device *udev = NULL;
	struct class_device *class_dev;
	struct usb_device *dev = NULL;

	down(&usb_device_class->sem);
	list_for_each_entry(device, &usb_device_class->devices, node) {
		if (device->devt == MKDEV(USB_DEVICE_MAJOR, minor)) {
			udev = device->platform_data;
	list_for_each_entry(class_dev, &usb_device_class->children, node) {
		if (class_dev->devt == MKDEV(USB_DEVICE_MAJOR, minor)) {
			dev = class_dev->class_data;
			break;
		}
	}
	up(&usb_device_class->sem);

	return udev;
	return dev;
};

/*
@@ -1580,16 +1580,16 @@ static void usbdev_add(struct usb_device *dev)
{
	int minor = ((dev->bus->busnum-1) * 128) + (dev->devnum-1);

	dev->usbfs_dev = device_create(usb_device_class, &dev->dev,
				MKDEV(USB_DEVICE_MAJOR, minor),
	dev->class_dev = class_device_create(usb_device_class, NULL,
				MKDEV(USB_DEVICE_MAJOR, minor), &dev->dev,
				"usbdev%d.%d", dev->bus->busnum, dev->devnum);

	dev->usbfs_dev->platform_data = dev;
	dev->class_dev->class_data = dev;
}

static void usbdev_remove(struct usb_device *dev)
{
	device_unregister(dev->usbfs_dev);
	class_device_unregister(dev->class_dev);
}

static int usbdev_notify(struct notifier_block *self, unsigned long action,
+1 −1
Original line number Diff line number Diff line
@@ -360,7 +360,7 @@ struct usb_device {
	char *serial;			/* iSerialNumber string, if present */

	struct list_head filelist;
	struct device *usbfs_dev;
	struct class_device *class_dev;
	struct dentry *usbfs_dentry;	/* usbfs dentry entry for the device */

	/*