From 68c500c149a5cc08140111634b7232dbf139ba7c Mon Sep 17 00:00:00 2001 From: Lan Tianyu Date: Tue, 19 Mar 2013 16:48:13 +0800 Subject: [PATCH] --- yaml --- r: 361930 b: refs/heads/master c: bafcaf6d84b5d1bf92dabd1ffe7753ed36b7552e h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/usb/core/usb-acpi.c | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 568d4f87f865..c4b6fc44cf10 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3f5eb14135ba9d97ba4b8514fc7ef5e0dac2abf4 +refs/heads/master: bafcaf6d84b5d1bf92dabd1ffe7753ed36b7552e diff --git a/trunk/drivers/usb/core/usb-acpi.c b/trunk/drivers/usb/core/usb-acpi.c index b6f4bad3f756..255c14464bf2 100644 --- a/trunk/drivers/usb/core/usb-acpi.c +++ b/trunk/drivers/usb/core/usb-acpi.c @@ -15,6 +15,7 @@ #include #include #include +#include #include #include "usb.h" @@ -188,8 +189,13 @@ static int usb_acpi_find_device(struct device *dev, acpi_handle *handle) * connected to. */ if (!udev->parent) { - *handle = acpi_get_child(DEVICE_ACPI_HANDLE(&udev->dev), + struct usb_hcd *hcd = bus_to_hcd(udev->bus); + int raw_port_num; + + raw_port_num = usb_hcd_find_raw_port_number(hcd, port_num); + *handle = acpi_get_child(DEVICE_ACPI_HANDLE(&udev->dev), + raw_port_num); if (!*handle) return -ENODEV; } else {