blob: 3f1e7b3e28630c0be1b46e2c62e0e69f93e74240 [file] [log] [blame]
// Copyright 2021 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
using fuchsia.pci;
using fuchsia.pci.serial;
using fuchsia.pci.serial.usb;
using fuchsia.platform;
using fuchsia.driver.framework;
if fuchsia.driver.framework.dfv2 == true {
fuchsia.BIND_PCI_CLASS == fuchsia.pci.BIND_PCI_CLASS.SERIAL_BUS_CONTROLLER;
fuchsia.BIND_PCI_SUBCLASS == fuchsia.pci.serial.BIND_PCI_SUBCLASS.USB;
fuchsia.BIND_PCI_INTERFACE == fuchsia.pci.serial.usb.BIND_PCI_INTERFACE.XHCI;
} else {
if fuchsia.BIND_PROTOCOL == fuchsia.pci.BIND_PROTOCOL.DEVICE {
// PCI binding support.
fuchsia.BIND_PCI_CLASS == fuchsia.pci.BIND_PCI_CLASS.SERIAL_BUS_CONTROLLER;
fuchsia.BIND_PCI_SUBCLASS == fuchsia.pci.serial.BIND_PCI_SUBCLASS.USB;
fuchsia.BIND_PCI_INTERFACE == fuchsia.pci.serial.usb.BIND_PCI_INTERFACE.XHCI;
fuchsia.BIND_COMPOSITE == 1;
} else {
// Platform bus support.
fuchsia.BIND_PLATFORM_DEV_VID == fuchsia.platform.BIND_PLATFORM_DEV_VID.GENERIC;
fuchsia.BIND_PLATFORM_DEV_PID == fuchsia.platform.BIND_PLATFORM_DEV_PID.GENERIC;
accept fuchsia.BIND_PLATFORM_DEV_DID {
fuchsia.platform.BIND_PLATFORM_DEV_DID.XHCI,
0x02, // Only relevant to vim2, needs to be cleaned up.
}
}
}