blob: 0824d5397f9ba71693a52e0074e3ec0a32ecf494 [file]
// Copyright 2026 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.
{
name: "usb-cdc-function",
program: {
colocate: "true",
default_dispatcher_opts: [ "allow_sync_calls" ],
bind: {
protocol: "fuchsia.usb.BIND_PROTOCOL.FUNCTION",
rules: {
"fuchsia.BIND_USB_CLASS": "fuchsia.usb.BIND_USB_CLASS.COMM",
"fuchsia.BIND_USB_PROTOCOL": 0,
"fuchsia.BIND_USB_SUBCLASS": "fuchsia.usb.comm.BIND_USB_SUBCLASS.ETHERNET",
},
},
},
capabilities: [
{
service: "fuchsia.driver.compat.Service",
},
{
service: "fuchsia.hardware.network.driver.Service",
},
],
use: [
{
protocol: "fuchsia.hardware.usb.endpoint.Endpoint",
},
{
service: "fuchsia.boot.metadata.MacAddressMetadata",
name: "default",
generate_bind_rule: false,
},
{
service: "fuchsia.driver.compat.Service",
name: "default",
generate_bind_rule: false,
},
{
service: "fuchsia.hardware.usb.function.UsbFunctionService",
name: "default",
generate_bind_rule: false,
},
],
expose: [
{
service: "fuchsia.hardware.network.driver.Service",
from: "self",
},
{
service: "fuchsia.driver.compat.Service",
from: "self",
},
],
}