X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=drivers%2Fusb%2Fcore%2Fusb-acpi.c;h=255c14464bf2ea7a30dffab6fa1770c7b030c0aa;hb=bafcaf6d84b5d1bf92dabd1ffe7753ed36b7552e;hp=b6f4bad3f756eefb173097767ffde6970e06220e;hpb=6bd51658fae374557b063155bd4465411acd12fc;p=cascardo%2Flinux.git diff --git a/drivers/usb/core/usb-acpi.c b/drivers/usb/core/usb-acpi.c index b6f4bad3f756..255c14464bf2 100644 --- a/drivers/usb/core/usb-acpi.c +++ b/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 {