|
@@ -36,6 +36,7 @@
|
|
#include <linux/mutex.h>
|
|
#include <linux/mutex.h>
|
|
#include <linux/workqueue.h>
|
|
#include <linux/workqueue.h>
|
|
#include <linux/debugfs.h>
|
|
#include <linux/debugfs.h>
|
|
|
|
+#include <linux/usb/of.h>
|
|
|
|
|
|
#include <asm/io.h>
|
|
#include <asm/io.h>
|
|
#include <linux/scatterlist.h>
|
|
#include <linux/scatterlist.h>
|
|
@@ -470,6 +471,7 @@ struct usb_device *usb_alloc_dev(struct usb_device *parent,
|
|
dev->route = 0;
|
|
dev->route = 0;
|
|
|
|
|
|
dev->dev.parent = bus->controller;
|
|
dev->dev.parent = bus->controller;
|
|
|
|
+ dev->dev.of_node = bus->controller->of_node;
|
|
dev_set_name(&dev->dev, "usb%d", bus->busnum);
|
|
dev_set_name(&dev->dev, "usb%d", bus->busnum);
|
|
root_hub = 1;
|
|
root_hub = 1;
|
|
} else {
|
|
} else {
|
|
@@ -494,6 +496,14 @@ struct usb_device *usb_alloc_dev(struct usb_device *parent,
|
|
dev->dev.parent = &parent->dev;
|
|
dev->dev.parent = &parent->dev;
|
|
dev_set_name(&dev->dev, "%d-%s", bus->busnum, dev->devpath);
|
|
dev_set_name(&dev->dev, "%d-%s", bus->busnum, dev->devpath);
|
|
|
|
|
|
|
|
+ if (!parent->parent) {
|
|
|
|
+ /* device under root hub's port */
|
|
|
|
+ port1 = usb_hcd_find_raw_port_number(usb_hcd,
|
|
|
|
+ port1);
|
|
|
|
+ }
|
|
|
|
+ dev->dev.of_node = usb_of_get_child_node(parent->dev.of_node,
|
|
|
|
+ port1);
|
|
|
|
+
|
|
/* hub driver sets up TT records */
|
|
/* hub driver sets up TT records */
|
|
}
|
|
}
|
|
|
|
|