aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Turner <andrew@FreeBSD.org>2023-01-04 12:33:08 +0000
committerAndrew Turner <andrew@FreeBSD.org>2023-01-04 16:54:05 +0000
commit8793196ca28f7b78f04ca479fe60b7d7af6b20e1 (patch)
treecdf5294fbe1ce75a094db49de859e228175f49d6
parent6ebd8466af2a33d88f491799287035aa0477a5c8 (diff)
Check for more XHCI ACPI IDs
The Windows Dev Kit 2023 uses the XHCI-compliant USB controller without standard debug ID in its ACPI tables. Check for both ID values found on [1] in the XHCI ACPI attachment. [1] https://learn.microsoft.com/en-us/windows-hardware/drivers/bringup/device-management-namespace-objects Tested by: Robert Clausecker <fuz@fuz.su> Sponsored by: Arm Ltd
-rw-r--r--sys/dev/usb/controller/generic_xhci_acpi.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/dev/usb/controller/generic_xhci_acpi.c b/sys/dev/usb/controller/generic_xhci_acpi.c
index b354c3227b98..b5fa9d7009b9 100644
--- a/sys/dev/usb/controller/generic_xhci_acpi.c
+++ b/sys/dev/usb/controller/generic_xhci_acpi.c
@@ -53,13 +53,16 @@ __FBSDID("$FreeBSD$");
#include "generic_xhci.h"
+static char *xhci_ids[] = {
+ "PNP0D10",
+ "PNP0D15",
+ NULL,
+};
+
static int
generic_xhci_acpi_probe(device_t dev)
{
- ACPI_HANDLE h;
-
- if ((h = acpi_get_handle(dev)) == NULL ||
- acpi_MatchHid(h, "PNP0D10") == ACPI_MATCHHID_NOMATCH)
+ if (ACPI_ID_PROBE(device_get_parent(dev), dev, xhci_ids, NULL) >= 0)
return (ENXIO);
device_set_desc(dev, XHCI_HC_DEVSTR);