Hi all, The just released ACPI 6.4 spec [1] adds a new _OSC method that is used to negotiate OS support for native USB4 features such as PCIe tunneling. This patch series adds Linux support for the new _OSC and modifies the Thunderbolt/USB4 driver accordingly to enable/disable tunneling of different protocols. There is an additional setting in the firmware connection manager that allows the BIOS to disable PCIe tunneling, so we add support for this and also make the software connection manager to switch to this "nopcie" security level when the _OSC does not allow PCIe tunneling. This applies on top of thunderbolt.git/next. [1] https://uefi.org/sites/default/files/resources/ACPI_Spec_6_4_Jan22.pdf Mario Limonciello (2): thunderbolt: Fix possible NULL pointer dereference in tb_acpi_add_link() ACPI: Execute platform _OSC also with query bit clear Mika Westerberg (4): thunderbolt: Add support for PCIe tunneling disabled (SL5) thunderbolt: Allow disabling XDomain protocol ACPI: Add support for native USB4 control _OSC thunderbolt: Add support for native USB4 _OSC .../ABI/testing/sysfs-bus-thunderbolt | 2 + Documentation/admin-guide/thunderbolt.rst | 7 ++ drivers/acpi/bus.c | 119 ++++++++++++++++-- drivers/thunderbolt/acpi.c | 67 +++++++++- drivers/thunderbolt/domain.c | 16 ++- drivers/thunderbolt/icm.c | 6 +- drivers/thunderbolt/nhi.c | 27 +++- drivers/thunderbolt/switch.c | 6 +- drivers/thunderbolt/tb.c | 22 +++- drivers/thunderbolt/tb.h | 13 ++ drivers/thunderbolt/tunnel.c | 10 +- drivers/thunderbolt/usb4.c | 11 +- drivers/thunderbolt/xdomain.c | 9 ++ include/linux/acpi.h | 10 ++ include/linux/thunderbolt.h | 3 + 15 files changed, 299 insertions(+), 29 deletions(-) -- 2.29.2