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

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

[PATCH] devfs: Remove the mode field from usb_class_driver as it's no longer needed



Also fixes all drivers that set this field, and removes some other devfs
specfic USB logic.

Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>

 drivers/usb/class/usblp.c           |    3 +--
 drivers/usb/core/file.c             |   19 ++++---------------
 drivers/usb/image/mdc800.c          |    3 +--
 drivers/usb/input/aiptek.c          |    2 +-
 drivers/usb/input/hiddev.c          |    3 +--
 drivers/usb/media/dabusb.c          |    3 +--
 drivers/usb/misc/auerswald.c        |    3 +--
 drivers/usb/misc/idmouse.c          |    5 ++---
 drivers/usb/misc/legousbtower.c     |    5 ++---
 drivers/usb/misc/rio500.c           |    3 +--
 drivers/usb/misc/sisusbvga/sisusb.c |    5 -----
 drivers/usb/misc/usblcd.c           |    9 ++++-----
 drivers/usb/usb-skeleton.c          |    3 +--
 include/linux/usb.h                 |    7 ++-----
 14 files changed, 22 insertions(+), 51 deletions(-)
parent 094f1649
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -844,9 +844,8 @@ static struct file_operations usblp_fops = {
};

static struct usb_class_driver usblp_class = {
	.name =		"usb/lp%d",
	.name =		"lp%d",
	.fops =		&usblp_fops,
	.mode =		S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP,
	.minor_base =	USBLP_MINOR_BASE,
};

+4 −15
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@

#include <linux/config.h>
#include <linux/module.h>
#include <linux/devfs_fs_kernel.h>
#include <linux/spinlock.h>
#include <linux/errno.h>

@@ -88,8 +87,6 @@ int usb_major_init(void)
		goto out;
	}

	devfs_mk_dir("usb");

out:
	return error;
}
@@ -97,7 +94,6 @@ int usb_major_init(void)
void usb_major_cleanup(void)
{
	class_destroy(usb_class);
	devfs_remove("usb");
	unregister_chrdev(USB_MAJOR, "usb");
}

@@ -112,8 +108,7 @@ void usb_major_cleanup(void)
 * enabled, the minor number will be based on the next available free minor,
 * starting at the class_driver->minor_base.
 *
 * This function also creates the devfs file for the usb device, if devfs
 * is enabled, and creates a usb class device in the sysfs tree.
 * This function also creates a usb class device in the sysfs tree.
 *
 * usb_deregister_dev() must be called when the driver is done with
 * the minor numbers given out by this function.
@@ -162,11 +157,8 @@ int usb_register_dev(struct usb_interface *intf,

	intf->minor = minor;

	/* handle the devfs registration */
	snprintf(name, BUS_ID_SIZE, class_driver->name, minor - minor_base);
	devfs_mk_cdev(MKDEV(USB_MAJOR, minor), class_driver->mode, name);

	/* create a usb class device for this usb interface */
	snprintf(name, BUS_ID_SIZE, class_driver->name, minor - minor_base);
	temp = strrchr(name, '/');
	if (temp && (temp[1] != 0x00))
		++temp;
@@ -179,7 +171,6 @@ int usb_register_dev(struct usb_interface *intf,
		spin_lock (&minor_lock);
		usb_minors[intf->minor] = NULL;
		spin_unlock (&minor_lock);
		devfs_remove (name);
		retval = PTR_ERR(intf->class_dev);
	}
exit:
@@ -197,8 +188,7 @@ EXPORT_SYMBOL(usb_register_dev);
 * call to usb_register_dev() (usually when the device is disconnected
 * from the system.)
 *
 * This function also cleans up the devfs file for the usb device, if devfs
 * is enabled, and removes the usb class device from the sysfs tree.
 * This function also removes the usb class device from the sysfs tree.
 *
 * This should be called by all drivers that use the USB major number.
 */
@@ -222,7 +212,6 @@ void usb_deregister_dev(struct usb_interface *intf,
	spin_unlock (&minor_lock);

	snprintf(name, BUS_ID_SIZE, class_driver->name, intf->minor - minor_base);
	devfs_remove (name);
	class_device_destroy(usb_class, MKDEV(USB_MAJOR, intf->minor));
	intf->class_dev = NULL;
	intf->minor = -1;
+1 −2
Original line number Diff line number Diff line
@@ -425,9 +425,8 @@ static void mdc800_usb_download_notify (struct urb *urb, struct pt_regs *res)
static struct usb_driver mdc800_usb_driver;
static struct file_operations mdc800_device_ops;
static struct usb_class_driver mdc800_class = {
	.name =		"usb/mdc800%d",
	.name =		"mdc800%d",
	.fops =		&mdc800_device_ops,
	.mode =		S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP,
	.minor_base =	MDC800_DEVICE_MINOR_BASE,
};

+1 −1
Original line number Diff line number Diff line
@@ -2154,7 +2154,7 @@ aiptek_probe(struct usb_interface *intf, const struct usb_device_id *id)
	 * input_handles associated with this input device.
	 * What identifies an evdev input_handler is that it begins
	 * with 'event', continues with a digit, and that in turn
	 * is mapped to /{devfs}/input/eventN.
	 * is mapped to input/eventN.
	 */
	list_for_each_safe(node, next, &inputdev->h_list) {
		inputhandle = to_handle(node);
+1 −2
Original line number Diff line number Diff line
@@ -732,9 +732,8 @@ static struct file_operations hiddev_fops = {
};

static struct usb_class_driver hiddev_class = {
	.name =		"usb/hid/hiddev%d",
	.name =		"hiddev%d",
	.fops =		&hiddev_fops,
	.mode =		S_IFCHR | S_IRUGO | S_IWUSR,
	.minor_base =	HIDDEV_MINOR_BASE,
};

Loading