blob: c52fc2fef4a08129c36caa80bf75e8dc363bc210 [file] [log] [blame]
// Copyright 2020 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.
composite dwc2_phy;
using fuchsia.designware.platform;
using fuchsia.hardware.usb.phy;
using fuchsia.platform;
using fuchsia.usb.phy;
using fuchsia.devicetree;
primary node "dwc2-phy" {
if fuchsia.BIND_PROTOCOL == fuchsia.usb.phy.BIND_PROTOCOL.DEVICE {
true;
} else if fuchsia.hardware.usb.phy.Service == fuchsia.hardware.usb.phy.Service.DriverTransport {
fuchsia.BIND_PLATFORM_DEV_VID == fuchsia.platform.BIND_PLATFORM_DEV_VID.GENERIC;
fuchsia.BIND_PLATFORM_DEV_PID == fuchsia.platform.BIND_PLATFORM_DEV_PID.GENERIC;
fuchsia.BIND_PLATFORM_DEV_DID == fuchsia.platform.BIND_PLATFORM_DEV_DID.USB_DWC2;
} else {
false;
}
}
node "pdev" {
fuchsia.BIND_PLATFORM_DEV_VID == fuchsia.platform.BIND_PLATFORM_DEV_VID.GENERIC;
accept fuchsia.BIND_PLATFORM_DEV_DID {
fuchsia.platform.BIND_PLATFORM_DEV_DID.USB_DWC2,
fuchsia.platform.BIND_PLATFORM_DEV_DID.DEVICETREE,
}
if fuchsia.BIND_PLATFORM_DEV_DID == fuchsia.platform.BIND_PLATFORM_DEV_DID.DEVICETREE {
fuchsia.devicetree.FIRST_COMPATIBLE == "snps,dwc2";
} else {
fuchsia.BIND_PROTOCOL == fuchsia.platform.BIND_PROTOCOL.DEVICE;
fuchsia.BIND_PLATFORM_DEV_PID == fuchsia.platform.BIND_PLATFORM_DEV_PID.GENERIC;
fuchsia.BIND_PLATFORM_DEV_INSTANCE_ID == 0;
}
}