blob: e96228556e764ec0ebb43ec1a85b240789f64434 [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_input_bundle.gni")
import("//build/bazel/assembly/bazel_board_configuration.gni")
import("//build/bazel/assembly/bazel_board_input_bundle.gni")
import("//build/bazel/assembly/bazel_board_input_bundle_set.gni")
import("//build/info/info.gni")
assert(current_toolchain == default_toolchain,
"The vim3 board can only be defined in the default toolchain.")
assert(current_cpu == "arm64",
"The vim3 board can only be defined in an arm64 toolchain.")
group("bazel_inputs") {
deps = [
":devicetree_board_driver.bazel_inputs",
":main_bundle.bazel_inputs",
":paver.bazel_inputs",
":rtc_driver.bazel_inputs",
":vulkan_arm_mali.bazel_inputs",
"//src/devices/board/drivers/vim3-devicetree:vim3-dtb",
]
}
board_input_bundle("main_bundle") {
drivers = [
{
package_target =
"//src/connectivity/ethernet/drivers/aml-ethernet:package"
package_set = "bootfs"
driver_components = [ "meta/aml-ethernet.cm" ]
},
{
package_target = "//src/devices/hrtimer/drivers/aml-hrtimer:package"
package_set = "bootfs"
driver_components = [ "meta/aml-hrtimer.cm" ]
},
{
package_target = "//src/connectivity/ethernet/drivers/dwmac:package"
package_set = "bootfs"
driver_components = [ "meta/dwmac.cm" ]
},
{
package_target = "//src/devices/adc/drivers/aml-saradc:package"
package_set = "bootfs"
driver_components = [ "meta/aml-saradc.cm" ]
},
{
package_target = "//src/devices/block/drivers/aml-sdmmc:package"
package_set = "bootfs"
driver_components = [ "meta/aml-sdmmc.cm" ]
},
{
package_target = "//src/devices/cpu/drivers/aml-cpu:package"
package_set = "bootfs"
driver_components = [ "meta/aml-cpu.cm" ]
},
{
package_target = "//src/devices/gpio/drivers/ti-tca6408a:package"
package_set = "bootfs"
driver_components = [ "meta/ti-tca6408a.cm" ]
},
{
package_target = "//src/devices/mcu/drivers/vim3-mcu:package"
package_set = "bootfs"
driver_components = [ "meta/vim3-mcu.cm" ]
},
{
package_target = "//src/devices/ml/drivers/aml-nna:package"
package_set = "bootfs"
driver_components = [ "meta/aml-nna.cm" ]
},
{
package_target = "//src/devices/power/drivers/aml-meson-power:package"
package_set = "bootfs"
driver_components = [ "meta/aml-meson-power.cm" ]
},
{
package_target = "//src/devices/power/drivers/aml-pwm-regulator:package"
package_set = "bootfs"
driver_components = [ "meta/aml-pwm-regulator.cm" ]
},
{
package_target = "//src/devices/power/drivers/fusb302:package"
package_set = "bootfs"
driver_components = [ "meta/fusb302.cm" ]
},
{
package_target = "//src/devices/pwm/drivers/aml-pwm:package"
package_set = "bootfs"
driver_components = [ "meta/aml-pwm.cm" ]
},
{
package_target = "//src/devices/pwm/drivers/aml-pwm-init:package"
package_set = "bootfs"
driver_components = [ "meta/aml-pwm-init.cm" ]
},
{
package_target = "//src/devices/serial/drivers/aml-uart:package"
package_set = "bootfs"
driver_components = [ "meta/aml-uart.cm" ]
},
{
package_target = "//src/devices/thermal/drivers/aml-thermal:package"
package_set = "bootfs"
driver_components = [ "meta/aml-thermal.cm" ]
},
{
package_target = "//src/devices/temperature/drivers/aml-trip:package"
package_set = "bootfs"
driver_components = [ "meta/aml-trip.cm" ]
},
{
package_target = "//src/devices/suspend/drivers/generic-suspend:package"
package_set = "bootfs"
driver_components = [ "meta/generic-suspend.cm" ]
},
{
package_target = "//src/devices/usb/drivers/dwc2:package"
package_set = "bootfs"
driver_components = [ "meta/dwc2.cm" ]
},
# Base drivers
{
package_target = "//src/graphics/drivers/msd-arm-mali:msd-arm-mali"
package_set = "base"
driver_components = [ "meta/msd_arm.cm" ]
},
{
package_target = "//src/graphics/drivers/msd-vsi-vip"
package_set = "base"
driver_components = [ "meta/libmsd_vsi.cm" ]
},
{
package_target = "//src/graphics/display/drivers/aml-canvas:package"
package_set = "base"
driver_components = [ "meta/aml-canvas.cm" ]
},
{
package_target = "//src/graphics/display/drivers/amlogic-display:package"
package_set = "base"
driver_components = [ "meta/amlogic-display.cm" ]
},
{
package_target = "//src/graphics/drivers/aml-gpu:aml-gpu-package"
package_set = "base"
driver_components = [ "meta/aml-gpu.cm" ]
},
{
package_target = "//src/ui/input/drivers/focaltech:package"
package_set = "base"
driver_components = [ "meta/focaltech.cm" ]
},
]
version = build_info_version
}
board_input_bundle("devicetree_board_driver") {
configuration = {
power_manager = "//src/power/power-manager/node_config/vim3_devicetree_node_config.json5"
thermal = "//src/power/power-manager/thermal_config/vim3_devicetree.json5"
sysmem_format_costs = [
# order is significant; please don't alphabetize; correct order is:
# * arm_mali
# * video_decoder_nv12
"//src/sysmem/format_costs/arm_mali",
"//src/sysmem/format_costs/video_decoder_nv12",
]
}
drivers = []
version = build_info_version
}
board_input_bundle("vulkan_arm_mali") {
base_packages =
[ "//src/graphics/drivers/arm-mali/icd:libvulkan_arm_g52_r0p0" ]
version = build_info_version
}
board_input_bundle("rtc_driver") {
drivers = [
{
package_target = "//src/devices/rtc/drivers/nxp:pcf8563"
package_set = "base"
driver_components = [ "meta/pcf8563.cm" ]
},
]
version = build_info_version
}
board_input_bundle("paver") {
bootfs_packages = [ "//src/bringup/bin/paver:package-vim3" ]
version = build_info_version
}
# TODO(jayzhuang): Remove after vim3-vg is migrated.
bazel_board_input_bundle("bazel_drivers") {
bazel_board_input_bundle_target = "//boards/vim3:bazel_drivers"
}
bazel_board_input_bundle_set("vim3_bibs") {
bazel_board_input_bundle_set_target = "//boards/vim3:vim3_bibs"
deps = [ ":bazel_inputs" ]
}
bazel_board_configuration("vim3") {
bazel_board_configuration_target = "//boards/vim3"
deps = [ ":bazel_inputs" ]
}
bazel_board_configuration("reduced_perf_variation") {
name = "vim3"
bazel_board_configuration_target = "//boards/vim3:reduced_perf_variation"
deps = [ ":bazel_inputs" ]
}
# Note: This group contains bazel built drivers that are defined in individual bazel_actions.
# Adding this to your build graph will greatly reduce your build speed.
group("vim3-release") {
deps = [
"//src/connectivity/ethernet/drivers/aml-ethernet:package-archive",
"//src/connectivity/ethernet/drivers/dwmac:package-archive",
"//src/connectivity/ethernet/drivers/realtek-8211f:package-archive",
"//src/devices/adc/drivers/aml-saradc:package-archive",
"//src/devices/block/drivers/aml-sdmmc:package-archive",
"//src/devices/board/drivers/vim3-devicetree:bazel_package-archive",
"//src/devices/clock/drivers/vim3-clk:bazel_package-archive",
"//src/devices/cpu/drivers/aml-cpu:package-archive",
"//src/devices/gpio/drivers/aml-gpio:bazel_package-archive",
"//src/devices/gpio/drivers/ti-tca6408a:package-archive",
"//src/devices/hrtimer/drivers/aml-hrtimer:package-archive",
"//src/devices/i2c/drivers/aml-i2c:bazel_package-archive",
"//src/devices/mcu/drivers/vim3-mcu:package-archive",
"//src/devices/ml/drivers/aml-nna:package-archive",
"//src/devices/power/drivers/aml-meson-power:package-archive",
"//src/devices/power/drivers/aml-pwm-regulator:package-archive",
"//src/devices/power/drivers/fusb302:package-archive",
"//src/devices/pwm/drivers/aml-pwm:package-archive",
"//src/devices/pwm/drivers/aml-pwm-init:package-archive",
"//src/devices/serial/drivers/aml-uart:package-archive",
"//src/devices/suspend/drivers/generic-suspend:package-archive",
"//src/devices/temperature/drivers/aml-trip:package-archive",
"//src/devices/thermal/drivers/aml-thermal:package-archive",
"//src/devices/usb/drivers/aml-usb-phy:bazel_package-archive",
"//src/devices/usb/drivers/dwc2:package-archive",
"//src/devices/usb/drivers/xhci:package-archive",
"//src/graphics/display/drivers/aml-canvas:package-archive",
"//src/graphics/display/drivers/amlogic-display:package-archive",
"//src/graphics/drivers/aml-gpu:aml-gpu-package-archive",
"//src/graphics/drivers/msd-arm-mali:msd-arm-mali-archive",
"//src/graphics/drivers/msd-vsi-vip:msd-vsi-vip-archive",
"//src/media/audio/drivers/aml-g12-tdm:aml-g12-composite-bazel-package-archive",
"//src/power/testing/fake-battery:fake-battery-archive",
"//src/ui/input/drivers/adc-buttons:bazel_package-archive",
"//src/ui/input/drivers/focaltech:package-archive",
]
}