Commit 9fb6dc82 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman

[PATCH] USB: put the usb storage's SCSI device in the proper place in sysfs.

Also makes usb_ifnum_to_if() a public function
parent 0a3d3128
......@@ -353,9 +353,6 @@ extern struct semaphore usb_bus_list_lock;
extern void usb_bus_get (struct usb_bus *bus);
extern void usb_bus_put (struct usb_bus *bus);
extern struct usb_interface *usb_ifnum_to_if (struct usb_device *dev,
unsigned ifnum);
extern int usb_find_interface_driver (struct usb_device *dev,
struct usb_interface *interface);
......
......@@ -1484,6 +1484,7 @@ EXPORT_SYMBOL(usb_interface_claimed);
EXPORT_SYMBOL(usb_driver_release_interface);
EXPORT_SYMBOL(usb_match_id);
EXPORT_SYMBOL(usb_find_interface);
EXPORT_SYMBOL(usb_ifnum_to_if);
EXPORT_SYMBOL(usb_new_device);
EXPORT_SYMBOL(usb_reset_device);
......
......@@ -88,9 +88,12 @@ static int detect(struct SHT *sht)
/* register the host */
us->host = scsi_register(sht, sizeof(us));
if (us->host) {
struct usb_interface *iface;
us->host->hostdata[0] = (unsigned long)us;
us->host_no = us->host->host_no;
scsi_set_device(us->host, &us->pusb_dev->dev);
iface = usb_ifnum_to_if(us->pusb_dev, us->ifnum);
if (iface)
scsi_set_device(us->host, &iface->dev);
return 1;
}
......
......@@ -277,7 +277,9 @@ extern void usb_driver_release_interface(struct usb_driver *driver,
const struct usb_device_id *usb_match_id(struct usb_interface *interface,
const struct usb_device_id *id);
struct usb_interface *usb_find_interface(struct usb_driver *drv, kdev_t kdev);
extern struct usb_interface *usb_find_interface(struct usb_driver *drv, kdev_t kdev);
extern struct usb_interface *usb_ifnum_to_if(struct usb_device *dev, unsigned ifnum);
/**
* usb_make_path - returns stable device path in the usb tree
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment