Based on the Matthew Garrett's patch set. [PATCH V2 1/4] ACPI: Fix up _PLD methods [PATCH V2 2/4] ACPI: Add _PLD support [PATCH V2 3/4] usb: Bind devices to ACPI devices when possible [PATCH V2 4/4] usb: Set device removable state based on ACPI USB data Add usb hub ports' platform_data to store acpi_handle. When a usb hub is found, getting all ports' acpi handle and check port's connect type through acpi method "_UPC" and "_PLD". When a usb device is found, set it's removalbe depending on the port's connect type. git diff --stat drivers/usb/core/devices.c | 4 +- drivers/usb/core/hub.c | 141 ++++++++++++++++++++++++++++----------- drivers/usb/core/usb-acpi.c | 102 +++++++++++++++++++--------- drivers/usb/core/usb.h | 10 +++ drivers/usb/host/r8a66597-hcd.c | 4 +- include/linux/usb.h | 10 +++- 6 files changed, 196 insertions(+), 75 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html