blob: 69ca66c9767cc8a4b48b4664e4dc8b2a7dcdd63d [file] [log] [blame]
// Copyright 2018 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.
library fuchsia.hardware.usb.composite;
using zx;
[Transport = "Banjo", BanjoLayout = "ddk-protocol"]
protocol UsbComposite {
/// Returns the length of the additional descriptor list.
GetAdditionalDescriptorLength() -> (uint64 length);
/// Returns the USB descriptors following the interface's existing descriptors.
GetAdditionalDescriptorList() -> (zx.status s, vector<uint8> desc);
/// Marks the interface as claimed and appends the interface descriptor to the
/// interface's existing descriptors.
ClaimInterface(fuchsia.hardware.usb.descriptor.UsbInterfaceDescriptor desc, uint32 length) -> (zx.status s);
};