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

import("//boards/arm64.gni")

board_name = "vim3"

_common_bootfs_deps = [
  "//boards/kernel_cmdline:vim3",
  "//src/connectivity/ethernet/drivers/aml-ethernet-s912",
  "//src/connectivity/ethernet/drivers/dwmac",
  "//src/connectivity/ethernet/drivers/ethernet",
  "//src/connectivity/ethernet/drivers/realtek-8211f",
  "//src/devices/block/drivers/aml-sdmmc",
  "//src/devices/block/drivers/bootpart",
  "//src/devices/board/drivers/vim3",
  "//src/devices/clock/drivers/amlogic-clk",
  "//src/devices/cpu/drivers/aml-cpu",
  "//src/devices/gpio/drivers/aml-axg-gpio",
  "//src/devices/i2c/drivers/aml-i2c",
  "//src/devices/mcu/drivers/vim3-mcu",
  "//src/devices/ml/drivers/aml-nna",
  "//src/devices/power/drivers/aml-meson-power",
  "//src/devices/power/drivers/aml-pwm-regulator",
  "//src/devices/power/drivers/fusb302",
  "//src/devices/pwm/drivers/aml-pwm",
  "//src/devices/registers/drivers/registers",
  "//src/devices/rtc/drivers/nxp",
  "//src/devices/thermal/drivers/aml-thermal-s905d2g",
  "//src/devices/usb/drivers/aml-usb-phy-v2",
  "//src/devices/usb/drivers/dwc2",
  "//src/graphics/display/drivers/aml-canvas",
  "//src/graphics/display/drivers/aml-hdmi",
  "//src/graphics/display/drivers/amlogic-display",
  "//src/graphics/drivers/aml-gpu",
]

board_bootfs_labels += _common_bootfs_deps

board_zedboot_bootfs_labels += _common_bootfs_deps

board_recovery_bootfs_labels += _common_bootfs_deps

board_system_image_deps += [
  "//garnet/packages/prod:magma-arm-mali-system",
  "//garnet/packages/prod:magma-vsi-vip",
  "//src/media/drivers/amlogic_decoder",
]

board_package_labels += [
  "//garnet/packages/prod:magma-arm-mali-config",
  "//garnet/packages/prod:vulkan",
]

firmware_prebuilts_path_suffix = ""
firmware_prebuilts = [
  {
    type = ""
    path = "//prebuilt/third_party/firmware/vim3/u-boot.bin"
    partition = "bootloader"
  },
]

use_vbmeta = true
avb_key = "//src/firmware/avb_keys/vim3/vim3-dev-key/vim3_devkey_atx_psk.pem"
avb_algorithm = "SHA512_RSA4096"
avb_atx_metadata =
    "//src/firmware/avb_keys/vim3/vim3-dev-key/vim3_dev_atx_metadata.bin"

# partitions for fx flash to flash
zircon_a_partition = "zircon_a"
zircon_b_partition = "zircon_b"
zircon_r_partition = "zircon_r"
vbmeta_a_partition = "vbmeta_a"
vbmeta_b_partition = "vbmeta_b"
vbmeta_r_partition = "vbmeta_r"
fvm_partition = "fvm"
active_partition = "a"
fastboot_product = "galilei"

# For VIM3, FVM partition uses all of the remaining eMMC. However, the total size of the eMMC
# storage maybe 16G or 32G depending on whether it is a basic or pro version. In addition,
# the actual size of the user block allocated by Fuchsia can be further different. (i.e. 'lsblk'
# shows a 29G size user block for the 32Gb version). To avoid the risk of overflowing
# available size, here we set it to be the same as sherlock (3280mb), which is clearly safe
# and sufficient for now.
fvm_emmc_partition_size = 3439329280
