# 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.

group("bootstrap") {
  deps = [
    "//src/connectivity/ethernet/drivers/ethernet",
    "//src/connectivity/network/drivers/network-device",
    "//src/devices/bundles:bootstrap-dev",
    "//src/graphics/display/drivers/display",
    "//src/ui/input/drivers/hid",
    "//src/ui/input/drivers/hid-buttons",
    "//src/ui/input/drivers/hid-input-report",
  ]
}

# Drivers which are meant only for non-user facing products.
group("bootstrap-eng") {
  deps = [ "//src/devices/misc/drivers/cpu-trace" ]
}

group("usb-host-stack") {
  deps = [
    "//src/connectivity/bluetooth/hci/transport/usb:bt-transport-usb",
    "//src/connectivity/ethernet/drivers/asix-88179",
    "//src/connectivity/ethernet/drivers/asix-88772b",
    "//src/connectivity/ethernet/drivers/usb-cdc-ecm",
    "//src/devices/bundles:usb-host-stack",
    "//src/media/audio/drivers/usb-audio",
    "//src/ui/input/drivers/usb-hid",
  ]
}

group("usb-peripheral-stack") {
  deps = [
    "//src/connectivity/ethernet/drivers/rndis-function",
    "//src/connectivity/ethernet/drivers/usb-cdc-function",
    "//src/devices/bundles:usb-peripheral-stack",
  ]
}

group("utils") {
  deps = [
    "//src/devices/bundles:utils",
    "//src/graphics/display/bin/dsiutil",
    "//src/media/audio/tools/audio-driver-ctl:bin",
    "//src/ui/backlight/bin/backlight",
    "//src/ui/input/bin/hid",
  ]
}
