diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2020-03-24 12:09:23 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-03-24 13:38:51 +0100 |
commit | a599a0fb629a61ef0c8c47312152866d24faeaff (patch) | |
tree | 1b4c6a471994a9641713840e5a7ce0dad396071c | |
parent | fd78901c297ee1a3214f617d4afb83a467aa7ada (diff) | |
download | linux-stable-a599a0fb629a61ef0c8c47312152866d24faeaff.tar.gz linux-stable-a599a0fb629a61ef0c8c47312152866d24faeaff.tar.bz2 linux-stable-a599a0fb629a61ef0c8c47312152866d24faeaff.zip |
usb: core: Add ACPI support for USB interface devices
Currently on ACPI-enabled systems the USB interface device has no link to
the actual firmware node and thus drivers may not parse additional information
given in the table. The new feature, proposed here, allows to pass properties
or other information to the drivers.
The ACPI companion of the device has to be set for USB interface devices
to achieve above. Use ACPI_COMPANION_SET macro to set this.
Note, OF already does link of_node and this is the same for ACPI case.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://lore.kernel.org/r/20200324100923.8332-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/usb/core/message.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c index 5adf489428aa..d5f834f16993 100644 --- a/drivers/usb/core/message.c +++ b/drivers/usb/core/message.c @@ -5,6 +5,7 @@ * Released under the GPLv2 only. */ +#include <linux/acpi.h> #include <linux/pci.h> /* for scatterlist macros */ #include <linux/usb.h> #include <linux/module.h> @@ -1941,6 +1942,7 @@ free_interfaces: intf->dev.of_node = usb_of_get_interface_node(dev, configuration, ifnum); } + ACPI_COMPANION_SET(&intf->dev, ACPI_COMPANION(&dev->dev)); intf->dev.driver = NULL; intf->dev.bus = &usb_bus_type; intf->dev.type = &usb_if_device_type; |