aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorSarah Sharp <sarah.a.sharp@linux.intel.com>2011-09-02 14:05:45 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2011-09-09 18:52:53 -0400
commit66381755442189bbeb15f1a51b1e0059327d84ed (patch)
tree0c14d91d8cc991c2185d00779fea13b222577b4f /drivers
parent750645f8a6543ff4deb4d98a0052000a31fdd43f (diff)
xhci: Store the "real" root port number.
Since the xHCI driver now has split USB2/USB3 roothubs, devices under each roothub can have duplicate "fake" port numbers. For the next set of patches, we need to keep track of the "real" port number that the xHCI host uses to index into the port status arrays. Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/usb/host/xhci-mem.c1
-rw-r--r--drivers/usb/host/xhci.h1
2 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/host/xhci-mem.c b/drivers/usb/host/xhci-mem.c
index 9afce47e69df..1755c668ac05 100644
--- a/drivers/usb/host/xhci-mem.c
+++ b/drivers/usb/host/xhci-mem.c
@@ -922,6 +922,7 @@ int xhci_setup_addressable_virt_dev(struct xhci_hcd *xhci, struct usb_device *ud
922 top_dev = top_dev->parent) 922 top_dev = top_dev->parent)
923 /* Found device below root hub */; 923 /* Found device below root hub */;
924 dev->fake_port = top_dev->portnum; 924 dev->fake_port = top_dev->portnum;
925 dev->real_port = port_num;
925 xhci_dbg(xhci, "Set root hub portnum to %d\n", port_num); 926 xhci_dbg(xhci, "Set root hub portnum to %d\n", port_num);
926 xhci_dbg(xhci, "Set fake root hub portnum to %d\n", dev->fake_port); 927 xhci_dbg(xhci, "Set fake root hub portnum to %d\n", dev->fake_port);
927 928
diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
index bfb3fab20795..ec4817003a56 100644
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -799,6 +799,7 @@ struct xhci_virt_device {
799 u32 cmd_status; 799 u32 cmd_status;
800 struct list_head cmd_list; 800 struct list_head cmd_list;
801 u8 fake_port; 801 u8 fake_port;
802 u8 real_port;
802}; 803};
803 804
804 805