# 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/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/pwm/drivers/aml-pwm",
  "//src/devices/registers/drivers/registers",
  "//src/devices/rtc/drivers/nxp",
  "//src/devices/thermal/drivers/aml-thermal-s905d2g",
  "//src/devices/thermal/drivers/aml-thermal-s905d2g-legacy",
  "//src/devices/usb/drivers/aml-usb-phy-v2",
  "//src/devices/usb/drivers/dwc2",
  "//src/graphics/display/drivers/aml-canvas",
  "//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",
]

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"
