blob: 3b1ef7c96d8743234e6f707cc12a5a5cf88c624d [file] [log] [blame]
# Copyright 2023 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.
import("//build/assembly/board_configuration.gni")
import("//build/assembly/board_input_bundle.gni")
assert(current_toolchain == default_toolchain,
"The x64 board can only be defined in the default toolchain.")
assert(current_cpu == "x64",
"The x64 board can only be defined in an x64 toolchain.")
board_configuration("x64") {
hardware_info = {
name = "default-board"
}
provided_features = [
"fuchsia::driver_framework_v2_support",
"fuchsia::wlan_softmac",
"fuchsia::paravirtualization",
]
input_bundles = [
":main_bundle",
":prebuilt_codec_runner",
":x64_common",
"//boards/emulation/virtio",
]
filesystems = {
vbmeta = {
key = "//third_party/android/platform/external/avb/test/data/testkey_atx_psk.pem"
key_metadata = "//third_party/android/platform/external/avb/test/data/atx_metadata.bin"
}
fvm = {
blobfs = {
size_checker_maximum_bytes = 5216665600
}
sparse_output = {
}
fastboot_output = {
truncate_to_length = 17179869184
}
}
fxfs = {
size_checker_maximum_bytes = 5216665600
}
gpt_all = true
}
}
board_input_bundle("main_bundle") {
drivers = [
{
package_target =
"//src/connectivity/wlan/drivers/third_party/intel/iwlwifi:iwlwifi"
package_set = "base"
driver_components = [ "meta/iwlwifi.cm" ]
},
{
package_target = "//src/connectivity/ethernet/drivers/gvnic:gvnic-package"
package_set = "bootfs"
driver_components = [ "meta/gvnic.cm" ]
},
{
package_target =
"//src/connectivity/ethernet/drivers/realtek-8111:package"
package_set = "bootfs"
driver_components = [ "meta/realtek-8111.cm" ]
},
{
package_target = "//src/devices/serial/drivers/uart16550:package"
package_set = "bootfs"
driver_components = [ "meta/uart16550.cm" ]
},
{
package_target = "//src/connectivity/bluetooth/hci/vendor/intel:intel"
package_set = "base"
driver_components = [ "meta/bt-hci-intel.cm" ]
},
]
base_packages = [
"//src/graphics/bin/vulkan_loader",
"//src/graphics/lib/goldfish-vulkan/gnbuild:goldfish",
# Vulkan ICD for virtio-gpu
"//src/graphics/drivers/gfxstream-vulkan",
"//src/graphics/drivers/intel-gen/icd:libvulkan_intel_gen",
]
}
board_input_bundle("x64_common") {
drivers = [
{
package_target = "//src/devices/block/drivers/ahci:package"
package_set = "bootfs"
driver_components = [ "meta/ahci.cm" ]
},
{
package_target = "//src/devices/block/drivers/mbr:package"
package_set = "bootfs"
driver_components = [ "meta/mbr.cm" ]
},
{
package_target = "//src/devices/block/drivers/nvme:package"
package_set = "bootfs"
driver_components = [ "meta/nvme.cm" ]
},
{
package_target = "//src/devices/block/drivers/pci-sdhci:package"
package_set = "bootfs"
driver_components = [ "meta/pci-sdhci.cm" ]
},
{
package_target = "//src/devices/block/drivers/sdhci:package"
package_set = "bootfs"
driver_components = [ "meta/sdhci.cm" ]
},
{
package_target = "//src/devices/block/drivers/ufs:pkg"
package_set = "bootfs"
driver_components = [ "meta/ufs.cm" ]
},
{
package_target = "//src/devices/board/drivers/x86:package"
package_set = "bootfs"
driver_components = [ "meta/platform-bus-x86.cm" ]
},
{
package_target = "//src/devices/bus/drivers/pci:package"
package_set = "bootfs"
driver_components = [ "meta/bus-pci.cm" ]
},
{
package_target = "//src/devices/i2c/drivers/intel-i2c:package"
package_set = "bootfs"
driver_components = [ "meta/intel-i2c.cm" ]
},
{
package_target = "//src/devices/rtc/drivers/intel-rtc:package"
package_set = "bootfs"
driver_components = [ "meta/intel-rtc.cm" ]
},
{
package_target = "//src/devices/tpm/drivers/tpm:tpm-pkg"
package_set = "bootfs"
driver_components = [ "meta/tpm-driver.cm" ]
},
{
package_target = "//src/devices/usb/drivers/xhci:package"
package_set = "bootfs"
driver_components = [ "meta/xhci.cm" ]
},
{
package_target = "//src/graphics/display/drivers/intel-i915:package"
package_set = "bootfs"
driver_components = [ "meta/intel-i915.cm" ]
},
{
package_target = "//src/media/audio/drivers/codecs/alc5514:package"
package_set = "bootfs"
driver_components = [ "meta/alc5514.cm" ]
},
{
package_target = "//src/media/audio/drivers/codecs/alc5663:package"
package_set = "bootfs"
driver_components = [ "meta/alc5663.cm" ]
},
{
package_target = "//src/media/audio/drivers/codecs/max98373:package"
package_set = "bootfs"
driver_components = [ "meta/max98373.cm" ]
},
{
package_target = "//src/media/audio/drivers/codecs/max98927:package"
package_set = "bootfs"
driver_components = [ "meta/max98927.cm" ]
},
{
package_target = "//src/media/audio/drivers/intel-hda/codecs/hdmi:package"
package_set = "bootfs"
driver_components = [ "meta/hdmi-audio-codec.cm" ]
},
{
package_target =
"//src/media/audio/drivers/intel-hda/codecs/realtek:package"
package_set = "bootfs"
driver_components = [ "meta/realtek-audio-codec.cm" ]
},
{
package_target = "//src/media/audio/drivers/intel-hda/controller:package"
package_set = "bootfs"
driver_components = [ "meta/intel-hda.cm" ]
},
{
package_target = "//src/ui/input/drivers/ctaphid:package"
package_set = "bootfs"
driver_components = [ "meta/ctaphid.cm" ]
},
{
package_target = "//src/ui/input/drivers/i2c-hid:package"
package_set = "bootfs"
driver_components = [ "meta/i2c-hid.cm" ]
},
{
package_target = "//src/ui/input/drivers/pc-ps2:package"
package_set = "bootfs"
driver_components = [ "meta/pc-ps2.cm" ]
},
{
package_target = "//src/power/fake-powersource:fake-battery"
package_set = "base"
driver_components = [ "meta/fake_battery.cm" ]
},
]
# Additional drivers to support running as a virtualization guest.
drivers += [
{
package_target =
"//src/connectivity/ethernet/drivers/third_party/igc:package"
package_set = "bootfs"
driver_components = [ "meta/igc.cm" ]
},
{
package_target =
"//src/graphics/display/drivers/simple:simple-bochs-package"
package_set = "bootfs"
driver_components = [ "meta/simple.bochs.cm" ]
},
{
package_target =
"//src/graphics/display/drivers/simple:simple-intel-package"
package_set = "bootfs"
driver_components = [ "meta/simple.intel.cm" ]
},
{
package_target = "//src/media/audio/drivers/intel-hda/codecs/qemu:package"
package_set = "bootfs"
driver_components = [ "meta/qemu-audio-codec.cm" ]
},
{
package_target = "//zircon/third_party/dev/ethernet/e1000:package"
package_set = "bootfs"
driver_components = [ "meta/e1000.cm" ]
},
]
}
board_input_bundle("prebuilt_codec_runner") {
base_packages = [ "//src/media/codec/codecs/vaapi:codec_runner_intel_gen" ]
}