# Copyright 2015 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"
# Firmware (coreboot, libpayload and depthcharge) are booting with arm64
# regardless of the userland settings. Thus in order to enable proper
# installation of libpayload stuff to be used by depthcharge,
# CHROMEOS_LIBPAYLOAD_ARCH_DIR is set to arm64. This is checked by libpayload
# ebuild before deciding the dest dir as arm or arm64.
CHROMEOS_LIBPAYLOAD_ARCH_DIR="arm64"

ARM_FPU=neon

USE="${USE} hardfp legacy_keyboard legacy_power_button neon"
USE="${USE} -opengl opengles"
USE="${USE} kernel-3_14"
USE="${USE} device_tree"
USE="${USE}  t124_xusb_fw wireless38"

# Firwmare USE flags
USE="${USE} bootimage coreboot cros_ec depthcharge unified_depthcharge vboot2"

# No -fstack-protector on aarch64 yet
USE="${USE} -hardened"

CROS_WORKON_CLANG=0

TTY_CONSOLE="ttyS0"

# TODO(twarren) - change this if EC used on Foster
EC_FIRMWARE="nyan"

# TODO(spang): Re-enable this when it starts working.
USE="${USE} -frecon"

# Foster has no TPM, set MOCK_TPM=1
# TODO(yelin): remove MOCK_TPM when Foster has TPM chip.
MOCK_TPM=1

# Linux Firmware
LINUX_FIRMWARE="nvidia-xusb"
