| # 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" |
| } |
| |
| kernel = { |
| serial_mode = "legacy" |
| } |
| |
| provided_features = [ |
| "fuchsia::pmm_checker_auto", |
| "fuchsia::wlan_softmac", |
| "fuchsia::paravirtualization", |
| "fuchsia::paver", |
| "fuchsia::intel_hda", |
| ] |
| |
| input_bundles = [ |
| ":main_bundle", |
| ":x64_common", |
| ":paver", |
| "//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") { |
| configuration = { |
| power_manager = |
| "//src/power/power-manager/node_config/base_node_config.json5" |
| } |
| |
| 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/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" ] |
| }, |
| { |
| package_target = "//src/devices/acpi/drivers/acpi-battery:acpi-battery" |
| package_set = "base" |
| driver_components = [ "meta/acpi-battery.cm" ] |
| }, |
| { |
| package_target = "//src/devices/acpi/drivers/intel-thermal:intel-thermal" |
| package_set = "base" |
| driver_components = [ "meta/intel-thermal.cm" ] |
| }, |
| { |
| package_target = "//src/graphics/drivers/msd-intel-gen:msd-intel-gen" |
| package_set = "base" |
| driver_components = [ "meta/libmsd_intel.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 = "//zircon/third_party/dev/ethernet/e1000:package" |
| package_set = "bootfs" |
| driver_components = [ "meta/e1000.cm" ] |
| }, |
| ] |
| |
| # Flag controlling kernel's uart implementation. |
| # TODO(https://fxbug.dev/326669461): Remove when migration is complete. |
| kernel_cmdline = [ "kernel.experimental.serial_migration=true" ] |
| } |
| |
| board_input_bundle("paver") { |
| bootfs_packages = [ "//src/bringup/bin/paver:package-x64" ] |
| } |