blob: 5b2e189928eef636eddd5ab20c9c28c6d74d4984 [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 ddk.protocol.usb.composite;
using zircon.hw.usb;
using zx;
[Layout = "ddk-protocol"]
protocol UsbComposite {
/// Returns the length of the additional descriptor list.
GetAdditionalDescriptorLength() -> (usize 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(zircon.hw.usb.UsbInterfaceDescriptor desc, uint32 length) -> (zx.status s);
};