| // 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); |
| }; |