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

_imports = {  # Import into hidden scope, to avoid importing into args.gn.
  import("virtio_drivers.gni")
}

# Drivers required for emulated ARM.
_bootfs_deps = _imports.virtio_drivers + [
                 "//src/devices/block/drivers/ahci",
                 "//src/devices/board/drivers/qemu-arm64",
                 "//src/devices/rtc/drivers/pl031-rtc",
                 "//src/graphics/display/drivers/fake:fake-display",
               ]

board_bootfs_labels = _bootfs_deps
board_zedboot_bootfs_labels = _bootfs_deps
board_recovery_bootfs_labels = _bootfs_deps
