ACPI: Add support for native USB4 control _OSC
authorMika Westerberg <mika.westerberg@linux.intel.com>
Tue, 18 Feb 2020 14:02:45 +0000 (16:02 +0200)
committerMika Westerberg <mika.westerberg@linux.intel.com>
Thu, 4 Feb 2021 07:45:25 +0000 (10:45 +0300)
commit5a6a2c0f0f43676df27632d657a3f18b151a7ef8
treeba5b1462212352856449bc4ff93f524531006e85
parent719e1f561afbe020ed175825a9bd25ed62ed1697
ACPI: Add support for native USB4 control _OSC

ACPI 6.4 introduced a new _OSC capability that is used negotiate native
connection manager support. Connection manager is the entity that is
responsible for tunneling over the USB4 fabric. If the platform rejects
the native access then firmware based connection manager is used.

The new _OSC also includes a set of bits that can be used to disable
certain tunnel types such as PCIe for security reasons for instance.

This implements the new USB4 _OSC so that we try to negotiate native
USB4 support if the Thunderbolt/USB4 (CONFIG_USB4) driver is enabled.
Drivers can determine what was negotiated by checking two new variables
exposed in this patch.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/bus.c
include/linux/acpi.h