1 /* SPDX-License-Identifier: GPL-2.0-only */
3 #include <device/device.h>
4 #include <device/pci.h>
5 #include <device/pci_ids.h>
6 #include <intelblocks/acpi.h>
7 #include <soc/pci_devs.h>
9 static const char *usb4_xhci_acpi_name(const struct device
*dev
)
11 if (dev
->path
.type
!= DEVICE_PATH_PCI
)
17 static struct device_operations usb4_xhci_ops
= {
18 .read_resources
= pci_dev_read_resources
,
19 .set_resources
= pci_dev_set_resources
,
20 .enable_resources
= pci_dev_enable_resources
,
21 .ops_pci
= &pci_dev_ops_pci
,
22 .scan_bus
= scan_static_bus
,
23 #if CONFIG(HAVE_ACPI_TABLES)
24 .acpi_name
= usb4_xhci_acpi_name
,
28 static const unsigned short pci_device_ids
[] = {
29 PCI_DID_INTEL_LNL_TCSS_XHCI
,
30 PCI_DID_INTEL_RPP_P_TCSS_XHCI
,
31 PCI_DID_INTEL_MTL_M_TCSS_XHCI
,
32 PCI_DID_INTEL_MTL_P_TCSS_XHCI
,
33 PCI_DID_INTEL_TGP_TCSS_XHCI
,
34 PCI_DID_INTEL_TGP_H_TCSS_XHCI
,
35 PCI_DID_INTEL_ADP_TCSS_XHCI
,
36 PCI_DID_INTEL_ADP_N_TCSS_XHCI
,
40 static const struct pci_driver usb4_xhci __pci_driver
= {
41 .ops
= &usb4_xhci_ops
,
42 .vendor
= PCI_VID_INTEL
,
43 .devices
= pci_device_ids
,