# Copyright 2017 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2

CHROMEOS_KERNEL_SPLITCONFIG="chromiumos-arm64"
CHROMEOS_KERNEL_ARCH="arm64"

# Initial value just for style purposes.
USE=""

USE="${USE} hardfp neon"
USE="${USE} kernel-4_4 device_tree"
USE="${USE} legacy_keyboard legacy_power_button"
# Add powerd to avoid fiddling with the non-existent backlight
USE="${USE} -display_backlight"

# Use MESA llvmpipe in the guest as the GL library.
USE="${USE} frecon -opengl opengles"

# Nullify all firmware and ec-related USE flags
USE="${USE} -coreboot -bootimage -cros_ec"
USE="${USE} -fastboot -mtc"

# LLVM is required to build the llvmpipe driver.
USE="${USE} llvm"

# Disable unibuild on this legacy board. This is only for existing (as of Jan 2019)
# boards as all new boards must be unibuild enabled moving forward. Do not copy this
# to new boards as it will be rejected. See
# https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/chromeos-config/README.md
# for further details about chromeos-config, which is the required entry point for
# unified builds.
USE="${USE} -unibuild"

VIDEO_CARDS="llvmpipe"

CROS_WORKON_CLANG=0

TTY_CONSOLE="ttyAMA0"
